簡體   English   中英

如何在cygwin中啟動Windows GUI程序?

[英]how to start a windows GUI program in cygwin?

我在Win7中安裝了gVim,而且我正在使用cygwin。

當我在cygwin bashell時,我想輸入“vim aaa.c”,然后讓我的Windows程序gVim為我打開aaa.c.

有人會告訴我做什么配置然后這可行嗎?

直接在cygwin shell中鍵入“notepad”並按Enter鍵即可。 我知道“記事本”可以在Windows的系統變量“路徑”中找到,所以它可以工作。 我已經嘗試將我的gVim.exe的路徑添加到系統變量“path”但它不起作用。

PS:如果你在cygwin shell中輸入“run notepad”,它也會啟動Windows記事本。 但是如何讓我的gVim被cygwin認可就像'記事本'一樣? 我不想每次都在cygwin shell中輸入我的gVim的完整安裝路徑。

謝謝!

最簡單的解決方案是在.bashrc中添加以下行

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

當調用vim do vim foo.txt &&確保進程在后台運行,因此在進程結束之前shell仍然可用。

如果您不想每次都輸入& ,請執行以下別名

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

但最好的解決方案是安裝cygwin vim而不是使用windows版本。 有了一個窗口,你將一直與路徑轉換斗爭。 真的,你希望它適用於以下所有方面:

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

有一些復雜的shell腳本可以幫助緩解問題,但我沒有遇到任何沒有一定警告的問題。

作為快速入侵,請嘗試使用完整路徑名,cygwin樣式,例如/cygdrive/c/Program\\ Files/gVim/gVim.exe

對我來說,以下工作:

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

您可以在~/.profile添加PATH,但添加到Windows PATH變量(通過控制面板)也應該有效。 (請務必使用正常的C:\\...表示法。)

嗯,我很慢。 在您的Windows機器上,有一個Cygwin文件夾,其中包含一個home文件夾和您的username文件夾。 只需打開文件資源管理器並使用windows gvim進行編輯,然后執行保存並在bash中運行它。 沒有必要使這成為一個難題。

我剛剛安裝了Cygwin,當我檢查了我的路徑(echo $ PATH)時,我發現它基本上繼承了路徑中的任何窗口...所以如果你在你的Windows路徑中有gvim你在Cygwin路徑中擁有它...這意味着cygstart gvim將啟動gvim ...非所需的hokey路徑問題...我確信你可以通過命令行args並在后台運行它...

對我來說,cygwin中的'run'命令有效。 它類似於OSX cli中的'open'命令。

這就是我在.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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM