22.15 命令历史

命令循环会保存已执行的复杂命令历史, 方便重复执行这些命令。复杂命令(complex command) 是指交互参数读取使用迷你缓冲区的命令。 包括所有 M-x 命令、M-: 命令, 以及 interactive 声明从迷你缓冲区 读取参数的命令。命令执行过程中显式使用 迷你缓冲区不会使其被视为复杂命令。

Variable: command-history

该变量的值为最近复杂命令列表,每个元素为 待求值的表达式。编辑会话期间会持续累积 所有复杂命令,达到最大长度后 (see 迷你缓冲历史) 新增元素时会删除最旧元素。

command-history
⇒ ((switch-to-buffer "chistory.texi")
    (describe-key "^X^[")
    (visit-tags-table "~/emacs/src/")
    (find-tag "repeat-complex-command"))

该历史列表实际是迷你缓冲区历史的特例 (see 迷你缓冲历史), 特殊之处在于元素是表达式而非字符串。

有若干命令用于编辑和调用历史命令。 repeat-complex-commandlist-command-history 在用户手册中说明 (see Repetition in The GNU Emacs Manual)。 在迷你缓冲区中可使用常规历史命令。

emacs

Emacs

org-mode

Orgmode

Donations

打赏

Copyright

© Jasper Hsu

Creative Commons

Creative Commons

Attribute

Attribute

Noncommercial

Noncommercial

Share Alike

Share Alike