Steve Losh avatar Steve Losh committed 9148639

fuck you too, /bin/bash

Comments (1)

Files changed (1)

 set undoreload=10000
 set list
 set listchars=tab:▸\ ,eol:¬,extends:❯,precedes:❮
-set shell=/bin/bash\ --login
 set lazyredraw
 set matchtime=3
 set showbreak=↪
 set spellfile=~/.vim/custom-dictionary.utf-8.add
 set colorcolumn=+1
 
+" Dear /bin/bash: fuck you and your bullshit, arcane command-line behaviour.
+"
+" Basically, I want to set this to a non-login, non-interactive bash shell.
+" Using a login/interactive bash as Vim's 'shell' breaks subtle things, like
+" ack.vim's command-line argument parsing.  However, I *do* want bash to load
+" ~/.bash_profile so my aliases get loaded and such.
+"
+" You might think you could do this with the --init-file command line option,
+" which is used to specify an init file.  Or with --rcfile.  But no, those only
+" get loaded for interactive/login shells.
+"
+" So how do we tell bash to source a goddamned file when it loads?  With an
+" *environment variable*.  Jesus, you have multiple command line options for
+" specifying files to load and none of them work?
+"
+" Computers are bullshit.
+let $BASH_ENV = "~/.bash_profile"
+set shell=/bin/bash
+
 " Don't try to highlight lines longer than 800 characters.
 set synmaxcol=800
 
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.