Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/vim/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在cygwin中启动windows GUI程序?_Windows_Vim_Cygwin - Fatal编程技术网

如何在cygwin中启动windows GUI程序?

如何在cygwin中启动windows GUI程序?,windows,vim,cygwin,Windows,Vim,Cygwin,我在Win7中安装了gVim,我经常使用cygwin 当我在cygwin bashell时,我想输入“vim aaa.c”,然后让我的Windows程序gVim为我打开aaa.c 有人会告诉我做什么配置,然后这可以工作吗 直接在cygwin shell中键入“记事本”,然后按enter works。我知道“记事本”可以在Windows的系统变量“path”中找到,所以它可以工作。我已经尝试将我的gVim.exe的路径添加到系统变量“path”中,但它不起作用 注:如果您在cygwin shell

我在Win7中安装了gVim,我经常使用cygwin

当我在cygwin bashell时,我想输入“vim aaa.c”,然后让我的Windows程序gVim为我打开aaa.c

有人会告诉我做什么配置,然后这可以工作吗

直接在cygwin shell中键入“记事本”,然后按enter works。我知道“记事本”可以在Windows的系统变量“path”中找到,所以它可以工作。我已经尝试将我的gVim.exe的路径添加到系统变量“path”中,但它不起作用

注:如果您在cygwin shell中键入“run notepad”,它也会启动Windows notepad。但是如何让我的gVim像“记事本”一样被cygwin识别呢?我不想每次都在cygwin shell中键入gVim的完整安装路径


谢谢

作为一种快速黑客,尝试使用完整的路径名,cygwin样式,例如
/cygdrive/c/Program\Files/gVim/gVim.exe

对我来说,以下工作:

$ PATH=/cygdrive/c/Program\ Files\ \(x86\)/vim/vim73:$PATH
$ gvim

您可以添加到
~/.profile
中的路径,但是添加到Windows路径变量(通过控制面板)也应该可以。(只需确保使用正常的
C:\…
符号即可。)

最简单的解决方案是在.bashrc中添加以下行


别名vim=“/cygdrive/c/Program\Files\\(x86\)/vim/vim73/gvim.exe”

调用
vim
do
vim foo.txt&
时,
&
确保进程在后台运行,以便在进程结束前shell仍然可用

如果不希望每次都键入
&
,请执行以下别名


别名vim=“cygstart/cygdrive/c/Program\Files\\(x86\)/vim/vim73/gvim.exe”

不过,最好的解决方案是安装cygwin vim,而不是使用windows版本。使用windows one,您将始终与路径转换进行斗争。您真的希望它能满足以下所有要求:

vim ~/foo
vim /bar
vim $home/abc
vim /cygpath/c/def
vim "c:\ghi"

有一些复杂的shell脚本可以帮助缓解问题,但我没有遇到任何没有明确警告的脚本

嗯,我很慢。在您的windows计算机上,有一个
Cygwin
文件夹,其中包含
home
文件夹和您的
username
文件夹。只需打开文件资源管理器,用WindowsGVIM编辑它,然后保存并在bash中运行它。没有必要让这成为一个难题。

我刚刚安装了Cygwin,当我检查我的路径时(echo$path)我看到它基本上继承了windows路径中的所有内容…因此,如果在windows路径中有gvim,那么在Cygwin路径中就有gvim…这意味着cygstart gvim将启动gvim…不存在所需的hokey路径问题…我相信您也可以传递命令行参数并在后台运行它…

对于我来说,Cygwin中的命令“run”是正确的作品它类似于OSX cli中的“打开”命令。 这就是我在.bash_别名文件中使用它的方式

# Location of Programs in Win10 that are stored under
# Program Files (x86)
alias x86PF='cd "/cygdrive/c/Program Files (x86)"'

# Navigating to the location of Program Files (x86)
# then switching to the Notepad++ dir
# then calling 'notepad++.exe' with the run command.
# Note the use of the && to run multiple commands in one alias assignement


alias notepad++='x86PF && cd Notepad++ && run notepad++.exe'

使用别名修改文件后,别忘了为.bashrc提供源代码

是否确保对应用于cygwin会话的路径所做的更改?直到您启动一个新模式,更改才会生效……纯文本模式
vim
启动了吗?如果是这样,您需要别名
vim
。这是我键入的:
/cygdrive/c/Program\Files\\(x86\)/vim/vim73/gvim.exe hello.c
——很遗憾,它一点也不快。那么,您得到了什么控制台输出呢?这对我和其他编辑都很有用…谢谢,以上是推荐的作品,但我希望输入的更少,希望不是gVim的完整路径。是的,我可以使用向上箭头键获取历史记录命令,但我正在寻找从cygwin shell启动gVim的理想方法。。。只需键入一个比
gvim aaa.c
运行gvim aaa.c
更多的字母即可!这就是我想要的!我稍微修改了别名:
alias vim=“cygstart/cygdrive/c/Program\Files\\(x86\)/vim/vim73/gvim.exe-p--远程选项卡静默”
--使新文件在“新建”选项卡中打开。是的,我尝试在vim中安装cygwin,但不知道为什么某些键不能正常工作:例如
cw
它没有清除整个单词,但在单词末尾添加了一个
$
。看来cygwin vim不太好。我也有同样的问题。文字已删除,但未从显示中清除。这可能是vimrc的问题。老实说,我很少使用cw。但是我没有注意到cygwin vim有任何其他问题。