【问题标题】:vim autocommand on buffer load/file open?缓冲区加载/文件打开时的vim自动命令?
【发布时间】:2014-02-21 21:38:37
【问题描述】:

我正在尝试在 vim 中打开文件(缓冲区?)时执行自动命令,该文件将通过执行 <Leader>ig 来显示缩进指南。我正在使用 vundle 插件nathanaelkane/vim-indent-guides

我目前正在尝试autocmd BufWinEnter <Leader> ig,但这似乎不起作用。我也试过<Leader>ig

我需要进行哪些更改才能使其正常工作?

【问题讨论】:

    标签: vim vim-plugin autocmd


    【解决方案1】:

    vim-indent-guides 提供了:IndentGuidesEnable 函数。您可以在每次打开文件时执行此操作,方法是将以下内容添加到您的 .vimrc

    autocmd BufReadPre,FileReadPre * :IndentGuidesEnable
    

    【讨论】:

    • 还有BufReadPostFileReadPost,如果你想确保文件的内容已经被首先读取。
    【解决方案2】:

    如果您想在 autocmd 中添加普通模式命令,您可以使用 normalexec ,例如:

    autocmd SomeEvent exec 'normal ' . (exists('mapleader')?mapleader:'\') . 'ig'
    

    我没有测试以上行,应该适用于你的情况。

    我认为更好的方法是,找出 <Leader>ig 映射到什么,它可能是一个函数,在你的 autocmd 中调用该函数。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-03-09
      • 1970-01-01
      相关资源
      最近更新 更多