В режиме vim в обычном режиме я могу перейти к закрывающей круглой скобке, используя%. Есть ли эквивалент того, что я могу использовать в команде поиска и замены? Предполагая, что у меня есть латексный код, из которого я хочу удалить курсив. В простом сценарии что-то вроде :%s/{\\it \(.*\)}/\1/gc
выполнит эту работу, но на практике это остановится при первом закрытии фигурной скобки, которая, по всей вероятности, закрывает что-то еще, поскольку у меня может быть {\it some text in italics {\bf and some in bold also} ...possibly so many other commands with curly braces... and finally my closing curly brace:}
.сопоставление закрывающей круглой скобки в поиске и замене vim
3
A
ответ
0
Это может быть то, что вы имеете в виду под «написать небольшой макрос и использовать поиск», но вы можете использовать команды нормальный режим с помощью команды normal
, например:
:g|{\\it|normal /{\\it^M%mm%5x`mx
:g
запустит в каждой строке, которая соответствует картина {\it
, и для каждого матча, он запускает нормальный режим команд /{\\it
для перехода в нужное место в строке, %
, чтобы добраться до закрывающей скобки, mm
поставить отметку на закрытии одного, %
отпрыгнуть к первому, 5x
, чтобы удалить команду открытия, затем `m, чтобы вернуться к отметке, и x
, чтобы удалить закрывающий.
Это не будет обрабатываться несколькими {\it
проемами на одной линии. (Но вы могли бы просто запустить его снова). Быстрее, чем изучение Perl.
Смежные вопросы
- 1. Автозаполнение закрывающей скобки Pydev
- 2. Как отключить автозаполнение закрывающей круглой скобки в android EditText
- 3. Vim и Paredit - почему линия прерывает нажатие закрывающей круглой скобки на следующую строку?
- 4. Не удается избежать закрывающей круглой скобки в Java?
- 5. Отключить автозаполнение закрывающей круглой скобки вокруг выделенного текста
- 6. regex: раскрытие закрывающей круглой скобки с другой скобкой между
- 7. Pydev: прыгать мимо закрывающей круглой скобки с <Tab>
- 8. Автоматическое завершение Vim при замене и поиске в командной строке
- 9. Проверка открытой скобки закрывающей скобки в C#
- 10. Как избежать как запятой, так и закрывающей круглой скобки в предложении WHERE WMIC?
- 11. Эквивалентная оценка bash без закрывающей скобки
- 12. Изменение цвета круглой скобки jupyter
- 13. исполнения закрывающей скобки функции яваскрипта
- 14. Visual Studio Размещения закрывающей скобки
- 15. Регулярные выражения в поиске и замене
- 16. sqlite3 синтаксис regexp в «поиске и замене»
- 17. Условный в поиске и замене функции PHP
- 18. регулярные выражения python в поиске и замене
- 19. Затмение прыжка до закрывающей скобки
- 20. Как настроить Visual Studio, чтобы не отступать от закрывающей круглой скобки при вызове многострочных функций?
- 21. Closure Compiler модифицирование закрывающей скобки в строке
- 22. Регулярное выражение Вопрос о поиске и замене
- 23. Анализ с помощью сбалансированной круглой скобки и получение соответствующих элементов
- 24. Как я могу манипулировать символом в поиске и замене в vim?
- 25. оператор перегрузки и оператор круглой скобки в C++
- 26. Regex для числа и открытия и закрытия круглой скобки
- 27. VIM: переформатировать все скобки, скобки и блочные скобки одинаково
- 28. Ошибка Excel при вводе открытой круглой скобки
- 29. Позволяет ли перегружать конструктор эффектов круглой скобки()?
- 30. iOS: Лучшая практика для размещения закрывающей скобки
Вы проверили [этот SO ответ] (http://stackoverflow.com/a/5146698/3832970)? –
@stribizhev Нет, я этого не видел, спасибо. Похоже, что долгосрочный ответ - изучить perl, а краткосрочное решение - написать небольшой макрос и использовать поиск, который на самом деле не должен быть намного медленнее, чем автоматический поиск, и заменить на переключатель 'confirm'. –
Не совсем то, что вы просите, но Тим Поуп [vim-surround] (https://github.com/tpope/vim-surround) может еще облегчить вашу жизнь. – lcd047