В дополнение к ответу rangerchris вы можете рассмотреть возможность использования modelines. ModeLines сказать редактор, как настроить себя:
#!/usr/bin/perl
# vi: ts=4 sw=4 ht=4 et textwidth=76 :
use strict;
use warnings;
print "hello world\n";
Это режимная говорит VI использовать 4 вкладки символов и автоотступ использовать пробелы вместо вкладок, и что он должен вставить символ новой строки, когда курсор попадает до 76 символов.
Вы можете контролировать то, как Vim читает с двумя режимы, переменными (скорее всего, установленных в вашем .vimrc):
set modeline
set modelines=5
Переменная modeline
говорит Vim искать ModeLines, если он установлен. Переменная modelines
сообщает Vim, сколько строк сверху и снизу сканирует поиск модели (в этом случае он найдет модельный, если он находится в первой или последней пяти строках файла).
Как и любая система, которая берет инструкции из ненадежных источников, моделирование может быть security threat, поэтому пользователь root
никогда не должен использовать моделирование, и вы должны постоянно обновлять свою копию Vim.
Настоящая выгода для моделирования заключается в том, что они предназначены для каждого файла. Большинство людей Perl - это четыре пространства в качестве отступов, но я человек с восьмью символами. Когда я работаю с кодом других людей, я использую модель, которая отражает их использование. В остальное время я использую свои собственные.
Не переопределяйте настройки по умолчанию. Вместо 'set' используйте 'setlocal' (или 'setl'). Вы не хотите, чтобы настройки последнего разворота autocmd переходили в другие буферы. –
@Maxim - Good catch ... :-) –
Команда 'set' принимает несколько опций. Итак, проще написать: 'set tabstop = 4 shiftwidth = 4 expandtab' –