6f20711258dd9e507c3c52f4ac24552f35f32d3b
[nethome.git] / .vimrc
1 if !exists("g:_kratochvil_vimrc")
2         let g:_kratochvil_vimrc=1
3
4 autocmd! filetypedetect
5 "remove 'set tw=78':
6 autocmd! BufRead *.txt
7
8 "autocmd * * echo "test"
9
10 "startup   read      existing     file: BufReadPre BufReadPost BufEnter VimEnter
11 "command   read      non-existing file: BufCreate   BufNewFile BufEnter
12 "immediate switch to existing     file: BufReadPre BufReadPost BufEnter
13 "immediate switch to non-existing file:             BufNewFile BufEnter
14
15 autocmd BufCreate,VimEnter *                                             let g:BufEnter_ts= 8
16 autocmd BufCreate,VimEnter */home/{short,kratochvil,root}/{src,WWW}/*    let g:BufEnter_ts= 2
17 autocmd BufCreate,VimEnter */home/{short,kratochvil,root}/src/*gnokii*/* let g:BufEnter_ts= 8
18 autocmd BufCreate,VimEnter *.{i{,.as},s}                                 let g:BufEnter_ts=20
19 autocmd BufEnter * call BufEnter()
20 autocmd VimEnter * call BufEnter()
21 set runtimepath=.,$VIMRUNTIME
22 function BufEnter()
23         if exists("g:BufEnter_ts")
24                 let &ts=g:BufEnter_ts
25                 let &sw=g:BufEnter_ts
26                 unlet g:BufEnter_ts
27
28                 set autoindent
29                 set nocindent
30                 set nosmartindent
31                 set indentexpr=
32
33                 runtime! ./../../../../../../../../../../../.vimrc ./../../../../../../../../../../.vimrc ./../../../../../../../../../.vimrc ./../../../../../../../../.vimrc ./../../../../../../../.vimrc ./../../../../../../.vimrc ./../../../../../.vimrc ./../../../../.vimrc ./../../../.vimrc ./../../.vimrc ./../.vimrc ./.vimrc
34         endif
35 endfunction
36 " From Red Hat vimrc - restore the cursor position after the file got opened:
37 autocmd BufReadPost * call BufReadPost()
38 function BufReadPost()
39         if line("'\"") > 0 && line ("'\"") <= line("$")
40                 exe "normal! g'\""
41         endif
42 endfunction
43
44 set encoding=utf-8
45 set termencoding=utf-8
46 " fileencoding is detected from fileencodings, first one for empty files
47 " 'iso-8859-2,euc-jp' really does not work for 'euc-jp'
48 set fileencodings=utf-8,euc-jp,iso-8859-2
49
50 ca X x
51 syntax off
52 set noerrorbells
53 set ruler
54 set ignorecase
55 set nobackup
56 set nowritebackup
57 set exrc
58 set nostartofline
59 set nohlsearch
60 set noincsearch
61 set fo=tcq1
62 set viminfo='100,\"1000,:100,/40
63 " FIXME: Learn how to do :tag instead of :tselect with :cstag (used by :tag and CTRL-] if set cst)
64 set nocst
65 set tags=./tags,./TAGS,./../tags,./../TAGS,./../../tags,./../../TAGS,./../../../tags,./../../../TAGS,./../../../../tags,./../../../../TAGS,./../../../../../tags,./../../../../../TAGS,./../../../../../../tags,./../../../../../../TAGS,./../../../../../../../tags,./../../../../../../../TAGS,./../../../../../../../../tags,./../../../../../../../../TAGS,./../../../../../../../../../tags,./../../../../../../../../../TAGS,./../../../../../../../../../../tags,./../../../../../../../../../../TAGS,./../../../../../../../../../../../tags,./../../../../../../../../../../../TAGS,./reactos/tags,./../reactos/tags,./../../reactos/tags,,./../../../reactos/tags,./../../../../reactos/tags,./../../../../../reactos/tags,./../../../../../../reactos/tags,./w32/inc/tags,./../w32/inc/tags,./../../w32/inc/tags,,./../../../w32/inc/tags,./../../../../w32/inc/tags,./../../../../../w32/inc/tags,./../../../../../../w32/inc/tags,./../../../../../../../w32/inc/tags,/usr/src/redhat/BUILD/tags,/usr/src/redhat/BUILD/TAGS,/usr/include/tags,/usr/include/TAGS
66
67 noremap <Esc>p :set invpaste paste?<cr>
68 noremap <Esc>l :set invlist paste?<cr>
69 noremap <Esc>q @q
70 noremap <Esc>: @:
71 noremap <C-n> :next<cr>zz<C-g>
72 noremap <C-p> :prev<cr>zz<C-g>
73 noremap <Esc>N :tn<cr>zz<C-g>
74 noremap <Esc>P :tp<cr>zz<C-g>
75 noremap <Esc>M :cn<cr>zz<C-g>
76 noremap <Esc>L :cp<cr>zz<C-g>
77 noremap <Esc>g "myiw:grep<Space>-rw<Space>'<C-r>m'<Space>.
78 noremap <C-]> <C-]>zz<C-g>
79 noremap <C-t> <C-t>zz<C-g>
80 noremap <C-d> G:r !date '+\%H:\%M:\%S-'<cr>kA
81 noremap <Esc>d :set hlsearch<cr>/^[+-]\([^+-].*\\|\)$<cr>
82 noremap <Esc>D :set hlsearch<cr>/^[+-][+-]\([^+-].*\\|\)$<cr>
83 noremap <Esc>w 0i <Esc>/[^ ]<cr>vf.h"kyf./[^ ]<cr>vf.h"ly0x:r !date -d "`date '+\%Y'`-<C-r>l-<C-r>k" '+\%u'<cr>yypkV:!tr '1234567' 'PUSCPSN'<cr>jV:!tr '1234567' 'otttaoe'<cr>kJxv0xk0llllllplxxjddk0
84 noremap * :let ic_save=&ic<cr>:set noic<cr>*:let &ic=ic_save<cr>
85 noremap # :let ic_save=&ic<cr>:set noic<cr>#:let &ic=ic_save<cr>
86
87 endif "!exists("g:_kratochvil_vimrc")