【发布时间】:2017-01-12 22:43:21
【问题描述】:
我不想在 emacs 中使用制表符,我想设置它,以便按制表符键根据文件类型插入一定数量的空格。例如,我想在处理 python 文件时按 Tab 键插入 4 个空格。这是我当前的 .emacs 文件
(setq-default indent-tabs-mode nil)
(setq tab-width 4)
(setq tab-stop-list (number-sequence 4 200 4))
目前,每当我按 Tab 键时,它只会在 emacs 认为合适的位置添加任何空格。例如,如果我打开一个 python 文件并按下 tab,什么都不会发生。但是,如果我输入“if:”然后在下一行点击制表符,它会添加 4 个空格。但是,如果我再次按下制表符,它将带我回到行首。我想我只是想让它添加一定数量的空格,简单明了(除非有人可以给我一个很好的理由,说明为什么让制表符在行中循环很有用)。
我想要这个的主要原因是因为我正在从事一个项目,其中评论遵循特定格式,涉及使用基于 4 个空格的缩进。 例如:
r"""
Return the value of the q-gamma function.
.. MATH::
qgamma(z,q) = \Gamma_q (z).
"""
因此,对于带有“qgamma”的行,我必须以 8 个空格开头,并且我希望能够通过按两次 tab 来完成它。但是,emacs 认为这不是一个能够两次制表符的合适位置,所以每当我按两次制表符时,它都会让我回到行首。
谢谢!
编辑:检查主要模式变量表明它处于 python 模式。
【问题讨论】:
-
您可能需要添加您用于编辑 Python 文件的主要模式。