标签线开头的Emacs退格键与intellij类似?

时间:2015-10-06 18:40:44

标签: intellij-idea emacs backspace

在intellij中,当你在一个标签缩进时,让我们说4,在新行的开头,然后按退格键,它退格通过前面的所有空格,然后转到4的制表符缩进位置。上一行。

在emacs中,在相同的情况下,它通过单个空格退格。

如何让emacs像intelij的退格系统一样?是否有插件?

以下是在intelij中点击退格时会发生什么的示例: enter image description here

enter image description here

1 个答案:

答案 0 :(得分:1)

我相信这很接近你想要的东西:

(defun my-backspace ()
  (interactive)
  (let* ((end (save-excursion
                (end-of-line)
                (point)))
         (beginning (save-excursion
                      (beginning-of-line)
                      (point))))
    (if (string-match "^[ \t]*$" (buffer-substring beginning end))
        (progn
          (beginning-of-line)
          (kill-line)
          (previous-line)
          (indent-for-tab-command)
          (end-of-line))
      (c-electric-backspace))))

 (define-key c-mode-map (kbd "DEL") 'my-backspace)