gpt4 book ai didi

emacs - 在多个emacs缓冲区上执行特定命令

转载 作者:行者123 更新时间:2023-12-04 13:41:10 25 4
gpt4 key购买 nike

有没有一种方法可以在多个缓冲区上执行emacs命令,而不必分别选择它们并在每个单独的缓冲区上执行它。

我通常会打开多个与特定正则表达式匹配的文件,例如~/*.py并希望启用特定模式,在每种模式上说hs-minor-modeglasses-mode,或者说在每种模式上执行C-c @ C-M-h。目前,我必须选择其中的每一个并单独进行。因此,是否存在破解或循环来自动执行任务。

可以说我标记了缓冲区列表中的缓冲区,然后为所有已标记的缓冲区运行命令。

我尝试了this,但是在eval-expression中执行命令后,我完全失去了对迷你缓冲区的访问权限,这意味着每当我键入M-x时,迷你缓冲区都会返回此内容

unable to access the minibuffer emacs error "Process Menu Mode doesn't support Hideshow Minor Mode"



并且我被迫杀死了整个emacs进程,因为 C-x C-s无法正常工作,最终任务也是如此。

PS:我没有elisp的经验

最佳答案

您可以为此使用ibuffer模式(它是默认Emacs发行版的一部分)。

(global-set-key "\C-x\C-b" 'ibuffer) ;; make ibuffer the default

*Ibuffer*中,您可以使用 m标记所需的缓冲区,然后
使用 E在每个表单中执行一个表单。

通常, ibuffer比通常的缓冲区列表灵活得多,我认为 ibuffer应该确实是Emacs中的默认缓冲区列表。

如果您经常这样做,则可能需要在每次进入python模式时通过将它们附加到模式 Hook 上来切换这些特定模式:
(add-hook 'python-mode-hook 'hs-minor-mode)
(add-hook 'python-mode-hook 'glasses-mode)

关于emacs - 在多个emacs缓冲区上执行特定命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14293459/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com