indvdum.vim
author indvdum (gotoindvdum[at]gmail[dot]com)
Sun, 27 Nov 2011 22:56:52 +0300
changeset 0 6b5ff619caec
child 1 fce9e2151421
permissions -rwxr-xr-x
init
     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>