Когда я вижу вопросы о Vim и переформатирования и reindenting, я обычно чувствую замешательство. Но это довольно легко.
Reindenting, done with = ключ, представляет собой процесс смены строки, не вставляя никаких концов линии - без жесткой упаковки. Проще говоря, начальные столбцы выбранных строк могут меняться, но контент не может.
С другой стороны, переформатирование является полной переделкой выбранного фрагмента кода. Проще говоря, все удаляется и записывается снова в соответствии с правилами языка, определенными в Vim. Легко, да?
Обычные лаковая для reindentation должны пойти в начало файла (гг), изменение выбора линии (V), перейти на конец файла (G) и выполнить reidentation (=).
Это отступов в Vim: ггВG=
переформатирование шаблона начинается с теми же самыми ключами (ггВG), но вместо равного ключа вы делаете gq - reformat Команда Vim.
Это форматирование в Vim: ггVGгд
Это работает из коробки в каждом Vim, например, даже с простым текстом. Только когда Vim не понимает язык программирования, вам необходимо предоставить правильные правила форматирования (обычно это пустые файлы .vim, которые нужно перейти в структуру каталога .vim).
Reformatting for Ruby работает только при установке плагина vim-ruby.
Я должен был опубликовать это on my blog ;-) Не Vim круто? Это.
Я пробовал это в рубиновом файле, и он отступал от всех строк, так что они начали 8 символов слева. Он полностью проигнорировал исходный отступ. – opsb
См. Редактирование в оригинальном вопросе для моего решения проблемы форматирования. – opsb
Просмотрел vimcast, это стоит посмотреть – opsb