Вопросы с тегом «vimscript»

14
Можно ли получить соответствующую строку после вызова: search ()

В vimscript-функции мне нужно назначить соответствующую строку переменной l:matchedпосле вызова, search()и мне интересно, есть ли более короткий путь, чем то, что я сейчас делаю: let l:pattern = '\v^Foo: \zs.*' let l:line = search(l:pattern) let l:line_text = getline(l:line) let l:matched =...

14
Является ли cpo & vim специальным синтаксисом?

В скриптах принято делать что-то вроде: let s:save_cpo = &cpo set cpo&vim ... script ... let &cpo = s:save_cpo Для обеспечения несовместимого режима для скрипта. Является: set cpo&vim какой-то особый синтаксис, как в foo & bar? Или это больше похоже на команду, триггерную строку...

14
Автоматически добавлять закрывающее "или" при вставке, но только если курсор уже не находится внутри строки

Я определил в себе сопоставления vimrcдля автоматического ввода закрывающих скобок и фигурных скобок при вводе открывающих скобок с помощью inoremap ( ()<esc>i. Я хотел бы сделать то же самое для "и ', но только когда курсор в данный момент находится не внутри строки - так как внутри строки...

13
Как получить текущее байтовое смещение во всем файле

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

13
Как восстановить положение курсора после выполнения обычной команды?

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

13
Как поменять каждые 4 строки?

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

12
Команда, чтобы пройтись по предложениям правописания

Я сопоставляются zzс 1z=, который является большим большую часть времени, но каждый сейчас и тогда первое предложение не является правильным. Поэтому я хотел бы повторять zz(или .) циклически проходить другие предложения. Тогда секунда zzна том же слове будет работать как u2z=, третья zzбудет...

12
Заменить на чистый vimscript (без `: s`)

У меня есть следующее в моем vimrc: func! AddSpaceBeforeEqual() s/\([a-z)_0-9"'\[\]]\)=/\1 =/ge endfunc Я использую vint для lint мой vimrc, и получил следующее предупреждение: ProhibitCommandWithUnintendedSideEffect Избегайте команд с непреднамеренными побочными эффектами. Избегайте использования:...

12
Получить текущее окно / буфер / вкладку в Vimscript

В python, используя модуль vim, невероятно просто получить текущее окно / буфер / вкладку: current_win = vim.current.window current_buff = vim.current.buffer current_tabpage = vim.current.tabpage У меня вопрос, как вы делаете это в чистом VimL / Vimscript и какой тип объекта возвращается? Я...

12
Как вы находите, где переменная была назначена в последний раз?

Я пытаюсь установить, g:netrw_list_hideи это не похоже на работу. Независимо от того, что я установил в моем, .vimrcэто всегда имеет значение ,^\.\.\=/\=$. Только если я vimrcснова получу исходный файл, он будет иметь правильное значение. Как мне отладить это? Я думаю, есть какой-то плагин, который...

11
Что нужно сделать, чтобы создать плагин vim?

Так что мой вопрос прост. Это хорошая идея - изучать сценарии vim только для того, чтобы создать vim, или мы должны принять некоторые другие более приемлемые языки для этого. Например, по этой ссылке открывается видеоролик YouTube, на котором показано, как использовать Python для создания плагинов...

11
Как я могу получить визуальный выбор vimscript?

Если у меня есть пара строк vimscript, которые я хочу протестировать перед тем, как вставить свой vimrc, можно ли визуально выбрать их, а затем получить их? я пытался сделать визуальный выбор v, затем движения, чтобы сделать выбор и т.д., затем :'<,'>so Но vim выдает ошибку диапазон не...

11
если еще endif oneliner

У меня есть этот oneliner в моем, vimrcно он не работает: if has("patch-7.4.710") | set listchars+=space:· else | set listchars+=trail:· | endif VIM говорит: E518: Unknown option: else Можешь мне помочь

11
Есть ли способ определить, записываюсь ли я в vimscript?

Есть что-нибудь подобное eval("is_recording()") что я могу вызвать в своем vimscript, чтобы узнать, записываю ли я в данный момент макрос? Я бы подумал, что это работает: eval("mode(1)") но это только возвращается "n". Не уверен, что это имеет значение, но я использую neovim, так что, если он...

11
Можно ли использовать делегат или передать функцию в качестве аргумента в Vimscript?

Я пытаюсь создать небольшой плагин для изучения vimscript, моя цель - создать некоторые функции, обрабатывающие выделенный текст и заменяющие его результатом. Скрипт содержит следующие элементы: Две функции, обрабатывающие текст: они принимают строку в качестве параметра и возвращают строку,...