没有终端如何启动gvim?

时间:2019-04-14 22:26:07

标签: c vim

我正在尝试使用此行启动gvim:

execl("/usr/bin/gvim", "-f", path, (char *)NULL);

但是我得到

Vim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal

,我不确定该如何解决。我的意思是,我知道输出不是终端,这就是为什么我使用gvim而不是vim的原因。这可能确实很明显,但我不知道。

1 个答案:

答案 0 :(得分:5)

如果您忘记将程序名称作为exec的第一个参数,则gvim将尝试以终端模式打开。

应该是:

execl("/usr/bin/gvim", "/usr/bin/gvim",
      "-f", path, (char *)NULL);

execl手册页中:

  

按照惯例,第一个参数应指向文件名   与正在执行的文件关联。参数列表必须是   由NULL指针终止,并且由于它们是可变函数,   此指针必须强制转换为(char *)NULL。