|
1 " |
|
2 " Файл конфигурации VIM — indvdum.vim |
|
3 " 22.08.2010 17:38:26 |
|
4 " |
|
5 " indvdum |
|
6 " |
|
7 |
|
8 " menu |
|
9 set wildmenu |
|
10 set wcm=<Tab> |
|
11 menu Encoding.utf-8 :e ++enc=utf8<cr> |
|
12 menu Encoding.cp1251 :e ++enc=cp1251<cr> |
|
13 menu Encoding.koi8-r :e ++enc=koi8-r<cr> |
|
14 menu Encoding.cp866 :e ++enc=cp866<cr> |
|
15 menu Encoding.utf-16le :set enc=utf-8<cr>:e ++enc=utf-16le<cr> |
|
16 menu Insert.date_time :start<cr><C-R>=strftime("%c")<CR> |
|
17 |
|
18 set fileencodings=utf-8,cp1251,koi8-r,cp866,utf-16le |
|
19 "set encoding=utf-8 |
|
20 set autoindent |
|
21 set shiftwidth=4 |
|
22 set tabstop=4 |
|
23 set softtabstop=4 |
|
24 set smarttab |
|
25 set is |
|
26 set ic |
|
27 set textwidth=0 |
|
28 set winminheight=0 |
|
29 set noequalalways |
|
30 set nowrap |
|
31 set winheight=9999 |
|
32 set nu |
|
33 set iskeyword=@,48-57,_,192-255 |
|
34 set langmap=йq,цw,уe,кr,еt,нy,гu,шi,щo,зp,х[,ъ],фa,ыs,вd,аf,пg,рh,оj,лk,дl,ж\\;,э',яz,чx,сc,мv,иb,тn,ьm,б\\,,ю.,ё`,ЙQ,ЦW,УE,КR,ЕT,НY,ГU,ШI,ЩO,ЗP,Х{,Ъ},ФA,ЫS,ВD,АF,ПG,РH,ОJ,ЛK,ДL,Ж:,Э\\",ЯZ,ЧX,СC,МV,ИB,ТN,ЬM,Б<,Ю>,Ё~ |
|
35 sy on |
|
36 if has("win32") |
|
37 set columns=120 |
|
38 set lines=30 |
|
39 set guifont=courier_new:h10:cRUSSIAN |
|
40 endif |
|
41 if has("gui_running") && !has("win32") |
|
42 set columns=120 |
|
43 set lines=30 |
|
44 endif |
|
45 set clipboard=unnamed |
|
46 set cursorline |
|
47 set nocursorcolumn |
|
48 set visualbell |
|
49 set laststatus=2 |
|
50 set statusline=%<%f%h%m%r%=format=%{&fileformat}\ file=%{&fileencoding}\ enc=%{&encoding}\ %b\ 0x%B\ %l,%c%V\ %P |
|
51 set nobackup |
|
52 set noswapfile |
|
53 set undolevels=65536 |
|
54 if version >= 703 |
|
55 set undofile |
|
56 set undodir=$VIMRUNTIME/../undofiles/ |
|
57 set norelativenumber |
|
58 set colorcolumn=80 |
|
59 endif |
|
60 |
|
61 "НАСТРОЙКИ ПОИСКА |
|
62 set ignorecase " ics - поиск без учёта регистра символов |
|
63 set smartcase " - если искомое выражения содержит символы в верхнем регистре - ищет с учётом регистра, иначе - без учёта |
|
64 set hls " подсветка результатов поиска |
|
65 set incsearch " поиск фрагмента по мере его набора |
|
66 |
|
67 "ВКЛЮЧЕНИЕ АВТОДОПЛНЕНИЯ ВВОДА (omnifunct) |
|
68 autocmd FileType python set omnifunc=pythoncomplete#Complete |
|
69 autocmd FileType tt2html set omnifunc=htmlcomplete#CompleteTags |
|
70 autocmd FileType javascript set omnifunc=javascriptcomplete#CompleteJS |
|
71 autocmd FileType html set omnifunc=htmlcomplete#CompleteTags |
|
72 autocmd FileType css set omnifunc=csscomplete#CompleteCSS |
|
73 autocmd FileType xml set omnifunc=xmlcomplete#CompleteTags |
|
74 autocmd FileType php set omnifunc=phpcomplete#CompletePHP |
|
75 autocmd FileType c set omnifunc=ccomplete#Complete |
|
76 |
|
77 "" Переключение табов (вкладок) |
|
78 map <S-tab> :tabprevious<cr> |
|
79 nmap <S-tab> :tabprevious<cr> |
|
80 imap <S-tab> <ESC>:tabprevious<cr>i |
|
81 map <C-tab> :tabnext<cr> |
|
82 nmap <C-tab> :tabnext<cr> |
|
83 imap <C-tab> <ESC>:tabnext<cr>i |
|
84 nmap <C-t> :tabnew<cr> |
|
85 imap <C-t> <ESC>:tabnew<cr> |
|
86 "nmap <C-w> :tabclose<cr> |
|
87 "imap <C-w> <ESC>:tabclose<cr> |
|
88 |
|
89 set go+=b |
|
90 set lbr " переносить целые слова |
|
91 set mouse=a " включает поддержку мыши при работе в терминале (без GUI) |
|
92 set t_Co=256 " использовать больше цветов в терминале |
|
93 filetype plugin indent on " определять подсветку на основе кода файла |
|
94 "" Автоматически перечитывать конфигурацию VIM после сохранения |
|
95 autocmd! bufwritepost $MYVIMRC source $MYVIMRC |
|
96 |
|
97 if has("gui_running") |
|
98 colo desert |
|
99 else |
|
100 colo ron |
|
101 endif |
|
102 |
|
103 " Теперь нет необходимости передвигать курсор к краю экрана, чтобы подняться в режиме редактирования |
|
104 set scrolljump=1 |
|
105 " Теперь нет необходимости передвигать курсор к краю экрана, чтобы опуститься в режиме редактирования |
|
106 set scrolloff=3 |
|
107 " Скрыть панель в gui версии ибо она не нужна |
|
108 set guioptions-=T |
|
109 " Включаем "умные" отступы ( например, автоотступ после {) |
|
110 set smartindent |
|
111 |
|
112 |
|
113 " Пробел в нормальном режиме перелистывает страницы |
|
114 nmap <Space> <C-D><C-D> |
|
115 nmap <S-Space> <C-U><C-U> |
|
116 |
|
117 " CTRL-F для omni completion |
|
118 imap <C-Space> <C-X><C-O> |
|
119 |
|
120 nmap <PageUp> <C-U><C-U> |
|
121 imap <PageUp> <C-O><C-U><C-O><C-U> |
|
122 nmap <PageDown> <C-D><C-D> |
|
123 imap <PageDown> <C-O><C-D><C-O><C-D> |
|
124 |
|
125 " < & > - делаем отступы для блоков |
|
126 vmap < <gv |
|
127 vmap > >gv |
|
128 |
|
129 " не перепрыгивать через длинные строки при включенном переносе строк |
|
130 nnoremap j gj |
|
131 nnoremap k gk |
|
132 vnoremap j gj |
|
133 vnoremap k gk |
|
134 nnoremap <DOWN> gj |
|
135 nnoremap <UP> gk |
|
136 vnoremap <DOWN> gj |
|
137 vnoremap <UP> gk |
|
138 inoremap <DOWN> <C-O>gj |
|
139 inoremap <UP> <C-O>gk |
|
140 |
|
141 " Ctrl-пробел для автодополнения |
|
142 inoremap <C-space> <C-x><C-o> |
|
143 |
|
144 map <F7> <Esc>:set wrap!<cr>:set wrap?<cr> |
|
145 imap <F7> <Esc>:set wrap!<cr>:set wrap?<cr> |
|
146 map <F8> <Esc>:emenu <TAB> |
|
147 map <F12> <Esc>:tabnew $vimruntime/indvdum.vim<cr> |