如何在 emacs 中禁用智能缩进(并强制使用空格或制表符)?

如何在 emacs 中禁用智能缩进(并强制使用空格或制表符)?

我想让 emacs 在按下 tab 键时插入 4 个空格或一个制表符。没有别的。我不想要智能缩进,我不想让它自动对齐或尝试做任何智能的事情。我只希望它输出 4 个空格(或一个制表符)。=

答案1

问题是 emacs 中的每个模式对 TAB 键的定义都不同。要了解全局行为,请查看 Trey Jackson 的回答https://stackoverflow.com/questions/344966/sane-tab-in-emacs

 (defvar just-tab-keymap (make-sparse-keymap) "Keymap for just-tab-mode")
 (define-minor-mode just-tab-mode
   "Just want the TAB key to be a TAB"
   :global t :lighter " TAB" :init-value 0 :keymap just-tab-keymap
   (define-key just-tab-keymap (kbd "TAB") 'indent-for-tab-command))

您可能希望使用'self-insert-command而不是'indent-for-tab-command另一个回答该问题的人所指出的那样。

答案2

尝试这个。

找到你的 .emacs 并添加以下内容:

(setq c-basic-offset 2)

这会使你的 emacs 插入 2 个空格,你可以更改数字并输入 4,

(setq-default indent-tabs-mode nil)

如果你想要空格,不要制表符

相关内容