annotate vim/vimrc @ 119:6dbbf36a523d

VIM changes: - Added `venv` to directories ignored by Ctrl-P. - Fixed some mappings. - Use magic regexes by default for searching. - More clever searching with `*` and `#`.
author Ludovic Chabant <ludovic@chabant.com>
date Fri, 01 Feb 2013 13:32:19 -0800
parents c1ff96232138
children c6f0172aac8d
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
6
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
1 """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
2 "
0
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
3 " Ludovic Chabant's ~/.vimrc
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
4 "
6
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
5 " http://ludovic.chabant.com
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
6 "
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
7 """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
0
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
8
59
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
9 " Global Setup {{{
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
10
0
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
11 " Use Vim settings, rather then Vi settings (much better!).
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
12 " This must be first, because it changes other options as a side effect.
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
13 set nocompatible
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
14
45
aac6188ab4d6 Added vimroom plugin (disabled by default).
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
15 " Set a variable that says we already sourced this file, for those few
aac6188ab4d6 Added vimroom plugin (disabled by default).
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
16 " settings we don't want to re-apply.
aac6188ab4d6 Added vimroom plugin (disabled by default).
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
17 if exists('g:sourced_vimrc')
aac6188ab4d6 Added vimroom plugin (disabled by default).
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
18 let g:resourcing_vimrc = 1
aac6188ab4d6 Added vimroom plugin (disabled by default).
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
19 endif
aac6188ab4d6 Added vimroom plugin (disabled by default).
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
20 let g:sourced_vimrc = 1
aac6188ab4d6 Added vimroom plugin (disabled by default).
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
21
83
a54180045075 Vimrc changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 80
diff changeset
22 " Get the platform we're running on.
6
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
23 if has("win32") || has("win64") || has("dos32")
83
a54180045075 Vimrc changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 80
diff changeset
24 let s:vim_platform = "windows"
6
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
25 else
83
a54180045075 Vimrc changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 80
diff changeset
26 let s:vim_platform = "unix"
6
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
27 endif
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
28
83
a54180045075 Vimrc changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 80
diff changeset
29 " Get our vim directory.
95
b96ff0dd0137 Fixed the generated vimrc's runtimepath.
Ludovic Chabant <ludovic@chabant.com>
parents: 83
diff changeset
30 let s:vim_home = expand("<sfile>:h")
83
a54180045075 Vimrc changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 80
diff changeset
31
18
cec2213f938c Removed some MiniBufExplorer mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 13
diff changeset
32 " Disable some plugins.
cec2213f938c Removed some MiniBufExplorer mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 13
diff changeset
33 let g:pathogen_disabled = []
119
6dbbf36a523d VIM changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 118
diff changeset
34 call add(g:pathogen_disabled, 'minibufexpl')
6dbbf36a523d VIM changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 118
diff changeset
35 call add(g:pathogen_disabled, 'ragtag')
45
aac6188ab4d6 Added vimroom plugin (disabled by default).
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
36 call add(g:pathogen_disabled, 'vimroom')
18
cec2213f938c Removed some MiniBufExplorer mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 13
diff changeset
37
0
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
38 " Load pathogen.
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
39 call pathogen#infect()
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
40
10
00cac5ebf546 Added default window size. Added buffer keyboard shortcuts.
ludovicchabant
parents: 6
diff changeset
41 " Hide the toolbar in MacVim/gVIM, and set a nice window size.
45
aac6188ab4d6 Added vimroom plugin (disabled by default).
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
42 if has("gui_running") && !exists('g:resourcing_vimrc')
0
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
43 set guioptions=-t
10
00cac5ebf546 Added default window size. Added buffer keyboard shortcuts.
ludovicchabant
parents: 6
diff changeset
44 set lines=50
00cac5ebf546 Added default window size. Added buffer keyboard shortcuts.
ludovicchabant
parents: 6
diff changeset
45 set columns=135
0
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
46 endif
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
47
59
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
48 " }}}
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
49
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
50 " General Settings {{{
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
51
18
cec2213f938c Removed some MiniBufExplorer mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 13
diff changeset
52 " Disable modelines.
cec2213f938c Removed some MiniBufExplorer mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 13
diff changeset
53 set modelines=0
cec2213f938c Removed some MiniBufExplorer mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 13
diff changeset
54
6
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
55 " Don't unload abandoned buffers.
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
56 set hidden
0
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
57
6
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
58 " Show line numbers.
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
59 set number
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
60
18
cec2213f938c Removed some MiniBufExplorer mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 13
diff changeset
61 " Show what mode we're in, and what command we're typing.
cec2213f938c Removed some MiniBufExplorer mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 13
diff changeset
62 set showmode
cec2213f938c Removed some MiniBufExplorer mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 13
diff changeset
63 set showcmd
cec2213f938c Removed some MiniBufExplorer mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 13
diff changeset
64
cec2213f938c Removed some MiniBufExplorer mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 13
diff changeset
65 " Keep the cursor off the top/bottom edges.
cec2213f938c Removed some MiniBufExplorer mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 13
diff changeset
66 set scrolloff=3
cec2213f938c Removed some MiniBufExplorer mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 13
diff changeset
67
6
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
68 " Smart auto-indenting.
0
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
69 set autoindent
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
70 set smartindent
6
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
71
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
72 " Use confirmation dialog.
0
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
73 set confirm
6
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
74
76
990968329a9b Disabled minibufexpl for a while.
Ludovic Chabant <ludovic@chabant.com>
parents: 73
diff changeset
75 " Don't use annoying sounds.
990968329a9b Disabled minibufexpl for a while.
Ludovic Chabant <ludovic@chabant.com>
parents: 73
diff changeset
76 set visualbell
990968329a9b Disabled minibufexpl for a while.
Ludovic Chabant <ludovic@chabant.com>
parents: 73
diff changeset
77
6
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
78 " Remember lots of commands.
0
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
79 set history=1000
6
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
80
76
990968329a9b Disabled minibufexpl for a while.
Ludovic Chabant <ludovic@chabant.com>
parents: 73
diff changeset
81 " Try to reduce flickering.
990968329a9b Disabled minibufexpl for a while.
Ludovic Chabant <ludovic@chabant.com>
parents: 73
diff changeset
82 set lazyredraw
990968329a9b Disabled minibufexpl for a while.
Ludovic Chabant <ludovic@chabant.com>
parents: 73
diff changeset
83
990968329a9b Disabled minibufexpl for a while.
Ludovic Chabant <ludovic@chabant.com>
parents: 73
diff changeset
84 " Show matching braces but not for too long.
990968329a9b Disabled minibufexpl for a while.
Ludovic Chabant <ludovic@chabant.com>
parents: 73
diff changeset
85 set showmatch
990968329a9b Disabled minibufexpl for a while.
Ludovic Chabant <ludovic@chabant.com>
parents: 73
diff changeset
86 set matchtime=2
990968329a9b Disabled minibufexpl for a while.
Ludovic Chabant <ludovic@chabant.com>
parents: 73
diff changeset
87
990968329a9b Disabled minibufexpl for a while.
Ludovic Chabant <ludovic@chabant.com>
parents: 73
diff changeset
88 " Show soft-broken/wrapped lines with a prefix.
990968329a9b Disabled minibufexpl for a while.
Ludovic Chabant <ludovic@chabant.com>
parents: 73
diff changeset
89 set showbreak=→
990968329a9b Disabled minibufexpl for a while.
Ludovic Chabant <ludovic@chabant.com>
parents: 73
diff changeset
90
6
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
91 " Use incremental search, with highlighting,
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
92 " case-insensitive unless we actually type some
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
93 " mixed-case stuff.
0
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
94 set incsearch
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
95 set hlsearch
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
96 set ignorecase
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
97 set smartcase
6
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
98
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
99 " Always show window status lines.
0
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
100 set laststatus=2
6
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
101
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
102 " Enable using the mouse like some everyday guy.
0
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
103 set mouse=a
6
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
104
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
105 " Show interesting stuff at the bottom of the window.
0
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
106 set showcmd
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
107 set ruler
6
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
108
76
990968329a9b Disabled minibufexpl for a while.
Ludovic Chabant <ludovic@chabant.com>
parents: 73
diff changeset
109 " Make sure splitting windows is done in a way that makes sense.
990968329a9b Disabled minibufexpl for a while.
Ludovic Chabant <ludovic@chabant.com>
parents: 73
diff changeset
110 set splitbelow
990968329a9b Disabled minibufexpl for a while.
Ludovic Chabant <ludovic@chabant.com>
parents: 73
diff changeset
111 set splitright
990968329a9b Disabled minibufexpl for a while.
Ludovic Chabant <ludovic@chabant.com>
parents: 73
diff changeset
112
6
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
113 " Don't pollute the hard-drive with *~ files. Only
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
114 " create them in hidden backup/temp directories while
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
115 " we edit the file, and then get rid of it.
0
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
116 set nobackup
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
117 set writebackup
83
a54180045075 Vimrc changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 80
diff changeset
118 execute('set backupdir='.s:vim_home.'/backup')
a54180045075 Vimrc changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 80
diff changeset
119 execute('set directory='.s:vim_home.'/temp')
6
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
120
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
121 " Better command-line completion, but don't show some
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
122 " stuff we don't care about.
0
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
123 set wildmenu
80
121bef55252f Added more VIM plugins (ctrlp, easymotion, powerline).
Ludovic Chabant <ludovic@chabant.com>
parents: 76
diff changeset
124 set wildignore+=.DS_Store,Thumbs.db,*.so,*.dll,*.exe
6
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
125
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
126 " Always display the tab-page line.
0
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
127 set showtabline=2
6
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
128
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
129 " Set the file-formats.
0
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
130 set ffs=unix,mac,dos
6
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
131
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
132 " Tabs and indenting are 4 characters, and tabs behave like
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
133 " spaces during editing. They're smart, too, and when you
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
134 " press <TAB> it actually inserts a soft-tab so everything's
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
135 " indented the same.
0
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
136 set tabstop=4
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
137 set shiftwidth=4
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
138 set softtabstop=4
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
139 set smarttab
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
140 set expandtab
6
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
141
18
cec2213f938c Removed some MiniBufExplorer mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 13
diff changeset
142 " Default encoding
cec2213f938c Removed some MiniBufExplorer mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 13
diff changeset
143 set encoding=utf-8
cec2213f938c Removed some MiniBufExplorer mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 13
diff changeset
144
6
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
145 " Clipboard buffer.
0
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
146 set clipboard=unnamed
6
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
147
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
148 " Smoot terminal experience.
0
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
149 set ttyfast
6
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
150
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
151 " Allow backspacing over anything.
0
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
152 set backspace=indent,eol,start
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
153
6
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
154 " Going left and right let you go to other lines.
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
155 set whichwrap+=<,>,h,l
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
156
93
822fc8b4405f Invisible characters in vimrc.
Ludovic Chabant <ludovic@chabant.com>
parents: 92
diff changeset
157 " How to show invisible characters
822fc8b4405f Invisible characters in vimrc.
Ludovic Chabant <ludovic@chabant.com>
parents: 92
diff changeset
158 set listchars=eol:$,tab:>-,trail:-,extends:>,precedes:<,nbsp:%,conceal:.
822fc8b4405f Invisible characters in vimrc.
Ludovic Chabant <ludovic@chabant.com>
parents: 92
diff changeset
159
59
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
160 " Folds are defined by markers in the text.
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
161 set foldmethod=marker
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
162
80
121bef55252f Added more VIM plugins (ctrlp, easymotion, powerline).
Ludovic Chabant <ludovic@chabant.com>
parents: 76
diff changeset
163 " Nice auto-complete menu.
121bef55252f Added more VIM plugins (ctrlp, easymotion, powerline).
Ludovic Chabant <ludovic@chabant.com>
parents: 76
diff changeset
164 set completeopt=longest,menuone,preview
121bef55252f Added more VIM plugins (ctrlp, easymotion, powerline).
Ludovic Chabant <ludovic@chabant.com>
parents: 76
diff changeset
165
6
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
166 " And now, for some system-dependent settings:
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
167 " - font to use
83
a54180045075 Vimrc changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 80
diff changeset
168 if s:vim_platform == "windows"
6
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
169 set guifont=Consolas:h12
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
170 else
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
171 set guifont=Monaco:h12
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
172 endif
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
173
45
aac6188ab4d6 Added vimroom plugin (disabled by default).
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
174 " Syntax highlighting.
0
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
175 syntax on
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
176
18
cec2213f938c Removed some MiniBufExplorer mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 13
diff changeset
177 " Change the current directory to the home directory.
45
aac6188ab4d6 Added vimroom plugin (disabled by default).
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
178 if !exists('g:resourcing_vimrc')
aac6188ab4d6 Added vimroom plugin (disabled by default).
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
179 cd ~/
aac6188ab4d6 Added vimroom plugin (disabled by default).
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
180 endif
18
cec2213f938c Removed some MiniBufExplorer mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 13
diff changeset
181
45
aac6188ab4d6 Added vimroom plugin (disabled by default).
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
182 " Default color scheme.
47
ee3d235ca3fb Added solarized.
Ludovic Chabant <ludovic@chabant.com>
parents: 45
diff changeset
183 if has('gui_running')
ee3d235ca3fb Added solarized.
Ludovic Chabant <ludovic@chabant.com>
parents: 45
diff changeset
184 set background=light
ee3d235ca3fb Added solarized.
Ludovic Chabant <ludovic@chabant.com>
parents: 45
diff changeset
185 else
ee3d235ca3fb Added solarized.
Ludovic Chabant <ludovic@chabant.com>
parents: 45
diff changeset
186 set background=dark
ee3d235ca3fb Added solarized.
Ludovic Chabant <ludovic@chabant.com>
parents: 45
diff changeset
187 endif
76
990968329a9b Disabled minibufexpl for a while.
Ludovic Chabant <ludovic@chabant.com>
parents: 73
diff changeset
188 colorscheme badwolf
6
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
189
f8792d288397 Big vimrc update.
ludovicchabant
parents: 0
diff changeset
190 " Enable file type detection.
0
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
191 filetype indent plugin on
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
192
59
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
193 " }}}
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
194
76
990968329a9b Disabled minibufexpl for a while.
Ludovic Chabant <ludovic@chabant.com>
parents: 73
diff changeset
195 " Auto-Commands {{{
990968329a9b Disabled minibufexpl for a while.
Ludovic Chabant <ludovic@chabant.com>
parents: 73
diff changeset
196
990968329a9b Disabled minibufexpl for a while.
Ludovic Chabant <ludovic@chabant.com>
parents: 73
diff changeset
197 " Only show the highlighted cursor line in the current window.
990968329a9b Disabled minibufexpl for a while.
Ludovic Chabant <ludovic@chabant.com>
parents: 73
diff changeset
198 augroup CursorLine
990968329a9b Disabled minibufexpl for a while.
Ludovic Chabant <ludovic@chabant.com>
parents: 73
diff changeset
199 au!
990968329a9b Disabled minibufexpl for a while.
Ludovic Chabant <ludovic@chabant.com>
parents: 73
diff changeset
200 au WinLeave * set nocursorline
990968329a9b Disabled minibufexpl for a while.
Ludovic Chabant <ludovic@chabant.com>
parents: 73
diff changeset
201 au WinEnter * set cursorline
990968329a9b Disabled minibufexpl for a while.
Ludovic Chabant <ludovic@chabant.com>
parents: 73
diff changeset
202 augroup END
990968329a9b Disabled minibufexpl for a while.
Ludovic Chabant <ludovic@chabant.com>
parents: 73
diff changeset
203
990968329a9b Disabled minibufexpl for a while.
Ludovic Chabant <ludovic@chabant.com>
parents: 73
diff changeset
204 " }}}
990968329a9b Disabled minibufexpl for a while.
Ludovic Chabant <ludovic@chabant.com>
parents: 73
diff changeset
205
59
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
206 " Plugin Settings {{{
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
207
80
121bef55252f Added more VIM plugins (ctrlp, easymotion, powerline).
Ludovic Chabant <ludovic@chabant.com>
parents: 76
diff changeset
208 " We'll set our own mappings.
121bef55252f Added more VIM plugins (ctrlp, easymotion, powerline).
Ludovic Chabant <ludovic@chabant.com>
parents: 76
diff changeset
209 let g:ctrlp_map = ''
121bef55252f Added more VIM plugins (ctrlp, easymotion, powerline).
Ludovic Chabant <ludovic@chabant.com>
parents: 76
diff changeset
210
121bef55252f Added more VIM plugins (ctrlp, easymotion, powerline).
Ludovic Chabant <ludovic@chabant.com>
parents: 76
diff changeset
211 " Ctrl-P should manage the working directory.
121bef55252f Added more VIM plugins (ctrlp, easymotion, powerline).
Ludovic Chabant <ludovic@chabant.com>
parents: 76
diff changeset
212 let g:ctrlp_working_path_mode = 2
121bef55252f Added more VIM plugins (ctrlp, easymotion, powerline).
Ludovic Chabant <ludovic@chabant.com>
parents: 76
diff changeset
213
121bef55252f Added more VIM plugins (ctrlp, easymotion, powerline).
Ludovic Chabant <ludovic@chabant.com>
parents: 76
diff changeset
214 " Ctrl-P should however ignore some stuff.
121bef55252f Added more VIM plugins (ctrlp, easymotion, powerline).
Ludovic Chabant <ludovic@chabant.com>
parents: 76
diff changeset
215 let g:ctrlp_custom_ignore = {
119
6dbbf36a523d VIM changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 118
diff changeset
216 \ 'dir': '\v[\/](\.git|\.hg|\.svn|venv)$',
80
121bef55252f Added more VIM plugins (ctrlp, easymotion, powerline).
Ludovic Chabant <ludovic@chabant.com>
parents: 76
diff changeset
217 \ 'file': '\.exe$\|\.so$\|\.dll$'
121bef55252f Added more VIM plugins (ctrlp, easymotion, powerline).
Ludovic Chabant <ludovic@chabant.com>
parents: 76
diff changeset
218 \ }
121bef55252f Added more VIM plugins (ctrlp, easymotion, powerline).
Ludovic Chabant <ludovic@chabant.com>
parents: 76
diff changeset
219
121bef55252f Added more VIM plugins (ctrlp, easymotion, powerline).
Ludovic Chabant <ludovic@chabant.com>
parents: 76
diff changeset
220 " Make Ctrl-P cache stuff in our temp directory.
83
a54180045075 Vimrc changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 80
diff changeset
221 let g:ctrlp_cache_dir = s:vim_home.'/cache'
10
00cac5ebf546 Added default window size. Added buffer keyboard shortcuts.
ludovicchabant
parents: 6
diff changeset
222
118
c1ff96232138 New settings for Lawrencium.
Ludovic Chabant <ludovic@chabant.com>
parents: 114
diff changeset
223 " Open Hg! commands in a normal buffer.
c1ff96232138 New settings for Lawrencium.
Ludovic Chabant <ludovic@chabant.com>
parents: 114
diff changeset
224 let g:lawrencium_hg_bang_edit_command = 'edit'
c1ff96232138 New settings for Lawrencium.
Ludovic Chabant <ludovic@chabant.com>
parents: 114
diff changeset
225
c1ff96232138 New settings for Lawrencium.
Ludovic Chabant <ludovic@chabant.com>
parents: 114
diff changeset
226 let g:lawrencium_hg_commands_file_types = {
c1ff96232138 New settings for Lawrencium.
Ludovic Chabant <ludovic@chabant.com>
parents: 114
diff changeset
227 \'clog': 'hggraphlog'
c1ff96232138 New settings for Lawrencium.
Ludovic Chabant <ludovic@chabant.com>
parents: 114
diff changeset
228 \}
c1ff96232138 New settings for Lawrencium.
Ludovic Chabant <ludovic@chabant.com>
parents: 114
diff changeset
229
59
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
230 " }}}
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
231
73
39a7e05637d8 Added 80 chars limit to text/markdown files.
Ludovic Chabant <ludovic@chabant.com>
parents: 67
diff changeset
232 " File-Specific Settings {{{
39a7e05637d8 Added 80 chars limit to text/markdown files.
Ludovic Chabant <ludovic@chabant.com>
parents: 67
diff changeset
233
83
a54180045075 Vimrc changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 80
diff changeset
234 if has("autocmd")
a54180045075 Vimrc changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 80
diff changeset
235
a54180045075 Vimrc changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 80
diff changeset
236 augroup VimRCFileTypeSettings
a54180045075 Vimrc changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 80
diff changeset
237 au!
a54180045075 Vimrc changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 80
diff changeset
238
a54180045075 Vimrc changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 80
diff changeset
239 " Nice text width for text files.
a54180045075 Vimrc changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 80
diff changeset
240 autocmd FileType text,markdown setlocal textwidth=80
a54180045075 Vimrc changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 80
diff changeset
241
a54180045075 Vimrc changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 80
diff changeset
242 " Who the hell changes my matchpairs?
a54180045075 Vimrc changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 80
diff changeset
243 autocmd FileType php setlocal matchpairs-=<:>
a54180045075 Vimrc changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 80
diff changeset
244
a54180045075 Vimrc changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 80
diff changeset
245 " File I know are markdown: personal notes & PieCrust pages.
a54180045075 Vimrc changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 80
diff changeset
246 autocmd BufRead,BufNewfile */Dropbox/Personal/SimpleNote/* set ft=markdown
108
14307ff18bc1 Using piecrustmarkdown syntax.
Ludovic Chabant <ludovic@chabant.com>
parents: 103
diff changeset
247 autocmd BufRead,BufNewFile */_content/**/*.html set ft=piecrustmarkdown
83
a54180045075 Vimrc changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 80
diff changeset
248
a54180045075 Vimrc changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 80
diff changeset
249 augroup END
a54180045075 Vimrc changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 80
diff changeset
250
a54180045075 Vimrc changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 80
diff changeset
251 endif
73
39a7e05637d8 Added 80 chars limit to text/markdown files.
Ludovic Chabant <ludovic@chabant.com>
parents: 67
diff changeset
252
39a7e05637d8 Added 80 chars limit to text/markdown files.
Ludovic Chabant <ludovic@chabant.com>
parents: 67
diff changeset
253 " }}}
39a7e05637d8 Added 80 chars limit to text/markdown files.
Ludovic Chabant <ludovic@chabant.com>
parents: 67
diff changeset
254
59
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
255 " Mappings {{{
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
256
42
6b831735c092 Added french keymap support.
Ludovic Chabant <ludovic@chabant.com>
parents: 18
diff changeset
257 let mapleader=","
43
25e8b2fffd50 Changed some mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 42
diff changeset
258
76
990968329a9b Disabled minibufexpl for a while.
Ludovic Chabant <ludovic@chabant.com>
parents: 73
diff changeset
259 " Visual line navigation
990968329a9b Disabled minibufexpl for a while.
Ludovic Chabant <ludovic@chabant.com>
parents: 73
diff changeset
260 noremap <up> g<up>
990968329a9b Disabled minibufexpl for a while.
Ludovic Chabant <ludovic@chabant.com>
parents: 73
diff changeset
261 noremap <down> g<down>
990968329a9b Disabled minibufexpl for a while.
Ludovic Chabant <ludovic@chabant.com>
parents: 73
diff changeset
262 noremap <home> g<home>
990968329a9b Disabled minibufexpl for a while.
Ludovic Chabant <ludovic@chabant.com>
parents: 73
diff changeset
263 noremap <end> g<end>
990968329a9b Disabled minibufexpl for a while.
Ludovic Chabant <ludovic@chabant.com>
parents: 73
diff changeset
264
80
121bef55252f Added more VIM plugins (ctrlp, easymotion, powerline).
Ludovic Chabant <ludovic@chabant.com>
parents: 76
diff changeset
265 " Buffer navigation
121bef55252f Added more VIM plugins (ctrlp, easymotion, powerline).
Ludovic Chabant <ludovic@chabant.com>
parents: 76
diff changeset
266 noremap <C-Tab> :bnext<cr>
121bef55252f Added more VIM plugins (ctrlp, easymotion, powerline).
Ludovic Chabant <ludovic@chabant.com>
parents: 76
diff changeset
267 noremap <C-S-Tab> :bprevious<cr>
121bef55252f Added more VIM plugins (ctrlp, easymotion, powerline).
Ludovic Chabant <ludovic@chabant.com>
parents: 76
diff changeset
268
121bef55252f Added more VIM plugins (ctrlp, easymotion, powerline).
Ludovic Chabant <ludovic@chabant.com>
parents: 76
diff changeset
269 " Window navigation
121bef55252f Added more VIM plugins (ctrlp, easymotion, powerline).
Ludovic Chabant <ludovic@chabant.com>
parents: 76
diff changeset
270 nnoremap <C-up> :wincmd k<cr>
121bef55252f Added more VIM plugins (ctrlp, easymotion, powerline).
Ludovic Chabant <ludovic@chabant.com>
parents: 76
diff changeset
271 nnoremap <C-down> :wincmd j<cr>
121bef55252f Added more VIM plugins (ctrlp, easymotion, powerline).
Ludovic Chabant <ludovic@chabant.com>
parents: 76
diff changeset
272 nnoremap <C-left> :wincmd h<cr>
121bef55252f Added more VIM plugins (ctrlp, easymotion, powerline).
Ludovic Chabant <ludovic@chabant.com>
parents: 76
diff changeset
273 nnoremap <C-right> :wincmd l<cr>
121bef55252f Added more VIM plugins (ctrlp, easymotion, powerline).
Ludovic Chabant <ludovic@chabant.com>
parents: 76
diff changeset
274
83
a54180045075 Vimrc changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 80
diff changeset
275 " Open NERDtree.
92
64c42f5c9a97 Open NERDTree in the current file's path.
Ludovic Chabant <ludovic@chabant.com>
parents: 83
diff changeset
276 nnoremap <F2> :NERDTreeToggle %:p:h<cr>
83
a54180045075 Vimrc changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 80
diff changeset
277
a54180045075 Vimrc changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 80
diff changeset
278 " Switch buffers.
a54180045075 Vimrc changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 80
diff changeset
279 nnoremap <F3> :execute ("buffer " . bufname("#"))<cr>
a54180045075 Vimrc changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 80
diff changeset
280
a54180045075 Vimrc changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 80
diff changeset
281 " Common typos.
a54180045075 Vimrc changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 80
diff changeset
282 nnoremap ; :
a54180045075 Vimrc changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 80
diff changeset
283
80
121bef55252f Added more VIM plugins (ctrlp, easymotion, powerline).
Ludovic Chabant <ludovic@chabant.com>
parents: 76
diff changeset
284 " Split windows
121bef55252f Added more VIM plugins (ctrlp, easymotion, powerline).
Ludovic Chabant <ludovic@chabant.com>
parents: 76
diff changeset
285 nnoremap <leader>s :split<cr>
121bef55252f Added more VIM plugins (ctrlp, easymotion, powerline).
Ludovic Chabant <ludovic@chabant.com>
parents: 76
diff changeset
286 nnoremap <leader>v :vsplit<cr>
121bef55252f Added more VIM plugins (ctrlp, easymotion, powerline).
Ludovic Chabant <ludovic@chabant.com>
parents: 76
diff changeset
287
121bef55252f Added more VIM plugins (ctrlp, easymotion, powerline).
Ludovic Chabant <ludovic@chabant.com>
parents: 76
diff changeset
288 " Easier things to type
121bef55252f Added more VIM plugins (ctrlp, easymotion, powerline).
Ludovic Chabant <ludovic@chabant.com>
parents: 76
diff changeset
289 nnoremap <leader>w :w<cr>
121bef55252f Added more VIM plugins (ctrlp, easymotion, powerline).
Ludovic Chabant <ludovic@chabant.com>
parents: 76
diff changeset
290 nnoremap <leader>q :q<cr>
119
6dbbf36a523d VIM changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 118
diff changeset
291 nnoremap <leader>hh :Hg
6dbbf36a523d VIM changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 118
diff changeset
292 nnoremap <leader>hg :Hg!
112
9495034e7dc4 New mappings in Vim.
Ludovic Chabant <ludovic@chabant.com>
parents: 103
diff changeset
293 nnoremap <leader>hs :Hgstatus<cr>
9495034e7dc4 New mappings in Vim.
Ludovic Chabant <ludovic@chabant.com>
parents: 103
diff changeset
294 nnoremap <leader>hv :Hgvdiff<cr>
80
121bef55252f Added more VIM plugins (ctrlp, easymotion, powerline).
Ludovic Chabant <ludovic@chabant.com>
parents: 76
diff changeset
295
114
ccc3902408d2 Fix the hash key in Vim.
Ludovic Chabant <ludovic@chabant.com>
parents: 113
diff changeset
296 " Make the hash-key not suck.
ccc3902408d2 Fix the hash key in Vim.
Ludovic Chabant <ludovic@chabant.com>
parents: 113
diff changeset
297 inoremap # X<BS>#
ccc3902408d2 Fix the hash key in Vim.
Ludovic Chabant <ludovic@chabant.com>
parents: 113
diff changeset
298
80
121bef55252f Added more VIM plugins (ctrlp, easymotion, powerline).
Ludovic Chabant <ludovic@chabant.com>
parents: 76
diff changeset
299 " Toggle invisible characters
121bef55252f Added more VIM plugins (ctrlp, easymotion, powerline).
Ludovic Chabant <ludovic@chabant.com>
parents: 76
diff changeset
300 nnoremap <leader>i :set list!<cr>
121bef55252f Added more VIM plugins (ctrlp, easymotion, powerline).
Ludovic Chabant <ludovic@chabant.com>
parents: 76
diff changeset
301
121bef55252f Added more VIM plugins (ctrlp, easymotion, powerline).
Ludovic Chabant <ludovic@chabant.com>
parents: 76
diff changeset
302 " Clear search matches
121bef55252f Added more VIM plugins (ctrlp, easymotion, powerline).
Ludovic Chabant <ludovic@chabant.com>
parents: 76
diff changeset
303 nnoremap <leader><space> :noh<cr>:call clearmatches()<cr>
43
25e8b2fffd50 Changed some mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 42
diff changeset
304
80
121bef55252f Added more VIM plugins (ctrlp, easymotion, powerline).
Ludovic Chabant <ludovic@chabant.com>
parents: 76
diff changeset
305 " Ctrl-P mappings.
121bef55252f Added more VIM plugins (ctrlp, easymotion, powerline).
Ludovic Chabant <ludovic@chabant.com>
parents: 76
diff changeset
306 nnoremap <silent> <C-p> :CtrlP<cr>
83
a54180045075 Vimrc changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 80
diff changeset
307 nnoremap <silent> <C-o> :CtrlPBuffer<cr>
a54180045075 Vimrc changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 80
diff changeset
308 nnoremap <silent> <C-i> :CtrlPMRU<cr>
73
39a7e05637d8 Added 80 chars limit to text/markdown files.
Ludovic Chabant <ludovic@chabant.com>
parents: 67
diff changeset
309
45
aac6188ab4d6 Added vimroom plugin (disabled by default).
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
310 " Switch between FR and US keyboard layouts.
119
6dbbf36a523d VIM changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 118
diff changeset
311 nnoremap <C-l>f :setlocal keymap=french<cr>
6dbbf36a523d VIM changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 118
diff changeset
312 nnoremap <C-l>u :setlocal keymap=<cr>
45
aac6188ab4d6 Added vimroom plugin (disabled by default).
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
313
aac6188ab4d6 Added vimroom plugin (disabled by default).
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
314 " Toggle spell check according to current keyboard layout.
119
6dbbf36a523d VIM changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 118
diff changeset
315 nnoremap <C-l>s :call <SID>ToggleSpellCheck()<cr>
45
aac6188ab4d6 Added vimroom plugin (disabled by default).
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
316
aac6188ab4d6 Added vimroom plugin (disabled by default).
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
317 " Simple way to close a buffer without closing the window.
aac6188ab4d6 Added vimroom plugin (disabled by default).
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
318 nnoremap <leader>bd :bprevious<cr>:bdelete #<cr>
43
25e8b2fffd50 Changed some mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 42
diff changeset
319
103
a755319f124e Added mappings for substitutions.
Ludovic Chabant <ludovic@chabant.com>
parents: 101
diff changeset
320 " Toggle folds with <space>.
59
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
321 nnoremap <space> za
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
322
103
a755319f124e Added mappings for substitutions.
Ludovic Chabant <ludovic@chabant.com>
parents: 101
diff changeset
323 " Create folds with <space> (in visual mode).
59
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
324 vnoremap <space> zf
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
325
103
a755319f124e Added mappings for substitutions.
Ludovic Chabant <ludovic@chabant.com>
parents: 101
diff changeset
326 " File-type switching.
83
a54180045075 Vimrc changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 80
diff changeset
327 nnoremap <leader>ftmd :set ft=markdown<cr>
80
121bef55252f Added more VIM plugins (ctrlp, easymotion, powerline).
Ludovic Chabant <ludovic@chabant.com>
parents: 76
diff changeset
328
119
6dbbf36a523d VIM changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 118
diff changeset
329 " Use sane regexes.
6dbbf36a523d VIM changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 118
diff changeset
330 nnoremap / /\v
6dbbf36a523d VIM changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 118
diff changeset
331 vnoremap / /\v
6dbbf36a523d VIM changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 118
diff changeset
332
103
a755319f124e Added mappings for substitutions.
Ludovic Chabant <ludovic@chabant.com>
parents: 101
diff changeset
333 " Quick search and replace.
119
6dbbf36a523d VIM changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 118
diff changeset
334 function! s:VSetSearch()
6dbbf36a523d VIM changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 118
diff changeset
335 let temp = @@
6dbbf36a523d VIM changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 118
diff changeset
336 norm! gvy
6dbbf36a523d VIM changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 118
diff changeset
337 let @/ = '\V' . substitute(escape(@@, '\'), '\n', '\\n', 'g')
6dbbf36a523d VIM changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 118
diff changeset
338 let @@ = temp
6dbbf36a523d VIM changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 118
diff changeset
339 endfunction
6dbbf36a523d VIM changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 118
diff changeset
340 vnoremap * :<C-u>call <SID>VSetSearch()<CR>//<CR><c-o>
6dbbf36a523d VIM changes:
Ludovic Chabant <ludovic@chabant.com>
parents: 118
diff changeset
341 vnoremap # :<C-u>call <SID>VSetSearch()<CR>??<CR><c-o>
118
c1ff96232138 New settings for Lawrencium.
Ludovic Chabant <ludovic@chabant.com>
parents: 114
diff changeset
342
59
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
343 " }}}
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
344
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
345 " Abbreviations {{{
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
346
43
25e8b2fffd50 Changed some mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 42
diff changeset
347 iabbrev @@ ludovic@chabant.com
25e8b2fffd50 Changed some mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 42
diff changeset
348 iabbrev ccopy Copyright &copy;2011 Ludovic Chabant, all rights reserved.
25e8b2fffd50 Changed some mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 42
diff changeset
349 iabbrev ssig --<cr>l u d o .<cr>. 8 0 17 80
0
9dbf340c7956 Initial commit
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
350
59
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
351 " }}}
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
352
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
353 " Status Line {{{
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
354
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
355 set statusline=%f " Path.
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
356 set statusline+=%m " Modified flag.
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
357 set statusline+=%r " Readonly flag.
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
358 set statusline+=%w " Preview window flag.
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
359
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
360 set statusline+=\ " Space.
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
361
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
362 set statusline+=%#redbar# " Highlight the following as a warning.
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
363 set statusline+=%{SyntasticStatuslineFlag()} " Syntastic errors.
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
364 set statusline+=%* " Reset highlighting.
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
365
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
366 set statusline+=%= " Right align.
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
367
61
8c80aa9bd387 Re-enabled lawrencium status-line.
Ludovic Chabant <ludovic@chabant.com>
parents: 59
diff changeset
368 " Mercurial information.
8c80aa9bd387 Re-enabled lawrencium status-line.
Ludovic Chabant <ludovic@chabant.com>
parents: 59
diff changeset
369 set statusline+=%{lawrencium#statusline('[',']')}
8c80aa9bd387 Re-enabled lawrencium status-line.
Ludovic Chabant <ludovic@chabant.com>
parents: 59
diff changeset
370 set statusline+=\ " Space.
8c80aa9bd387 Re-enabled lawrencium status-line.
Ludovic Chabant <ludovic@chabant.com>
parents: 59
diff changeset
371
59
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
372 " File format, encoding and type. Ex: "(unix/utf-8/python)"
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
373 set statusline+=(
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
374 set statusline+=%{&ff} " Format (unix/DOS).
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
375 set statusline+=/
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
376 set statusline+=%{strlen(&fenc)?&fenc:&enc} " Encoding (utf-8).
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
377 set statusline+=/
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
378 set statusline+=%{&ft} " Type (python).
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
379 set statusline+=)
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
380
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
381 " Line and column position and counts.
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
382 set statusline+=\ (line\ %l\/%L,\ col\ %03c)
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
383
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
384 " }}}
6df571869f4a Added statusline and fold-related mappings.
Ludovic Chabant <ludovic@chabant.com>
parents: 55
diff changeset
385
45
aac6188ab4d6 Added vimroom plugin (disabled by default).
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
386 " Functions {{{
aac6188ab4d6 Added vimroom plugin (disabled by default).
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
387
aac6188ab4d6 Added vimroom plugin (disabled by default).
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
388 function! s:ToggleSpellCheck() abort
aac6188ab4d6 Added vimroom plugin (disabled by default).
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
389 if &spell ==? 'nospell'
aac6188ab4d6 Added vimroom plugin (disabled by default).
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
390 if &keymap ==? 'french'
aac6188ab4d6 Added vimroom plugin (disabled by default).
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
391 setlocal spell spelllang=fr_fr
aac6188ab4d6 Added vimroom plugin (disabled by default).
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
392 else
aac6188ab4d6 Added vimroom plugin (disabled by default).
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
393 setlocal spell spelllang=en_us,en_ca
aac6188ab4d6 Added vimroom plugin (disabled by default).
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
394 endif
aac6188ab4d6 Added vimroom plugin (disabled by default).
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
395 else
aac6188ab4d6 Added vimroom plugin (disabled by default).
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
396 setlocal spell nospell
aac6188ab4d6 Added vimroom plugin (disabled by default).
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
397 endif
aac6188ab4d6 Added vimroom plugin (disabled by default).
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
398 endfunction
aac6188ab4d6 Added vimroom plugin (disabled by default).
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
399
aac6188ab4d6 Added vimroom plugin (disabled by default).
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
400 " }}}
aac6188ab4d6 Added vimroom plugin (disabled by default).
Ludovic Chabant <ludovic@chabant.com>
parents: 43
diff changeset
401
55
a7932e0fa961 Enable lawrencium debugging.
Ludovic Chabant <ludovic@chabant.com>
parents: 53
diff changeset
402 " Temporary stuff {{{
a7932e0fa961 Enable lawrencium debugging.
Ludovic Chabant <ludovic@chabant.com>
parents: 53
diff changeset
403
a7932e0fa961 Enable lawrencium debugging.
Ludovic Chabant <ludovic@chabant.com>
parents: 53
diff changeset
404 " Enable debugging Lawrencium
a7932e0fa961 Enable lawrencium debugging.
Ludovic Chabant <ludovic@chabant.com>
parents: 53
diff changeset
405 let g:lawrencium_debug = 1
67
34dafaf8ed9c Removed trace.
Ludovic Chabant <ludovic@chabant.com>
parents: 61
diff changeset
406 let g:lawrencium_trace = 0
55
a7932e0fa961 Enable lawrencium debugging.
Ludovic Chabant <ludovic@chabant.com>
parents: 53
diff changeset
407
101
660fc1a54b4a Debug mode for piecrust plugin.
Ludovic Chabant <ludovic@chabant.com>
parents: 97
diff changeset
408 " Enable debugging PieCrust
660fc1a54b4a Debug mode for piecrust plugin.
Ludovic Chabant <ludovic@chabant.com>
parents: 97
diff changeset
409 let g:piecrust_debug = 1
660fc1a54b4a Debug mode for piecrust plugin.
Ludovic Chabant <ludovic@chabant.com>
parents: 97
diff changeset
410 let g:piecrust_trace = 0
660fc1a54b4a Debug mode for piecrust plugin.
Ludovic Chabant <ludovic@chabant.com>
parents: 97
diff changeset
411
55
a7932e0fa961 Enable lawrencium debugging.
Ludovic Chabant <ludovic@chabant.com>
parents: 53
diff changeset
412 " }}}
a7932e0fa961 Enable lawrencium debugging.
Ludovic Chabant <ludovic@chabant.com>
parents: 53
diff changeset
413