Как использовать только вкладку (не пробел) в Vim - PullRequest
57 голосов
/ 10 сентября 2010

Я предпочитаю использовать tab, чем white space (может немного отличаться от большинства других)

Но я обнаружил, что когда я нажму Enter в конце строки, это добавитнекоторые пробелы , но не tab .Поэтому я должен удалить их и нажать tab .

Я хочу знать, как установить vim как:

  1. использовать только tab для отступа строк
  2. вкладка выглядит как 4 пробела, но на самом деле это вкладка
  3. при нажатии enter в конце строки, новая строка начинается только с вкладок

Я некоторое время гуглил по этому поводу, но не нашел хорошего ответа.Заранее спасибо


ОБНОВЛЕНИЕ

Ответ, предоставленный @Alok, хорошо работает в большинстве случаев.Но я только что нашел, иногда это зависит от типа файла.Например, если вы редактируете файл haml, а в вашем vimfiles/indent/ есть haml.vim, то все вкладки будут преобразованы в space.Поэтому, если вы хотите, чтобы он был только tab, вам следует изменить (или удалить) соответствующий файл отступа.

1 Ответ

83 голосов
/ 10 сентября 2010

Настройки, которые вы ищете:

set autoindent
set noexpandtab
set tabstop=4
set shiftwidth=4

как одна строка:

set autoindent noexpandtab tabstop=4 shiftwidth=4

autoindent можно заменить на smartindent или cindent, в зависимости от ваших вкусов. Также посмотрите на filetype plugin indent on.

http://vim.wikia.com/wiki/Indenting_source_code

...