Thu, 31 Jul 2014 11:42:20 -0400
Merge from default
18
5475788810a4
maps for chdir % and paste mode, add fold marks
Meredith Howard <mhoward@roomag.org>
parents:
14
diff
changeset
|
1 | " vim: et sts=2 sw=2 |
5475788810a4
maps for chdir % and paste mode, add fold marks
Meredith Howard <mhoward@roomag.org>
parents:
14
diff
changeset
|
2 | " vim: fdm=marker |
5475788810a4
maps for chdir % and paste mode, add fold marks
Meredith Howard <mhoward@roomag.org>
parents:
14
diff
changeset
|
3 | |
1 | 4 | set nocompatible |
5 | ||
10
e753144057b8
Windows-compatible vimrc
Meredith Howard <mhoward@roomag.org>
parents:
7
diff
changeset
|
6 | let on_windows=0 |
e753144057b8
Windows-compatible vimrc
Meredith Howard <mhoward@roomag.org>
parents:
7
diff
changeset
|
7 | if has('win32') || has('win64') |
e753144057b8
Windows-compatible vimrc
Meredith Howard <mhoward@roomag.org>
parents:
7
diff
changeset
|
8 | " vim in cygwin has win32 = 0 and win32unix = 1 |
e753144057b8
Windows-compatible vimrc
Meredith Howard <mhoward@roomag.org>
parents:
7
diff
changeset
|
9 | let on_windows=1 |
e753144057b8
Windows-compatible vimrc
Meredith Howard <mhoward@roomag.org>
parents:
7
diff
changeset
|
10 | end |
e753144057b8
Windows-compatible vimrc
Meredith Howard <mhoward@roomag.org>
parents:
7
diff
changeset
|
11 | |
1 | 12 | |
19 | 13 | " Set up Vundle and plugins {{{ |
10
e753144057b8
Windows-compatible vimrc
Meredith Howard <mhoward@roomag.org>
parents:
7
diff
changeset
|
14 | let installed_vundle=0 |
e753144057b8
Windows-compatible vimrc
Meredith Howard <mhoward@roomag.org>
parents:
7
diff
changeset
|
15 | |
e753144057b8
Windows-compatible vimrc
Meredith Howard <mhoward@roomag.org>
parents:
7
diff
changeset
|
16 | if on_windows == 0 |
e753144057b8
Windows-compatible vimrc
Meredith Howard <mhoward@roomag.org>
parents:
7
diff
changeset
|
17 | let vundle_readme=expand('~/.vim/bundle/vundle/README.md') |
e753144057b8
Windows-compatible vimrc
Meredith Howard <mhoward@roomag.org>
parents:
7
diff
changeset
|
18 | else |
e753144057b8
Windows-compatible vimrc
Meredith Howard <mhoward@roomag.org>
parents:
7
diff
changeset
|
19 | let vundle_readme=expand('~/vimfiles/bundle/vundle/README.md') |
e753144057b8
Windows-compatible vimrc
Meredith Howard <mhoward@roomag.org>
parents:
7
diff
changeset
|
20 | endif |
e753144057b8
Windows-compatible vimrc
Meredith Howard <mhoward@roomag.org>
parents:
7
diff
changeset
|
21 | |
1 | 22 | if !filereadable(vundle_readme) |
10
e753144057b8
Windows-compatible vimrc
Meredith Howard <mhoward@roomag.org>
parents:
7
diff
changeset
|
23 | if !executable('git') |
114
599b1b279478
Windows changes -- I can cinst git + ctags + ag easily
Meredith Howard <mhoward@roomag.org>
parents:
111
diff
changeset
|
24 | echo "You probably want git installed and in PATH." |
599b1b279478
Windows changes -- I can cinst git + ctags + ag easily
Meredith Howard <mhoward@roomag.org>
parents:
111
diff
changeset
|
25 | echo " http://chocolatey.org " |
10
e753144057b8
Windows-compatible vimrc
Meredith Howard <mhoward@roomag.org>
parents:
7
diff
changeset
|
26 | quit |
e753144057b8
Windows-compatible vimrc
Meredith Howard <mhoward@roomag.org>
parents:
7
diff
changeset
|
27 | endif |
e753144057b8
Windows-compatible vimrc
Meredith Howard <mhoward@roomag.org>
parents:
7
diff
changeset
|
28 | |
e753144057b8
Windows-compatible vimrc
Meredith Howard <mhoward@roomag.org>
parents:
7
diff
changeset
|
29 | let installed_vundle=1 |
e753144057b8
Windows-compatible vimrc
Meredith Howard <mhoward@roomag.org>
parents:
7
diff
changeset
|
30 | if on_windows == 0 |
13
c061abf8217c
Be more defensive on windows, clean up and add sections
Meredith Howard <mhoward@roomag.org>
parents:
12
diff
changeset
|
31 | echo "Installing Vundle..." |
c061abf8217c
Be more defensive on windows, clean up and add sections
Meredith Howard <mhoward@roomag.org>
parents:
12
diff
changeset
|
32 | echo "" |
10
e753144057b8
Windows-compatible vimrc
Meredith Howard <mhoward@roomag.org>
parents:
7
diff
changeset
|
33 | silent !mkdir -p ~/.vim/bundle |
e753144057b8
Windows-compatible vimrc
Meredith Howard <mhoward@roomag.org>
parents:
7
diff
changeset
|
34 | silent !git clone https://github.com/gmarik/vundle ~/.vim/bundle/vundle |
e753144057b8
Windows-compatible vimrc
Meredith Howard <mhoward@roomag.org>
parents:
7
diff
changeset
|
35 | else |
13
c061abf8217c
Be more defensive on windows, clean up and add sections
Meredith Howard <mhoward@roomag.org>
parents:
12
diff
changeset
|
36 | echo "Installing Vundle and Plugins..." |
c061abf8217c
Be more defensive on windows, clean up and add sections
Meredith Howard <mhoward@roomag.org>
parents:
12
diff
changeset
|
37 | " This happens in a series of minimized cmd windows rather than the cool |
c061abf8217c
Be more defensive on windows, clean up and add sections
Meredith Howard <mhoward@roomag.org>
parents:
12
diff
changeset
|
38 | " progress display we normally get. |
c061abf8217c
Be more defensive on windows, clean up and add sections
Meredith Howard <mhoward@roomag.org>
parents:
12
diff
changeset
|
39 | |
c061abf8217c
Be more defensive on windows, clean up and add sections
Meredith Howard <mhoward@roomag.org>
parents:
12
diff
changeset
|
40 | " Also windows is weird about args and quoting: |
10
e753144057b8
Windows-compatible vimrc
Meredith Howard <mhoward@roomag.org>
parents:
7
diff
changeset
|
41 | silent execute '!mkdir "'. $HOME .'\vimfiles\bundle"' |
e753144057b8
Windows-compatible vimrc
Meredith Howard <mhoward@roomag.org>
parents:
7
diff
changeset
|
42 | silent execute '!git clone https://github.com/gmarik/vundle "'. $HOME .'\vimfiles\bundle\vundle"' |
e753144057b8
Windows-compatible vimrc
Meredith Howard <mhoward@roomag.org>
parents:
7
diff
changeset
|
43 | endif |
1 | 44 | endif |
45 | ||
10
e753144057b8
Windows-compatible vimrc
Meredith Howard <mhoward@roomag.org>
parents:
7
diff
changeset
|
46 | if on_windows == 0 |
e753144057b8
Windows-compatible vimrc
Meredith Howard <mhoward@roomag.org>
parents:
7
diff
changeset
|
47 | set rtp+=~/.vim/bundle/vundle/ |
12
3e475410324b
Another windows fix, guess rc isn't just a api change
Meredith Howard <mhoward@roomag.org>
parents:
11
diff
changeset
|
48 | call vundle#rc() |
10
e753144057b8
Windows-compatible vimrc
Meredith Howard <mhoward@roomag.org>
parents:
7
diff
changeset
|
49 | else |
e753144057b8
Windows-compatible vimrc
Meredith Howard <mhoward@roomag.org>
parents:
7
diff
changeset
|
50 | set rtp+=~/vimfiles/bundle/vundle/ |
12
3e475410324b
Another windows fix, guess rc isn't just a api change
Meredith Howard <mhoward@roomag.org>
parents:
11
diff
changeset
|
51 | call vundle#rc('~/vimfiles/bundle') |
10
e753144057b8
Windows-compatible vimrc
Meredith Howard <mhoward@roomag.org>
parents:
7
diff
changeset
|
52 | endif |
e753144057b8
Windows-compatible vimrc
Meredith Howard <mhoward@roomag.org>
parents:
7
diff
changeset
|
53 | |
1 | 54 | Plugin 'gmarik/vundle' |
55 | ||
56 | Plugin 'altercation/vim-colors-solarized' | |
57 | Plugin 'bling/vim-airline' | |
58 | ||
59 | Plugin 'Shougo/vimproc.vim' | |
60 | Plugin 'Shougo/unite.vim' | |
61 | Plugin 'Shougo/vimshell.vim' | |
87 | 62 | Plugin 'Shougo/vimfiler.vim' |
1 | 63 | Plugin 'sjl/gundo.vim' |
64 | Plugin 'majutsushi/tagbar' | |
65 | Plugin 'godlygeek/tabular' | |
66 | Plugin 'tomtom/tcomment_vim' | |
82 | 67 | Plugin 'tpope/vim-unimpaired' |
83
29dc36168071
add endwise, disable auto comment leaders on newline
Meredith Howard <mhoward@roomag.org>
parents:
82
diff
changeset
|
68 | Plugin 'tpope/vim-endwise' |
1 | 69 | |
109
14b6da5839f0
Add/set up perl and ruby omnicomplete
Meredith Howard <mhoward@roomag.org>
parents:
107
diff
changeset
|
70 | Plugin 'Shougo/neocomplcache.vim' |
14b6da5839f0
Add/set up perl and ruby omnicomplete
Meredith Howard <mhoward@roomag.org>
parents:
107
diff
changeset
|
71 | Plugin 'c9s/perlomni.vim' |
115
6d6751c819ad
Add ag and matchit.vim to make % matching nicer
Meredith Howard <mhoward@roomag.org>
parents:
114
diff
changeset
|
72 | Plugin 'rking/ag.vim' |
109
14b6da5839f0
Add/set up perl and ruby omnicomplete
Meredith Howard <mhoward@roomag.org>
parents:
107
diff
changeset
|
73 | |
1 | 74 | Plugin 'tpope/vim-fugitive' |
75 | Plugin 'ludovicchabant/vim-lawrencium' | |
85 | 76 | Plugin 'mhinz/vim-signify' |
1 | 77 | |
86
6fb982f177b3
Get the latest vim-{perl,ruby} kits and only try to force size on windows gui
Meredith Howard <mhoward@roomag.org>
parents:
85
diff
changeset
|
78 | Plugin 'danchoi/ri.vim' |
6fb982f177b3
Get the latest vim-{perl,ruby} kits and only try to force size on windows gui
Meredith Howard <mhoward@roomag.org>
parents:
85
diff
changeset
|
79 | Plugin 'vim-ruby/vim-ruby' |
6fb982f177b3
Get the latest vim-{perl,ruby} kits and only try to force size on windows gui
Meredith Howard <mhoward@roomag.org>
parents:
85
diff
changeset
|
80 | Plugin 'vim-perl/vim-perl' |
6fb982f177b3
Get the latest vim-{perl,ruby} kits and only try to force size on windows gui
Meredith Howard <mhoward@roomag.org>
parents:
85
diff
changeset
|
81 | |
115
6d6751c819ad
Add ag and matchit.vim to make % matching nicer
Meredith Howard <mhoward@roomag.org>
parents:
114
diff
changeset
|
82 | |
10
e753144057b8
Windows-compatible vimrc
Meredith Howard <mhoward@roomag.org>
parents:
7
diff
changeset
|
83 | if installed_vundle == 1 |
1 | 84 | echo "Installing Plugins, please ignore key map error messages" |
85 | echo "" | |
86 | :PluginInstall | |
13
c061abf8217c
Be more defensive on windows, clean up and add sections
Meredith Howard <mhoward@roomag.org>
parents:
12
diff
changeset
|
87 | if on_windows == 1 |
c061abf8217c
Be more defensive on windows, clean up and add sections
Meredith Howard <mhoward@roomag.org>
parents:
12
diff
changeset
|
88 | " Windows build just isn't there with exec $0, so we already |
c061abf8217c
Be more defensive on windows, clean up and add sections
Meredith Howard <mhoward@roomag.org>
parents:
12
diff
changeset
|
89 | " have some odd errors and get a weird UI at the end. |
c061abf8217c
Be more defensive on windows, clean up and add sections
Meredith Howard <mhoward@roomag.org>
parents:
12
diff
changeset
|
90 | echo "Please restart vim to continue with plugins installed." |
c061abf8217c
Be more defensive on windows, clean up and add sections
Meredith Howard <mhoward@roomag.org>
parents:
12
diff
changeset
|
91 | quit |
c061abf8217c
Be more defensive on windows, clean up and add sections
Meredith Howard <mhoward@roomag.org>
parents:
12
diff
changeset
|
92 | endif |
1 | 93 | endif |
18
5475788810a4
maps for chdir % and paste mode, add fold marks
Meredith Howard <mhoward@roomag.org>
parents:
14
diff
changeset
|
94 | " }}} |
1 | 95 | |
96 | ||
19 | 97 | " Key maps, mostly plugin stuff on F-keys {{{ |
13
c061abf8217c
Be more defensive on windows, clean up and add sections
Meredith Howard <mhoward@roomag.org>
parents:
12
diff
changeset
|
98 | nmap <silent> <F1> :Unite buffer<CR> |
87 | 99 | nmap <silent> <F2> :VimFilerExplorer<CR> |
13
c061abf8217c
Be more defensive on windows, clean up and add sections
Meredith Howard <mhoward@roomag.org>
parents:
12
diff
changeset
|
100 | nmap <silent> <F3> :VimShell<CR> |
c061abf8217c
Be more defensive on windows, clean up and add sections
Meredith Howard <mhoward@roomag.org>
parents:
12
diff
changeset
|
101 | map <silent> <F4> :noh<CR> |
c061abf8217c
Be more defensive on windows, clean up and add sections
Meredith Howard <mhoward@roomag.org>
parents:
12
diff
changeset
|
102 | nmap <silent> <F5> :GundoToggle<CR> |
c061abf8217c
Be more defensive on windows, clean up and add sections
Meredith Howard <mhoward@roomag.org>
parents:
12
diff
changeset
|
103 | nmap <silent> <F8> :TagbarToggle<CR> |
c061abf8217c
Be more defensive on windows, clean up and add sections
Meredith Howard <mhoward@roomag.org>
parents:
12
diff
changeset
|
104 | |
c061abf8217c
Be more defensive on windows, clean up and add sections
Meredith Howard <mhoward@roomag.org>
parents:
12
diff
changeset
|
105 | " This is supposed to get a CtrlP workalike with fuzzy match |
c061abf8217c
Be more defensive on windows, clean up and add sections
Meredith Howard <mhoward@roomag.org>
parents:
12
diff
changeset
|
106 | " but i need to fix ignores and always chdir to a good place |
c061abf8217c
Be more defensive on windows, clean up and add sections
Meredith Howard <mhoward@roomag.org>
parents:
12
diff
changeset
|
107 | if on_windows == 1 |
c061abf8217c
Be more defensive on windows, clean up and add sections
Meredith Howard <mhoward@roomag.org>
parents:
12
diff
changeset
|
108 | nmap <silent> <S-F2> :Unite -start-insert file_rec:!<CR> |
c061abf8217c
Be more defensive on windows, clean up and add sections
Meredith Howard <mhoward@roomag.org>
parents:
12
diff
changeset
|
109 | else |
c061abf8217c
Be more defensive on windows, clean up and add sections
Meredith Howard <mhoward@roomag.org>
parents:
12
diff
changeset
|
110 | nmap <silent> <S-F2> :Unite -start-insert file_rec/async:!<CR> |
c061abf8217c
Be more defensive on windows, clean up and add sections
Meredith Howard <mhoward@roomag.org>
parents:
12
diff
changeset
|
111 | endif |
c061abf8217c
Be more defensive on windows, clean up and add sections
Meredith Howard <mhoward@roomag.org>
parents:
12
diff
changeset
|
112 | |
c061abf8217c
Be more defensive on windows, clean up and add sections
Meredith Howard <mhoward@roomag.org>
parents:
12
diff
changeset
|
113 | " F-n keys call out to normal mode from insert mode |
111
99cc7b567195
Easier window navigation, disable insert-mode F-keys except F4
Meredith Howard <mhoward@roomag.org>
parents:
109
diff
changeset
|
114 | " only :noh seems smart to do. |
99cc7b567195
Easier window navigation, disable insert-mode F-keys except F4
Meredith Howard <mhoward@roomag.org>
parents:
109
diff
changeset
|
115 | "imap <F1> <C-O><F1> |
99cc7b567195
Easier window navigation, disable insert-mode F-keys except F4
Meredith Howard <mhoward@roomag.org>
parents:
109
diff
changeset
|
116 | "imap <F2> <C-O><F2> |
13
c061abf8217c
Be more defensive on windows, clean up and add sections
Meredith Howard <mhoward@roomag.org>
parents:
12
diff
changeset
|
117 | "imap <F3> <C-O><F3> |
c061abf8217c
Be more defensive on windows, clean up and add sections
Meredith Howard <mhoward@roomag.org>
parents:
12
diff
changeset
|
118 | imap <F4> <C-O><F4> |
111
99cc7b567195
Easier window navigation, disable insert-mode F-keys except F4
Meredith Howard <mhoward@roomag.org>
parents:
109
diff
changeset
|
119 | "imap <F5> <C-O><F5> |
13
c061abf8217c
Be more defensive on windows, clean up and add sections
Meredith Howard <mhoward@roomag.org>
parents:
12
diff
changeset
|
120 | "imap <F6> <C-O><F6> |
c061abf8217c
Be more defensive on windows, clean up and add sections
Meredith Howard <mhoward@roomag.org>
parents:
12
diff
changeset
|
121 | "imap <F7> <C-O><F7> |
111
99cc7b567195
Easier window navigation, disable insert-mode F-keys except F4
Meredith Howard <mhoward@roomag.org>
parents:
109
diff
changeset
|
122 | "imap <F8> <C-O><F8> |
13
c061abf8217c
Be more defensive on windows, clean up and add sections
Meredith Howard <mhoward@roomag.org>
parents:
12
diff
changeset
|
123 | |
18
5475788810a4
maps for chdir % and paste mode, add fold marks
Meredith Howard <mhoward@roomag.org>
parents:
14
diff
changeset
|
124 | " chdir to the directory of the open buffer |
5475788810a4
maps for chdir % and paste mode, add fold marks
Meredith Howard <mhoward@roomag.org>
parents:
14
diff
changeset
|
125 | map <leader>cd :cd %:p:h<cr>:pwd<cr> |
13
c061abf8217c
Be more defensive on windows, clean up and add sections
Meredith Howard <mhoward@roomag.org>
parents:
12
diff
changeset
|
126 | |
18
5475788810a4
maps for chdir % and paste mode, add fold marks
Meredith Howard <mhoward@roomag.org>
parents:
14
diff
changeset
|
127 | map <leader>pp :setlocal paste!<cr> |
111
99cc7b567195
Easier window navigation, disable insert-mode F-keys except F4
Meredith Howard <mhoward@roomag.org>
parents:
109
diff
changeset
|
128 | |
99cc7b567195
Easier window navigation, disable insert-mode F-keys except F4
Meredith Howard <mhoward@roomag.org>
parents:
109
diff
changeset
|
129 | " faster window nav |
99cc7b567195
Easier window navigation, disable insert-mode F-keys except F4
Meredith Howard <mhoward@roomag.org>
parents:
109
diff
changeset
|
130 | nmap <C-h> <C-w>h |
99cc7b567195
Easier window navigation, disable insert-mode F-keys except F4
Meredith Howard <mhoward@roomag.org>
parents:
109
diff
changeset
|
131 | nmap <C-j> <C-w>j |
99cc7b567195
Easier window navigation, disable insert-mode F-keys except F4
Meredith Howard <mhoward@roomag.org>
parents:
109
diff
changeset
|
132 | nmap <C-k> <C-w>k |
99cc7b567195
Easier window navigation, disable insert-mode F-keys except F4
Meredith Howard <mhoward@roomag.org>
parents:
109
diff
changeset
|
133 | nmap <C-l> <C-w>l |
18
5475788810a4
maps for chdir % and paste mode, add fold marks
Meredith Howard <mhoward@roomag.org>
parents:
14
diff
changeset
|
134 | "}}} |
5475788810a4
maps for chdir % and paste mode, add fold marks
Meredith Howard <mhoward@roomag.org>
parents:
14
diff
changeset
|
135 | |
5475788810a4
maps for chdir % and paste mode, add fold marks
Meredith Howard <mhoward@roomag.org>
parents:
14
diff
changeset
|
136 | |
19 | 137 | " General settings {{{ |
1 | 138 | syntax on |
139 | filetype plugin indent on | |
140 | ||
141 | set enc=utf-8 | |
142 | ||
143 | set hlsearch | |
144 | set ic smartcase | |
145 | ||
120
3a676c8eaafe
Set unicode stuff only if we think it's available, use better fold and vsplit chars
Meredith Howard <mhoward@roomag.org>
parents:
118
diff
changeset
|
146 | if has('gui_running') || $LANG =~ 'UTF-8' |
3a676c8eaafe
Set unicode stuff only if we think it's available, use better fold and vsplit chars
Meredith Howard <mhoward@roomag.org>
parents:
118
diff
changeset
|
147 | set lcs=tab:⇥·,trail:· |
3a676c8eaafe
Set unicode stuff only if we think it's available, use better fold and vsplit chars
Meredith Howard <mhoward@roomag.org>
parents:
118
diff
changeset
|
148 | " eol:↩ not as useful as trail i think |
3a676c8eaafe
Set unicode stuff only if we think it's available, use better fold and vsplit chars
Meredith Howard <mhoward@roomag.org>
parents:
118
diff
changeset
|
149 | set fillchars=fold:∷,vert:│ |
3a676c8eaafe
Set unicode stuff only if we think it's available, use better fold and vsplit chars
Meredith Howard <mhoward@roomag.org>
parents:
118
diff
changeset
|
150 | endif |
1 | 151 | |
152 | set ve=block | |
153 | ||
154 | set autoindent | |
155 | set expandtab | |
156 | set shiftwidth=2 | |
157 | set softtabstop=2 | |
158 | ||
159 | set backspace=indent,eol,start | |
160 | ||
13
c061abf8217c
Be more defensive on windows, clean up and add sections
Meredith Howard <mhoward@roomag.org>
parents:
12
diff
changeset
|
161 | "set nu |
1 | 162 | set scrolloff=2 |
163 | set ruler | |
164 | set showcmd | |
165 | set wildmenu | |
166 | ||
18
5475788810a4
maps for chdir % and paste mode, add fold marks
Meredith Howard <mhoward@roomag.org>
parents:
14
diff
changeset
|
167 | " Ignore compiled files and repositories |
5475788810a4
maps for chdir % and paste mode, add fold marks
Meredith Howard <mhoward@roomag.org>
parents:
14
diff
changeset
|
168 | set wildignore=*.o,*~,*.pyc |
5475788810a4
maps for chdir % and paste mode, add fold marks
Meredith Howard <mhoward@roomag.org>
parents:
14
diff
changeset
|
169 | if on_windows == 1 |
5475788810a4
maps for chdir % and paste mode, add fold marks
Meredith Howard <mhoward@roomag.org>
parents:
14
diff
changeset
|
170 | set wildignore+=*/.git/*,*/.hg/*,*/.svn/*,*/.DS_Store |
5475788810a4
maps for chdir % and paste mode, add fold marks
Meredith Howard <mhoward@roomag.org>
parents:
14
diff
changeset
|
171 | else |
5475788810a4
maps for chdir % and paste mode, add fold marks
Meredith Howard <mhoward@roomag.org>
parents:
14
diff
changeset
|
172 | set wildignore+=.git\*,.hg\*,.svn\* |
5475788810a4
maps for chdir % and paste mode, add fold marks
Meredith Howard <mhoward@roomag.org>
parents:
14
diff
changeset
|
173 | endif |
5475788810a4
maps for chdir % and paste mode, add fold marks
Meredith Howard <mhoward@roomag.org>
parents:
14
diff
changeset
|
174 | |
115
6d6751c819ad
Add ag and matchit.vim to make % matching nicer
Meredith Howard <mhoward@roomag.org>
parents:
114
diff
changeset
|
175 | " Enable enhanced % matching in ruby |
6d6751c819ad
Add ag and matchit.vim to make % matching nicer
Meredith Howard <mhoward@roomag.org>
parents:
114
diff
changeset
|
176 | runtime macros/matchit.vim |
6d6751c819ad
Add ag and matchit.vim to make % matching nicer
Meredith Howard <mhoward@roomag.org>
parents:
114
diff
changeset
|
177 | |
1 | 178 | " Don't assume to scan includes when autocompleting |
179 | set cpt-=i | |
180 | ||
181 | " Never open with folds collapsed | |
182 | set nofoldenable | |
183 | ||
184 | set lbr | |
185 | set sbr=»\ | |
186 | ||
13
c061abf8217c
Be more defensive on windows, clean up and add sections
Meredith Howard <mhoward@roomag.org>
parents:
12
diff
changeset
|
187 | " Superseded by vim-airline |
c061abf8217c
Be more defensive on windows, clean up and add sections
Meredith Howard <mhoward@roomag.org>
parents:
12
diff
changeset
|
188 | "set statusline=%f%m%r%h%w\ %y\ %=%l,%c\ %p%%\ %L |
14 | 189 | set laststatus=2 |
1 | 190 | |
10
e753144057b8
Windows-compatible vimrc
Meredith Howard <mhoward@roomag.org>
parents:
7
diff
changeset
|
191 | if on_windows == 1 |
1 | 192 | let $MYVIM=$HOME.'/vimfiles' |
193 | ||
194 | if !filewritable( $MYVIM . '/var' ) | |
195 | silent execute '!mkdir "'.$HOME.'\vimfiles\var"' | |
196 | endif | |
197 | if !filewritable( $MYVIM. '/var/backup' ) | |
198 | silent execute '!mkdir "'.$HOME.'\vimfiles\var\backup"' | |
199 | endif | |
200 | if !filewritable( $MYVIM . '/var/tmp' ) | |
201 | silent execute '!mkdir "'.$HOME.'\vimfiles\var\tmp"' | |
202 | endif | |
203 | if !filewritable( $MYVIM . '/var/undo' ) | |
204 | silent execute '!mkdir "'.$HOME.'\vimfiles\var\undo"' | |
205 | endif | |
206 | ||
207 | else | |
208 | let $MYVIM=$HOME.'/.vim' | |
209 | ||
210 | if !filewritable( $MYVIM . '/var/backup' ) | |
211 | silent execute '!mkdir -p "'.$MYVIM.'/var/backup"' | |
212 | endif | |
213 | if !filewritable( $MYVIM . '/var/tmp' ) | |
214 | silent execute '!mkdir "'.$MYVIM.'/var/tmp"' | |
215 | endif | |
216 | if !filewritable( $MYVIM . '/var/undo' ) | |
217 | silent execute '!mkdir "'.$MYVIM.'/var/undo"' | |
218 | endif | |
219 | ||
220 | endif | |
221 | ||
74
b1001f2f0523
Oops, windows font specs are different
Meredith Howard <mhoward@roomag.org>
parents:
73
diff
changeset
|
222 | if on_windows == 1 |
75
2b4633385693
Fuck everything Droid, use DejaVu. Droid is less unicode complete but only Xwin masks the rest in with font substitution
Meredith Howard <mhoward@roomag.org>
parents:
74
diff
changeset
|
223 | set guifont=DejaVu_Sans_Mono:h10:cDEFAULT |
74
b1001f2f0523
Oops, windows font specs are different
Meredith Howard <mhoward@roomag.org>
parents:
73
diff
changeset
|
224 | set lsp=0 |
b1001f2f0523
Oops, windows font specs are different
Meredith Howard <mhoward@roomag.org>
parents:
73
diff
changeset
|
225 | else |
75
2b4633385693
Fuck everything Droid, use DejaVu. Droid is less unicode complete but only Xwin masks the rest in with font substitution
Meredith Howard <mhoward@roomag.org>
parents:
74
diff
changeset
|
226 | set guifont=DejaVu\ Sans\ Mono\ 10 |
74
b1001f2f0523
Oops, windows font specs are different
Meredith Howard <mhoward@roomag.org>
parents:
73
diff
changeset
|
227 | endif |
b1001f2f0523
Oops, windows font specs are different
Meredith Howard <mhoward@roomag.org>
parents:
73
diff
changeset
|
228 | |
72
d1ae56d8fdc4
Same guioptions on w32 and unix, and guifont
Meredith Howard <mhoward@roomag.org>
parents:
20
diff
changeset
|
229 | set guioptions-=T "disable toolbar and menu |
d1ae56d8fdc4
Same guioptions on w32 and unix, and guifont
Meredith Howard <mhoward@roomag.org>
parents:
20
diff
changeset
|
230 | set guioptions-=m |
d1ae56d8fdc4
Same guioptions on w32 and unix, and guifont
Meredith Howard <mhoward@roomag.org>
parents:
20
diff
changeset
|
231 | set guioptions-=t "disable tearoffs |
d1ae56d8fdc4
Same guioptions on w32 and unix, and guifont
Meredith Howard <mhoward@roomag.org>
parents:
20
diff
changeset
|
232 | |
1 | 233 | set backupdir=$MYVIM/var/backup//,. |
234 | set directory=$MYVIM/var/tmp//,. | |
235 | ||
236 | set backup | |
237 | set autowrite | |
238 | ||
239 | if has('persistent_undo') | |
240 | set undofile | |
241 | set undodir=$MYVIM/var/undo//,. | |
242 | end | |
18
5475788810a4
maps for chdir % and paste mode, add fold marks
Meredith Howard <mhoward@roomag.org>
parents:
14
diff
changeset
|
243 | " }}} |
1 | 244 | |
245 | ||
105
f3d684572a8f
group up autocmds so they can be cleared if vimrc is reloaded
Meredith Howard <mhoward@roomag.org>
parents:
87
diff
changeset
|
246 | " Autocmds {{{ |
f3d684572a8f
group up autocmds so they can be cleared if vimrc is reloaded
Meredith Howard <mhoward@roomag.org>
parents:
87
diff
changeset
|
247 | augroup vimrc |
f3d684572a8f
group up autocmds so they can be cleared if vimrc is reloaded
Meredith Howard <mhoward@roomag.org>
parents:
87
diff
changeset
|
248 | autocmd! |
f3d684572a8f
group up autocmds so they can be cleared if vimrc is reloaded
Meredith Howard <mhoward@roomag.org>
parents:
87
diff
changeset
|
249 | |
f3d684572a8f
group up autocmds so they can be cleared if vimrc is reloaded
Meredith Howard <mhoward@roomag.org>
parents:
87
diff
changeset
|
250 | " you have to go out of your way to make this stick |
f3d684572a8f
group up autocmds so they can be cleared if vimrc is reloaded
Meredith Howard <mhoward@roomag.org>
parents:
87
diff
changeset
|
251 | autocmd BufNewFile,BufRead * setlocal formatoptions-=ro |
f3d684572a8f
group up autocmds so they can be cleared if vimrc is reloaded
Meredith Howard <mhoward@roomag.org>
parents:
87
diff
changeset
|
252 | |
f3d684572a8f
group up autocmds so they can be cleared if vimrc is reloaded
Meredith Howard <mhoward@roomag.org>
parents:
87
diff
changeset
|
253 | autocmd FileType text setlocal textwidth=78 |
f3d684572a8f
group up autocmds so they can be cleared if vimrc is reloaded
Meredith Howard <mhoward@roomag.org>
parents:
87
diff
changeset
|
254 | autocmd FileType perl call PerlSettings() |
f3d684572a8f
group up autocmds so they can be cleared if vimrc is reloaded
Meredith Howard <mhoward@roomag.org>
parents:
87
diff
changeset
|
255 | |
f3d684572a8f
group up autocmds so they can be cleared if vimrc is reloaded
Meredith Howard <mhoward@roomag.org>
parents:
87
diff
changeset
|
256 | " preload templates into new buffers by file extension |
f3d684572a8f
group up autocmds so they can be cleared if vimrc is reloaded
Meredith Howard <mhoward@roomag.org>
parents:
87
diff
changeset
|
257 | "autocmd BufNewFile * silent! 0r $MYVIM/templates/%:e.template |
f3d684572a8f
group up autocmds so they can be cleared if vimrc is reloaded
Meredith Howard <mhoward@roomag.org>
parents:
87
diff
changeset
|
258 | |
f3d684572a8f
group up autocmds so they can be cleared if vimrc is reloaded
Meredith Howard <mhoward@roomag.org>
parents:
87
diff
changeset
|
259 | " simple strip trailing whitespace on save |
f3d684572a8f
group up autocmds so they can be cleared if vimrc is reloaded
Meredith Howard <mhoward@roomag.org>
parents:
87
diff
changeset
|
260 | "autocmd BufWritePre *.pl,*.rb,*.js,*.css,*.md :%s/\s+$//e |
f3d684572a8f
group up autocmds so they can be cleared if vimrc is reloaded
Meredith Howard <mhoward@roomag.org>
parents:
87
diff
changeset
|
261 | |
f3d684572a8f
group up autocmds so they can be cleared if vimrc is reloaded
Meredith Howard <mhoward@roomag.org>
parents:
87
diff
changeset
|
262 | augroup END |
f3d684572a8f
group up autocmds so they can be cleared if vimrc is reloaded
Meredith Howard <mhoward@roomag.org>
parents:
87
diff
changeset
|
263 | "}}} |
f3d684572a8f
group up autocmds so they can be cleared if vimrc is reloaded
Meredith Howard <mhoward@roomag.org>
parents:
87
diff
changeset
|
264 | |
f3d684572a8f
group up autocmds so they can be cleared if vimrc is reloaded
Meredith Howard <mhoward@roomag.org>
parents:
87
diff
changeset
|
265 | |
f3d684572a8f
group up autocmds so they can be cleared if vimrc is reloaded
Meredith Howard <mhoward@roomag.org>
parents:
87
diff
changeset
|
266 | " Perl type-specific settings {{{ |
1 | 267 | |
268 | function! PerlSettings () | |
105
f3d684572a8f
group up autocmds so they can be cleared if vimrc is reloaded
Meredith Howard <mhoward@roomag.org>
parents:
87
diff
changeset
|
269 | compiler perl |
f3d684572a8f
group up autocmds so they can be cleared if vimrc is reloaded
Meredith Howard <mhoward@roomag.org>
parents:
87
diff
changeset
|
270 | " even with g:perl_compiler_force_warnings = 0, perl -w is used and |
f3d684572a8f
group up autocmds so they can be cleared if vimrc is reloaded
Meredith Howard <mhoward@roomag.org>
parents:
87
diff
changeset
|
271 | " that's just noisy with intentional no-warnings blocks out there |
1 | 272 | |
105
f3d684572a8f
group up autocmds so they can be cleared if vimrc is reloaded
Meredith Howard <mhoward@roomag.org>
parents:
87
diff
changeset
|
273 | setlocal makeprg=perl\ -c\ %\ $* |
f3d684572a8f
group up autocmds so they can be cleared if vimrc is reloaded
Meredith Howard <mhoward@roomag.org>
parents:
87
diff
changeset
|
274 | endfunction |
1 | 275 | |
13
c061abf8217c
Be more defensive on windows, clean up and add sections
Meredith Howard <mhoward@roomag.org>
parents:
12
diff
changeset
|
276 | " perl fold scanning is slow |
c061abf8217c
Be more defensive on windows, clean up and add sections
Meredith Howard <mhoward@roomag.org>
parents:
12
diff
changeset
|
277 | "let perl_fold = 1 |
1 | 278 | let perl_include_pod = 1 |
105
f3d684572a8f
group up autocmds so they can be cleared if vimrc is reloaded
Meredith Howard <mhoward@roomag.org>
parents:
87
diff
changeset
|
279 | |
18
5475788810a4
maps for chdir % and paste mode, add fold marks
Meredith Howard <mhoward@roomag.org>
parents:
14
diff
changeset
|
280 | " }}} |
1 | 281 | |
13
c061abf8217c
Be more defensive on windows, clean up and add sections
Meredith Howard <mhoward@roomag.org>
parents:
12
diff
changeset
|
282 | |
19 | 283 | " Plugin settings {{{ |
109
14b6da5839f0
Add/set up perl and ruby omnicomplete
Meredith Howard <mhoward@roomag.org>
parents:
107
diff
changeset
|
284 | ">> Gundo |
1 | 285 | " I prefer python3 on windows if I have to use it. |
10
e753144057b8
Windows-compatible vimrc
Meredith Howard <mhoward@roomag.org>
parents:
7
diff
changeset
|
286 | if on_windows == 1 |
1 | 287 | let g:gundo_prefer_python3=1 |
288 | endif | |
289 | ||
109
14b6da5839f0
Add/set up perl and ruby omnicomplete
Meredith Howard <mhoward@roomag.org>
parents:
107
diff
changeset
|
290 | ">> Tagbar |
10
e753144057b8
Windows-compatible vimrc
Meredith Howard <mhoward@roomag.org>
parents:
7
diff
changeset
|
291 | if on_windows == 1 |
114
599b1b279478
Windows changes -- I can cinst git + ctags + ag easily
Meredith Howard <mhoward@roomag.org>
parents:
111
diff
changeset
|
292 | if executable('ctags') == 0 |
599b1b279478
Windows changes -- I can cinst git + ctags + ag easily
Meredith Howard <mhoward@roomag.org>
parents:
111
diff
changeset
|
293 | " if i haven't installed from chocolatey... |
599b1b279478
Windows changes -- I can cinst git + ctags + ag easily
Meredith Howard <mhoward@roomag.org>
parents:
111
diff
changeset
|
294 | let g:tagbar_ctags_bin = 'C:\Users\mhoward\bin\ctags.exe' |
599b1b279478
Windows changes -- I can cinst git + ctags + ag easily
Meredith Howard <mhoward@roomag.org>
parents:
111
diff
changeset
|
295 | endif |
1 | 296 | endif |
297 | ||
298 | let g:tagbar_autoclose = 1 | |
299 | let g:tagbar_autofocus = 1 | |
300 | let g:tagbar_compact = 1 | |
301 | ||
302 | let g:tagbar_type_perl = { | |
303 | \ 'kinds' : [ | |
304 | \ 'p:packages:1:0', | |
305 | \ 'e:extends', | |
306 | \ 'r:roles', | |
307 | \ 'c:constants:0:0', | |
308 | \ 'f:formats:0:0', | |
309 | \ 'a:attributes', | |
310 | \ 's:subroutines', | |
311 | \ 'l:labels', | |
312 | \ ], | |
313 | \ 'deffile' : '$MYVIM/ctags/perl.cnf' | |
314 | \ } | |
315 | ||
316 | ||
109
14b6da5839f0
Add/set up perl and ruby omnicomplete
Meredith Howard <mhoward@roomag.org>
parents:
107
diff
changeset
|
317 | ">> Unite |
81
e8d13171bd0f
Disable fuzzy match (too fuzzy)
Meredith Howard <mhoward@roomag.org>
parents:
75
diff
changeset
|
318 | " call unite#filters#matcher_default#use(['matcher_fuzzy']) |
1 | 319 | call unite#filters#sorter_default#use(['sorter_rank']) |
81
e8d13171bd0f
Disable fuzzy match (too fuzzy)
Meredith Howard <mhoward@roomag.org>
parents:
75
diff
changeset
|
320 | " let g:unite_source_history_yank_enable = 1 |
1 | 321 | |
322 | if executable('ag') | |
323 | let g:unite_source_grep_command = 'ag' | |
324 | let g:unite_source_grep_default_opts = '--nogroup --nocolor --column' | |
325 | let g:unite_source_grep_recursive_opt = '' | |
326 | endif | |
327 | ||
109
14b6da5839f0
Add/set up perl and ruby omnicomplete
Meredith Howard <mhoward@roomag.org>
parents:
107
diff
changeset
|
328 | ">> vimfiler |
87 | 329 | let g:vimfiler_as_default_explorer = 1 |
330 | autocmd FileType vimfiler nmap <buffer> <2-LeftMouse> <Plug>(vimfiler_edit_file) | |
331 | ||
109
14b6da5839f0
Add/set up perl and ruby omnicomplete
Meredith Howard <mhoward@roomag.org>
parents:
107
diff
changeset
|
332 | ">> Airline |
1 | 333 | let g:airline#extensions#whitespace#enabled = 0 |
85 | 334 | |
109
14b6da5839f0
Add/set up perl and ruby omnicomplete
Meredith Howard <mhoward@roomag.org>
parents:
107
diff
changeset
|
335 | ">> Signify |
85 | 336 | let g:signify_disable_by_default = 1 |
337 | let g:signify_vcs_list = [ 'git', 'hg' ] | |
338 | ||
339 | let g:signify_mapping_next_hunk = '<leader>gj' | |
340 | let g:signify_mapping_prev_hunk = '<leader>gk' | |
341 | let g:signify_mapping_toggle = '<leader>gt' | |
342 | ||
109
14b6da5839f0
Add/set up perl and ruby omnicomplete
Meredith Howard <mhoward@roomag.org>
parents:
107
diff
changeset
|
343 | ">> neocomplcache |
107 | 344 | " Disable AutoComplPop. |
345 | let g:acp_enableAtStartup = 0 | |
346 | ||
347 | " Use neocomplcache. | |
348 | let g:neocomplcache_enable_at_startup = 1 | |
349 | let g:neocomplcache_enable_smart_case = 1 | |
350 | let g:neocomplcache_min_syntax_length = 3 | |
351 | ||
109
14b6da5839f0
Add/set up perl and ruby omnicomplete
Meredith Howard <mhoward@roomag.org>
parents:
107
diff
changeset
|
352 | if !exists('g:neocomplcache_omni_patterns') |
14b6da5839f0
Add/set up perl and ruby omnicomplete
Meredith Howard <mhoward@roomag.org>
parents:
107
diff
changeset
|
353 | let g:neocomplcache_omni_patterns = {} |
14b6da5839f0
Add/set up perl and ruby omnicomplete
Meredith Howard <mhoward@roomag.org>
parents:
107
diff
changeset
|
354 | endif |
14b6da5839f0
Add/set up perl and ruby omnicomplete
Meredith Howard <mhoward@roomag.org>
parents:
107
diff
changeset
|
355 | |
14b6da5839f0
Add/set up perl and ruby omnicomplete
Meredith Howard <mhoward@roomag.org>
parents:
107
diff
changeset
|
356 | "Required to get ruby omni |
14b6da5839f0
Add/set up perl and ruby omnicomplete
Meredith Howard <mhoward@roomag.org>
parents:
107
diff
changeset
|
357 | let g:neocomplcache_omni_patterns.ruby = '[^. *\t]\.\w*\|\h\w*::' |
14b6da5839f0
Add/set up perl and ruby omnicomplete
Meredith Howard <mhoward@roomag.org>
parents:
107
diff
changeset
|
358 | "Enabling the below allows module completion from CPAN, jeez |
14b6da5839f0
Add/set up perl and ruby omnicomplete
Meredith Howard <mhoward@roomag.org>
parents:
107
diff
changeset
|
359 | " let g:neocomplcache_omni_patterns.perl = '\h\w*->\h\w*\|\h\w*::' |
14b6da5839f0
Add/set up perl and ruby omnicomplete
Meredith Howard <mhoward@roomag.org>
parents:
107
diff
changeset
|
360 | |
18
5475788810a4
maps for chdir % and paste mode, add fold marks
Meredith Howard <mhoward@roomag.org>
parents:
14
diff
changeset
|
361 | " }}} |
1 | 362 | |
363 | ||
18
5475788810a4
maps for chdir % and paste mode, add fold marks
Meredith Howard <mhoward@roomag.org>
parents:
14
diff
changeset
|
364 | " Local stuff, finish up |
1 | 365 | try |
10
e753144057b8
Windows-compatible vimrc
Meredith Howard <mhoward@roomag.org>
parents:
7
diff
changeset
|
366 | if on_windows == 1 |
1 | 367 | source ~/_vimrc.local |
368 | else | |
369 | source ~/.vimrc.local | |
370 | endif | |
371 | catch | |
372 | endtry | |
373 | ||
7
7e6e6ff35c4d
try to normalize my colorschemes more, vimrc.local can cover $TERM weirdness
Meredith Howard <mhoward@roomag.org>
parents:
1
diff
changeset
|
374 | if has('gui_running') |
7e6e6ff35c4d
try to normalize my colorschemes more, vimrc.local can cover $TERM weirdness
Meredith Howard <mhoward@roomag.org>
parents:
1
diff
changeset
|
375 | set nu |
7e6e6ff35c4d
try to normalize my colorschemes more, vimrc.local can cover $TERM weirdness
Meredith Howard <mhoward@roomag.org>
parents:
1
diff
changeset
|
376 | set bg=dark |
7e6e6ff35c4d
try to normalize my colorschemes more, vimrc.local can cover $TERM weirdness
Meredith Howard <mhoward@roomag.org>
parents:
1
diff
changeset
|
377 | |
86
6fb982f177b3
Get the latest vim-{perl,ruby} kits and only try to force size on windows gui
Meredith Howard <mhoward@roomag.org>
parents:
85
diff
changeset
|
378 | if on_windows == 1 |
6fb982f177b3
Get the latest vim-{perl,ruby} kits and only try to force size on windows gui
Meredith Howard <mhoward@roomag.org>
parents:
85
diff
changeset
|
379 | " generally have a tiling wm on linux |
6fb982f177b3
Get the latest vim-{perl,ruby} kits and only try to force size on windows gui
Meredith Howard <mhoward@roomag.org>
parents:
85
diff
changeset
|
380 | set columns=120 lines=40 |
6fb982f177b3
Get the latest vim-{perl,ruby} kits and only try to force size on windows gui
Meredith Howard <mhoward@roomag.org>
parents:
85
diff
changeset
|
381 | end |
7
7e6e6ff35c4d
try to normalize my colorschemes more, vimrc.local can cover $TERM weirdness
Meredith Howard <mhoward@roomag.org>
parents:
1
diff
changeset
|
382 | |
7e6e6ff35c4d
try to normalize my colorschemes more, vimrc.local can cover $TERM weirdness
Meredith Howard <mhoward@roomag.org>
parents:
1
diff
changeset
|
383 | colorscheme solarized |
7e6e6ff35c4d
try to normalize my colorschemes more, vimrc.local can cover $TERM weirdness
Meredith Howard <mhoward@roomag.org>
parents:
1
diff
changeset
|
384 | else |
7e6e6ff35c4d
try to normalize my colorschemes more, vimrc.local can cover $TERM weirdness
Meredith Howard <mhoward@roomag.org>
parents:
1
diff
changeset
|
385 | if &t_Co == 256 |
7e6e6ff35c4d
try to normalize my colorschemes more, vimrc.local can cover $TERM weirdness
Meredith Howard <mhoward@roomag.org>
parents:
1
diff
changeset
|
386 | colorscheme jellybeans |
7e6e6ff35c4d
try to normalize my colorschemes more, vimrc.local can cover $TERM weirdness
Meredith Howard <mhoward@roomag.org>
parents:
1
diff
changeset
|
387 | end |
118
ffbf97e1e3eb
Add urxvt mouse handling
Meredith Howard <mhoward@roomag.org>
parents:
115
diff
changeset
|
388 | |
ffbf97e1e3eb
Add urxvt mouse handling
Meredith Howard <mhoward@roomag.org>
parents:
115
diff
changeset
|
389 | if $TERM =~ 'rxvt-unicode' |
ffbf97e1e3eb
Add urxvt mouse handling
Meredith Howard <mhoward@roomag.org>
parents:
115
diff
changeset
|
390 | set ttymouse=urxvt |
ffbf97e1e3eb
Add urxvt mouse handling
Meredith Howard <mhoward@roomag.org>
parents:
115
diff
changeset
|
391 | set mouse=a |
ffbf97e1e3eb
Add urxvt mouse handling
Meredith Howard <mhoward@roomag.org>
parents:
115
diff
changeset
|
392 | endif |
7
7e6e6ff35c4d
try to normalize my colorschemes more, vimrc.local can cover $TERM weirdness
Meredith Howard <mhoward@roomag.org>
parents:
1
diff
changeset
|
393 | end |
7e6e6ff35c4d
try to normalize my colorschemes more, vimrc.local can cover $TERM weirdness
Meredith Howard <mhoward@roomag.org>
parents:
1
diff
changeset
|
394 | |
7e6e6ff35c4d
try to normalize my colorschemes more, vimrc.local can cover $TERM weirdness
Meredith Howard <mhoward@roomag.org>
parents:
1
diff
changeset
|
395 |