6

我在我的 Win7 中安装了 gVim,并且我经常使用 cygwin。

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

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

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

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

谢谢!

4

6 回答 6

8

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

alias vim="/cygdrive/c/Program\ Files\ \(x86\)/vim/vim73/gvim.exe"

调用vimdo时vim foo.txt &&确保进程在后台运行,因此您的 shell 在进程结束之前仍然可用。

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

alias 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 脚本可以帮助缓解这个问题,但我没有遇到任何没有特定警告的脚本。

于 2013-02-19T15:01:10.783 回答
0

作为一个快速破解,尝试使用完整的路径名,cygwin 风格,例如/cygdrive/c/Program\ Files/gVim/gVim.exe.

于 2013-02-19T08:08:12.190 回答
0

对我来说,以下工作:

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

您可以添加到 PATH 中~/.profile,但添加到 Windows PATH 变量(通过控制面板)也应该有效。(那么请务必使用正常C:\...符号。)

于 2013-02-19T12:32:31.900 回答
0

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

于 2015-08-12T14:21:45.853 回答
0

我刚刚安装了 Cygwin,当我检查我的路径(echo $PATH)时,我发现它基本上继承了 Windows 在其路径中的任何内容......所以如果你的 Windows 路径中有 gvim,你的 Cygwin 路径中有它......这意味着cygstart gvim 将启动 gvim...不需要 hokey 路径问题...我相信您也可以传递命令行参数并在后台运行它...

于 2015-08-12T14:26:48.413 回答
0

对我来说,cygwin 中的命令“运行”有效。它类似于 OSX cli 中的“打开”命令。

这就是我在 .bash_aliases 文件中使用它的方式

# 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 的来源

于 2016-05-24T16:27:57.317 回答