3

我以为我的设置很好,但是现在 emacs 偶尔会插入一个 8 个字符的制表符,或者一个 6 或 5 个字符的制表符....

也许这是由文档引起的(这发生在一个包含许多不同制表符间距的大型文本文件中,尽管大多数是 4 个字符间隔增量或常规制表符字符)。

(setq-default indent-tabs-mode 0)
(setq-default tab-width 4)
(setq indent-line-function 'insert-tab)

以上是我的 init.el 中的代码,这让我想知道为什么它偶尔会失败并插入 6 个字符的制表符。

4

1 回答 1

1

所讨论的主要模式可能有自己的缩进规则,但如果我们谈论的是文本模式,那么indent-line-function确实应该被称为(最终)。您可能需要仔细检查这不是缓冲区本地,其值与您认为设置的值不同,但我会说更可能的罪魁祸首是tab-stop-list变量。

您可以在此处阅读有关该内容和其他相关内容的信息:
http ://www.emacswiki.org/emacs/CategoryIndentation

它隐藏在该链接列表的底部附近,但在没有自动缩进规则的情况下理解选项卡的行为至关重要。

如果启用ruler-moderuler-mode-show-tab-stops变量,它可能会对事情有所帮助。

于 2010-12-19T21:31:00.113 回答