VIM学习笔记 命令历史记录 (History)

Vim会将命令历史记录,保存在viminfo文件中;通过viminfo和history选项,可以控制存储历史记录的类型和数量;在命令行模式搜索文本时,则可以重新调用这些历史记录。

命令历史类型

命令历史可以分为以下几种类型({name}):

类型标识内容
c[md]:命令行历史
s[earch]/ or ?查找字符串历史
e[xpr]=表达式寄存器("=)历史
i[nput]@由input()函数输入的历史
d[ebug]>调试命令历史
a[ll]所有类型的历史记录

查看命令历史

使用以下命令,可以显示命令行历史记录:

:history

history

使用以下命令,可以显示所有类型的历史记录:

:history all

history all

使用以下格式的:history命令,可以查看指定类型和指定数目的历史记录:

:his[tory] [{name}] [{first}][, [{last}]]

如果没有指定 {first} 和 {last},那么将会列出所有命令历史。

如果指定了 {first} 和 {last},那么就会列出指定范围内的历史记录条目。例如以下命令,将列出第一到第五条命令行历史:

:history c 1,5

正数,表示历史记录的绝对索引,也就是:history命令列出的第一列数字。即使历史记录中的其它条目被删除了,该索引数字也会保持不变。例如以下命令,将列出指定位置(第五条)命令行历史:

:history c 5

负数,表示历史记录的相对索引。以最新一条记录 (索引号为 -1) 为基准向后算起。如以下命令,将列出所有历史记录中倒数第二条记录:

:history all -2

使用以下命令,则会列出所有历史记录中最近的两条记录:

:history all -2,

使用以下命令,可以查看:history命令的帮助信息:

:help :history

删除历史记录

使用以下命令,可以删除命令行历史记录:

:call histdel("")

可以删除指定类型的历史记录。例如使用以下命令,将删除所有查询历史记录:

:call histdel("seach")

您也可以直接编辑viminfo文件,直接删除其中的历史记录。请注意,需要重启Vim,以重新读取修改后的viminfo文件。

命令历史选项

通过history选项,可以控制记录历史记录的数量(默认为50)。例如以下命令,设置保存1000条命令历史记录:

:set history=1000

请注意:在viminfo选项中,也有命令历史相关参数;请在vimrc配置文件中,检查'viminfo'和'history'设置的的一致性和优先级。

命令小结
:history显示命令行历史记录
:history all显示所有类型的历史记录
:set history设置报错历史记录的数量

Ver: 2.0 | YYQ<上一篇 | 目录 下一篇>