Vi & Vim

22
Что означает z в vim?

Я посмотрел на советы по смещению экрана и наткнулся на следующие советы: zz = shift current line to middle of screen zt = shift current line to top of screen zb = shift current line to bottom of screen Мой вопрос: что это z? Что это значит? какие еще функции могут...

22
Как добавить постоянные номера строк в файл?

У меня есть текстовый файл, как это (с помощью gVim на Windows) foo bar baz quux corge grault garply waldo fred plugh [...150 more lines...] xyzzy thud Я хочу добавить номер к каждой строке в файле. Не используется :set number, но добавляет число в виде текста, предшествующего каждой строке,...

22
Как писать по вертикали?

Допустим, я хочу создать следующий текст в моем документе: % % Not Important % O -------------------------> % | % S | % o | % m | % e | % | % M | % s | % g | % | % V Есть ли простой способ написать "Some Msg" по вертикали, как указано выше, без необходимости вручную вставлять каждый символ в...

21
Удалить до правого конца текущего внутреннего блока

Допустим, у меня есть такой код ( |представляет позицию курсора ): func1(x|, func2(), y); Я хотел бы получить: func1(x|); Есть ли способ удалить код из позиции курсора в позицию, предшествующую правому концу текущего внутреннего блока ? Я знаю, что могу пойти, dt).но мне интересно, есть ли способ...

21
Может ли разделительный разделитель в vim иметь ширину меньше полного столбца?

Я использую оконный менеджер листов (потрясающий) + терминальный мультиплексор (tmux) + разделение внутри vim. У меня вообще нет оконных декораций, так что у вас вообще нет визуального разделения между ними, если содержание программы не выдает его. Я вполне доволен этой парадигмой, так как в любом...

21
Как полноценный новичок может изучить Vim, используя только Vim?

Как начинающий, не имеющий опыта работы с vi, как я могу научиться использовать Vim, используя только сам Vim? Есть ли встроенный учебник, и как я могу получить к нему доступ? Предположим, у меня есть ноутбук с установленными Linux и Vim, и нет подключения к...

21
Для чего используется `softtabstop`?

Я знал об этих настройках вкладок в Vim: ts sw expandtab smarttab sts Моя нормальная настройка set ts=4 sw=4 expandtab smarttab. Но согласно stsдокументации , если expandtabона не установлена, она будет пытаться использовать комбинацию пробелов и табуляций, чтобы составить желаемое количество...

21
Есть ли способ для событий AND в autocmd?

Я хотел бы вызвать autocmd два события, но не так, как это обычно делается, т. Е. Если какое-либо из событий произошло, то вызвать autocmd. Я хочу вызвать его, если оба события произошли. Например: обычный способ сделать это autocmd BufWrite,BufRead *.c *.py *.h :call StripTrailingWhitespaces()...

21
Как открыть и закрыть NERDTree (переключение вида NERDTree) одним нажатием клавиши?

Иногда во время рабочего процесса я могу захотеть открыть / найти файл на ходу. Я хотел бы сопоставить одну клавишу (скажем, F6), чтобы открывать и закрывать NERDTree (т.е. я хочу переключать представление NERDTree). Кроме того, я хотел бы, чтобы NERDTree отображал скрытые файлы и папки в его...

21
Отменить <CR> в режиме вставки

Иногда в режиме вставки я бью <CR>по ошибке, и мне приходится нажимать клавишу Backspace несколько раз (зависит от отступа), чтобы вернуться туда, где я был. например <div> <p> This is some text []</p> </div> Курсор []и я нажал <CR>: <div> <p> This is...

21
Как: g /^$/,/./- j (уменьшить количество пустых строк до одного пробела) работает в vim?

В статье Vim Regular Expressions Олег Райский дает следующую команду, чтобы уменьшить количество пустых строк до одного пустого: :g/^$/,/./-j Может кто-нибудь, пожалуйста, опишите, как это работает? Я знаю :gкоманды и регулярные выражения. Но я не понял, что /,/./-jделает эта часть...

21
GitHub для .vimrc и плагинов

Я знаю, что многие люди хранят свои .vimrc на GitHub, чтобы упростить получение права на работу на новых машинах, и это имеет для меня полное значение. Однако включение плагинов проблематично, поскольку используемые мной плагины уже являются репозиториями git. Как создать репо, который будет...

21
Самый простой способ переключения веток Git

Сейчас я использую fugitive для управления почти всем, что касается git, но я не могу найти хороший рабочий процесс для быстрой визуализации и переключения между доступными ветвями. Я могу сделать :Git checkout <branch-name>, проблема в том, что он автоматически заполняет как имена файлов,...

21
Как я могу заставить Vim игнорировать все пользовательские настройки, как если бы они были недавно установлены?

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

21
Как добавить в буфер обмена зарегистрироваться в Vim?

Я уже знаю, что вы можете скопировать что-либо в регистр, используя: (плюс команда yank, delete и т. Д.) "a Я также понимаю, что вы можете добавить в реестр, используя: "A Кроме того, я понимаю, как скопировать что-то в регистр буфера обмена, используя: "+ Что мне ввести, чтобы добавить в реестр...

21
Как я могу переопределить сопоставления ключей плагинов?

Я установил плагин, который не предоставляет механизм для отключения определения клавиш, которые он определяет. Я хочу переопределить одно из сопоставлений ( <leader>cc), определенных плагином для моей собственной цели, я попытался добавить следующую строку в свой .vimrc: noremap...

21
Как сделать отступ как пробел вместо табуляции?

Я кодирую некоторые HTML-шаблоны в файлах JADE. Я хочу автоматически делать отступ кода с пробелами вместо табуляции. Я пытался shiftwidth=2, tabstop=2но, несмотря ни на что, все равно отступы, использующие табуляции вместо пробела, что приводит к ошибкам компиляции JADE. Как я могу автоматически...