Efektywne edytowanie Vimem

9 czerwca 2009, noneo

Dla mnie vi jest jak Zen.
Używać vi to jak praktykować Zen.
Każda komenda jest koanem.
Mocarny dla tego, który ogarnął,
nieogarniony dla niewtajemniczonych.

Odkryjesz prawdę o nim za każdym razem, gdy go użyjesz.
–reddy@lion.austin.com

Tłumaczenie tekstu J. McPherson Efficient editing with vim

Ten poradnik zakłada podstawową wiedzę o vimie – trybie wstawiania, trybie komend, ładowanie i zapisywanie plików itd. Nowicjusze dzięki niemu pogłębią swoją wiedzę aby efektywniej go używać.

Notacja <Ctrl+X> oznacza, aby przy wciśniętym klawiszu Ctrl nacisnąć klawisz X. Wiele z tu użytych komend jest opisanych we wbudowanym w vima helpie, który można wywołać wpisując :help command, gdzie command jest tym, czego szukasz.

Efektywne poruszanie się

Trzymaj się z dala od trybu wstawiania

Ogólnie rzecz biorąc spędzaj w trybie wstawiania tak mało czasu, jak to tylko jest niezbędne, ponieważ w tym trybie vim zachowuje się jak prymitywny edytor. To dlatego tak wielu początkujących użytkowników vima tak wiele czasu spędza w tym trybie – to czyni vima łatwym w obsłudze. Ale prawdziwa potęga vima leży w trybie komend! Przekonasz się, że im lepiej będziesz znał vima, tym mniej czasu będziesz spędzał w trybie wstawiania.

Używaj h, j, k i l

Pierwszy krok na drodze do efektywnego używania vima to oduczyć się klawiszy strzałek. Jedną z zalet konstrukcji trybów vima jest to, że nie musisz wciąż przesuwać rąk pomiędzy klawiszami strzałek i główną częścią klawiatury; gdy jesteś w trybie komend litery h, j, k i l odpowiadają kierunkowi odpowiednio w lewo, na dół, do góry i w prawo. Wymaga to pewnej wprawy, ale naprawdę odczujesz różnicę w sprawności posługiwania się vimem, gdy się z tym oswoisz.

Gdy edytujesz e-maila, albo inny tekst sformatowany w paragrafy możesz zauważyć, że przemieszczasz się po tekście o więcej linii, niż oczekiwałeś. To dlatego, ponieważ paragraf jest jedną długą linią dla vima. Wciśnij g przed h, j, k lub l aby przesuwać się o linie ekranowe, zamiast linie tekstu.

Używaj przesunięć do przemieszczania się w bieżącej linii

Większość edytorów ma tylko najprostsze komendy do przemieszczania kursora (lewo, prawo, do góry, na dół, do początku linii, na koniec itd.). Vim posiada bardzo zaawansowane komendy do poruszania kursorem; nazywane są one przesunięciami. Gdy kursor przemieszcza się z jednego punktu tekstu do innego, tekst między tymi punktami nazywany jest ominiętym (to będzie ważne w dalszej części poradnika). Poniżej jest kilka z bardziej użytecznych przesunięć:

