Saturday, September 1, 2012

Shelling out to cygwin bash from Windows vim

This problem dogged me for many years, and I finally hunkered down to
chase it down.

Here is the solution that I found works for me:

"set shell=c:\cygwin\bin\bash.exe\ -i
"Won't always find ~/.bashrc cuz depending on how vim is launched,
"~ doesn't always resolve to c:/cygwin/home/$USERNAME
"let &shell='c:\cygwin\bin\bash.exe\ --rcfile c:\cygwin\home\' .
" \ $USERNAME . '\.bashrc'
"Backslashes are hated by bash. Also needs -i to ensure bash is
"interactive so that .bashrc is sourced
let &shell='c:\cygwin\bin\bash.exe --rcfile c:/cygwin/home/' .
\ $USERNAME . '/.bashrc -i'
" Depending on how vim is launched, c:/cygwin/home/$USERNAME
" will sometimes be equivalent to ~. If so, then it will be
" replaced by ~ in &shell.

Thanks to all those who helped on the unix, bash, cygwin, and vim
forums.

--
You received this message from the "vim_use" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

No comments:

Post a Comment