Ostatnio nauczyłem się od Practical Vim sposobu kopiowania lub przenoszenia bloku linii bez konieczności przesuwania kursora z bieżącej pozycji. Odbywa się to w trybie wiersza poleceń. na przykład
:123,133m. # moves lines from 123 to 133 below the cursor position.
Chociaż podoba mi się to, pisanie długich linii jest kłopotliwe, szczególnie gdy plik ma zbyt wiele linii.
Czasami linie do przesuwania są względnie blisko kursora (ale nie chcę przesuwać kursora, szarpać, wracać tam, gdzie byłem, wklejać!). Byłoby wspaniale, gdybym mógł użyć liczb względnych, podobnie jak w trybie normalnym. To jak mówienie
przenieś tutaj 5 linii, które są 10 linii powyżej bieżącej linii
Krótko mówiąc, jak używać liczb względnych w trybie wiersza poleceń (podobnie jak w trybie normalnym)?
źródło
15k d5j 10j P
.Możesz użyć twardych liczb w swoim zakresie:
Lub liczby względne:
Lub znaki ręczne:
Lub automatyczne znaki:
Lub wyszukuje:
Lub skróty linii:
Lub dowolna kombinacja powyższych sztuczek:
źródło
Możesz użyć adresowania względnego (np.
.-10,.+3
) Z dowolną komendą Ex, cp.:help :range
.Alternatywnie, spójrz na moją wtyczkę LineJuggler ; zapewnia kilka krótkich odwzorowań do przesuwania linii lub ich powielania, a wszystkie te odwzorowania przyjmują względne przesunięcie linii jako
[count]
.źródło