fx Przesuń kursor do przodu (forward) do następnego wystąpienia znaku x w bieżącej linii (oczywiście znak x może być dowolnym znakiem). To niezwykle użyteczna komenda. Możesz naciskać ; aby powtórzyć ostatnią komendę f.
tx To samo, co powyżej, ale przesuwa kursor w prawo przed ten znak, nie cały dystans do niego. (Bardzo użyteczne, naprawdę).
Fx Przesuwa kursor w tył do poprzedniego wystąpienia znaku x w bieżącej linii.
w Przesuwa kursor o słowo do przodu.
b Przesuwa kursor do tyłu o słowo.
0 Przesuwa kursor na początek bieżącej linii.
^ Przesuwa kursor na pierwszy znak bieżącej linii.
$ Przesuwa kursor na koniec bieżącej linii.
) Przesuwa kursor do przodu do następnego zdania. (Użyteczne podczas edycji e-maili lub dokumentów tekstowych).
( Przesuwa kursor o zdanie do tyłu.

Efektywne poruszanie się w obrębie pliku

Vim ma wiele komend, które przemieszczą Cię w dowolne miejsce pliku – rzadko będziesz musiał musiał przewijać tekst ręcznie. Poniższe skróty klawiszowe nie są technicznie rzecz biorąc przemieszczeniami, jako że poruszają Cię one w obrębie pliku, a nie konkretnej linii.

<Ctrl+F> Przesuń kursor o jeden ekran do przodu (forward)
<Ctrl+B> Przesuń kursor o jeden ekran wstecz (backward)
G Przesuń kursor do końca pliku
numG Przesuń kursor do linii num (np. 10G przesuwa do linii 10)
gg Przesuń kursor do początku pliku.
H Przesuń kursor na górę ekranu.
M Przesuń kursor na środek ekranu.
L Przesuń kursor na dół ekranu.
* Przesuń kursor do następnego wystąpienia ciągu znaków, w którym jest kursor (np. jeśli kursor jest gdzieś w napisie “bob,”, kursor przesunie się do następnego jego wystąpienia, jeśli istnieje)
# Jak wyżej, ale do poprzedniego wystąpienia ciągu znaków.
/tekst Poczynając od pozycji, w której jest kursor znajdź następne wystąpienie ciągu “tekst” i przemieść się do niego. Przejście następuje po naciśnięciu klawisza Enter. Aby ponowić poszukiwanie naciśnij n (next).
?tekst Podobnie jak /, ale poszukuje wstecz.
ma Tworzy na pozycji kursora zakładkę (znacznik) w tekście o nazwie a. Nazwą może być dowolna mała litera. Znacznika nie widać, ale on tam jest!
`a Przejdź do znacznika a. Uwaga: to jest odwrócony apostrof, nie prosty. Jest umieszczony na większości klawiatur na lewo od 1.
`. Przejdź do ostatnio edytowanej linii. To jest użyteczne! Jeśli musisz przewinąć plik, aby coś odszukać, możesz wrócić do miejsca w którym byłeś używając komendy `.

Efektywne pisanie

Używanie dopełniania wyrażeń

Vim ma bardzo przyjemny system uzupełniania słów. Oznacza to, że możesz napisać początek słowa, nacisnąć przycisk i vim dopisze słowo do końca. Na przykład jeśli masz gdzieś w kodzie zmienną “iAmALongAndAwkwardVarName”, podejrzewam, że nie chcesz jej wpisywać wszędzie tam, gdzie będzie użyta. Aby użyć autodopełnianiapo prostu wpisz początek słowa i naciśnij <Ctrl+N> (to znaczy przy wciśniętym klawiszu Ctrl naciśnij dodatkowo N) lub <c-p></c-p>. Jeśli vim nie dopełni do tego słowa, którego oczekujesz, próbuj dalej. Vim cyklicznie przejdzie przez wszystkie dopełnienia, które znajdzie.

Włączaj tryb wstawiania inteligentnie

Większość nowych użytkowników wchodzi w tryb wstawiania klawiszem i. To działa, ale o wiele częściej jest niepraktyczne gdy vim ma wiele różnych komend przestawiających vima w tryb wstawiania. Oto najbardziej popularne:

i Wstawiaj na lewo od pozycji kursora
I Wstawiaj na początku bieżącej linii
a Wstawiaj na prawo do pozycji kursora
A Wstawiaj na końcu linii
o Wstaw nową linię poniżej pozycji kursora i przejdź na jej początek
O Wstaw nową linię powyżej kursora i przejdź na jej początek
c{przemieszczenie} Skasuj tekst aż do miejsca określonego jako c ustaw tryb wstawiania pozwalając na jego zamianę (change). Na przykład c$ skasowałoby tekst do końca linii pozostając w trybie wstawiania. ct! skasowałoby tekst do następnego wykrzyknika (wyłącznie) i pozostawiło vima w trybie wstawiania. Skasowany tekst jest kopiowany do schowka i może być wstawiony.
d{przemieszczenie} Skasuj tekst do miejsca określonego przez {przemieszczenie}. Podobnie jak c{przemieszczenie}, ale nie wchodzi w tryb wstawiania.

Efektywne przesuwanie bloków tekstu

Używaj trybu zaznaczania i jego różnych trybów

W odróżnieniu od oryginalnego vi, vim pozwala Ci na podświetlanie zaznaczenia tekstu i operacjach na nim. Są trzy główne tryby selekcji wizualnej (trybu zaznaczania tekstu). Są to:

v Zaznaczanie na poziomie znaków. To tryb do których większość osób jest przyzwyczajona, dlatego wypróbuj go przed przed innymi trybami selekcji.
V Zaznaczanie na poziomie linii. Zawsze zaznaczane są całe linie.Ten tryb jest bardziej przydatny, gdy chcesz kopiować lub przenosić grupę linii.
<Ctrl+V> Zaznaczanie blokowa. Ekstremalnie użyteczne narzędzie i dostępne w nielicznych edytorach. Możesz zaznaczyć prostokątny blok i każdy tekst w nim będzie podświetlony.

Wszystkie standardowe klawisze ruchu w trybach selekcji wizualnej działają normalnie – na przykład vwww przestawi edytor w tryb selekcji wizualnej i zaznaczy trzy następujące słowa. Vjj przestawi vim-a w tryb selekcji wizualnej linii i zaznaczy bieżącą i dwie następne linie.

Wycinanie i wklejanie w trybie zaznaczania wizualnego

Gdy tekst jest już zaznaczony i podświetlony, prawdopodobnie chcesz coś z nim zrobić. Oto kilka z bardziej użytecznych komend, które możesz wydać, gdy zaznaczony jest fragment tekstu:

d Wytnij (delete) podświetlony tekst i wstawienie go do schowka.
y Kopiuj (słowo yank jest vim-ologią oznaczającą kopiowanie) zaznaczony tekst do schowka.
c Wytnij podświetlony tekst do schowka. To jest jak d,ale pozostawia vima w trybie wstawiania.

Wycinanie i kopiowanie bez podświetlania

Jeśli dokładnie wiesz, co chcesz wyciąć lub skopiować, możesz to zrobić bez wchodzenia do trybu podświetlania. To oszczędza czas.

d{przemieszczenie} Wycina tekst do {przemieszczenia} wstawiając go do schowka. Dla przykładu dw wycięłoby słowo, a dfS wycięłoby tekst do następnego wystąpienia S w bierzącej linii.
y{przemieszczenie} Kopiuje tekst do {przemieszczenia}.
c{przemieszczenie} Wycina tekst do {przemieszczenia} i pozostawia edytor w trybie wstawiania.
dd Wycina bieżącą linię
yy Kopiuje bieżącą linię
cc Wycina bieżącą linię i pozostawia edytor w trybie wstawiania.
D Wycina od kursora do końca bieżącej linii.
Y Kopiuje całą linię, tak jak yy. (Tak, to jest niekonsekwentne. Możesz użyć y$ aby osiągnąć to samo co przez Y.
C Wycina od kursora do końca bieżącej linii pozostawiając vima w trybie wstawiania.
x Wycina bieżący znak. (To jest command-line’owy backspace.)
s Wycina bieżący znak pozostawiając edytor w trybie edycji.

Wstawianie

Wstawianie jest proste. Umieść kursor tam, gdzie chcesz wstawić tekst i naciśnij p.

Używanie wielu schowków

Większość edytorów ma jeden schowek. Vim ma ich wiele; schowki w vimie są nazywane rejestrami. Możesz wyświetlić listę wszystkich używanych rejestrów i ich zawartość wpisując :reg. Zazwyczaj będziesz używał rejestrów oznaczonych małymi literami; inne są używane wewnętrznie przez vima i są przydatne tylko okazyjnie.

Aby użyć określonego rejestru do operacji kopiowania albo wstawiania, po prostu naciśnij "a przed tą operacją, gdzie a jest nazwą rejestru, którego chcesz użyć. Na przykład aby skopiować bieżącą linię do rejestru k naciśnij "kyy. (możesz również użyć V"ky. Wiesz dlaczego to działa?). Ta linia pozostanie w rejestrze k dopóki nie wstawisz czegoś nowego właśnie do rejestru k. Wtedy możesz użyć "kp aby wstawić tekst z rejestru k.

Unikanie powtarzania czynności

Niezwykła komenda “.”

W vi naciśnięcie . (kropki) spowoduje powtórzenie ostatnio wykonanej komendy. Na przykład jeśli Twoją ostatnią komendą było dw (kasowanie słowa), vi skasuje następne słowo.

Używanie liczników

Liczniki są jednym z najpotężniejszych narzędzi w vimie oszczędzających czas. Każda komenda może być poprzedzona liczbą. Liczba ta mówi vimowi ile razy ma powtórzyć wydana komendę. Oto kilka przykładów:

  • 3j – przeniesie kursor trzy linie w dół
  • 10dd – skasuje dziesięć linii
  • y3" – kopiuje tekst od kursora do trzeciego znaku cudzysłowa od kursora w bieżącej linii

Nagrywanie makr

Od czasu do czasu zorientujesz się, że robisz te same operacje na blokach tekstu kilka razy. Vim pozwala Ci nagrać makro w locie aby wykonać te operacje.

q{rejestr} Rozpocznij nagrywanie makra do oznaczonego rejestru. Na przykład qa rozpocznie nagrywanie i zachowa makro w rejestrze a.
q Zakończenie nagrywania.
@{rejestr} Odtworzenie makra zachowanego w rejestrze. Na przykład @a odtworzy makro z rejestru a.

Pamiętaj, że makra nagrywają naciśnięcia klawiszy i odtwarzają je; nie ma tam żadnej magii. Nagrywanie jest prawie sztuką, ponieważ jest tyle komend, którymi możesz wykonać swoje zadanie i musisz być bardzo uważny używając makra, ponieważ będzie działało we wszystkich miejscach, w których planujesz je uruchomić.

Pisanie kodu w vimie

vim jest wspaniałym edytorem do pisania kodu, ponieważ posiada wiele funkcji stworzonych specjalnie dla programistów. Poniżej kilka najbardziej poręcznych:

]p Podobnie jak p, ale automatycznie wyrównuje poziom wcięcia wklejonego kodu dopasowując go do tego, w który został wklejony. Spróbuj!
% Po ustawieniu kursora na nawiasie naciśnięcie % powoduje przeniesienie kursora do odpowiedniego nawiasu w tej parze nawiasów. Świetne do wykrywania błędów w wielokrotnie zagnieżdżonych blokach kodu.
>> Wcina podświetlony kod (Patrz: wcześniejszy rozdział o efektywnym zaznaczaniu tekstu. Jeśli żaden tekst nie jest zaznaczony, wcinana jest bieżąca linia).
<< Jak >>, ale usuwa wcięcie.
gd Skocz (go) do definicji (lub deklaracji) funkcji lub zmiennej pod kursorem.
K Skocz do strony podręcznika hasła znajdującego się pod kursorem. (Na przykład, jeśli kursor znajduje się na słowie sleep, zobaczysz manual o komendzie sleep.)

Tłumaczenie: Artur Kaminski, skład: mars3n

Podziel się na:

  • del.icio.us
  • Facebook
  • Google Bookmarks
  • Śledzik
  • Blip
  • Identi.ca
  • Kciuk.pl
  • Wykop

Komentarze (RSS)

Komentarze są prywatnymi opiniami dodających je osób. Prosimy o zachowanie kultury wypowiedzi. Komentarze obraźliwe oraz obniżające poziom serwisu będą usuwane. Więcej w regulaminie komentowania.

Liczba komentarzy: 25

zwiń wątek ttttt  9 czerwca 2009 o godz. 7:05 # Zwiększ karmę Zmniejsz karmę Cofnij swój głos Zgłoś komentarz do usunięcia KARMA: +5 [Pokaż komentarz]

Wreszcie, myslałem że już się nie doczekam naprawdę dobrego poradnika. Od kilku chyba m-cy coś co można przeczytać od początku do konca

zwiń wątek Pablo  9 czerwca 2009 o godz. 8:20 # Zwiększ karmę Zmniejsz karmę Cofnij swój głos Zgłoś komentarz do usunięcia KARMA: 0 [Pokaż komentarz]

W niniejszym poradniku wybrano może trochę lepszy podzbiór funkcjonalności do omówienia, niż w vimtutorze, ale na zupełny brak dobrego poradnika bym nie narzekał – vimtutor istnieje od dość dawna :-) .

 
 
zwiń wątek flamenco108  9 czerwca 2009 o godz. 9:48 # Zwiększ karmę Zmniejsz karmę Cofnij swój głos Zgłoś komentarz do usunięcia KARMA: +2 [Pokaż komentarz]

Za każdym razem, kiedy czytam podobny poradnik do vima, jestem zachwycony funkcjonalnością tego narzędzia. Choć słowem tu nie wspomniano o jego zdolności odpalania zewnętrznych narzędzi (np. sed), i tak przedstawione funkcje są liczne. A później odpalam po raz kolejny vima i co? I posługuję się strzałkami, znam tylko dd, yy i to wszystko… Bo uczyć się trzeba, a nie ma poważnej okazji.

 
zwiń wątek slotwek  9 czerwca 2009 o godz. 10:57 # Zwiększ karmę Zmniejsz karmę Cofnij swój głos Zgłoś komentarz do usunięcia KARMA: +3 [Pokaż komentarz]

Mala poprawka:
x – dziala jak delete (nie jak backspace),
X – dziala jak backspace :)

Artykul bardzo dobry i nauczylem sie kilku ciekawych skrotow. Wielkie dzieki dla tlumacza :)

 
zwiń wątek kosa  9 czerwca 2009 o godz. 12:13 # Zwiększ karmę Zmniejsz karmę Cofnij swój głos Zgłoś komentarz do usunięcia KARMA: 0 [Pokaż komentarz]

Dobrze wiedzieć, że delete i backspace działają jak x i X:). Nie wiedziałem, że one też kopiują usuwany tekst.
Do formatowania kodu jest jeszcze bardzo dobre ctrl=. W połączeniu z % pozwala na najlepsze wcinanie jakie widziałem we wszystkich edytorach.

 
zwiń wątek wujekbogdan  9 czerwca 2009 o godz. 12:47 # Zwiększ karmę Zmniejsz karmę Cofnij swój głos Zgłoś komentarz do usunięcia KARMA: +1 [Pokaż komentarz]

nie raz już próbowałem zmusić się do vima czytając o jego zaletach, ale zawsze przyzwyczajenie wygrywa i używam nano.

podstawową znajomość wypada jednak mieć. wczoraj miałem okazję pracować przez ssh na koncie użytkownika i niestety nie było mojego nano, od razu przypomniał mi się stary linuksowy dowcip
“-jak uzyskać losowy ciąg znaków
-posadzić newbie przed vimem i kazać mu z niego wyjść”
…i oczywiście nie miałem pojęcia ani jak wprowadzić tekst, ani jak zapisać plik ;) )
dobrze, że jest sporo poradników w necie.

thx za artykuł, napisany jest bardzo przystępnie.

 
zwiń wątek pyk  9 czerwca 2009 o godz. 15:11 # Zwiększ karmę Zmniejsz karmę Cofnij swój głos Zgłoś komentarz do usunięcia KARMA: 0 [Pokaż komentarz]

Odnośnie tego “hjkl” di oiryszabua,,, przepraszam: do poruszania :) się po edytorze – dziwię się, że nie wybrali jednak jkl; – byłoby chyba wygodniej.
Poza tym, tak sobie myślę, że vi to mistrzostwo logicznego interfejsu – proste (nie nieskomplikowane), dobre narzędzie uniksowe, które jest tak dobrze określane przez motto występujące na początku artykułu. :)

zwiń wątek darek129  9 czerwca 2009 o godz. 15:25 # Zwiększ karmę Zmniejsz karmę Cofnij swój głos Zgłoś komentarz do usunięcia KARMA: +1 [Pokaż komentarz]

Autor wybrał hjkl ze względu na to, że o wiele częściej poruszasz się pionowo po jednej linii niż poziomo po jednym znaku. Do poziomego poruszania najczęściej używa się w/b albo f a potem ;.

 
 
zwiń wątek Artwi  10 czerwca 2009 o godz. 8:25 # Zwiększ karmę Zmniejsz karmę Cofnij swój głos Zgłoś komentarz do usunięcia KARMA: +1 [Pokaż komentarz]

To miłe, że ktoś zadał sobie trud pisania o Vimie, ale czy uczyć się go nie jest prościej odpalając vimtutor? Dostępny w prawie każdej dystrybucji, zwykle nawet po polsku, nie tylko opisuje, ale też zawiera ćwiczenia o rosnącej trudności do wykonania…

 
zwiń wątek mariusz  10 czerwca 2009 o godz. 12:29 # Zwiększ karmę Zmniejsz karmę Cofnij swój głos Zgłoś komentarz do usunięcia KARMA: 0 [Pokaż komentarz]

Jedno z bardziej dla mnie użytecznych narzędzi, to możliwość łatwego przeklejania tekstu środkowym klawiszem myszy w trybie wstawiania, o tak:
1) odpalamy w trybie komend :set paste
2) przechodzimy w tryb wstawiania
3) klik klik i jest
zachowuje nawet oryginalne odstępy, co dla czytelności przeklejanego kodu ma spore znaczenie.
Zeby wyjść z trybu wklejania, dajemy :set nopaste
Dla leniwych – mapujemy set paste/nopaste na F11 lub inny klawisz;)

 
zwiń wątek Treadstone  10 czerwca 2009 o godz. 19:13 # Zwiększ karmę Zmniejsz karmę Cofnij swój głos Zgłoś komentarz do usunięcia KARMA: 0 [Pokaż komentarz]

a dla mnie vi jest jednyie kawałkiem dobrego kodu:)

 
zwiń wątek Romesław  11 czerwca 2009 o godz. 18:32 # Zwiększ karmę Zmniejsz karmę Cofnij swój głos Zgłoś komentarz do usunięcia KARMA: -2 [Pokaż komentarz]

ja nie wiem po co używacie vi/vim skoro jest pico/nano i zawsze go używałem, vi(m) to udziwnienie.

zwiń wątek wrrr  13 czerwca 2009 o godz. 19:40 # Zwiększ karmę Zmniejsz karmę Cofnij swój głos Zgłoś komentarz do usunięcia KARMA: +1 [Pokaż komentarz]

zgadzam się do połowy. dużo szybsze w okiełznaniu i użytkowaniu (bo honorujące ludzkie przyzwyczajenia i intuicję) do krótkich, nagłych zadań jest takie nano. jednak do programowania czy przeglądania plików źródłowych, gdzie niezbędna jest funkcjonalność podświetlania składni, jak również wszystko inne, co vim oferuje, nano i podobne już się nie nadają lub nadają się co najwyżej średnio. lubię vim bo programuję, ale kiedy chcę szybko przejrzeć i zmienić literkę w jakimś pliku czy coś szybko wkleić i zapisać wolę nano. podobnie w windzie. do edycji np. plików html używam pspada, ale jak coś nagle musze zapisać, wolę kombinację win+r+notepad.
mimo wszystko vim to kawał dobrej roboty. żeby tak dobrze pisane były sterowniki lub oprogramowanie do multimediów, to linuksy byłyby już dawno w każdym domu.

zwiń wątek karma  29 stycznia 2010 o godz. 10:08 # Zwiększ karmę Zmniejsz karmę Cofnij swój głos Zgłoś komentarz do usunięcia KARMA: 0 [Pokaż komentarz]

Składnia nie jest “podświetlana”, składnia jest *kolorowana*.

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
 
zwiń wątek del  17 czerwca 2009 o godz. 23:17 # Zwiększ karmę Zmniejsz karmę Cofnij swój głos Zgłoś komentarz do usunięcia KARMA: +1 [Pokaż komentarz]

ja nie wiem po co używacie worda/pico/nano skoro jest vi/vim i zawsze go używałem, word/pico/nano to udziwnienie.

 
 
zwiń wątek pavel  15 czerwca 2009 o godz. 8:52 # Zwiększ karmę Zmniejsz karmę Cofnij swój głos Zgłoś komentarz do usunięcia KARMA: 0 [Pokaż komentarz]

Do vima przekonałem sie niedawno, i w sumie bardzo dobrze mi zastępuje nawet całe środowiska programistyczne, na razie pisze lekkie programy w C/C++, więc napewno i notatnik by wystarczył, ale możliwość skakania po błędach jak w zwykłym IDE,i inne ułatwienia… jest naprawde czymś wielkim i sam interfejst vima, jest naprawde przyjazny jak się go pozna choćby lekko, ja bym dodał tutaj jeszcze zakładki(tab) i split-screen, jak dla mnie do operacji na plikach niezbędne.

W sumie za dużo by mówić ;p

edytor wart polecenia, i jeśli ktoś nie mógł się do te pory zabrać sie za niego, polecam usunąc prędzej używane narzędzie i zostawić vima hehe

pozdrawiam.

zwiń wątek dna  15 czerwca 2009 o godz. 15:20 # Zwiększ karmę Zmniejsz karmę Cofnij swój głos Zgłoś komentarz do usunięcia KARMA: 0 [Pokaż komentarz]

@pavel “split screen” . Proszę bardzo: :-)

ctrl+w s – split podział poziomy
ctrl+w v – podział pionowy
ctrl+w strzałka – przeskakuje do podziału w kierunku strzałki
ctrl+w q – zamyka aktualny podział

ctrl+w n – nowy podział poziomy z pustym plikiem

 
zwiń wątek gawron  16 czerwca 2009 o godz. 8:02 # Zwiększ karmę Zmniejsz karmę Cofnij swój głos Zgłoś komentarz do usunięcia KARMA: 0 [Pokaż komentarz]

Zakładki:

:tabnew

Trochę tego dużo się robi, jak masz zakładki, w każdej zakładce kilka okien, a do tego jeszcze bufory. Przyznaje jednak, że czasem się przydaje :)

P.

 
 
zwiń wątek gawron  15 czerwca 2009 o godz. 14:35 # Zwiększ karmę Zmniejsz karmę Cofnij swój głos Zgłoś komentarz do usunięcia KARMA: 0 [Pokaż komentarz]

Z vi (vim’em) jest tak: najpierw ktoś (np. pracodawca) musi Ciebie zmusić do pracy w tym edytorze przez pół roku, ale później nie będziesz chciał używać żadnego innego!

Pozdrawiam

Przemek

PS. Artykuł bardzo przydatny, choć używając vim’a od 15 to niczego nowego nie odkryłem, ale miło sobie przypomnieć.

 
zwiń wątek Paweł  23 czerwca 2009 o godz. 15:08 # Zwiększ karmę Zmniejsz karmę Cofnij swój głos Zgłoś komentarz do usunięcia KARMA: 0 [Pokaż komentarz]
 
zwiń wątek Quinn  24 czerwca 2009 o godz. 9:47 # Zwiększ karmę Zmniejsz karmę Cofnij swój głos Zgłoś komentarz do usunięcia KARMA: 0 [Pokaż komentarz]

słowo yank jest vim-ologią oznaczającą kopiowanie

Nie żebym się czepiał, ale polecenie kopiowania yank widziałem bardzo dawno temu na Amidze w edytorze… Micro Emacs ;)

 
zwiń wątek micha  27 czerwca 2009 o godz. 16:53 # Zwiększ karmę Zmniejsz karmę Cofnij swój głos Zgłoś komentarz do usunięcia KARMA: 0 [Pokaż komentarz]

Mam małe pytanie: w vim’ie istnieje bardzo dobry skrót – C^o pozwalający wejść do trybu poleceń tylko na jedno polecenie, a czy istnieje skrót działający na odwrót? Czyli wejście do trybu insert tylko na 1 znak(ew. z mnożnikiem na więcej)?
Dlaczego pytam o takie coś?
Przykładowo chce na szybko skomentować ‘#’ kilka wierszy z rzędu. Pytanie jak to zrobić najsprawniej i raczej bez używania strzałek (czyli bardziej po “vim’owsku” :) ) i zakładając, że nie mam żadnej nakładki typu cvim.

zwiń wątek danadam  29 czerwca 2009 o godz. 18:16 # Zwiększ karmę Zmniejsz karmę Cofnij swój głos Zgłoś komentarz do usunięcia KARMA: +1 [Pokaż komentarz]

Nie wiem nic o skrócie, ale komentowanie wierszy robię tak:
- przechodzę na początek pierwszej komentowanej linii
- ctrl+v (tryb zaznaczania kolumnowego)
- zjeżdzam do ostatniej komentowanej linii
- shift+i (wstaw przed znakiem)
- wpisuję znak(i) komentarza
- esc
gotowe, wszystkie linie zakomentowane.

zwiń wątek micha  3 lipca 2009 o godz. 11:11 # Zwiększ karmę Zmniejsz karmę Cofnij swój głos Zgłoś komentarz do usunięcia KARMA: 0 [Pokaż komentarz]

Wielkie dzięki, działa świetnie. Ależ potężny jest Vim, a to zaznaczanie blokowe to prawdziwe mistrzostwo.

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 
 
 
zwiń wątek grep  15 stycznia 2010 o godz. 13:38 # Zwiększ karmę Zmniejsz karmę Cofnij swój głos Zgłoś komentarz do usunięcia KARMA: 0 [Pokaż komentarz]

Dla tych którzy korzystają często vi/vim lub chcą się go nauczyć przydatny może być “kubek vi”. zwykły kubek do picia z nadrukowanymi komendami edytora vi: http://www.continuum.com.pl/vi/vi_mug.html

 
Identyfikator (wymagane)
Adres e-mail (wymagany - nie pokażemy go publicznie)
Adres URI
Rozmiar pola: zmniejsz rozmiar | zwiększ rozmiar
Uwaga! Niektóre komentarze, m.in. te dodane przez niezalogowanych i nowych użytkowników, są ręcznie moderowane. Jeśli Twój komentarz nie ukaże się od razu, nie dodawaj go ponownie, tylko cierpliwie poczekaj na akceptację.

Literówki najlepiej zgłaszać jabberem: michuk@jakilinux.org lub kocio@jabber.org!

W komentarzach możesz używać prostych znaczników HTML. Przykłady:
  • Link: <a href="jaklinux.org">Linux dla każdego</a>,
  • Wytłuszczenie: <strong>tekst pogrubiony</strong>,
  • Kursywa: <em>tekst pochylony</em>,
  • Przekreślenie: <strike>tekst przekreślony</strike>,
  • Kod: <code>printf("blok kodu");</code>,
  • Cytat: <blockquote>cytat</blockquote>
Uwaga: jeśli dodasz nieznany znacznik, będzie on niewidoczny, gdyż system filtruje takie znaczniki.

O Autorze

Artur Kamiński

Jestem Linuxowcem od 1994, głównie systemowcem, ale także bazodanowcem i z konieczności programistą. Przeszedłem przez Slacka, Redhata i w serwerach zatrzymałem się na Debianie. Codzienne zajęcie to grzebanie w PostgreSQLu, Apache'u czy Postfixie, by działały tak, jak chce klient. Z języków używam głównie Basha i SQLa, a lubię też Pythona. . Mam też życie pozainformatyczne: słucham Trójki we środę po północy.

Branżowe oferty pracy

Reaklmy AdTaily

RSS

Możesz śledzić komentarze do tego artykułu poprzez specjalny kanał; RSS 2.0 .

Porównaj dystrybucje!

vs

Dołącz do nas!

Piszesz teksty o Linuksie? Nie pisz do poduszki! Publikuj na jakilinux.org!
Więcej o współpracy na blogu Grupy Jakilinux.

Butik JL

jakilinux butik
Obejrzyj więcej produktów i wybierz coś dla siebie.

Subskrybuj Biuletyn!

Biuletyn Grupy Jakilinux to okresowy subiektywny przegląd najważniejszych informacji o których piszemy w naszych serwisach, który wysyłamy e-mailem. Subskrybuj biuletyn!