Guest User

vimrc

a guest
Dec 16th, 2011
185
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. " Включаем несовместимость настроек с Vi (ибо Vi нам и не понадобится).
  2. set nocompatible
  3. " Включает виртуальный звонок (моргает, а не бибикает при ошибках)
  4. set visualbell
  5. " Скрыть панель в gui версии ибо она не нужна
  6. " set guioptions-=T
  7.  
  8. "" МЕТОДЫ ВВОДА
  9. " Настраиваем переключение раскладок клавиатуры по <C-^>
  10. set keymap=russian-jcukenwin
  11. " Раскладка по умолчанию - английская
  12. set iminsert=0
  13. " При изменении активного окна будет выполняться обновление
  14. " индикации текущей раскладки
  15. cmap <silent> <C-W> <C-^>
  16. imap <silent> <C-W> <C-^>
  17. nmap <silent> <C-W> <C-^>
  18. vmap <silent> <C-W> <C-^>
  19. " При копировании добавить в иксовый буфер
  20. nmap yy yy:silent .w !xclip<CR>
  21. vmap y y:silent '<,'> w !xclip<CR>
  22. " Включаем мышку в текстовом режиме
  23. set mouse=a
  24.  
  25. "" РАБОТА С ФАЙЛАМИ
  26. " Список кодировок файлов для автоопределения
  27. set fileencodings=utf-8,cp1251,koi8-r,cp866
  28. " Отключаем создание бэкапов
  29. set nobackup
  30. " Отключаем создание swap файлов
  31. set noswapfile
  32. " Не выгружать буфер, когда переключаемся на другой
  33. set hidden
  34. " Перечитывать атоматически файлы
  35. set autoread
  36.  
  37. "" СТАТУСНАЯ СТРОКА
  38. " Включаем отображение дополнительной информации в статусной строке
  39. set statusline=%<%f%h%m%r%=format=%{&fileformat}\ file=%{&fileencoding}\ enc=%{&encoding}\ %b\ 0x%B\ %l,%c%V\ %P
  40. " Всегда отображать статусную строку для каждого окна
  41.  
  42. set laststatus=2
  43. " Включаем отображение выполняемой в данный момент команды в правом нижнем углу экрана.
  44. set showcmd
  45. " Сделать строку команд высотой в одну строку
  46. set ch=1
  47.  
  48. "" ПОИСК
  49. " Включаем подсветку выражения, которое ищется в тексте
  50. set hlsearch
  51. " При поиске перескакивать на найденный текст в процессе набора строки
  52. set incsearch
  53. " Игнорировать регистр букв при поиске
  54. set ignorecase
  55.  
  56. "" ПЕРЕНОС ПО СТРОКАМ
  57. " Включаем перенос строк
  58. set wrap
  59. " Перенос строк по словам, а не по буквам
  60. set linebreak
  61.  
  62. "" НАСТРОЙКА ТАБУЛЯЦИИ
  63. " Преобразование Таба в пробелы
  64. set expandtab
  65. " Размер табуляции
  66. set tabstop=3
  67. " Размер сдвига при нажатии на клавиши << и >>
  68. set shiftwidth=3
  69. " Включаем 'умную' автоматическую расстановку отступов
  70. set smartindent
  71. " Копирует отступ от предыдущей строки
  72. set autoindent
  73. " Включаем подсветку синтаксиса
  74. syntax on
  75. " Включаем нумерацию строк
  76. set number
  77. " Показывать положение курсора всё время.
  78. set ruler
  79.  
  80. "НАСТРОЙКИ СВОРАЧИВАНИЯ БЛОКОВ КОДА (фолдинг)
  81. set foldenable " включить фолдинг
  82. set foldmethod=syntax " определять блоки на основе синтаксиса файла
  83. set foldcolumn=3 " показать полосу для управления сворачиванием
  84. let perl_folding=1 " правильное сворачивание классов и функций Perl
  85. let php_folding=1 " правильное сворачивание классов и функций PHP
  86. "set foldlevel=1 " Первый уровень вложенности открыт, остальные закрыты
  87. "set foldopen=all " автоматическое открытие сверток при заходе в них
  88.  
  89. "" АВТОЗАВЕРШЕНИЕ СКОБ
  90. " Показыватть первую скобу когда печататаешь вторую
  91. set showmatch
  92. " Редко когда надо [ без пары =)
  93. imap [ []<LEFT>
  94.  
  95. "" Меню Encoding -->
  96. " Выбор кодировки, в которой сохранять файл
  97. set wildmenu
  98. set wcm=<Tab>
  99. menu Encoding.Write.utf-8<Tab><F7> :set fenc=utf8 <CR>
  100. menu Encoding.Write.windows-1251<Tab><F7> :set fenc=cp1251<CR>
  101. menu Encoding.Write.koi8-r<Tab><F7> :set fenc=koi8-r<CR>
  102. menu Encoding.Write.cp866<Tab><F7> :set fenc=cp866<CR>
  103. map <F7> :emenu Encoding.Write.<TAB>
  104.  
  105. " Выбор кодировки, в которой читать файл
  106. set wildmenu
  107. set wcm=<Tab>
  108. menu Encoding.Read.utf-8<Tab><F8> :e ++enc=utf8 <CR>
  109. menu Encoding.Read.windows-1251<Tab><F8> :e ++enc=cp1251<CR>
  110. menu Encoding.Read.koi8-r<Tab><F8> :e ++enc=koi8-r<CR>
  111. menu Encoding.Read.cp866<Tab><F8> :e ++enc=cp866<CR>
  112. map <F8> :emenu Encoding.Read.<TAB>
  113. "" Menu Encoding <--
  114.  
  115. " Проверка орфографии -->
  116. if version >= 700
  117. " По умолчанию проверка орфографии выключена
  118. set spell spelllang=
  119. set nospell
  120.  
  121. menu Spell.off :setlocal spell spelllang=<CR>:setlocal nospell<CR>
  122. menu Spell.Russian+English :setlocal spell spelllang=ru,en<CR>
  123. menu Spell.Russian :setlocal spell spelllang=ru<CR>
  124. menu Spell.English :setlocal spell spelllang=en<CR>
  125. menu Spell.-SpellControl- :
  126. menu Spell.Word\ Suggest<Tab>z= z=
  127. menu Spell.Add\ To\ Dictionary<Tab>zg zg
  128. menu Spell.Add\ To\ TemporaryDictionary<Tab>zG zG
  129.  
  130. menu Spell.Remove\ From\ Dictionary<Tab>zw zw
  131. menu Spell.Remove\ From\ Temporary\ Dictionary<Tab>zW zW
  132. menu Spell.Previous\ Wrong\ Word<Tab>[s [s
  133. menu Spell.Next\ Wrong\ Word<Tab>]s ]s
  134. endif
  135. " Проверка орфографии <--
RAW Paste Data