我想在 Vim 中编辑文本并希望自动执行该过程。这是我的程序:
$ cat /usr/local/bin/example-script
echo "Some Text" > ~/Desktop/filename
nvim ~/Desktop/filename
程序按照终端的要求运行。文件已创建,我可以从 vim 编辑它。
$ example-script
$ cat ~/Desktop/filename
This text was edited from Vim
但是,从键盘快捷键启动该程序时,Vim 不会打开。
脚本的一部分肯定已经被执行,因为执行快捷方式后文件会被重置:
$ cat ~/Desktop/filename
Some Text
答案1
这是一个在终端中运行的程序。通过键盘快捷键而不是终端仿真器运行终端命令不会启动后者。相反,启动的实例vim
位于计算机内存中的某个位置,等待永远不会出现的输入。
将脚本改为gnome-terminal -- nvim ~/Desktop/filename
(如果您使用其他终端仿真器,请用正确的语法替换它)。这样,脚本将打开您的终端并自动打开 vim。当您退出 vim 时,终端仿真器将直接关闭。