如果没有给出参数,则在vim中打开默认文件

时间:2016-11-21 21:14:55

标签: vim

如果在命令行上没有参数调用~/Desktop/now.md命令,如何配置vim来打开默认文件(在我的情况下为vim)?

2 个答案:

答案 0 :(得分:0)

将以下内容添加到.vimrc

au VimEnter * if eval("@%") == "" | e ~/Desktop/now.md | endif

这告诉vim每当你使用任何文件类型(VimEnter)启动vim(*)时运行以下ex命令:

if eval("@%") == "" | e ~/Desktop/now.md | endif

这非常简单。寄存器'%'包含您正在编辑的文件的名称,因此我们对其进行评估并查看它是否为空。如果是,请告诉vim打开指定的文件。

推荐阅读:autocommands

答案 1 :(得分:0)

可能更容易在shell中处理它而不是vim。

您可以在.bash_profile / .zshrc

中添加类似的内容
alias vim='if [ $# -eq 0 ]; then command vim ~/Desktop/now.md; else command vim "$@"; fi;'
  1. $#是传递给命令的参数数量
  2. "$@"列出了传递给命令的所有参数
  3. 为了避免递归调用vim别名,我们在vim命令前加上command关键字,这样就避免了别名。