Vi & Vim

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


4
В чем смысл \ r и \ n, означающих разные вещи в команде s?
Мы все знаем, что при поиске \nэто перевод строки и \rвозврат каретки ( ^M), но при замене \rэто перевод строки, тогда \nкак null byte ( ^@). Каково происхождение этой асимметрии? Учитывая, что это поведение ... по меньшей мере своеобразно (и весьма контрпродуктивно, когда вы ошибаетесь в первый раз), я ожидаю, …


2
Как автоматически исправить распространенные ошибки линтинга, о которых сообщается через syntastic?
Я начал использовать синтетический плагин с vim для сообщения об ошибках lint в моем javascriptкоде. Я также интегрировал eslint с syntastic , и он показывает мне хорошие ошибки, предупреждения, если они присутствуют согласно правилам, написанным в моем файле .eslintrc . Есть ли способ, которым я могу исправить некоторые распространенные ошибки, …

3
Что является более эффективным способом использования буферов?
В последнее время я резко сократил количество используемых плагинов, поэтому я ищу ответы, используя только встроенные функции Vim. Я заметил недостаток в моем рабочем процессе, когда я редактирую много буферов: я нахожусь в буфере, и я хочу переключиться на другой, который я не помню имя, и который не является альтернативным …
13 buffers 

3
Как автоматически прописать вторую букву слова?
Когда мне приходится набирать много текста, я часто держу палец нажатым, shiftкогда пишу первую букву предложения, которое часто дает: [...]end of sentence. NEw sentence[...] Здесь Eиз NEwдолжна быть в нижнем регистре. Затем я пытаюсь создать функцию, которая бы определяла, является ли вторая буква первого слова в набираемом мной предложении прописной …

2
Как восстановить положение курсора после выполнения обычной команды?
Я пытаюсь закодировать функцию, которая заменяет символ в шестом столбце моей текущей строки символом доллара ( $), но я бы хотел, чтобы мой курсор оставался в том положении, в котором он находился до вызова функции. Поэтому я попытался сохранить текущий столбец, выполнить свои изменения, а затем вернуться со следующей функцией: …

4
Как заставить gVim в Windows вести себя так же, как в Linux?
Я частый пользователь редактора Vim в Linux, и теперь я хочу использовать его в Windows. Я скачал Vim для Windows, которая называется gVim. Некоторые функции Vim не работают в gVim 7.4, такие как визуальный блок, rxкоманда и некоторые другие комбинации клавиш. Я хочу, чтобы тот же / оригинальный Vim из …

5
Быстрый поиск, ограниченный функцией C ++
Я работаю над довольно большим проектом C ++. Один из самых неприятных аспектов его организации - очень большие функции, помещенные в смехотворно большие файлы. Я часто хочу искать любой экземпляр определенной глобальной переменной или вызова функции, ограниченный текущей функцией. Есть ли достаточно простая формула для достижения этой цели? (У меня …

2
Обнаружить неовим терминал от bash в bashrc
Устанавливает ли neovim какие-либо переменные окружения, которые позволят мне обнаружить из bash, что терминал является neovim? Я хочу изменить свое поведение, .bashrcесли неовим это терминал.
13 terminal  neovim 


1
Могу ли я сохранить складки?
Сегодня я узнал, как складывать / разворачивать в Vim; это довольно удобно Неожиданно, когда я выхожу из файла и снова вхожу в него, созданные мной сгибы исчезают (разворачиваются). В большом проекте нашей компании довольно много липких (унаследованных) блоков кода, которые являются устаревшими, но необходимыми. Мне действительно нужно сложить их почти …
13 folding 

2
Можно ли определить, находится ли окно снизу или сверху, слева или справа?
Я не знаю, есть ли какая-нибудь функция для проверки положения окна, я имею в виду, оно в настоящее время находится внизу или вверху, влево или вправо? __________________________ | | | | | | | left | right | | | | | | | |___________|____________| __________________________ | | | top …

3
Как применить набор нажатий клавиш к каждому вхождению слова?
Если я хочу удалить каждое слово, это легко, потому что я бы сделал что-то вроде этого: :s%/WORD//g Но что если я захочу сделать xyzдля каждого случая «СЛОВО»? Например, допустим, я хочу удалить каждую строку, содержащую «WORD». Я могу придумать пару способов сделать это, но ни один из них не кажется …
13 search  macro 

2
Как получить текущее байтовое смещение во всем файле
Я видел, что вы можете отобразить текущее байтовое смещение в строке состояния, используя %o, но я не нашел функции или команды, которая делает то же самое. Есть ли способ получить текущее байтовое смещение прагматично?

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