当Vim启动时自动打开Vimwiki

7

我正在使用vimwiki的任务管理功能作为任务管理工具。因此,我经常编辑todo.wiki文件。

每次启动待办事项列表时,我都必须键入一些命令来打开vim.exe(实际上我使用Launchy),然后启动vim,并键入\ww或:VimwikiIndex,这种方式让我感到疲惫。

有没有一种方法可以在需要时自动加载待办事项列表?我的意思是,有时我只想开始编码,我已经在.vimrc中尝试了下面的配置:

autocmd VimEnter * VimwikiIndex

但是 Vim 每次打开时都会显示待办事项清单。因此,我想要像启动参数之类的东西。
1个回答

13

如果您通过将文件传递给 Vim 来开始编码会话,您可以检查:

autocmd VimEnter * if argc() == 0 | execute 'VimwikiIndex' | endif

或者,你可以传递一个虚假文件 wiki 给 Vim,并在该触发器上打开 Wiki:

autocmd VimEnter * if argv() ==# ['wiki'] | execute 'VimwikiIndex' | endif

但我可能会通过shell别名来解决这个问题,而不是在Vim中解决。

alias vimwiki='vim -c VimwikiIndex'

或者在Windows上使用一个小的vimwiki包装批处理文件

@vim -c VimwikiIndex %*

第三个方法是如何工作的?如何编写 .bat 文件?我将第二个方法的代码粘贴到 .vimrc 文件中,出现了错误。 - hank511
你应该包含错误信息,否则我只能猜测。我已经在 :execute 中包装了 VimwikiIndex 命令;插件经常会忘记 -bar 定义。我还添加了批处理包装器,但是这真的很简单。 - Ingo Karkat
抱歉,因为错误是用中文报告的,所以我没有包含它。但是在你添加了:execute这一行之后,再也没有出现任何错误了! - hank511
老实说,我对批处理文件编程是个新手。从现在开始,我会努力学习的。谢谢! - hank511

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接