Я использую VIM для редактирования Код Erlang. Я привык (большинство программистов ERLANG делают это) для отступов кода ERLANG с помощью кронштейна. Например, C часто придерживается одной шириной вкладки внутри вьющихся кронштейнов:
int main(void) {
printf("hello, world\n");
return 0;
}
в Erlang, общий для отступа на основе На колонне, где начался кронштейн:
?assertError({bad_options, [{foo, bar},
bad_option]},
lhttpc:request("http://localhost/", get, [], <<>>, 1000,
[bad_option, {foo, bar}])).
(пример выше, отступают, чтобы получить точку, а не в соответствии с субъективной красотой).
Ширина вкладки будет использоваться, если блок запускается на новой строке:
?assertError(
{bad_options, [{foo, bar}, bad_option]},
lhttpc:request(
"http://localhost/", get, [], <<>>, 1000,
[bad_option, {foo, bar}]
)
).
соответствующие части моего .VIMRC:
set expandtab " Spaces for tabs "
set tabstop=4 " Tab width 4 "
set shiftwidth=4
set smarttab
set autoindent
" Enable filetype plugin "
filetype plugin on
filetype indent on
Есть ли способ выполнить этот отступ в VIM, и если так, как?