Ответ 1
попробовать:
:set ai
или:
:set autoindent
найти больше об автоиндексе:
:h ai
В противном случае это может быть что-то вроде обнаружения типа файла.
мой автоинденент не работает, какие-либо диагностические тесты, чтобы понять это?
my ": set":
: множество --- Опции --- cindent laststatus = 2 scroll = 17
tabstop = 4 window = 36
filetype = номер cpp
smartindent ttyfast
helplang = en paste
синтаксис = cpp ttymouse = xterm2
Забой = отступ, EOL, начало
fileencoding = UTF-8
fileencodings = UCS-бом, UTF-8, по умолчанию, latin1 printoptions = бумага: письмо
runtimepath = ~/.vim,/вар/Library/ВИМ/аддоны,/USR/доли/ВИМ/vimfiles,/USR/доли/ВИМ/vim72,/USR/доли/ВИМ/vimfiles/аф тер/вар/Library/ВИМ/аддонов/после, ~/.vim/после суффиксы =.bak, ~,.swp,.о,.info,.aux, LOG-.dvi,.bbl,.blg,.brf,.cb,.IND,.idx,.ilg,.inx,. вне,.toc
попробовать:
:set ai
или:
:set autoindent
найти больше об автоиндексе:
:h ai
В противном случае это может быть что-то вроде обнаружения типа файла.
Вероятно, вы должны отключить smartindent
и вместо этого использовать :filetype indent on
и cindent
(который, похоже, также установлен).
У меня была такая же проблема, и эти настройки исправили ее.
filetype on
filetype plugin on
filetype indent on
Здесь один из способов проверить правильность конфигурации, затем сохранить конфигурацию, чтобы Vim всегда работал так. This font
указывает текст, который должен быть введен буквально, кроме <CR>
означает нажатие клавиши "Enter" или "Return".
:set ai?<CR>
):set ai<CR>
):set ai?<CR>
):mkvimrc<CR>
.Надеюсь, что это поможет! Вот еще несколько примечаний:
В случае, если кто-то другой сталкивается с одной и той же проблемой, у меня была аналогичная проблема, и никто из вышеперечисленных не исправил. Для меня было неправильно интерпретировать вкладки. вот настройка, которая заставила ее работать:
set expandtab
set tabstop=2
set shiftwidth=2
set autoindent
set smartindent
И чтобы проверить, если отступ, если отступ был правильным, я добавил следующее, все еще в моем файле vimrc:
" helper for indent mistake
set list listchars=tab:»·,trail:·
Какой символ "" вместо обычного "·", если мой отступ неверен. Очень удобно. Надеюсь, что это поможет.
У меня была такая же проблема, и я пробовал много команд, все не удалось.
Наконец, я использую следующую команду, и она работает: autocmd VimEnter * set autoindent
Это не элегантный способ, однако, он работает.
У меня была устаревшая функция в indentexpr
, которая сохранялась после изменения типа файла. Это в конечном итоге исправило это для меня:
:set indentexpr=