2013-02-15 37 views
1

我目前使用Emacs 24.0.91.1,每過一段時間,當我處於c模式時, - 填充模式啓用)。Emacs(24):在c模式下更改行時,光標移動到第0列

我想要的是當我向上/向下移動一行時,光標留在同一列上。然而,每過一段時間,它就會跳到0的位置,這讓我覺得非常討厭。有關如何禁用此技巧的任何提示?

+1

這是否僅在不包含任何內容的行上發生?如果是這樣,如果繼續移動光標會發生什麼? – Lindydancer 2013-02-15 14:35:16

+0

一旦我向上或向下移動一行,無論內容如何,​​它都會跳到第0列。如果可以調用這樣的解決方案,關閉緩衝區並再次打開文件解決了問題。 – hnrk 2013-02-18 07:29:02

+0

我也注意到了這一點。有時光標重置的列不是第0列。我假設我在意外地調用某個命令時速度太快,但我無法猜測我正在碰到什麼組合。 – binki 2014-03-24 17:59:51

回答

2

我發現自己處於同樣的情況,在我的emacs窗口中插入很多密鑰到 而沒有太小心。但是,我注意到它會繼續將光標還原到特定的列,而不一定是0列。與OP一樣,我最初使用了 查殺並重新打開緩衝區以清除此行爲。然而,在 搜索後,我意識到當 試圖快速堵塞某些命令時,我意外地輸入了C-x C-n,導致意外地調用set-goal-column

emacs manual: Moving Point

C-X C-N

使用點的當前列作爲C-N和C-P(設置目標列)的半永久性球門立柱。當半永久性目標欄生效時,這些命令總是嘗試移動到該欄,或儘可能靠近該欄,垂直移動後。目標欄保持有效直至取消。

當調用此命令時,我得到在Emacs的*Messages*緩衝輸出如下:

目標列16(使用CX道道與ARG來取消它)

爲了供應CX Cn與參數並刪除此效果,您可能會 使用「數字前綴參數」提供參數。例如, C-0 C-x C-n(提供0的數字前綴參數)會清除 半永久性目標列。