在emacs中的文件中打开.txt文件并按Tab键并不总是给出相同的结果。有时4,有时按Tab键显示2。
同样的事情也发生在.c / .cpp文件中。
这是emacs 24.2中的一项功能吗?
如何获得一致性标签宽度?
答案 0 :(得分:1)
当你按下TAB键时,根据光标的模式和位置,emacs将尝试缩进该行(在你调用.txt的文件中,只有在行的开头,在行的中间)它将插入一个或多个空格,直到下一个制表位,具体取决于您的偏好。)
缩进是相对于您所在行之前的行。因此,您将看到按TAB键并不总是插入相同数量的空格(或制表符)。这是一个功能。如果需要,您可以绑定Tab键以执行不同的操作(插入制表符或固定数量的空格),但是您将丢失非常有用的功能。
您应该使用变量indent-tabs-mode
,tab-width
和c-basic-offset
来让emacs按照您的意愿行事。
例如:
(setq-default c-basic-offset 4
tab-width 4
indent-tabs-mode nil)
如果你想在.txt,.c和.cpp文件中使用4个空格(其他模式可能需要额外的变量,比如nxml,但我现在还没有你使用的其他模式)。
答案 1 :(得分:0)
Emacs -Q:“tab-width是`C源代码'中定义的变量。 它的值是8
设置时自动变为缓冲区本地。 “
哪种IMO是一种有用的行为,因为编程模式将使用不同的样式,以不同的方式设置它,因此重要的是能够改变它。
例如,在Python中,标签宽度为4是常见的。