Browse files

fuck you too, /bin/bash

  • Loading branch information...
1 parent 2fd60e3 commit f0233869b93f721d41f7e77f94eaa45b82115128 @sjl committed Jun 13, 2013
Showing with 19 additions and 1 deletion.
  1. +19 −1 vim/vimrc
20 vim/vimrc
@@ -33,7 +33,6 @@ set undofile
set undoreload=10000
set list
set listchars=tab:▸\ ,eol:¬,extends:❯,precedes:
-set shell=/bin/bash\ --login
set lazyredraw
set matchtime=3
set showbreak=
@@ -49,6 +48,25 @@ set dictionary=/usr/share/dict/words
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

0 comments on commit f023386

Please sign in to comment.