问题是,当我输入标签和空格时,如果我将标签输入为空格,我希望Emacs保存标签。但是当空格数达到tab-stop-list
中定义的amonut时,即当我输入
→func1() {
→ →some_long_command_name -param1 -param2 \
→ →→→→→→→→→→→→→→→→→→→→→→→→-param3 -param4
(标签为 →
,空格为→
)Emacs使其
→func1() {
→ →some_long_command_name -param1 -param2 \
→ → → → → → →→→→-param3 -param4
如果标签的长度发生变化,会打破我想要保留的缩进。
答案 0 :(得分:1)
自定义选项indent-tabs-mode
以提供值nil
。这会阻止Emacs将缩进空格转换为使用TAB
字符。您输入的SPC
个字符和TAB
个字符仍然是这样。
然后,您需要将密钥TAB
绑定到self-insert-command
,或者使用C-q TAB
插入TAB
字符。这意味着您将丢失TAB
密钥作为缩进命令。或者,您可以将一些其他键绑定到插入TAB
char的命令,或者将TAB
之外的其他键绑定到TAB
默认绑定的缩进命令。 / p>
答案 1 :(得分:1)
我认为你好像是在https://www.emacswiki.org/emacs/SmartTabs之后?