如何從 .bashrc 中的函數執行 Windows vim?

如何從 .bashrc 中的函數執行 Windows vim?

我已經安裝了 windows vim 並將以下函數新增到我的 .bashrc 中:

function winvim() {
    local win_vim_path='/cygdrive/c/Program\ Files\ \(x86\)/Vim/vim73/vim.exe'
    #local win_vim_args=`cygpath -w -a "$*"`
    "$win_vim_path"
}

當我輸入 winvim 時,我被告知「沒有這樣的檔案或目錄」。但是,如果我在 cygwin 中明確輸入路徑,vim 將按預期運行。

這裡有什麼問題嗎?

答案1

設定 的值時win_vim_path,需要任何一個單引號或反斜線來轉義空格/括號,但不能同時使用兩者。

local win_vim_path=/cygdrive/c/Program\ Files\ \(x86\)/Vim/vim73/vim.exe

或者

local win_vim_path='/cygdrive/c/Program Files (x86)/Vim/vim73/vim.exe'

首選引用的版本,因為它更易於閱讀和輸入。

答案2

從記憶裡:

local win_vim_path="$(cygpath -u "$PROGRAMFILES")/Vim/vim73/vim.exe"

相關內容