Emacs(24):在c模式下更改行时,光标移动到第0列

时间:2013-02-15 11:59:08

标签: emacs c-mode

我目前正在使用Emacs 24.0.91.1,并且每隔一段时间,当我处于c模式时(启用自动填充模式),光标行为会发生变化。

我想要的是当我向上/向下移动一行时光标停留在同一列上。然而,每隔一段时间,它就跳到0位置,我觉得非常讨厌。有关如何禁用此功能的任何提示?

1 个答案:

答案 0 :(得分:2)

当把很多钥匙塞进去的时候,我发现自己处于同样的境地 我的emacs窗口没有太小心。但是,我注意到它会继续将光标恢复到特定的列,不一定是第0列。就像OP一样,我最初使用的是 杀死并重新打开缓冲区以清除此行为。然而,之后 在搜索时,我意识到我必须偶然输入C-x C-n 试图快速堵塞一些命令,导致意外 调用set-goal-column

emacs manual: Moving Point

  

C-x C-n

     

使用当前的point列作为C-n和C-p(set-goal-column)的半永久性目标列。当半永久性目标列生效时,这些命令总是在垂直移动后尝试移动到此列,或尽可能接近该列。目标栏在取消之前一直有效。

调用此命令时,我在emacs的*Messages*缓冲区中获得以下输出:

  

目标栏16(使用带有arg的C-x C-n取消设置)

要为C-x C-n提供参数并删除此效果,您可以 使用“数字前缀参数”提供参数。例如, C-0 C-x C-n (提供0的数字前缀参数)清除 半永久性目标栏目。