Emacs是一款功能强大的文本编辑器,comint缓冲区是用于与外部进程进行交互的一个特殊缓冲区。当你在comint缓冲区中执行命令时,Emacs会将这些命令的历史记录保存起来,以便你可以方便地进行查看和重复执行。
在某些情况下,你可能会发现不同的comint缓冲区似乎共享相同的历史记录。这是因为Emacs默认情况下会将所有comint缓冲区的历史记录保存在同一个地方,即comint-input-ring-file-name
所指定的文件中。这样做的好处是可以方便地在不同的comint缓冲区之间共享历史记录。
如果你希望每个comint缓冲区都有独立的历史记录,你可以通过设置comint-input-ring-file-name
变量来指定不同的文件名,例如:
(setq comint-input-ring-file-name "~/.emacs.d/comint-history")
这样每个comint缓冲区就会将历史记录保存在不同的文件中,从而实现独立的历史记录。
另外,如果你希望禁用历史记录功能,可以将comint-input-ring-file-name
设置为nil
,例如:
(setq comint-input-ring-file-name nil)
这样就不会保存任何历史记录了。
总结起来,comint缓冲区有时似乎共享相同的历史记录是因为Emacs默认将所有comint缓冲区的历史记录保存在同一个文件中。你可以通过设置comint-input-ring-file-name
变量来实现每个comint缓冲区独立的历史记录,或者将其设置为nil
来禁用历史记录功能。
领取专属 10元无门槛券
手把手带您无忧上云