Vim имеет команду эквивалентной Ctrl-I Emacs?
Emacs имеет чрезвычайно полезный ярлык "C-I", который фиксирует добавление отступа текущей строки (или выбранные строки.)
Например, предположите написание этого крошечного кода на Emacs:
def foo
print "boo"
end
и Вы выбираете целые 3 строки. Вы нажимаете "C-I" затем, код становится
def foo
print "boo"
end
Я могу использовать это в тихом режиме т.е. игнорировании. Emacs также. Кто-либо знает, как сделать это на Vim?
Ответы на этот вопрос: https://stackoverflow.com/questions/235839/how-do-i-indent-multiple-lines-quickly-in-vi предлагает несколько способов сделать отступ.
Можно искать ={
располагать Ваш текущий блок кода с отступом.
Спасибо за всю Вашу справку. Я действительно ценю его. Но на самом деле я нашел решение:
В vimrc Вы будете видеть код ниже в около L37-39:
"if has("autocmd")
" filetype plugin indent on
"endif
и тем самым удалите "
в начале каждой строки для включения этой установки. Теперь автоматический отступ и работа фиксации добавления отступа!
Как Случайный Кодер говорит, когда Вы хотите зафиксировать добавление отступа в текущей строке, нажать =
(в Emacs C-h.) Также можно объединить это с выбором команд как gg=G
(в Emacs, C-x h C-i) для целого кода и C-v (Визуальный Блочный режим) было бы удобно.
(Код кода, который я записал в вопросе, написан в Ruby. Мой Vim, который я загрузил с репозитория Ubuntu, идет с конфигурационным файлом отступа Ruby (/usr/share/vim/vim72/indent/ruby.vim) и таким образом, Вы не должны становиться "рубиновыми энергией".)