Mercurial > ec-dotfiles
annotate rc/vimrc @ 528:92eb89781346
Enforce emacs-style commandline editor.
author | edogawaconan <me@myconan.net> |
---|---|
date | Mon, 15 Sep 2014 14:56:05 +0900 |
parents | 1dd96a55b7ac |
children | de3ff51840a3 |
rev | line source |
---|---|
525
1dd96a55b7ac
Invoke nocompatible earliest so it doesn't override anything preceeded it.
edogawaconan <me@myconan.net>
parents:
503
diff
changeset
|
1 set nocompatible |
424 | 2 set showmode " shows mode insert/replace/visual |
3 set showcmd " shows last command on screen | |
4 set nomodeline " disallow automatic vim command execution on arbitrary file | |
3 | 5 set autoindent |
6 set lazyredraw | |
424 | 7 set vb t_vb= " disables visual bell |
3 | 8 set ruler |
424 | 9 set backspace=2 " make backspace work like most other apps |
3 | 10 set esckeys |
11 set noerrorbells | |
424 | 12 set ts=8 |
13 set sw=2 | |
3 | 14 set expandtab |
32 | 15 set title |
424 | 16 set hlsearch |
17 set ls=2 " always show status line | |
18 set list listchars=tab:>-,trail:.,extends:> | |
19 set number | |
20 | |
21 if has('call') | |
22 call pathogen#infect() | |
23 endif | |
24 if has('filetype') | |
25 filetype plugin indent on | |
26 endif | |
33 | 27 |
28 map <C-t><up> :tabr<cr> | |
29 map <C-t><down> :tabl<cr> | |
30 map <C-t><left> :tabp<cr> | |
31 map <C-t><right> :tabn<cr> | |
35
a8dc309a1b8a
Misc adjusments for vim keys
Edho Prima Arief <me@myconan.net>
parents:
33
diff
changeset
|
32 map <C-t>p :tabp<cr> |
a8dc309a1b8a
Misc adjusments for vim keys
Edho Prima Arief <me@myconan.net>
parents:
33
diff
changeset
|
33 map <C-t>n :tabn<cr> |
33 | 34 map <C-t><C-t> :NERDTreeToggle<cr> |
35 map <C-t><C-m> :NERDTreeMirror<cr> | |
36 | |
430 | 37 nmap _cs :let @/ = ''<cr> |
424 | 38 nmap _pa :set number! list!<cr> |
39 | |
467 | 40 " format JSON |
41 map <leader>j <esc>:%!python -m json.tool<cr> | |
42 | |
33 | 43 "autocmd VimEnter * NERDTree |
44 "autocmd BufEnter * NERDTreeMirror | |
45 | |
329
ea82caf6c059
Added test to verify vim version (lite or full).
Edho Arief <edho@myconan.net>
parents:
315
diff
changeset
|
46 if has('syntax') |
ea82caf6c059
Added test to verify vim version (lite or full).
Edho Arief <edho@myconan.net>
parents:
315
diff
changeset
|
47 syntax on |
431 | 48 set foldmethod=syntax |
432 | 49 set nofoldenable |
446
3022c5d1f8ed
Back to dark theme for compatibility with non-personal systems.
Edho Arief <edho@myconan.net>
parents:
432
diff
changeset
|
50 set background=dark |
503
e2b52663763b
Replace solarized with base16.
edogawaconan <me@myconan.net>
parents:
496
diff
changeset
|
51 set t_Co=256 |
e2b52663763b
Replace solarized with base16.
edogawaconan <me@myconan.net>
parents:
496
diff
changeset
|
52 colorscheme base16-default |
329
ea82caf6c059
Added test to verify vim version (lite or full).
Edho Arief <edho@myconan.net>
parents:
315
diff
changeset
|
53 endif |
350 | 54 |
55 if has("autocmd") | |
467 | 56 augroup json_autocmd |
57 autocmd! | |
58 autocmd FileType json set autoindent | |
59 autocmd FileType json set formatoptions=tcq2l | |
60 autocmd FileType json set textwidth=78 shiftwidth=2 | |
61 autocmd FileType json set softtabstop=2 tabstop=8 | |
62 autocmd FileType json set expandtab | |
63 autocmd FileType json set foldmethod=syntax | |
64 augroup END | |
65 au! BufRead,BufNewFile *.json set filetype=json | |
350 | 66 autocmd BufRead,BufNewFile supervisord.conf :set ft=dosini |
353 | 67 autocmd BufRead,BufNewFile Gemfile :set ft=ruby |
454 | 68 autocmd BufRead,BufNewFile config.ru :set ft=ruby |
424 | 69 autocmd BufRead,BufNewFile crontab.* :set noet |
70 autocmd BufRead,BufNewFile crontab :set noet | |
71 autocmd BufRead,BufNewFile fstab :set noet | |
496
6bdf99bfbe97
Newer git use different filename, I think.
edogawaconan <me@myconan.net>
parents:
494
diff
changeset
|
72 autocmd BufRead,BufNewFile */.git/COMMIT_EDITMSG :set noet |
424 | 73 autocmd BufRead,BufNewFile .git/COMMIT_EDITMSG :set noet |
74 autocmd BufRead,BufNewFile .gitconfig :set noet | |
75 autocmd BufRead,BufNewFile .git/config :set noet | |
476 | 76 autocmd BufRead,BufNewFile *.coffee :set ft=coffee |
424 | 77 autocmd BufRead,BufNewFile *.erb :set ft=eruby |
393
0aabb2b34ef6
Added scss vim syntax support.
Edho Arief <edho@myconan.net>
parents:
390
diff
changeset
|
78 autocmd BufRead,BufNewFile *.scss :set ft=scss |
475 | 79 autocmd BufRead,BufNewFile *.slim :set ft=slim |
350 | 80 endif |
412
7ceec4404caf
Add restore cursor position for vim.
Edho Arief <edho@myconan.net>
parents:
410
diff
changeset
|
81 |
448
e0e8de4135bc
Testing for function never returns true. Replaced with autocmd.
Edho Arief <edho@myconan.net>
parents:
446
diff
changeset
|
82 if has('autocmd') |
418
c0ac21407903
Disable features on vim basic.
Edho Arief <edho@myconan.net>
parents:
412
diff
changeset
|
83 "Restore cursor position |
c0ac21407903
Disable features on vim basic.
Edho Arief <edho@myconan.net>
parents:
412
diff
changeset
|
84 set viminfo='10,\"100,:20,%,n~/.viminfo |
c0ac21407903
Disable features on vim basic.
Edho Arief <edho@myconan.net>
parents:
412
diff
changeset
|
85 function! ResCur() |
c0ac21407903
Disable features on vim basic.
Edho Arief <edho@myconan.net>
parents:
412
diff
changeset
|
86 if line("'\"") <= line("$") |
c0ac21407903
Disable features on vim basic.
Edho Arief <edho@myconan.net>
parents:
412
diff
changeset
|
87 normal! g`" |
c0ac21407903
Disable features on vim basic.
Edho Arief <edho@myconan.net>
parents:
412
diff
changeset
|
88 return 1 |
c0ac21407903
Disable features on vim basic.
Edho Arief <edho@myconan.net>
parents:
412
diff
changeset
|
89 endif |
c0ac21407903
Disable features on vim basic.
Edho Arief <edho@myconan.net>
parents:
412
diff
changeset
|
90 endfunction |
c0ac21407903
Disable features on vim basic.
Edho Arief <edho@myconan.net>
parents:
412
diff
changeset
|
91 augroup resCur |
c0ac21407903
Disable features on vim basic.
Edho Arief <edho@myconan.net>
parents:
412
diff
changeset
|
92 autocmd! |
c0ac21407903
Disable features on vim basic.
Edho Arief <edho@myconan.net>
parents:
412
diff
changeset
|
93 autocmd BufWinEnter * call ResCur() |
c0ac21407903
Disable features on vim basic.
Edho Arief <edho@myconan.net>
parents:
412
diff
changeset
|
94 augroup END |
496
6bdf99bfbe97
Newer git use different filename, I think.
edogawaconan <me@myconan.net>
parents:
494
diff
changeset
|
95 autocmd BufWinEnter */.git/COMMIT_EDITMSG exe "normal! gg" |
451
abb434518e1f
Always start editing git commit message from line 1.
Edho Arief <edho@myconan.net>
parents:
448
diff
changeset
|
96 autocmd BufWinEnter .git/COMMIT_EDITMSG exe "normal! gg" |
418
c0ac21407903
Disable features on vim basic.
Edho Arief <edho@myconan.net>
parents:
412
diff
changeset
|
97 endif |
424 | 98 |
99 if has('statusline') | |
100 " Status line detail: | |
101 " %f file path | |
102 " %y file type between braces (if defined) | |
103 " %([%R%M]%) read-only, modified and modifiable flags between braces | |
104 " %{'!'[&ff=='default_file_format']} | |
105 " shows a '!' if the file format is not the platform | |
106 " default | |
107 " %{'$'[!&list]} shows a '*' if in list mode | |
108 " %{'~'[&pm=='']} shows a '~' if in patchmode | |
109 " (%{synIDattr(synID(line('.'),col('.'),0),'name')}) | |
110 " only for debug : display the current syntax item name | |
111 " %= right-align following items | |
112 " #%n buffer number | |
113 " %l/%L,%c%V line number, total number of lines, and column number | |
114 function SetStatusLineStyle() | |
115 if &stl == '' || &stl =~ 'synID' | |
116 let &stl="%f %y%([%R%M]%)%{'!'[&ff=='".&ff."']}%{'$'[!&list]}%{'~'[&pm=='']}%=#%n %l/%L,%c%V " | |
117 else | |
118 let &stl="%f %y%([%R%M]%)%{'!'[&ff=='".&ff."']}%{'$'[!&list]} (%{synIDattr(synID(line('.'),col('.'),0),'name')})%=#%n %l/%L,%c%V " | |
119 endif | |
120 endfunc | |
121 " Switch between the normal and vim-debug modes in the status line | |
122 nmap _ds :call SetStatusLineStyle()<CR> | |
123 call SetStatusLineStyle() | |
124 " Window title | |
125 if has('title') | |
493
1ad9091c464e
Properly set window name for vim.
edogawaconan <me@myconan.net>
parents:
476
diff
changeset
|
126 if &term == "screen" |
1ad9091c464e
Properly set window name for vim.
edogawaconan <me@myconan.net>
parents:
476
diff
changeset
|
127 set t_ts=]0; |
1ad9091c464e
Properly set window name for vim.
edogawaconan <me@myconan.net>
parents:
476
diff
changeset
|
128 set t_fs= |
1ad9091c464e
Properly set window name for vim.
edogawaconan <me@myconan.net>
parents:
476
diff
changeset
|
129 endif |
494 | 130 set title |
131 let &titlestring = $user | |
424 | 132 endif |
133 endif |