Vim: самый быстрый способ скопировать текст в кавычки - PullRequest
1 голос
/ 12 апреля 2020

Какой самый эффективный способ скопировать текст внутри кавычек в vim, например, hello в "hello" 'hello' '''hello''' или """hello"""? Самое быстрое, что я могу сделать, это:

  • v (войти в визуальный режим)
  • w или e (примерно до конца текста
  • h или l, чтобы добраться до точного правильного места
  • y, чтобы восстановить текст

Вот пример: https://gyazo.com/a2bb432dc04de58ac628327740f6c033. Хотя я мог бы улучшить его, чтобы получить его, возможно, через 3 с, выполнение этой операции с помощью мыши заняло бы все 0,25 с. Какой самый эффективный способ сделать копирование-вставку, такой как приведенный выше

Ответы [ 2 ]

2 голосов
/ 12 апреля 2020

Если текст окружен только одной парой кавычек, в этом случае двойные кавычки, самый эффективный способ скопировать этот текст - yi". Это скопирует (y) текст внутри кавычек (i") независимо от того, где изначально находится курсор. Чтобы это работало с одинарными кавычками, скобками, скобками или чем-то еще, просто замените " символом, окружающим текст.

Однако, если текст окружен несколькими парами кавычек, мы должны сначала перейти к самой внутренней цитате, прежде чем мы сможем скопировать текст внутри. Приведенная выше команда не будет работать, поскольку она увидит первые две кавычки, между которыми ничего нет ("").

Самый быстрый способ перехода к первой кавычке - f". Затем нажимайте ;, пока курсор не окажется на самой внутренней кавычке, и теперь мы можем использовать yib (команда ib выбирает внутренний блок .), Чтобы скопировать текст внутри!

Возможно, можно создать отображение, которое будет автоматически перемещать курсор к самой внутренней цитате и копировать текст внутри, но это для меня слишком сложно.

1 голос
/ 12 апреля 2020

Если ваш курсор находится внутри слова, которое вы хотите скопировать, просто нажмите y i с последующей кавычкой ' или "

Обязательно прочитайте :h text-objects

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...