indvdum.vim
author indvdum (gotoindvdum[at]gmail[dot]com)
Thu, 31 May 2012 22:17:57 +0400
changeset 3 3e5c3ce53ad1
parent 2 a14a25c6bbd0
child 4 4137beec6616
permissions -rwxr-xr-x
Vim config
     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 visualbell
    47 set laststatus=2
    48 set statusline=%<%f%h%m%r%=format=%{&fileformat}\ file=%{&fileencoding}\ enc=%{&encoding}\ %b\ 0x%B\ %l,%c%V\ %P
    49 set nobackup
    50 set noswapfile
    51 set undolevels=65536
    52 if version >= 703
    53     set undofile
    54 	set undodir=$VIMRUNTIME/../undofiles/
    55     set norelativenumber
    56     set colorcolumn=80
    57 endif
    58 
    59 "НАСТРОЙКИ ПОИСКА
    60 set ignorecase " ics - поиск без учёта регистра символов
    61 set smartcase " - если искомое выражения содержит символы в верхнем регистре - ищет с учётом регистра, иначе -  без учёта
    62 set hls " подсветка результатов поиска
    63 set incsearch " поиск фрагмента по мере его набора
    64 
    65 "ВКЛЮЧЕНИЕ АВТОДОПЛНЕНИЯ ВВОДА (omnifunct)
    66 autocmd FileType python set omnifunc=pythoncomplete#Complete
    67 autocmd FileType tt2html set omnifunc=htmlcomplete#CompleteTags
    68 autocmd FileType javascript set omnifunc=javascriptcomplete#CompleteJS
    69 autocmd FileType html set omnifunc=htmlcomplete#CompleteTags
    70 autocmd FileType css set omnifunc=csscomplete#CompleteCSS
    71 autocmd FileType xml set omnifunc=xmlcomplete#CompleteTags
    72 autocmd FileType php set omnifunc=phpcomplete#CompletePHP
    73 autocmd FileType c set omnifunc=ccomplete#Complete
    74 
    75 "" Переключение табов (вкладок)
    76 map <S-tab> :tabprevious<cr>
    77 nmap <S-tab> :tabprevious<cr>
    78 imap <S-tab> <ESC>:tabprevious<cr>i
    79 map <C-tab> :tabnext<cr>
    80 nmap <C-tab> :tabnext<cr>
    81 imap <C-tab> <ESC>:tabnext<cr>i
    82 nmap <C-t> :tabnew<cr>
    83 imap <C-t> <ESC>:tabnew<cr>
    84 "nmap <C-w> :tabclose<cr>
    85 "imap <C-w> <ESC>:tabclose<cr>
    86 
    87 set go+=b
    88 set lbr " переносить целые слова
    89 set mouse= " выключает поддержку мыши при работе в терминале (без GUI)
    90 set t_Co=256 " использовать больше цветов в терминале
    91 filetype plugin indent on " определять подсветку на основе кода файла
    92 "" Автоматически перечитывать конфигурацию VIM после сохранения
    93 autocmd! bufwritepost $MYVIMRC source $MYVIMRC
    94 
    95 if has("gui_running")
    96 	colo desert
    97 else
    98 	colo ron
    99 endif
   100 
   101 set cursorline
   102 set cursorcolumn
   103 hi CursorLine ctermbg=235
   104 hi CursorColumn ctermbg=235
   105 hi Search ctermbg=DarkBlue ctermfg=LightGrey
   106 
   107 
   108 " Теперь нет необходимости передвигать курсор к краю экрана, чтобы подняться в режиме редактирования
   109 set scrolljump=1
   110 " Теперь нет необходимости передвигать курсор к краю экрана, чтобы опуститься в режиме редактирования
   111 set scrolloff=5
   112 " Скрыть панель в gui версии ибо она не нужна
   113 set guioptions-=T
   114 " Включаем "умные" отступы ( например, автоотступ после {)
   115 set smartindent
   116 
   117 
   118 " Пробел в нормальном режиме перелистывает страницы
   119 nmap <Space> <C-D><C-D>
   120 nmap <S-Space> <C-U><C-U>
   121 
   122 nmap <PageUp> <C-U><C-U>
   123 imap <PageUp> <C-O><C-U><C-O><C-U>
   124 nmap <PageDown> <C-D><C-D>
   125 imap <PageDown> <C-O><C-D><C-O><C-D>
   126 
   127 " < & > - делаем отступы для блоков
   128 vmap < <gv
   129 vmap > >gv
   130 
   131 " не перепрыгивать через длинные строки при включенном переносе строк
   132 nnoremap j gj
   133 nnoremap k gk
   134 vnoremap j gj
   135 vnoremap k gk
   136 nnoremap <DOWN> gj
   137 nnoremap <UP> gk
   138 vnoremap <DOWN> gj
   139 vnoremap <UP> gk
   140 inoremap <DOWN> <C-O>gj
   141 inoremap <UP> <C-O>gk
   142 
   143 " Ctrl-пробел для автодополнения
   144 inoremap <C-space> <C-x><C-o>
   145 
   146 map <F7> <Esc>:set wrap!<cr>:set wrap?<cr>
   147 imap <F7> <Esc>:set wrap!<cr>:set wrap?<cr>
   148 map <F8> <Esc>:emenu <TAB>
   149 map <F12> <Esc>:tabnew $vimruntime/indvdum.vim<cr>