Vi & Vim

34
Как я могу изменить отступ по умолчанию в зависимости от типа файла?

Я хотел бы иметь разные отступы в зависимости от типа файла, над которым я работаю. Например, работая с .cфайлом, я хотел бы, чтобы отступы составляли 4 пробела. В .htmlфайлах, которые я хотел бы (должен) работать с вкладками. Как мне этого...

34
Закрыть все разделенные файлы, кроме того, который в данный момент сфокусирован?

Иногда, когда я работаю над файлом, я открываю несколько файлов только для того, чтобы получить представление о текущем потоке кода. Однако это иногда приводит к тому, что несколько файлов открываются за один раз с помощью разделения. Есть ли команда выйти из всех, кроме выбранного...

34
Как я могу получить более новую версию Vim на Ubuntu?

Пакеты Ubuntu могут быть довольно старыми, но для некоторых настольных программ (например, Vim) я бы предпочел иметь последнюю версию, так как более новые версии часто исправляют различные ошибки. Как я могу получить достаточно свежую версию Vim на...

33
Могу ли я удалить всю строку, кроме разрыва строки?

Довольно распространенная для меня операция в vim, так как я навязчиво навязчив и не хочу, чтобы мои файлы были свободными от пробелов, состоит в удалении содержимого всей строки, но не самой строки (то есть не прерывания строки). Есть ли встроенный способ vim сделать это? Возможно d<movement...

33
Применение настроек только к дереву каталогов

В моей работе мы используем стандарт ts2; мое личное предпочтение - 4, и это то, что я использую для своих хобби-проектов, и этот другой проект, который мы унаследовали, имеет соглашение ts=8. Есть также некоторые другие настройки, которые я хочу установить для проекта (например, сворачивание)....

32
Можно ли сделать Vim автосохранением файлов?

Некоторые текстовые редакторы и текстовые редакторы автоматически сохраняют файлы, которые мы редактируем время от времени, что очень удобно для выживания после неприятных сбоев и т. Д. Есть ли способ заставить Vim автоматически сохранять наши файлы через определенный промежуток времени?...

32
Как получить интеллектуальное автозаполнение C ++

Некоторые редакторы (например, Visual Studio на Windows) делают автозавершение C ++, которое понимает C ++. Например, учитывая: #include <vector> int main(void) { std::vector<int> v; v.i В визуальной студии автозаполнение знает единственный метод, std::vector<int>который...

32
Могу ли я использовать немоноширинный шрифт в Vim или gVim?

Есть ли способ использовать немонокальный шрифт в vimили gvim? Я попытался изменить шрифт для gVim с помощью: :set guifont=Dejavu\ Serif\ 12 Но это дает мне довольно неприятные результаты: Я получаю те же результаты, если использую меню (Правка -> Выбрать шрифт) :help guifont говорит: Note that...

32
Как вы «разбиваете» строку в Vim?

Предположим, вы запустили следующий фрагмент vimscript: let @z = system("date") Это поместит строковую версию текущей даты в регистр z, но строка будет заканчиваться символом новой строки, который мне не нужен. Есть ли встроенный способ (похожий на Perl chomp), чтобы избавиться от завершающих строк...

32
Можно ли посмотреть историю нажатий клавиш в обычном режиме?

Я знаю, что Vim хранит историю для бывших команд, поисков, мест перехода, изменений и, возможно, других. С помощью showcmdset Vim также показывает, какие клавиши вы уже ввели для команды нормального режима, пока эта команда не будет выполнена. Иногда, когда в нормальном режиме, я опечатки и...

31
Почему я должен использовать augroup?

Я понимаю, как работают автоматические команды и как их использовать, но я немного уверен в том, для чего нужна группа augroup. Я читаю в:help augroup *:aug* *:augroup* :aug[roup] {name} Define the autocmd group name for the following ":autocmd" commands. The name "end" or "END" selects the default...

31
Показывать только совпадающие строки?

В длинном файле я хотел бы найти шаблон, который будет соответствовать примерно 200 строкам или около того. Соответствующие строки находятся в случайных местах в файле. Когда строка соответствует, релевантна только сама строка, без контекста выше или ниже. Обычно я искал /и прыгал через совпадения...

31
Расширить визуальный выбор в другом направлении

Иногда я выбирал визуальный выбор, например, Vjjjjjтолько для того, чтобы потом осознать, что я должен был начать выбор на одну строку выше. Однако нажатие kпросто уменьшает нижний диапазон выбора, а не перемещает весь выбор вверх на одну строку. Вот визуализация (ха, ха), где жирные линии - это...

30
Выполнение определенных операций без очистки регистра

Часто в конфигурационных файлах я могу скопировать и вставить блок строк, затем я хочу внести небольшие изменения в этот блок. После вставки я использую, xчтобы удалить символы, которые я хочу удалить, а затем перейти к вставке следующего блока. За исключением того, что xпомещает удаленные символы...

30
Использовать условные операторы AND или OR в выражении IF?

Вероятно, это невероятно простой вопрос, но я пока не нашел никакого ответа (мне не хватает нужных источников, и я не знаю, где искать в помощи vim). У меня есть условие, и я хотел бы включить «И», как if (condition1 .AND. condition2) "do what I want you to do endif но я не смог найти синтаксис. То...

30
Терминал заблокирован после вызова Vim с Xargs

Я иногда пытался вызвать Vim, используя xargsэто: find . -name '*.java' | xargs vim … Какие работы: Когда Vim запускается, я вижу следующее предупреждение: Vim: Warning: Input is not from a terminal Редактирование работает - :filesправильно перечисляет все .javaфайлы, как и ожидалось. Я могу...

29
Перенумерация списка буферов

После того, как я некоторое время работал над проектом, я начинаю видеть большие промежутки между последовательными номерами буферов. Это потому, что буферы между ними были уничтожены по разным причинам. К сожалению, это может затруднить переход к определенному буферу или выбор диапазона буферов...

29
Может ли Vim интерпретировать коды выхода цвета терминала?

Многие программы CLI выводят красиво выделенный текст. В то время как большинство из них проверяют, идет ли вывод в файл, некоторые включают управляющие коды терминала. Мне нравится вывод с кодами перехода, но просмотр этих файлов в Vim является болезненным. Может ли Vim интерпретировать эти...

29
Как я могу трактовать цитаты LaTeX как текстовый объект?

Кавычки в LaTeX отличаются от обычного текста тем, что они отформатированы ``like this''(или `like this'для одинарных кавычек). Это затрудняет навигацию по ним в Vim. Я обычно использую что-то вроде T`ct'(назад, до `, изменить до '). Однако это неуклюже и неестественно. Я бы предпочел , чтобы иметь...