Skip to content

installero/.vim

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

60 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

# Метки

  m[a-z] — локальная метка
  m[A-Z] — глобальная метка
  `a — перейти на метку a
  'a — перейти на строку с меткой a
  `. — перейти к месту последней правки
  '' — прыгнуть назад
  :marks — посмотреть список меток
  :delmarks a — удалить метку a

# Скроллинг (без перемещения курсора, с перемещением)

  Ctrl+E — extra (показать строки под курсором, по одной)
  Ctrl+Y — yet (показать строки до курсора, по одной)

  Ctrl+U — up (курсор на полстраницы вверх)
  Ctrl+D — down (курсор на полстраницы вниз)

# fugitive

  :Gblame — посмотреть виновников последней правки каждой строчки
  :Ggrep foot — найти вхождения foo в файлах проекта
    CR — перейти к первому файлу (в месте вхождения)
    :cn/:cp — фигачить со списку файлов вперёд/назад

# Плагин для комментирования

  \cc — закомментировать выделенные строки
  \cu — раскомментировать выделенный код

# Плагин vim-snippets

  if<tab> — раскрывает ветвеление в ruby
  this<tab> — оборачивает $(this) в js
  %<tab> — ислолнение кода в представлнии
  =<tab> — вставкa кода в представлние

# Подключить ctags

  :Ctags (vim-rails) — сделать в проекте файлик ctags, в которой добавятся метки для файлов проекта и его гемов
  <c-]> — перейти к определению функции под курсором
  <c-t> — вернуться после перехода по стеку меток
  g<-]> — показать список мест для перехода
  <c-w>} — показать определение функции в окне предпросмотра
  :tag <tag_name> — показать определение метки
  :tselect <tag_name> — показать список определений меток

# Инструменты для rails (http://www.sitepoint.com/effective-rails-development-vim/)

  поставил Ctags
  поставил vim-rails
  поставил snippet-mate
  отказался от vim-rsepc (удобнее пользоваться в отд. окне)
  отказался от Ack в пользу git grep

# vim-rails

  :A — редактировать «альтернативный» в смысле (спека-код) файл
  :AS/:AV — редактировать его в отдельном окошке
  :AT — редактировать файл в отд. вкладке
  :R — редактировать «связанный» в смысле модель-контроллер-представление
  :Econtroller [{name}] — редактировать контроллер (без параметра будет догадываться)
  аналогично для environment, fixtures, functionaltest, helper, initializer, javascript, layout,
  lib, locale, mailer, migration, model, spec, schema, stylesheet, task, viewo
  :Rake {task} — выполнить задание (дефолтное для большинства файлов, скажем, прогнать тест)
  :Rabbrev — посмотреть список снипетов, доступных в текущем файле

# макросы для rails
  
  % — <% %>
  = — <%= %>
  if — <% if %> .. <% end>
  ief — ...
  lt — <% link_to 'name', src %>
  https://github.com/honza/vim-snippets/tree/master/snippets

# вимовские вкладки

  http://superuser.com/questions/410982/in-vim-how-can-i-quickly-switch-between-tabs
  :tabe(dit) <file> — открывать файл в новой вкладке
  :tabclose — закрыть текущую вкладку
  Ctrl-W T — переместить текущее окно во вкладку
  Ctrl-W c — закрыть окно/вкладку, если окно во вкладке последнее
  Ctrl-W gf — go to file в отдельной вкладке
  в CTRLP при выборе файла <c-t> откроет выбор в новой вкладке
  gt — перейти к след. вкладке
  gT — перейти к пред. влкдаке
  {i}gt — перейти к вкладке с номером i

# Заботать ctrlp (куча удобных фишек: http://kien.github.io/ctrlp.vim/)

  <c-p> — открыть поиск
  <c-f> — крутить режимы поиска (файлы, буферы, недавние)
  <c-j|k> — вниз-вверх по результатам поиска
  <c-t> — открыть в новой вкладке
  <c-v|x> — открыть в новом окне с разделением
  <c-n|p> — последний запрос
  <c-z> — выделить несколько файлов и открыть их <c-o>

