Ответы:
Вы можете использовать Ctrl+Dдля резервного копирования одной остановки табуляции. Это фактически перемещает всю строку влево на одну позицию табуляции; Ctrl+Tделает то же самое с правой стороны. Обратите внимание, что эти нажатия клавиш работают только в режиме вставки (используйте <<и >>для эквивалента в командном режиме).
ТЛ; др: set tabstop=4 softtabstop=-1 shiftwidth=0 expandtab
короткая форма: set ts=4 sts=-1 sw=0 et
Если вы установите softtabstop(или sts) на -1него, он будет автоматически вести себя так же, как tabstop( ts), что избавит вас от хлопот, если вы сильно измените вкладки. Параметр shiftwidth( sw) 0должен эффективно делать то же самое, tabstopчто и.
shiftwidth sw
Количество пробелов для каждого шага (авто) отступа. Используется для
cindent, >>, <<и т.д.
Когда нульtabstopзначение будет использовано.
tabstop ts
Количество пробелов, которые в файле учитываются. Также см . : команда retab и
softtabstopопция.
softtabstop sts
Количество пробелов, которые Tabучитываются при выполнении операций редактирования, таких как вставка Tabили использование BS. Такое ощущение, что Tabs вставляются, хотя на самом деле используется сочетание пробелов и s. Это полезно, чтобы сохранить
tabsнастройку is в ее стандартном значении, в то же время имея возможность редактировать, как установленоsts. Когдаstsотрицательно, используется значениеshiftwidth. Это избавит вас от хлопот, если вы сильно меняете табуляции. Еслиexpandtabне установлено, количество пробелов минимизируется с помощью Tabs.
expandtab et
В режиме вставки: используйте соответствующее количество пробелов для вставки. Пространства используются в абзацах с >и <команд , и когда
autoindentвключен. Чтобы вставить реальную вкладку, когдаexpandtabона включена, используйте Ctrl- V Tab. Смотрите также : retab
Я написал GreedyBackspace.vim для тех, кто хотел что-то подобное. Лично я не пользуюсь им, так что я давно его обновил. Я не получал сообщений об ошибках в последнее время, хотя.
Несколько вариантов:
Самый простой способ <<, повторите с.
Вы проверили, используя настройки расширенных вкладок в VIM?
:set noet
Я обычно предпочитаю держать вкладки во время работы с файлами.
Когда это требуется, я заменяю вкладки на 4 пробела или столько, сколько требуется.
:%s/<ctrl+V><tab>/ /g
----
В качестве небольшого бонуса, ваш исходный файл короче на 3 символа за вкладку :-)
Я не думаю, что есть выход. После того, как клавиша табуляции расширена до четырех пробелов, vim не может знать, что они когда-либо были табуляцией.