Emacs是否有一个简单的原始缩进模式可以执行以下操作:
当我转到新行(点击 Enter )时,复制上面一行用于缩进的空白区域
当我按Tab键时,在我按Tab键的位置插入可配置的缩进字符(空格/制表符)。只需插入空格/标签,不要做“智能” - 注释。
[可选]当我按 Shift + Tab 时,从当前行的开头删除一个缩进字符
[可选]缩进/取消选择的块。
问题是:这样的模式是否存在?如果,它的名字是什么?
我不想开始讨论“为什么我需要这种行为?”除了这个话题之外,我不需要“聪明”的选择。
我只想要一个简单的愚蠢模式......
Emacs已存在多年。在某个时间某个地方的某个人一定要问这个问题,并且可能已经写了一个模式。
我经历了很多“与缩进相关”的话题......没有。每个人都坚持“你应该服从Emacs,而不是Emacs应该服从你”。
答案 0 :(得分:4)
答案 1 :(得分:2)
1。在fundamental-mode
中,您可以将 RET 重新绑定到newline-and-indent
(local-set-key (kbd "RET") 'newline-and-indent)
2. 要使 TAB 插入制表符/空格而不是缩进,您应该自定义tab-always-indent
变量:
(setq tab-always-indent nil)
要在制表符和空格缩进之间进行选择,请自定义indent-tabs-mode
变量。
(setq indent-tabs-mode t) ;; for tab-based indentation
(setq indent-tabs-mode nil) ;; for space-based indentation
我不知道有任何标准方法可以分数 3。和 4。,但是开发小型自定义函数来执行此操作应该不会太困难