Как сделать отступ как пробел вместо табуляции?

21

Я кодирую некоторые HTML-шаблоны в файлах JADE. Я хочу автоматически делать отступ кода с пробелами вместо табуляции. Я пытался shiftwidth=2, tabstop=2но, несмотря ни на что, все равно отступы, использующие табуляции вместо пробела, что приводит к ошибкам компиляции JADE.

Как я могу автоматически делать отступы для больших разделов кода, используя пробелы вместо вкладок?

Джон
источник

Ответы:

25

Вы ищете expandtabвариант. Когда эта опция установлена, пробелы всегда используются. Вы можете вставить set expandtabв свой vimrc, чтобы эта опция всегда была установлена ​​при запуске vimrc. Если вы хотите включить эту опцию только для определенных языков, посмотрите этот вопрос . Для получения справки по этой опции см :help 'expandtab'.

Вечнозеленое дерево
источник
1
спасибо, :set expandtabпозволил мне использовать пробелы вместо вкладок для отступа
Джон
Это правда, что tsбесполезно, когда etустановлен?
iBug
@iBug Нет, если вы создаете файл самостоятельно, но может быть полезно установить его, если вы редактируете существующие файлы, в которых есть вкладки. Смотрите vim.fandom.com/wiki/Indenting_source_code, чтобы узнать больше об отступах, я нашел это намного понятнее, чем справочные файлы vim.
EvergreenTree
22

Вы хотите расширить вкладку.

Но обычно есть пара вариантов, которые вы хотите установить одновременно.

Если вы добавите следующее в файл ~ / .vimrc

" tabstop:          Width of tab character
" softtabstop:      Fine tunes the amount of white space to be added
" shiftwidth        Determines the amount of whitespace to add in normal mode
" expandtab:        When on uses space instead of tabs
set tabstop     =4
set softtabstop =4
set shiftwidth  =4
set expandtab

В качестве альтернативы вы можете выполнить их вручную из обычного режима, выполнив их с помощью ':'

Мартин Йорк
источник