Как решить проблему табуляции / пробелов между Atom и Vim - PullRequest
0 голосов
/ 14 июля 2020

Я предпочитаю писать свои сценарии в Atom на моей локальной машине. Тем не менее, я запускаю многие из них в кластере моего университета, и когда мне нужно изменить что-то маленькое, я предпочитаю просто открыть его в vim и внести изменения, а не редактировать в Atom на моем локальном компьютере и нажимать / извлекать из GitHub .

Однако, когда я открываю свой скрипт в vim, используя кнопку табуляции, курсор перемещается на 8 пробелов. Это особенно раздражает, потому что мне приходится делать все новые отступы с пробелами.

В Atom длина табуляции установлена ​​на 4 пробела, а тип табуляции установлен на автоматический. Я ничего не сделал, чтобы изменить vim по умолчанию.

Следует ли мне изменить длину табуляции в Atom или есть какое-то лучшее решение?

1 Ответ

0 голосов
/ 16 июля 2020

Есть несколько настроек, которые вы можете использовать для управления этим в Vim. Они следующие:

  • tabstop, shiftwidth и softtabstop контролируют ширину отступов. Между ними есть различия, и вы должны прочитать документацию для каждого, чтобы понять, что они делают, но, грубо говоря, если вы всегда хотите вставлять только табуляции или только пробелы, тогда все они должны быть установлены на ширину вашего отступа (например, 4 для 4 пробелов или табуляции из 4 пробелов).
  • expandtab определяет, следует ли вставлять пробелы (expandtab) или табуляции (noexpandtab).

Вы Вы можете установить эти параметры в вашем .vimrc, чтобы иметь некоторые значения по умолчанию, и вы также можете явно указать конкретные типы файлов, если хотите. Например, если вы знаете, что Python предпочитает отступы с 4 пробелами, а Ruby предпочитает отступы с 2 пробелами, а Go предпочитает табуляцию с 8 пробелами, вы можете написать это:

  au FileType go            setl ts=8 sw=8 sts=8 noet
  au FileType python        setl ts=4 sw=4 sts=4 et
  au FileType ruby          setl ts=2 sw=2 sts=2 et
...