1

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

我想要的是当我向上/向下移动一行时光标保持在同一列上。但是,每隔一段时间,它就会跳到位置 0,我觉得这很烦人。有关如何禁用此功能的任何提示?

4

1 回答 1

3

当我不小心将很多键插入我的 emacs 窗口时,我发现自己处于同样的情况。但是,我注意到它会继续将我的光标恢复到特定列,而不一定是第 0 列。像 OP 一样,我最初采取杀死并重新打开缓冲区来清除此行为。但是,经过搜索,我意识到我在尝试快速卡住某些命令时一定是不小心输入了 Cx Cn,导致意外调用set-goal-column.

emacs 手册:移动点

Cx Cn

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

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

目标列 16(使用带有 arg 的 Cx Cn 取消设置)

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

于 2014-03-24T18:14:38.760 回答