
% VIM Quick Reference Card
% Copyright (c) 2002 Laurent Gregoire.
% TeX Format

% Note: Comment the following line and Uncomment the three next for PDF
% generation (command is pdftex vimqrc.tex).

% Swedish translation by Par Karlsson

\input outopt.tex

%\pdfoutput=1
%\pdfpageheight=21cm
%\pdfpagewidth=29.7cm

% Font definitions
\font\bigbf=cmbx12
\font\smallrm=cmr8
\font\smalltt=cmtt8
\font\tinyit=cmmi5

\def\title#1{\hfil{\bf #1}\hfil\par\vskip 2pt\hrule}
\def\cm#1#2{{\tt#1}\dotfill#2\par}
\def\cn#1{\hfill$\lfloor$ #1\par}
\def\sect#1{\vskip 0.7cm {\it#1}\par}

% Characters definitions
\def\bs{$\backslash$}
\def\backspace{$\leftarrow$}
\def\ctrl{{\rm\char94}\kern-1pt}
\def\enter{$\hookleftarrow$}
\def\eller{\thinspace{\tinyit{eller}}\thinspace}
\def\key#1{$\langle${\rm{\it#1}}$\rangle$}
\def\rapos{\char125}
\def\lapos{\char123}
\def\bs{\char92}
\def\tild{\char126}

% Three columns definitions
\parindent 0pt
\nopagenumbers
\hoffset=-1.56cm
\voffset=-1.54cm
\newdimen\fullhsize
\fullhsize=27.9cm
\hsize=8.5cm
\vsize=19cm
\def\fullline{\hbox to\fullhsize}
\let\lr=L
\newbox\leftcolumn
\newbox\midcolumn
\output={
  \if L\lr
    \global\setbox\leftcolumn=\columnbox
    \global\let\lr=M
  \else\if M\lr
    \global\setbox\midcolumn=\columnbox
    \global\let\lr=R
  \else
    \tripleformat
    \global\let\lr=L
  \fi\fi
  \ifnum\outputpenalty>-20000
  \else
    \dosupereject
  \fi}
\def\tripleformat{
  \shipout\vbox{\fullline{\box\leftcolumn\hfil\box\midcolumn\hfil\columnbox}}
  \advancepageno}
\def\columnbox{\leftline{\pagebody}}

% Card content
% Header
%\hrule\vskip 3pt
\title{VIM SNABBREFERENSKORT}

