为什么 emacs 在这里一开始的制表符间距这么奇怪?

为什么 emacs 在这里一开始的制表符间距这么奇怪?

这出现在 Linux 版本的 emacs 24.3.1 上。

启动缓冲区,输入octave-mode(您可能需要从包中安装),然后输入如下内容:

function foo = bar(x,y)

现在,如果您转到下面的行,并点击TAB开始猛击,光标将跳入 8 个空格!

在您从心悸和过度换气中恢复过来后,您会注意到,如果您TAB在输入一些内容后按下 ,Emacs 就会恢复理智,并将整行恢复为 2 个空格缩进。下面的其余行也会如此。

这种行为的想法或原因是什么?

答案1

由于可以对 Emacs 进行编程以执行几乎任何操作,因此我只需调整或修复我需要的内容,而很少寻找默认设置的原理。

(add-hook 'octave-mode-hook (lambda ()
  (setq indent-tabs-mode t)
  (setq tab-stop-list (number-sequence 2 200 2))
  (setq tab-width 2)
  (setq indent-line-function 'insert-tab) ))

相关内容