Základny

Poznámka ve vicku: znak uvozovka

  • spustit: vi a/nebo vim (view readonly režim)
  • POZOR, editor je modální, má režimy, “je ve stavu”
  • opuštení editoru: viz ukazkové EX1 příkazy v násl obrazku:

rezimy

                    VISUAL                       EDIT                      
                    --------------               --------------------------  
                   /              \             /                          \
                   |              |             |backspace                 |
                   |              |             |vim umi sipky...          |
                   |Odstavec      |             |                          |
                   |ods ta vec.   |             |                          |
                   |              |             |                          |
                   |              |------------>|                          |
                   |              | i nsert     |                          |
prompt$ vi file -->|              | r eplace    |                          |
                   |^radek$       | O pen       |                          |
                   |0dalsi  radek$| o pen       |                          |
                   |              | c hange     |                          |
                   |      k       |             |                          |
                   |     h l      |             |                          |
                   |      j       |<-----ESC----|                          |
                   |              |             |                          |
                   |              |             |                          |
                   \G____________/              \_________________________/ 
                    :                                                      
                    |                                                      
                    |odskok do EX                                        
                    V                                                      
                                                                           
                    :w [file] "zapis/uloz, pripadne do jineho              
                    :x [file] "uloz a ukonci                               
                    :q        "ukonci editor, zepta se                     
                    :q!       "ukonci a neptej se                          
                    :e file   "nacti jiny soubor
                    :n f1 f2  "nacti jine soubory
                    :n        "nacti dalsi soubor
                                                                           
                                                                           
prompt$ ex file --> :prikazovy EX rezim (trvale)                           
                    :vi"sual "jdi do VISUAL rezimu

VISUAL MOVE

  • kursor blikající obdélník, aktuální pozice je jeho levá hrana
  • směr vpřed: ke konci souboru, malé písmeno
  • směr zpět: k začátku, VELKÉ PÍSMENO

MOVE příkaz pouze přesunuje aktuální pozici kursoru, původní a nová pozice tvoří rozsah (range).

  • šipky (posun o znak)
  • h doleva, j dolů, k nahoru, l doleva
  • w word, b back-word, e end-word
  • W word, B back-word, E end-word velké slovo, vyjímka z pravidla malé/VELKé písmeno
  • } { skok o odstavec (oddělovač prázdný řádek)
  • 0 ^ začátek řádku, $ konec řádku
  • G skok na řádek/konec souboru
  • fchar skok na znak
  • % skok mezi párovými znaky (závorky)

příkazu může předcházet číslo, např:

  • 3} skok o 3 odstavce
  • 3w skok o tri slova
  • 2l posun o dva znaky
  • 1G skok na 1řádek

položení značky mark:

  • mchar kde char je a-z
  • 'char skok na značku char viz mark
  • '' skok na poslední posizi

Pohyb, rolování:

  • ^F ^B PgDn PgUp, vim7.x umí i rolovat mysi
  • High Midle Low přesune kursor nahoru/doprostred/dolů

VISUAL EDIT

editační příkazy se získají kombinací MOVE a insert, replace a následujících operátorů :

  • d elete (Cut)
  • y ank (Copy), Paste je pak příkaz p P
  • c hange
  • > shift doleva
  • < shift doprava
  • ! filtr přes příkaz (popen)

Některé kombinace mají jednopísmenkovou builtin variantu:

  • x == dl vymaž znak vpravo
  • X == dh vymaž znak vlevo
  • D == d$ vymaž do konce řádku
  • d0 vymaz do zacatku radku
  • dG vymaz zbytek souboru
  • d1G vymaz do zacatku souboru
  • d3} vymaz nasledujicí 3 odstavce
  • dw dW de … dá se pokračovat

Totéž se dá kombinovat s y místo d

  • Y == y$ napastuj zbytek řadku

Neexistuje ale MOVE konstrukce pro označení celého řadku! toho se dosáhne jednoduše: zdvojíme operátor:

  • dd delete řádku
  • 3dd delete 3 řádků
  • yy kopie ř
  • cc změna ř
  • >> << shift radku
  • !! přefiltrování radku
  • 1G + !G přefiltrování celého souboru (edit. bufferu)

Každý výmaz/kopie (d y) se uloží do bufferu/schránky, ze kterého se vytahuje pomocí put (za kurzor) a Put (před):

  • ddp ddP přehození řádku
  • yyp yypppp yy3p kopirování řadku
  • xp přehození znaku

Poslední změna se dá opakovat pomocí . (tečka)

  • ineco napisuESC pak se posunuje kam je treba a pomocí . opakuju poslední insert
  • dd a opakovaným . mažu řadky

Další EDIT příkazy

  • I == ^i začni vkládat na začátku řádku
  • a == li insert za znakem
  • A == $a insert za koncem řádku
  • s == xl substituce
  • R == r$ replace do konce řádku
  • C == c$ change
  • cw oprav následující slovo
  • cc oprav řádek
  • open Open nový řádek
  • Join spoj řádek s následujícím/i

Vyhoda c je v tom, že nemusíme nejdřív mazat a poté vložit něco jiného Hledání:

  • /regexp vpřed/ke konci
  • ?regexp vzad/k začátku
  • n N najdi další výskyt

Existují schránky “a“z (zpravidla použity s d y a p) obsah se pamatuje při změně editovaného souboru – lze snad přenášet mezi soubory

EX1

Note: příkaz se ukončí ENTER

  • :xit ulož a ukonči
  • :edit načti jiný soubor
  • :e! znovu načti tejný soubor (zahoď změny)
  • :write [soubor] ulož
  • :quit ukonči
  • :read vlož obsah souboru
  • :r !program vlož výstup programu
  • :shell odskok do shell – neukončujte editor!
  • !program arg1 arg2… proveď jeden příkaz v shellu, neplést s operátorem ! ve VISUAL!

S výhodou lze použít znaku % (jméno současného souboru) # jméne předchozího, např.:

  • w %.save zapiš file do file.save
  • :!cp % %.save kopie pomocí cp příkazu
  • :e# vrat se k předchozímu souboru, Note: vim umí ^Window

konfigurace

:set příkazy do souboru $HOME/.vimrc a/nebo $HOME/.exrc viz vimrc

vimref.txt · Last modified: 2016/04/29 22:16 (external edit)
CC Attribution-Noncommercial-Share Alike 4.0 International
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0