\sect{Grundl\"aggande f\"orflyttning}
\cm{h l k j}{tecken v\"anster, h\"oger, rad upp, ned}
\cm{b w}{ord/symbol v\"anster, h\"oger}
\cm{ge e}{slutet p{\aa} ord/symbol v\"anster, h\"oger}
\cm{\lapos\ \rapos}{b\"orjan p{\aa} f\"oreg{\aa}ende,  n\"asta paragraf}
\cm{( )}{b\"orjan p{\aa} f\"oreg{\aa}ende, n\"asta mening}
\cm{0 gm}{b\"orjan, mitten p{\aa} rad}
\cm{\^\ \$}{f\"orsta, sista tecknet p{\aa} rad}
\cm{$n$G $n$gg}{rad $n$, normalt den sista, f\"orsta}
\cm{$n$\%}{$n$ procent av filen {\it($n$ m{\aa}ste anges)}}
\cm{$n|$}{kolumn $n$ p{\aa} nuvarande rad}
\cm{\%}{matcha klammer, parentes, kommentar, {\tt\#define}}
\cm{$n$H $n$L}{rad $n$ fr{\aa}n start, botten p{\aa} f\"onster}
\cm{M}{mittenrad p{\aa} f\"onster}

\sect{Ins\"attning \& \"overskrivning $\to$ ins\"attningsl\"age}
\cm{i a}{s\"att in f\"ore, efter mark\"or}
\cm{I A}{s\"att in vid b\"orjan, slut p{\aa} rad}
\cm{gI}{s\"att in text i f\"orsta kolumnen}
\cm{o O}{\"oppna ny rad nedanf\"or, ovanf\"or nuvarande rad}
\cm{r$c$}{byt ut tecken under mark\"or med $c$}
\cm{gr$c$}{som {\tt r}, men utan att p{\aa}verka layout}
\cm{R}{byt ut tecken med b\"orjan vid mark\"or}
\cm{gR}{som {\tt R}, men utan att p{\aa}verka layout}
\cm{c$m$}{\"andra text p{\aa} f\"orflyttningskommando $m$}
\cm{cc\eller S}{\"andra nuvarande rad}
\cm{C}{\"andra till slutet p{\aa} rad}
\cm{s}{\"andra ett tecken och s\"att in}
\cm{\tild}{\"andra versal/gemen och flytta fram mark\"or}
\cm{g\tild{$m$}}{\"andra versal/gemen p{\aa} f\"orfl.-kommando $m$}
\cm{gu$m$ gU$m$}{gemen, versal text p{\aa} f\"orflyttning $m$}
\cm{$<$$m$ $>$$m$}{v\"axla v\"anster, h\"oger text p{\aa} f\"orflyttning $m$}
\cm{$n$$<$\kern-3pt$<$ $n$$>$\kern-3pt$>$}{v\"axla $n$ rader v\"anster, h\"oger}

\sect{Borttagning}
\cm{x X}{ta bort tecken under, f\"ore mark\"or}
\cm{d$m$}{ta bort text p{\aa} f\"orflyttningskommando $m$}
\cm{dd D}{ta bort nuvarande rad, till slutet p{\aa} rad}
\cm{J gJ}{f\"orbind denna rad med n\"asta, utan mellanrum}
\cm{:$r$d\enter}{ta bort omr{\aa}de $r$ rader}
\cm{:$r$d$x$\enter}{ta bort omr{\aa}de $r$ rader till register $x$}

\sect{Ins\"attningsl\"age}
\cm{\ctrl V$c$ \ctrl V$n$}{s\"att in tecken $c$ bokstavligen, decimalv\"arde $n$}
% \cm{\ctrl V$n$}{s\"att in decimal value of tecken}
\cm{\ctrl A}{s\"att in tidigare insatt text}
\cm{\ctrl @}{som {\tt\ctrl A} och avsluta ins\"attning $\to$ kommandol\"age}
\cm{\ctrl R$x$ \ctrl R\ctrl R$x$}{s\"att in inneh{\aa}ll i register $x$, bokstavligen}
\cm{\ctrl N \ctrl P}{textkomplettering f\"ore, efter mark\"or}
\cm{\ctrl W}{ta bort ord f\"ore mark\"or}
\cm{\ctrl U}{ta bort alla insatta tecken i nuvarande rad}
\cm{\ctrl D \ctrl T}{v\"axla v\"anster, h\"oger en v\"axelbredd}
\cm{\ctrl K$c_1$$c_2$\eller $c_1$\kern-1pt\backspace$c_2$}{skriv in digraf $\{c_1,c_2\}$}
\cm{\ctrl O$c$}{utf\"or $c$ i tempor\"art kommandol\"age}
\cm{\ctrl X\ctrl E \ctrl X\ctrl Y}{rulla upp, ned}
\cm{\key{esc}\eller \ctrl[}{\"overge redigering $\to$ kommandol\"age}

\sect{Kopiering}
\cm{"$x$}{anv\"and register $x$ f\"or n\"asta ta bort, ryck, s\"att}
\cm{:reg\enter}{visa inneh{\aa}llet i alla register}
\cm{:reg $x$\enter}{visa inneh{\aa}llet i registren $x$}
\cm{y$m$}{ryck texten p{\aa} f\"orflyttningskommando $m$}
\cm{yy\eller Y}{ryck nuvarande rad till register}
\cm{p P}{s\"att register efter, f\"ore mark\"orposition}
\cm{]p [p}{som {\tt p}, {\tt P} med indentering justerad}
\cm{gp gP}{som {\tt p}, {\tt P} l\"amnar mark\"or efter ny text}

\sect{Avancerad ins\"attning}
\cm{g?$m$}{utf\"or rot13-kodning p{\aa} f\"orflyttning $m$}
\cm{$n$\ctrl A $n$\ctrl X}{$+n$, $-n$ till nummer under mark\"or}
\cm{gq$m$}{formattera rader i flyttning $m$ till fast bredd}
\cm{:$r$ce $w$\enter}{centrera rader i omr{\aa}de $r$ till bredd $w$}
\cm{:$r$le $i$\enter}{v\"ansterst\"all rader i omr{\aa}de $r$ m. indentering $i$}
\cm{:$r$ri $w$\enter}{h\"ogerst\"all rader i omr{\aa}de $r$ till bredd $w$}
\cm{!$m$$c$\enter}{filtrera rader i flyttning $m$ genom kommando $c$}
\cm{$n$!!$c$\enter}{filtrera $n$ rader genom kommando $c$}
\cm{:$r$!$c$\enter}{filtrera omr{\aa}de $r$ rader genom kommando $c$}

\sect{Visuellt l\"age}
\cm{v V \ctrl V}{starta/stoppa markering tecken, rader, block}
\cm{o}{byt mark\"orposition med start p{\aa} markering}
\cm{gv}{starta markering p{\aa} f\"oreg{\aa}ende visuall yta}
\cm{aw as ap}{v\"alj ett ord, en mening, en paragraf}
\cm{ab aB}{v\"alj ett block ( ), ett block {\tt\lapos} {\tt\rapos}}

\vskip 1cm
\sect{{\AA}ngra \& repetera kommandon}
\cm{u U}{{\aa}ngra kommando, {\aa}ngra senast \"andrad rad}
\cm{.\thinspace\thinspace\ctrl R}{repetera senaste \"andring, g\"or om senast {\aa}ngrat}
\cm{$n$.\ }{repetera senaste \"andringar med antal utbytt mot $n$}
\cm{q$c$ q$C$}{spela in, l\"agg till skrivna tecken i register $c$}
\cm{q}{stoppa inspelning}
\cm{@$c$}{exekvera inneh{\aa}llet i register $c$}
\cm{@@}{repetera f\"oreg{\aa}ende {\tt @} kommando}
\cm{:@$c$\enter}{exekvera register $c$ som ett {\it Ex} kommando}
\cm{:$r$g/$p$/$c$\enter}{exekvera {\it Ex} kommando $c$ p{\aa} omr{\aa}de $r$}
\cn{d\"ar s\"okstr\"ang $p$ matchar}

\vskip -0.2cm
\sect{Komplex f\"orflyttning}
\cm{- +}{rad upp/ned p{\aa} f\"orsta icke blanka tecken}
\cm{B W}{blankslag-separerat ord v\"anster, h\"oger}
\cm{gE E}{slutet p{\aa} blankslag-separerat ord v\"anster, h\"oger}
\cm{$n$\_}{ned $n-1$ rad p{\aa} f\"orsta icke blanka tecken}
\cm{g0}{b\"orjan p{\aa} {\it sk\"arm} rad}
\cm{g\^\ g\$}{f\"orsta, sista tecken p{\aa} {\it sk\"arm} rad}
\cm{gk gj}{{\it sk\"arm} rad upp, ned}
\cm{f$c$ F$c$}{n\"asta, f\"oreg{\aa}ende f\"orekomst av tecken $c$}
\cm{t$c$ T$c$}{f\"ore n\"asta, f\"oreg{\aa}ende f\"orekomst av $c$}
\cm{; ,}{repetera sista {\tt fFtT}, i motsatt riktning}
\cm{[[ ]]}{b\"orjan av sektion bak{\aa}t, fram{\aa}t}
\cm{[] ][}{slutet p{\aa} sektion bak{\aa}t, fram{\aa}t}
\cm{[( ])}{ej avslutad (, ) bak{\aa}t, fram{\aa}t}
\cm{[\lapos\ [\rapos}{ej avslutad {\tt\lapos}, {\tt\rapos} bak{\aa}t, fram{\aa}t}
\cm{[m ]m}{b\"orjan, slutet p{\aa} bak{\aa}t, fram{\aa}t javametod}
\cm{[\# ]\#}{ej st\"angd {\tt\#if}, {\tt\#else}, {\tt\#endif} bak{\aa}t, fram{\aa}t}
\cm{[* ]*}{b\"orjan, slutet p{\aa} {\tt/* */} bak{\aa}t, fram{\aa}t}

\sect{S\"okning \& substitution}
\cm{/$s$\enter\ ?$s$\enter}{s\"ok fram{\aa}t, bak{\aa}t efter $s$}
\cm{/$s$/$o$\enter\ ?$s$?$o$\enter}{s\"ok fmt, bkt efter $s$ med avsteg $o$}
\cm{n\eller /\enter}{repetera fram{\aa}t senaste s\"okning}
\cm{N\eller ?\enter}{repetera bak{\aa}t senaste s\"okning}
\cm{\# *}{s\"ok bak{\aa}t, fram{\aa}t efter ord under mark\"or}
\cm{g\# g*}{samma, men hitta ocks{\aa} partiella matchningar}
\cm{gd gD}{lokal, global definition av symbol under mark\"or}
\cm{:$r$s/$f$/$t$/$x$\enter}{substituera $f$ med $t$ i omr{\aa}de $r$}
\cn{$x:$ {\tt g}---alla f\"orekomster, {\tt c}---bekr\"afta \"andringar}
\cm{:$r$s $x$\enter}{repetera substitution med ny $r$ \& $x$}

\vskip1cm
\sect{Specialtecken i s\"okm\"onster}
\cm{.\thinspace\thinspace\thinspace\ctrl\ \$}{enskilt tecken, b\"orjan, slutet p{\aa} rad}
\cm{\bs$<$ \bs$>$}{b\"orjan, slutet p{\aa} ord}
\cm{[$c_1$-$c_2$]}{ett enskilt tecken i omr{\aa}de $c_1..c_2$}
\cm{[\ctrl$c_1$-$c_2$]}{ett enskilt tecken ej i omr{\aa}det}
\cm{\bs i \bs I}{en identifierare, exklusive siffror}
\cm{\bs k \bs K}{ett nyckelord, exklusive siffror}
\cm{\bs f \bs F}{ett filnamn, exklusive siffror}
\cm{\bs p \bs P}{ett utskrivbart tecken, exklusive siffror}
\cm{\bs s \bs S}{ett mellanrum, ett icke-mellanrum}
\cm{\bs e \bs t \bs r \bs b}{\key{esc}, \key{tab}, \key{\enter}, \key{$\gets$}}
\cm{\bs = * \bs +}{matcha $0..1$, $0..\infty$, $1..\infty$ av f\"oreg{\aa}ende atomer}
\cm{\bs$|$}{separarera tv{\aa} grenar ($\equiv$ {\it eller})}
\cm{\bs( \bs)}{gruppera m\"onster in i en atom}

\sect{Avsteg i s\"okkommandon}
\cm{$n$\eller +$n$}{$n$ rad ned{\aa}t i kolumn 1}
\cm{-$n$}{$n$ rad upp{\aa}t i kolumn 1}
\cm{e+$n$ e-$n$}{$n$ tecken h\"oger, v\"anster till slutet p{\aa} matchning}
\cm{s+$n$ s-$n$}{$n$ tecken h\"oger, v\"anster t. b\"orjan p{\aa} matchn.}
\cm{;$sc$}{exekvera s\"okkommando $sc$ h\"arn\"ast}

\sect{Markeringar och flyttningar}
\cm{m$c$}{markera nuvarande position med mark\"or $c\in[a..Z]$}
\cm{`$c$ `$C$}{g{\aa} till m\"arke $c$ i nuvarande, $C$ i valfri fil}
\cm{`$0..9$}{g{\aa} till sista avslutsposition}
\cm{`\/`  `\/"}{g{\aa} till position f\"ore hopp, vid senaste redigering}
\cm{`[ `]}{g{\aa} till b\"orjan, slutet p{\aa} tidigare manipulerad text}
\cm{:marks\enter}{skriv ut listan med aktiva mark\"orer}
\cm{:jumps\enter}{skriv ut hopplistan}
\cm{$n$\ctrl O}{g{\aa} till $n^{te}$ \"aldre position i hopplistan}
\cm{$n$\ctrl I}{g{\aa} till $n^{te}$ nyare position i hopplistan}

\sect{Tangentmappning \& f\"orkortningar}
\cm{:map $c$ $e$\enter}{mappa $c\mapsto e$ i normalt \& visuellt l\"age}
\cm{:map!\ $c$ $e$\enter}{mappa $c\mapsto e$ i ins.- \& kmdoradl\"age}
\cm{:unmap $c$\enter\ :unmap!\ $c$\enter}{ta bort mappning $c$}
\cm{:mk $f$\enter}{skriv g\"allande mappingar, inst\"allningar t. fil $f$}
\cm{:ab $c$ $e$\enter}{l\"agg till f\"orkortning f\"or $c\mapsto e$}
\cm{:ab $c$\enter}{visa f\"orkortningar som b\"orjar med $c$}
\cm{:una $c$\enter}{ta bort f\"orkortning $c$}

\sect{Taggar}
\cm{:ta $t$\enter}{hoppa till tagg $t$}
\cm{:$n$ta\enter}{hoppa till $n^{te}$ nyare tagg i lista}
\cm{\ctrl ] \ctrl T}{hoppa till taggen under mark\"or, {\aa}terg{\aa} fr{\aa}n tagg}
\cm{:ts $t$\enter}{lista matchande taggar och v\"alj en f\"or hopp}
\cm{:tj $t$\enter}{hoppa till tagg eller v\"alj en om flera matchar}
\cm{:tags\enter}{skriv tagglista}
\cm{:$n$po\enter\ :$n$\ctrl T\enter}{hoppa tillbaka fr{\aa}n, till $n^{te}$ \"aldre tagg}
% \cm{:$n$po\enter}{jump back from $n^{te}$ older tagg in tagg list}
\cm{:tl\enter}{hoppa till sista matchande tagg}
\cm{\ctrl W\rapos\ :pt $t$\enter}{granska tagg under mark\"or, tagg $t$}
\cm{\ctrl W]}{dela f\"onster och visa tagg under mark\"or}
\cm{\ctrl Wz\eller :pc\enter}{st\"ang tagg-granskningsf\"onster}

\sect{Rullning \& multi-f\"onster}
\cm{\ctrl E \ctrl Y}{rulla rad upp, ned}
\cm{\ctrl D \ctrl U}{rulla en halv sida upp, ned}
\cm{\ctrl F \ctrl B}{rulla sidan upp, ned}
\cm{zt\eller z\enter}{s\"att nuvarande rad vid toppen p{\aa} f\"onster}
\cm{zz\eller z.\ }{s\"att nuvarande rad vid mitten p{\aa} f\"onster}
\cm{zb\eller z-}{s\"att nuvarande rad vid botten p{\aa} f\"onster}
\cm{zh zl}{rulla ett tecken till h\"oger, v\"anster}
\cm{zH zL}{rulla en halv sk\"arm till h\"oger, v\"anster}
\cm{\ctrl Ws\eller :split\enter}{dela f\"onster i tv{\aa}}
\cm{\ctrl Wn\eller :new\enter}{skapa nytt tomt f\"onster}
\cm{\ctrl Wo\eller :on\enter}{g\"or nuvarande f\"onster ett p{\aa} sk\"armen}
\cm{\ctrl Wj \ctrl Wk}{flytta till f\"onster nedanf\"or, ovanf\"or}
\cm{\ctrl Ww \ctrl W\ctrl W}{flytta till f\"onster nedanf\"or, ovanf\"or (wrap)}

\sect{Ex-kommandon (\enter)}
\cm{:e $f$}{redigera fil $f$, s{\aa}vida inte \"andringar har gjorts}
\cm{:e!\ $f$}{redigera fil $f$ (laddar normalt om nuvarande)}
\cm{:wn :wN}{skriv fil och redigera n\"asta, den f\"orra}
\cm{:n :N}{redigera n\"asta, f\"oreg{\aa}ende fil i lista}
\cm{:$r$w}{skriv omr{\aa}de $r$ till nuvarande fil}
\cm{:$r$w $f$}{skriv omr{\aa}de $r$ till fil $f$}
\cm{:$r$w$>$\kern-3pt$>$$f$}{l\"agg till omr{\aa}de $r$ till fil $f$}
\cm{:q :q!}{avsluta o. bekr\"afta, avsluta o. sl\"ang \"andringar}
\cm{:wq\eller :x\eller ZZ}{skriv till nuvarande fil och avsluta}
\cm{\key{up} \key{down}}{{\aa}terkalla kommandon b\"orja m. g\"allande}
\cm{:r $f$}{s\"att in inneh{\aa}llet i fil $f$ nedanf\"or mark\"or}
\cm{:r!\ $c$}{s\"att in resultat av kommando $c$ nedanf\"or mark\"or}
\cm{:all}{\"oppna ett f\"onster f\"or varje fil i argumentlistan}
\cm{:args}{visa argumentlistan}

\sect{Ex-omr{\aa}den}
\cm{, ;\ }{separerar tv{\aa} raders nummer, s\"att till f\"orsta rad}
\cm{$n$}{ett absolut radnummer $n$}
\cm{.\thinspace\thinspace\thinspace\$}{den nuvarande raden, den sista raden i filen}
\cm{\% *}{hela filen, visuell yta}
\cm{'$t$}{position f\"or mark\"or $t$}
\cm{/$p$/ ?$p$?}{n\"asta, f\"oreg{\aa}ende rad d\"ar $p$ matchar}
\cm{+$n$ -$n$}{$+n$, $-n$ till det f\"oreg{\aa}ende radnumret}

\sect{Blandat}
\cm{:sh\enter\ :!$c$\enter}{starta skal, exekvera kommando $c$ i skalet}
\cm{K}{sl{\aa} upp nyckelord under mark\"or med {\tt man}}
\cm{:make\enter}{starta {\tt make}, l\"as fel och hoppa till f\"orsta}
\cm{:cn\enter\ :cp\enter}{visa det n\"asta, f\"oreg{\aa}ende felet}
\cm{:cl\enter\ :cf\enter}{lista alla fel, l\"as fel fr{\aa}n fil}
\cm{\ctrl L \ctrl G}{rita om sk\"arm, visa filnamn och position}
\cm{g\ctrl G}{visa mark\"or kolumn, rad, och teckenposition}
\cm{ga}{visa A{\smallrm SCII}-v\"arde f\"or tecken under mark\"or}
\cm{gf}{\"oppna fil vars filnamn \"ar under mark\"or}
\cm{:redir$>$$f$\enter}{omrikta resultat till fil $f$}
\cm{\ctrl @ \ctrl K \ctrl \_\ \bs}{oanv. tangenter, tillg. f\"or mappning}

% Footer
\def\translator{P\"ar Karlsson}
\vfill \hrule\smallskip
{\smallrm Det h\"ar kortet f{\aa}r distribueras fritt under villkoren f\"or 'GNU general public license' --- Copyright \copyright\ {\oldstyle 2002} Laurent Gr\'egoire
$\langle${\smalltt laurent.gregoire@icam.fr}$\rangle$ --- v1.3 ---
F\"orfattaren tar inte p{\aa} sig n{\aa}got ansvar f\"or n{\aa}gra fel p{\aa} detta kort. Den senaste versionen kan hittas p{\aa} {\smalltt http://tnerual.eriogerg.free.fr/}

Svensk \"overs\"attning av \translator\ $\langle${\smalltt feinorgh@swipnet.se}$\rangle$}
% Ending
\supereject
\if L\lr \else\null\vfill\eject\fi
\if L\lr \else\null\vfill\eject\fi
\bye

% EOF
