Surround
Dzisiejszym artykułem rozpocznę nową, krótką serię mającą na celu
przedstawienie naważniejszych moim zdaniem pluginów do edytora
Vim.
Pierwszym z nich jest surround
Plugin ten skupia się na jednej funkcjonalności: otaczanie
(surrounding). Pisząc kod niejednokrotnie otaczamy (fatalnie to brzmi :) )
swój kod. Otaczamy wyrazy cudzysłowami, nawiasami, klamrami albo tagami.
Surround dba o wszystkie te aspekty. Możemy bardzo łatwo nimi
manipulować.
Surround działa przeważnie w trybie komend chociaż w trybie wizualnym też dodaje kilka funkcjonalności.
Jego podstawową zaletą jest bardzo zwięzła składnia, posiada tylko kilka komend, których
odpowiednia kombinacja wykonuje tą magiczną robotę
s
– podstawowa komenda: oznacza sorroundc
– modyfikator surrounda oznaczający zmianęy
– modyfikator surrounda oznaczający wprowadzanied
– modyfikator surrounda oznaczający usuwaniet
– oznacza tag używany w plikach html/xml
to wszystko do tego dochodzi znajomość selektorów i czasem użycie trybu wizualnego: v
v
– tryb wizualnyp
– selektor paragrafuw
– selektor słowa
Przykłady
Kursor generalnie może być w obrębie
otaczanego fragmentu więc nie trzeba się restrykcyjnie trzymać zgodnie z
naszym przykładem (W przykładach kursor oznaczamy |
). Pierwsze komendy postaram się
łopatologicznie rozłożyć na części pierwsze.
Zacznijmy od początku – mamy proste zdanie Surround jest super
i chcemy pierwszy wyraz (Surround)
otoczyć cudzysłowem. Skoro chcemy dodać to używamy y
potem s
jako
klucz i selektor (iw) na koniec czym czym chcemy otoczyć („)
1 2 3 4 |
Surr|ound is super ysiw" "Surround" is super |
yh, Chyba miał być pojedyńczy cudzysłów…. musimy to zmienić. c
Zmiana, s
– klucz, selektor już nie potrzebny (bo plugin sam odnajdzie
oataczającą parę znaków) i co chcemy zmienić („) na co (‚)
1 2 3 4 |
"Surr|ound" is super sc"' 'Surround' is super |
a właściwie po co on wogóle, usuwamy cudzysłowy
1 2 3 4 |
'Surro|und' is super ds' Surround is super |
i wracamy do stanu początkowego. Właściwie to cała wiedza, którą musimy
znać. Kwestia tylko doboru selektora i znakdu otaczającego. Możemy
wybrać dowolny: "
, '
, (
,[
, {
, <p>
Dla łatwego zapamiętania
dst
– delete selected tagcst
– change selected tag
Nieparzyste
Nieparzyste znaki to takie, które są inne na początku i na końcu, dobrym
przykładem są tagi HTML/XML.
Otaczając tekst tagiem zostaje on automatycznie zamknięty na końcu.
1 2 3 4 5 6 7 8 |
Surround ysiw<b> <b>Surround</b> cst<p> <p>Surround</p> cst<p class="highlight"> <p class="highlight">Surround</p> |
Innym przykładem są znaki nawiasów, klamer itp. Generalną zasadą jest
to, że możemy użyć znaku otwierającego lub zamykającego. Różnica jest taka,
że w przypadku użycia znaku zamykającego zostanie dodana dodatkowa
spacja.
1 2 3 4 |
Surround ysiw( ( Surround ) |
lub
1 2 3 4 |
Surround ysiw) (Surround) |
Tryb wizualny
Surround dodaje trochę funkcjonalności także w trybie wizualnym
Możemy w tym trybie zaznaczyć fragment tekstu, wcisnąć s
i dodać czym
chcemy otaczać.
1 2 3 4 |
Surround jest super Vs<p> <p>Surround jest super</p> |
Ostanią czynnością, którą warto wspomnieć jest zaznaczanie za pomocą
surround. Otóż w trybie wizualnym możemy zaznaczyć tekst zgodnie z
symbolami otaczającymi. Dodatkowo mamy wybór czy zaznaczamy tekst
wewnątrz tych znaków czy też razem z nimi.
Gdy chcemy zaznaczyć tekst wewnątrz używamy i
(inner) natomiast na
zewnątrz – a
(around)
symbol |
oznacza pozycję kursora
1 2 3 4 |
<p> Najlepszym pluginem do Vim jest <b>Suror|und</b> (Tim Pope)</p> vitcSurround <p> Najlepszym pluginem do Vim jest <b>Surround</b> (Tim Pope)</p> |
v
– wejście w tryb wizualnym
i
– wybór aby zaznaczało wewnątrz
t
– wybieramy w obrębie tagu
c
– zaznaczenie zmieniamy na
Surround
1 2 3 4 |
<p> Najlepszym pluginem do Vim jest <b>Surround</b> (Tim |Pope)</p> va(d <p> Najlepszym pluginem do Vim jest <b>Surround</b> </p> |
Zakończenie
Warto używać surround, bardzo warto nawet nie wiecie jak szybko idzie
się do tego pluginu przyzwyczaić. Polecam korzystać.
.