2010-09-16 61 views
4

我最近已經轉向gdb-emacs集成,它的酷,因爲你不再需要每次的源代碼列表,雖然我想念一些功能或可能是我不知道如何做到這一點?GDB與emacs提示

我在命令行模式下使用emacs emacs -nw因爲我不喜歡遠離控制檯。

  1. 現在,當我執行一些命令說,在gdb下c1,然後要重新執行它,我想我可以使用up-arrow鍵來訪問我以前的命令。相反,它帶我走了。在emacs x-window模式下,這可以通過ctrl+up-arrow完成。但在這種情況下不適用。

  2. 源代碼顯示的部分恰好是可編輯的,我不希望它是這樣的,我可以嗎?

  3. 如何在兩個拆分部分之間切換?

我通常使用vi,所以這些都不是直觀的給我,因爲他們可能在Emacs用戶)。

Thx。

回答

7

1 /現在,當我執行一些命令說,在gdb下C1 ,然後要重新執行 它,我想我可以使用向上箭頭鍵來訪問我以前 命令。 取而代之的是它。在emacs x-window模式下,可以通過ctrl +向上箭頭來完成。但在這種情況下不適用。

在我的情況下,與-nw啓動emacs的,即使使用C-了確實工作。也許你在emacs級別或終端級別的鍵綁定有問題。 Do C-hkC-up檢查C-up是否真的與同時按下Control鍵和Up鍵有關。

2 /源代碼顯示的部分恰好是可編輯的,我不想讓它如此,我可以嗎?

進入包含使用C-Xö源代碼中的窗口。然後,您可以通過按C-xC-q使緩衝區成爲只讀。

3 /如何在兩個分割部分之間切換?

如果你的意思是「窗口」,您可以更改使用C-XØ GDB的圖形界面的當前活動窗口。或者你可以通過在你的中添加下面一行來使用windmove。emacs的:

(windmove-default-keybindings) 

然後,您可以使用移動窗口之間的點S-右S-左S-了S-下來

1

現在,當我執行一些命令說的c1在gdb下 ,然後要重新執行 它,我想我可以使用向上箭頭鍵來訪問我以前 命令。 取而代之的是它。在emacs x-window模式下,可以通過ctrl +向上箭頭來完成。但在這種情況下不能.ctrl +向上箭頭。但在這種情況下不適用。

嘗試Alt-P和Alt-N循環執行已插入的命令。希望它能爲你工作:)一個單一的Alt-P應該返回你輸入的最後一個命令。這不僅在GDB模式下使用,而且在emacs的很多地方使用,並且它應該在大多數控制檯配置中工作,即使在ctrl-up不起作用的情況下也是如此。舉例來說,如果你按下Alt-X中寫入命令(如GDB),你可以按Alt-P重新輸入你把你所使用的Alt-X最後一次命令。

在源代碼中顯示的部分恰好是編輯,我 不希望它是這樣,可以嗎?不希望它是這樣,可以嗎?

自動?據我所知(但我不是emacs專家),很少有東西。在emacs中有掛鉤或lisp函數,您可以定義在某些情況下調用。例如,C模式有一個掛鉤,當使用c模式時(如果您不熟悉模式時打開.c文件),將調用該模式,並且可以自定義C編程設置那裏(就像你想要使用的縮進類型)。不幸的是,在GDB相關模式(稱爲GUD)中沒有很多鉤子,並且該模式中的鉤子都不適用於您。訪問文件時(當它打開時)有一個通用鉤子,但它是非常通用的。

手動,傑羅姆好心的答覆會工作。

道歉對我很壞的英語。