4

我在emacs中有一行代码:

<tab><tab>int i = 0;<cursor>

如果我单击 Ctrl-a,它将移动到行首:

<cursor><tab><tab>int i = 0;

但我想创建一个 elisp 函数,它将忽略开头的任何缩进:

<tab><tab><cursor>int i = 0;

怎么做?

4

2 回答 2

10

mm 运行命令 back-to-indentation,这是 `simple.el' 中的交互式编译 Lisp 函数。

它与 Mm 绑定。

(回到缩进)

将点移动到该行的第一个非空白字符。

于 2012-09-10T07:00:19.457 回答
5
(defun beginning-of-line++ ()
  (interactive)
  (if (bolp)
      (back-to-indentation)
    (beginning-of-line)))
(global-set-key (kbd "C-a") 'beginning-of-line++)

然后,如果单击 Ca,光标将移动到行首,然后再次单击 Ca,光标将返回缩进。连续的 Ca 将在行首和缩进之间切换替换光标。

于 2012-09-10T15:58:07.487 回答