问题标签 [autocmd]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
160 浏览

vim - 使用 vim netrw 打开文件时跳转到最后一个位置

我希望自动跳转到我打开的任何文件中的最后一个位置。

我的 ~/.vimrc 文件中有:

vim如果我使用命令打开文件,这很好。

但是,如果我vim .在目录中写入以加载 netrw 并用于t在新选项卡中打开文件,则光标会出现在文件的顶部而不是最后一个位置。

然后我必须使用`"跳转到最后一个位置。

使用 netrw 和时有什么方法可以跳到最后一个位置t吗?

谢谢。

0 投票
1 回答
250 浏览

vim - Vim autocmd 没有正确映射映射

我想创建一个插件,将某个 localleader 映射映射到函数调用。

我有一个包含以下内容的 ftplugin/javascript.vim 文件:

当我打开一个 javascript 文件时,会打印该消息,但随后检查映射的组合表明没有这样的映射。

我了解, nnoremap 根本不会映射到其他映射之上。但是,如果我只保留 nnoremap 命令,而不将其放入 autocmd,它将正确映射。只需在命令模式下执行调用也可以正常工作。

我查看了 vim 帮助以了解如何使用 autocmd,但我看不出我使用它的方式与那里解释的内容之间有什么区别。“Learn Vim the Hard Way”一书也没有帮助。

有什么我想念的吗?我应该以不同的方式构建 autocmd 吗?

0 投票
1 回答
118 浏览

vim - Vim - 移动到具有相同缓冲区的其他窗口时调用缓冲区事件

如果我在 vim 中打开一个文件并使用命令 ":split",它会将同一个缓冲区拆分为两个窗口。

在我的 vimrc 我有这个命令:

不幸的是,如果窗口拥有相同的缓冲区,当我从一个窗口移动到另一个窗口时,它们不会被执行。

当我移动到另一个窗口时,即使缓冲区相同,如何执行这些命令?

0 投票
0 回答
101 浏览

vim - 如何确定 Vim 中的当前窗口是否在新选项卡中打开?

在 Vim 中,我使用Startify插件。有几种方法可以使用这个插件打开新的 Vim 选项卡;我想配置我的 Vim 以确保在执行 Startify 后打开到新选项卡中的第一个缓冲区自动执行。:tcd %:h

出于这样的目的,Startify 提供了StartifyBufferOpenedautocmd。不幸的是,这是针对您使用 Startify 打开的每个缓冲区执行的。同样,我知道 Vim 的内置TabNew; 但这会在创建新标签页时触发;我只想:tcd在 Startify 创建的标签页中。

是否有一个我可以构造的 VimScript 函数,当在几个新的缓冲区(即 by )中评估时,如果刚刚为该缓冲区创建了一个新的标签页StartifyBufferOpened,则只会实际运行特定的命令?

0 投票
1 回答
642 浏览

vim - 如何在 Vim 中列出 autocmd 组?

在我的.vimrc我想定义几个autocmd 组。另外,我想避免与任何预先存在的团体发生冲突。如何在 Vim 中列出当前定义的组?

0 投票
0 回答
38 浏览

vim - Autocmd-buflocal 对错误缓冲区的响应

我用 vim 打开一个文件,缓冲区 id( bufnr()) 是2,然后我PreviewJupyterMD在 Vim 命令行中运行一个函数call PreviewJupyterMD()

函数体如下:

所以我所做的是使用edit打开一个新文件并将其加载到缓冲区 3(我也检查了它bufnr())。并在缓冲区 3 中添加一个局部变量。然后当我关闭 Vim 时,我想要MDCleanUp缓冲区 3 的 vim 运行函数。

如果MDCleanUp从磁盘中删除该缓冲区的文件,则检查缓冲区是否有变量:


实际行为MDCleanUp运行了两次,但所有输出消息echom bufnr()都是 2,输出 2 两次!

你能给我一些关于为什么输出的说明或建议:

以及如何让它成为:

提前致谢!

0 投票
1 回答
33 浏览

c++ - 如何创建单个 vim 正则表达式映射以在 windows 中编译和运行 c++ 程序

在linux中我使用了类似的东西

但由于 Windows 使用反斜杠,我想我应该尝试类似

或者

但他们似乎都没有给出预期的结果。了解 vim 脚本的人可以更好地帮助我解决这个问题。我也尝试过其他组合,但似乎没有任何效果。而不是赌博我可能会问的更多想法

0 投票
1 回答
207 浏览

vim - Vim: 禁用 autocmd BufRead (modeline)

从这个答案我执行:

从那时起,我无法禁用BufRead

我可以打开一个文件并取消设置模式行

但是当我重新打开同一个文件时,它的模式再次自动执行。

我试过noautocmd - autocmd-remove

注意我想禁用所有自动执行,因为BufRead,而不仅仅是它设置的单个事件,就像这里解释的那样:https ://stackoverflow.com/a/40173033/9391770

0 投票
0 回答
344 浏览

vim - 更改文件类型上的 Vim 航空公司配色方案

快速可能简单的问题我已将 vimrc 设置为在加载不同的文件类型时更改颜色方案;(不要问我为什么,但我的大脑会根据颜色将自己设置为相应的语言)为了做到这一点,我使用了如下的逻辑 autocmd

它位于我相对较小的 vimrc 的底部,并且插件是使用 dot 文件从上面获取的——它似乎首先加载。由于某种原因完全超出了我的理解,但是虽然色彩主题正在发挥作用,但航空公司的主题根本不想玩;我找到解决方案最接近的是以下

虽然我会假设因为插件已经加载,但这并不需要函数;任何人都有任何好主意,因为我全力以赴,简单的航空公司主题真的不适合我。

0 投票
1 回答
101 浏览

vim - Vim 仅在删除另一个缓冲区时才删除缓冲区

我已经将 Vim 配置为如下所示:

每个元素都在它自己的缓冲区中。只有在我退出代码缓冲区时才可以删除 REPL 缓冲区吗?例如,如果我打开和关闭帮助,REPL 应该保留,但是当我关闭代码缓冲区时,REPL 缓冲区也应该关闭。
这就是我现在所拥有的:

当我使用:h时,REPL 关闭。我怎样才能防止这种情况?