无法禁用 emacs 自动更改行的缩进方式
Cannot disable emacs automatically changing how lines are indented
我想从我的 .emacs
文件中关闭 emacs 中所有主要模式的 electric-indent-mode
。
我尝试将这些添加到我的 .emacs
文件中(每个单独):
(electric-indent-mode -1)
(add-hook 'after-change-major-mode-hook (lambda() (electric-indent-mode -1)))
(when (fboundp 'electric-indent-mode) (electric-indent-mode -1))
(add-hook 'c-mode-common-hook
(lambda ()
(add-hook 'electric-indent-functions
(lambda () 'no-indent) nil 'local)))
None 完成了我简单的 .cpp
测试文件。
为了更清楚一点,这是正在发生的事情:
这个:
#include <iostream>
int main() {
std::cout << "Hello World!";
return 0;
}
变为:
#include <iostream>
int main() {
std::cout << "Hello World!";
return 0;
}
当我按下第二个 :
或 ;
时,带有 std::cout << ...
的行重新对齐为有 2 个空格
我希望能够通过自己输入字符来控制文件的缩进方式,而不是通过 emacs 更改它们。我相信这是禁用 electric-indent-mode
(因此我尝试禁用),但可能还有另一种方法。
我正在使用 emacs 24.3.1(x86_64-redhat-linux-gnu,GTK+ 版本 3.10.9)
我想你找错人了。在我的 Emacs(公认的旧版本)中,冒号在 C++ 模式下绑定到 c-electric-colon
。无论electric-indent-mode
如何,这都会表现出"electrically"。阅读它的文档;似乎有一个变量 c-electric-flag
,您可以将其设置为 nil
以禁用此行为。
如果所有其他方法都失败了,并且您想保留 C++ 模式的其他功能,则重新绑定您不想在该模式下表现的键 "electrically" 似乎是可行的方法。
我想从我的 .emacs
文件中关闭 emacs 中所有主要模式的 electric-indent-mode
。
我尝试将这些添加到我的 .emacs
文件中(每个单独):
(electric-indent-mode -1)
(add-hook 'after-change-major-mode-hook (lambda() (electric-indent-mode -1)))
(when (fboundp 'electric-indent-mode) (electric-indent-mode -1))
(add-hook 'c-mode-common-hook
(lambda ()
(add-hook 'electric-indent-functions
(lambda () 'no-indent) nil 'local)))
None 完成了我简单的 .cpp
测试文件。
为了更清楚一点,这是正在发生的事情:
这个:
#include <iostream>
int main() {
std::cout << "Hello World!";
return 0;
}
变为:
#include <iostream>
int main() {
std::cout << "Hello World!";
return 0;
}
当我按下第二个 :
或 ;
std::cout << ...
的行重新对齐为有 2 个空格
我希望能够通过自己输入字符来控制文件的缩进方式,而不是通过 emacs 更改它们。我相信这是禁用 electric-indent-mode
(因此我尝试禁用),但可能还有另一种方法。
我正在使用 emacs 24.3.1(x86_64-redhat-linux-gnu,GTK+ 版本 3.10.9)
我想你找错人了。在我的 Emacs(公认的旧版本)中,冒号在 C++ 模式下绑定到 c-electric-colon
。无论electric-indent-mode
如何,这都会表现出"electrically"。阅读它的文档;似乎有一个变量 c-electric-flag
,您可以将其设置为 nil
以禁用此行为。
如果所有其他方法都失败了,并且您想保留 C++ 模式的其他功能,则重新绑定您不想在该模式下表现的键 "electrically" 似乎是可行的方法。