# Перебиндить CTRL+P и работу с буферами на что-то божеское (ctrl+f, ctrl+b — скроллинг на страницу, переживу)

  <c-f> — поиск по всем файлам
  <c-f><c-f> — поиск по открытым буферам

# Как двигать каретку в режиме вставки вправо, влево, конец строки, начало строки, по словам

  говорят, что в режиме правки курсором не двигают
  A — редактрировать в конце строки
  I — редактировать в начале строки
  <c-h> — backspace в режиме правки
  <c-w> — удалить последнее слово в режиме правки
  <c-u> — удалить всё на строке и начать сначала
  <c-o> — выполнить команду для нормального режима в режиме правки
  <c-o>$ — перейти в режиме правки к концу строки (= Esc + A)
  <c-o>^ — перейти в режиме правки к началу строки (= Esc + I)
  <c-o>f) — продолжить править до первой нашедшейся скобки
  <c-t|d> — увеличить/уменьшить отступ текущей строчки в режиме правки
  
# Перемещать текущий файл в новое место

  :Sex (:Hex, :Vex, :Text) — открыть навигатор Vim в текущей директории
  R — переименовать файл под курсором

# Научиться сохр. файл чем-то поудобне :w

  :x — сохранить и выйти (:wq)
  :wa — сохранить всё
  :wqa — сохранить всё и выйти
  map <Esc><Esc> :w<CR> — настроил сохранение на двойной Esc

# Искать выделенный текст

  Можно скопировать что угодно и вставить в режиме поиска <c-r>"
  забиндил vnoremap // y/<C-R>"<CR>

# Выделять/копировать/менять внутри def|end 

  ]m — начало следующего метода
  ]M — конец следующего метода
  [m — начало предыдущего метода
  [M — конец следующего метода
  am — метод def-end
  im — внутри def-end

# Плагин для удвоения кавычек, скобок и прочего

  поставил lexima.vim ([| → [|], (| → (|), '| → '|', "| → "|")
  закрывает end после def или if в ruby
  не трогает выражения после \ (\", \', \(, \[)
  добавляет строку с переносом после (
    |
  )

# Выделять для правки несколько мест в тексте

  поставил vim-multiple-cursors
  <c-n> — выделить слово под курсором и поместить курсор в его начало
  <c-n><c-n> — выделить потом следущее такое же слово и поместить новый курсор в его начало
  <c-n><c-n><c-x> — отменить последнее слово и перейти к следующему
  <c-n><c-n><c-p> — отменить последнее слово и перейти к следующему
  <c-n><c-n>c — заменить выделенные слова и начать печатать вместо них что-то другое
  <Esc> — выйти из режима множеств. курсоров обратно в Normal
  можно выделить несколько строк и нажать <c-n> — появится по курсору в начале каждой строки
  в режиме правки работают только «однокнопочные» команды (c, i, a, I, A, s, r, x, f, t)
  в режиме мультиправки курсор становится белым

# Заботать работу с разными буферами в vim (vim registers)

  "aY — скопировать строку в регистр a
  "ad — вырезать в регистр b
  "Ayy — добавить строку к содержимому регистра a
  "ap — вставить строку из регистра a
  <c-r>a — вставить из регистра a в режиме правки
  "_dd — удалить строку, не занося её в регистры
  "0p — вставить последний скопированный текст (не затриаеся при удалениях)
  :reg — посмотреть текущие регистры
  "+ — вставить из буфера системы Ctrl-C (!)
  "* — вставить из буфера системы выделение мышью (!)

# Установить vim-syntastic, сделать ему по умолчанию пассивный режим и научить его гонять по текущему файлу rubocop

  <c-w>e — прогнать проверку по текущему файлу

# Научиться в терминале гнома управлять русскими символами, замапить русские команды :ц, :цф, :цй

  http://habrahabr.ru/post/175709/

About

Personal Vim configuration files

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published