Vi & Vim

Вопросы и ответы для людей, использующих семейства текстовых редакторов vi и Vim

1
Как я могу редактировать свою конфигурацию Vim, работая в Vim?
Я новичок в Vim и хочу иметь возможность редактировать сценарии с привязками клавиатуры и другими настройками Vim, продолжая работать в Vim. Например, я хотел бы, чтобы все мои set xxкоманды были в одном файле и имели возможность обновлять файл и повторно применять его настройки, оставаясь в Vim. Это вопрос sourceфайла, …
9 vimrc  set 

1
Почему vim жалуется на слабую криптографию при использовании blowfish2?
Я открыл документ с 2015 года, который я сохранил, используя встроенную криптографию в vim ( :X). Это было экономно, используя blowfishв то время. Сообщение, которое я получил сейчас (2017), было таким: Warning: Using a weak encryption method; see :help 'cm' Enter encryption key: ********************************************* Enter same key again: ********************************************* Это …

3
Элегантный способ поддержки как python, так и python3 в плагине vim
Недавно я получил запрос на изменение, чтобы изменить мой плагин vim, чтобы он поддерживал python3. Но эти изменения ломают плагин для vim на моем Mac, который, кажется, слушает python. python import sys против python3 import sys Есть ли элегантный способ заставить скрипт в моем плагине определять, какой оператор он должен …

1
Как получить предварительный просмотр команды подстановки?
Довольно часто мне нужно выполнить подстановку, в которой совпадения будут разбросаны по всему большому файлу с нетривиальными выражениями поиска и замены. Например, скажем, у меня есть некоторые вызовы функций, такие как okFunction(arg1, arg2 arg3). Конечно, аргументы будут отличаться при каждом вызове функции. Теперь скажите, что я обнаружил лучшую функцию, которая …

4
В neovim, как я могу делиться регистрами между экземплярами редактора?
Я знаю, что у vim был разделитель клиент / сервер, который позволял разделять регистры между различными клиентами vim, но как добиться того же в neovim? Он не поддерживает флаги клиент / сервер. Я видел этот вопрос , но моей целью является совместное использование регистров, а не имитация остальной части клиент …

1
справка / документация в vim
Я предполагаю, что единственная документация, которая поставляется с vim, касается vim. Если я установлю плагины, то также будет документация по плагинам. Но есть ли документация для других языков в vim? Примером может служить, скажем, я пишу код на python в Vim и хочу быстро найти списки в Python. Было бы …

1
Можно ли восстановить текстовый файл только из файла. *. Swp?
Я удаленно редактировал новый файл: man-01-Intro.txtно машина не работала до того, как я записал ее на диск, поэтому была сохранена только версия swp. Могу ли я что-нибудь сделать, чтобы восстановить уже проделанную работу? Я использую Vim 7.4.273

3
Как сделать так, чтобы команды подсветки в .vimrc вступили в силу немедленно с Vim 7.4?
У меня есть несколько highlightкоманд в моем .vimrcфайле. В Vim 7.3 они вступили в силу сразу после запуска Vim. После обновления до Vim 7.4 это уже не так. Vim изначально использует подсветку по умолчанию. Когда я загружаюсь .vimrcвторой раз source ~/.vimrc, выделение работает так, как я хочу. Вы должны быть …

2
Отступ для следующего уровня отступа с >>
Время от времени мне приходится работать с кодом, который не соответствует уровню отступа, который я установил для Vim (4 пробела на уровень), обычно после копирования / вставки чего-либо в файл. Я обычно делаю с <<и >>. Проблема в том, что они не переходят на следующий уровень отступа, они просто добавляют …

1
Эхо-сообщение при запуске без запроса
Я хотел бы повторить пользовательское сообщение при запуске, в зависимости от того, были ли определенные функции запуска успешными. Я попробовал это в моем.vimrc echo 'test' "All my settings ... Я хотел бы, чтобы vim повторил сообщение, как будто я только что набрал echo 'foo' из командной строки после открытия vim, …
9 vimrc  echo 

1
Вывод Vim на текст
Интересно, есть ли какая-либо команда, похожая на :TOhtml, но только для простого текста и представляющая весь дисплей Vim. Например, с учетом отображения: Это создаст следующий текстовый файл: 1 B 1 a ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ N <me] [+] 100% 1:1 …
9 vimscript 

1
Разница между полной и короткой командой
Есть ли практическая разница между использованием :e а также :edit За исключением читабельности, где имеет смысл использовать отображение :edit, потому что оно более явное. Есть ли разница между ними? Примечание. Это относится и ко всем остальным командам.

4
Настройка ширины текста для номера строки
Я использую gvim для написания электронных писем и tw=72разбиваю длинные строки. Теперь я также редактирую основные заголовки почты в том же документе, например, добавляю получателей к своей почте. Теперь с tw=72ним также порвется каждый раз после 72 символов. Как я могу установить tw=0первые 4 строки (это часть заголовка) и tw=72остальную …

1
Как определить оператор, который обновляется, пока он принимает данные?
Я определил отображение оператора, которое берет область текста, затем запрашивает входную строку и затем выравнивает область с Tabular, используя входную строку в качестве аргумента. Это работает хорошо. Я реализовал это так, используя vim-operator-user, чтобы помочь определить новый оператор: map \aa <Plug>(operator-align) call operator#user#define('align', 'Align') function! Align(motion_wiseness) let expr = input("align: …
9 vimscript 

1
Использовать клавишу Backspace для изменения текущей команды в обычном режиме?
Иногда при вводе команды в обычном режиме вы можете сделать опечатку, например, если я собираюсь печатать 10dk, я могу случайно начать печатать 19d. Поскольку команда еще не была завершена / зафиксирована, возможно ли удалить неправильные ключи, используя клавишу Backspace, например: 19d<backspace><backspace>0dkвместо того, чтобы нажимать escape и повторить команду? Дополнительный вопрос: …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.