Как запустить Windows vim из функции в моем .bashrc?

Как запустить Windows vim из функции в моем .bashrc?

Я установил 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"

Связанный контент