EMACS和TAB键(缩进与插入)



假设我有一个<weird language>文件,我正在编辑它。

如果光标位于一个句子的开头(比如说if,它已经缩进了2级),而我点击了TAB,我希望EMACS将该行的缩进级别增加+1(使用TABN SPACEs,具体取决于文件中使用的缩进样式)。

无论如何,如果我点击TAB,并且光标在if之后,我希望EMACS插入一个普通的t

我怎样才能让EMACS表现得像这样?

问候

将当前缩进作为开头。这种情况可能需要修改。另见第三条。

(defun my-indent-or-insert-tab ()
  "Insert a TAB or indent depending on context. "
  (interactive "*")
  (cond((eq (current-column) (current-indentation)) 
        (indent-for-tab-command))
       ((member (char-after) (list ?t ? ?n))
        (insert "t"))
       (t (message "%s" "Don't know what to do if inside word"))))

最新更新