Wiele wyborów w Vimie

Czy możliwe jest wybranie wielu nie-kolejnych linii (lub sekcji) w trybie wizualnym Vima? Jeśli tak, to w jaki sposób?

Author: Marcin, 2009-10-22

3 answers

Aby uzyskać taką możliwość, musisz zainstalować wtyczkę multiselect. Znajdziesz go tutaj: http://www.vim.org/scripts/script.php?script_id=953

 28
Author: Michael Dillon,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-10-22 16:05:56

Nie, nie jest to możliwe bez wtyczek.

Ale możesz skopiować wiele linii do tego samego bufora, jeśli to rozwiąże twój problem.

  • aby uruchomić "Bufor akumulacyjny":
    • zaznacz sekcję do skopiowania w trybie wizualnym,
    • naciśnij "a aby operować na buforze a z następnym poleceniem i
    • yank it as usual (y).
  • aby dodać do tego bufora:
    • zaznacz następną sekcję i
    • naciśnij "A Nazwa bufora jest zapisywana wielkimi literami: "nie nadpisuj bufora, zamiast niego dołączaj".]}
    • i szarpać ponownie używając y.
  • można następnie wkleić zgromadzony Bufor a w dowolnym momencie za pomocą "ap.
 63
Author: soulmerge,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-01-30 18:38:42

Bardziej aktualną odpowiedzią jest ten plugin.

(zastrzeżenie: osobiście go nie używam, za bardzo ingeruje w resztę mojej konfiguracji Vima. Jeśli twój vim jest stosunkowo czysty i przenosisz się z sublime, to z pewnością może to być twoja filiżanka herbaty.)

Chciałbym również zwrócić uwagę na funkcjonalność nagrywania / odtwarzania Vima(klawisz q). Dość często nagrywanie jest również niepotrzebne, mogę wykonywać zadania normalnie wykonywane z multi-select sublime robiąc iteratywnie (np. wyszukaj coś, wykonaj poprawkę na pierwszej instancji tego, a następnie kolejne powtórzenia są osiągane przez naciśnięcie n i N, aby poruszać się i ., aby powtórzyć operację edycji).

Mam swój , przecinek nnoremap'd do @q, to powtarza sekwencję, która jest rejestrowana przez naciśnięcie qq (zapis do q rejestru).

 22
Author: Steven Lu,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-01-16 18:35:08