{"id":140,"date":"2008-10-10T16:56:00","date_gmt":"2008-10-10T14:56:00","guid":{"rendered":"http:\/\/antynet.pl\/index.php\/2008\/10\/10\/vim\/"},"modified":"2010-08-24T22:43:11","modified_gmt":"2010-08-24T20:43:11","slug":"vim","status":"publish","type":"post","link":"https:\/\/www.antynet.pl\/index.php\/2008\/10\/10\/vim\/","title":{"rendered":"VIM"},"content":{"rendered":"<p><span style=\"font-weight: bold;\">VIM<\/span><br \/>\/usr\/share\/vim\/vim63\/colors schematy kolor\u00f3w<br \/>:color [kolor] #zmiana schematu<br \/>shift + v #zaznaczanie bloku w\/g wierszy<br \/>ctrl + v #zaznaczanie bloku<br \/>y #zapisanie wcze\u015bniej zaznaczonego bloku<br \/>d #skasowanie wcze\u015bniej zaznaczonego bloku<br \/>p #wklejenie bloku<br \/>> #przesuni\u0119cie zaznaczonego bloku w prawo<br \/>< #j.w w lewo <\/p>\n<div><\/p>\n<div><span style=\"font-weight: bold;\">Podstawowe komendy edytora Vi<\/span><br \/>a | i #tryb edycji wprowadzanie tekstu po prawej|lewej stronie kursora<br \/>ESC #powr\u00f3t do trybu command<br \/>W trybie commad h, j, k, l odpowiednio strza\u0142ki: lewo, d\u00f3\u0142, g\u00f3ra, prawo<\/div>\n<div>:r [file] #otwarcie pliku do edycji<br \/>:w #zapis do pliku.<br \/>:q #wyj\u015bcie z programu.<br \/>:wq lub zz #zapis do pliku i wyj\u015bcie z programu.<br \/>:set mouse=a #pozwala na u\u017cycie myszy w edytorze<\/div>\n<div><span style=\"font-weight: bold;\">Poruszanie si\u0119 po edytowanym tek\u015bcie<\/span><br \/>^u&#8212;&#8212;&#8212;&#8212;&#8211; <br \/>&#8212;&#8212;&#8211;k&#8212;&#8212;&#8211;<br \/>0&#8212;-h&#8212;l&#8212;-$<br \/>&#8212;&#8212;&#8211;j&#8212;&#8212;&#8211;<br \/>^d&#8212;&#8212;&#8212;&#8212;- <br \/>0 #do pocz\u0105tku linii.<br \/>$ #koniec bie\u017c\u0105cej linii.<br \/>w #s\u0142owo do przodu.<br \/>e #na koniec nast\u0119pnego s\u0142owa.<br \/>b #pocz\u0105tek poprzedniego s\u0142owa.<br \/>1G #pocz\u0105tek tekstu.crt G #koniec pliku.<br \/>nG #do linii numer n.<\/p>\n<p><span style=\"font-weight: bold;\">Modyfikowanie tekstu<\/span><br \/>a #przej\u015bcie w tryb edycji.<br \/>A #przej\u015bcie w tryb edycji na ko\u0144cu linii.<br \/>i #przej\u015bcie w tryb edycji z dopisywaniem z lewej strony kursora.<br \/>o #przej\u015bcie w tryb edycji w nowej linii.<br \/>O #przej\u015bcie w tryb edycji w nowej linii powy\u017cej bie\u017c\u0105cej.<br \/>x #kasowanie znaku pod kursorem.<br \/>dw #kasowanie od pozycji kursora do ko\u0144ca s\u0142owa.<br \/>dd #kasowanie ca\u0142ej linii.<br \/>D #kasowanie od kursora do ko\u0144ca linii.<br \/>nx #kasowanie n znak\u00f3w od kursora.<br \/>ndd #kasowanie n linii.<br \/>dG #kasowanie od kursora do ko\u0144ca tekstu.<br \/>d1G #kasowanie od kursora do pocz\u0105tku tekstu.<br \/>d$ #kasowanie do ko\u0144ca linii.<br \/>dn$ #kasowanie od kursora do ko\u0144ca n-tej linii.<br \/>u #cofni\u0119cie poprzedniej komendy.<br \/>U #cofni\u0119cie wszystkich zmian w bie\u017c\u0105cej linii.<br \/>:e! #przywo\u0142anie stanu sprzed poprzedniego zapisu do pliku.<br \/>rc #zast\u0119puje znak pod kursorem na znak c.<br \/>R #tryb edycji z nadpisywaniem.<\/p>\n<p><span style=\"font-weight: bold;\">Kopiowanie i przenoszenie tekstu<\/span><br \/>yy lub Y #kopiowanie linii do bufora.<br \/>nyy lub nY #kopiowanie n linii do bufora.<br \/>yw #kopiowanie s\u0142owa do bufora.<br \/>nyw #kopiowanie n s\u0142\u00f3w do bufora.<br \/>y$ #kopiowanie do bufora od kursora do ko\u0144ca linii.<br \/>&#8222;ayy lub aY #kopiowanie linii do bufora o nazwie a.<br \/>&#8222;byw #kopiowanie s\u0142owa do bufora o nazwie b.<br \/>&#8222;bynw #kopiowanie n wyraz\u00f3w do bufora o nazwie b.<\/div>\n<div>:1,5w [buf] #kopiowanie lini od 1 do 5 do zbioru o nazwie buf<\/div>\n<div>:e [buf] #za\u0142adowanie zbioru buf do bufora<br \/>p #wklejenie zawarto\u015bci bufora (bez nazwy) na prawo od kursora.<br \/>np jak wy\u017cej ale n razy.<br \/>P #wklejenie zawarto\u015bci bufora (bez nazwy) na lewo od kursora.<br \/>&#8222;ap #wklejenie zawarto\u015bci bufora o nazwie a po prawej stronie od kursora.<br \/>&#8222;bnP #n kopii po lewej stronie od kursora z bufora o nazwie b.<\/p>\n<p><span style=\"font-weight: bold;\">Szukanie w tek\u015bcie i zast\u0119powanie<\/span><br \/>fc #znajduje nast\u0119pny znak c i ustawia kursor po prawej.<br \/>Fc #znajduje nast\u0119pny znak c i ustawia kursor po lewej.<br \/>\/str #szuka ci\u0105gu znak\u00f3w str od kursora w prawo i do ko\u0144ca tekstu.<br \/>?str #jak wy\u017cej ale w lewo i do pocz\u0105tku tekstu.<\/p>\n<p><span style=\"font-weight: bold;\">Ustawienia:<\/span><br \/>:retab #zmiana tab na space<br \/>:set list|nolist #ukryte znaki<br \/>:set hlsearch|nohlsearch #wy\u0142\u0105czenie pod\u015bwietlania znalezionego ci\u0105gu<br \/>:set number|nonumber #numerowanie wierszy<br \/>:syntax on|off #pod\u015bwietlanie sk\u0142adni<br \/>:set wrap #zawijanie wierszy<br \/>:set ic #wyszukiwanie ignore case<br \/>:set mouse=a #w\u0142\u0105czenie myszy<br \/>:set noet ts=[nr] sw=[nr] #rozmiar przesuni\u0119cia po wci\u015bci\u0119ciu ts-tabspace lub sw-shiftwidth,przesuni\u0119ciu><br \/>:set expandtab #zamiana tab na space<br \/>:set incsearch #wyszukiewanie ju\u017c podczas wpisywania<br \/>:set showmode #pokazywanie trybu<br \/>:set showcmd #pokazywanie polece\u01441G<br \/>:map #sprawdzenie mapowania klawiszy<br \/>ctrl+p #w trybie wprowadzanie dope\u0142nianie sk\u0142adni<br \/>:set autoindent #tworzenie wci\u0119cia przy nowej lini<br \/>:set smartindent #tworzenie inteligentnych wci\u0119\u0107<\/p>\n<p><span style=\"font-weight: bold;\">Okna:<\/span><\/p>\n<div>:split [file] #otwarcie file w nowym oknie<br \/>:vsp [file] #j.w<br \/>ctrl+w #przechodzenie mi\u0119dzy oknami<br \/>ctrl+w + #zwi\u0119kszenie okna<br \/>ctrl+w &#8211; #zmniejszenie okna<br \/>ctrl+s #duplikat okna<br \/>ctrl+v #j.w.<br \/>ctrl+c #zamkni\u0119cie bie\u017c\u0105cego okna<br \/>ctrl+o #zamkni\u0119cie pozosta\u0142ych okien<br \/>ctrl+p #przej\u015bcie do poprzedniego okna<\/div>\n<div><\/div>\n<p><span style=\"font-weight: bold;\">Przyk\u0142ady:<\/span><br \/>:map #2 :w &#8211; przypisuje klawiszowi F2 funkcj\u0119 zapisywania<br \/>:1,5 s\/word1\/word2 #zmiana w liniach od 1 do 5 ci\u0105gu word1 na word2<br \/>:2,$norm i* #wstaw * na pocztku od lini 2 do ostatniej<br \/>:%norm A6 #wstaw 6 na ko\u0144cu ka\u017cdej lini<br \/>:$norm 6o #dodaj 6 pustych lini<br \/>:%norm Rwyraz #nadpisz pierwsze znaki ka\u017cdej lini slowem wyraz<br \/>:% s\/&#8221;\/\/g #wywalenie cudzys\u0142owia w ca\u0142ej lini &#8211; g, dla wszystkich wierszy &#8211; %<\/div>\n<\/div>\n<p><a href=\"http:\/\/rayninfo.co.uk\/vimtips.html\" target=\"_blank\" rel=\"nofollow noopener\">strona z przyk\u0142adami<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>VIM\/usr\/share\/vim\/vim63\/colors schematy kolor\u00f3w:color [kolor] #zmiana schematushift + v #zaznaczanie bloku w\/g wierszyctrl + v #zaznaczanie blokuy #zapisanie wcze\u015bniej zaznaczonego blokud #skasowanie wcze\u015bniej zaznaczonego blokup #wklejenie bloku> #przesuni\u0119cie zaznaczonego bloku w prawo< #j.w w lewo Podstawowe komendy edytora Via | i #tryb edycji wprowadzanie tekstu po prawej|lewej stronie kursoraESC #powr\u00f3t do trybu commandW trybie commad h, [&hellip;]\n<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_et_pb_use_builder":"","_et_pb_old_content":"","_et_gb_content_width":"","footnotes":""},"categories":[4],"tags":[58],"class_list":["post-140","post","type-post","status-publish","format-standard","hentry","category-sciaga-admina","tag-linux-vim"],"_links":{"self":[{"href":"https:\/\/www.antynet.pl\/index.php\/wp-json\/wp\/v2\/posts\/140","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.antynet.pl\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.antynet.pl\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.antynet.pl\/index.php\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.antynet.pl\/index.php\/wp-json\/wp\/v2\/comments?post=140"}],"version-history":[{"count":1,"href":"https:\/\/www.antynet.pl\/index.php\/wp-json\/wp\/v2\/posts\/140\/revisions"}],"predecessor-version":[{"id":202,"href":"https:\/\/www.antynet.pl\/index.php\/wp-json\/wp\/v2\/posts\/140\/revisions\/202"}],"wp:attachment":[{"href":"https:\/\/www.antynet.pl\/index.php\/wp-json\/wp\/v2\/media?parent=140"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.antynet.pl\/index.php\/wp-json\/wp\/v2\/categories?post=140"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.antynet.pl\/index.php\/wp-json\/wp\/v2\/tags?post=140"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}