Files
2024-10-14 17:00:20 +02:00

241 lines
8.6 KiB
TeX
Executable File

\section{VI Editor}
\subsection{Konfiguration}
\begin{justify}
Die Einstellungen f"ur den VI Editor k"onnen global in der Datei {\ttfamily /etc/vimrc} oder f"ur jeden Benutzer in der Datei {\ttfamily ~/.vimrc} vorgenommen werden. Weitere Informationen "uber die vimrc gibt es hier: \url{https://www.linode.com/docs/tools-reference/tools/introduction-to-vim-customization/}
\listBash
\begin{lstlisting}[captionpos=b, caption=Beispiel vimrc]
" Kommentarzeile
" Syntax Color einschalten
syntax on
set nowrap
" Color config, possible colors
" black, blue, cyan, gra, grey, green, magenta, red, white, yellow, brown
" DarkBlue, DarkGreen, DarkCyan, DarkRed, DarkMagenta, DarkYellow
" LightGray, LightGrey, DarkGray, DarkGrey, LighBlue, LightBlue, LightCyan
" LightRed, LightMagenta, LightYellow
" highlight groups= comment, constant, normal, nontext, special, cursor
hi normal ctermfg=white ctermbg=black guifg=white guibg=black
hi nontext ctermfg=blue ctermbg=black guifg=blue guibg=black
hi comment ctermfg=green ctermbg=white
" Backup
set backup
set backupdir=~/tmp
" swap file
set dir=~/tmp
" show line numbers
set number
" show editing mode (insert/replace) on the last line
set showmode
" highlight matching brackets
set showmatch
" make searches case insensitive
set ignorecase
" Tab size (Anzeige und Plazierung)
set tabstop=3
" show cursor line and column in the status line
set ruler
" color scheme, files under /usr/share/vim/vim72/colors
color desert
\end{lstlisting}
%-------------------------------------------------------------------------------
% Section: Starten
%-------------------------------------------------------------------------------
\newpage
\subsection{Starten}
Den Editor {\ttfamily vi} kann man mit verschiedenen Optionen "offnen.
\begin{table}[ht]
\begin{tabular}{p{2,5cm}p{13,5cm}} % l => Text left, c => center, r => right, p => zeilenumbruch
\rowcolor{hellgrau}\emph{\textbf{Kommando}} & \emph{\textbf{Beschreibung}}\\
\hline
\hline
vi & Ohne Datei starten\\
vi <datei> & Starten mit der angegebenen Datei\\
vi +<datei> & Es wird in einer Kopie gearbeitet und erst bei dem beenden des Editors wird die Datei geschrieben\\
vi -r<datei> & Die Bearbeitung wird nach einem Absturz an der gleichen Stelle fortgesetzt\\
vi -R<datei> & Die Datei wird schreibgesch"utzt ge"offnet\\
\end{tabular}
\caption{Starten vi}
\end{table}
%-------------------------------------------------------------------------------
% Subsesction: Befehle
%-------------------------------------------------------------------------------
\subsection{Befehle}
Folgende Befehle gibt es im VI-Editor. Dieses ist aber nur ein Ausschnitt der Befehle.
\begin{flushleft}
\textbf{Speichern und Beenden}
\end{flushleft}
\begin{table}[ht]
\begin{tabular}{p{2,5cm}p{13,5cm}} % l => Text left, c => center, r => right, p => zeilenumbruch
\rowcolor{hellgrau}\emph{\textbf{Kommando}} & \emph{\textbf{Beschreibung}}\\
\hline
\hline
:q & Editor beenden\\
:q! & Editor beenden ohne zu speichern\\
:w & Datei speichern\\
:w! & Speichern erzwingen\\
:wq oder ZZ & Speichern und beenden\\
<strg> + z & Shell starten, zur"uck mit {\ttfamily fg}\\
\end{tabular}
\caption{Speichern und Beenden}
\end{table}
%---------- Kopieren ----------
\begin{flushleft}
\textbf{Kopieren}
\end{flushleft}
\begin{table}[ht]
\begin{tabular}{p{2,5cm}p{13,5cm}} % l => Text left, c => center, r => right, p => zeilenumbruch
\rowcolor{hellgrau}\emph{\textbf{Kommando}} & \emph{\textbf{Beschreibung}}\\
\hline
\hline
yy & Kopiert die aktuelle Zeile in den Puffer\\
ny & Kopiert n+1 Zeilen in den Puffer\\
yw & Kopiert ein Wort in den Buffer\\
\end{tabular}
\caption{Kopieren}
\end{table}
\newpage
%---------- Sonstiges ----------
\begin{flushleft}
\textbf{Sonstiges}
\end{flushleft}
\begin{table}[ht]
\begin{tabular}{p{2,5cm}p{13,5cm}} % l => Text left, c => center, r => right, p => zeilenumbruch
\rowcolor{hellgrau}\emph{\textbf{Kommando}} & \emph{\textbf{Beschreibung}}\\
\hline
\hline
u & Undo\\
U & Alle "Anderungen der aktuellen Zeile zur"ucknehmen\\
\end{tabular}
\caption{Sonstiges}
\end{table}
%---------- Navigieren ----------
\begin{flushleft}
\textbf{Navigieren}
\end{flushleft}
\begin{table}[ht]
\begin{tabular}{p{2,5cm}p{13,5cm}} % l => Text left, c => center, r => right, p => zeilenumbruch
\rowcolor{hellgrau}\emph{\textbf{Kommando}} & \emph{\textbf{Beschreibung}}\\
\hline
\hline
G & An das Ende springen\\
1G & In die erste Zeile Springen\\
0 & An dem Anfang der Zeile springen\\
\verb|^| & An dem Anfang der Zeile springen\\
\$ & An das Ende der Zeile springen\\
b & An den Anfang des letzten Wortes springen\\
w & An den Anfang des n"achsten Wortes springen\\
e & An das Ende des letzten Wortes springen\\
h & Ein Zeichen nach links\\
j & Eine Zeile nach unten\\
k & Eine Zeile nach oben\\
l & Ein Zeichen nach rechts\\
nG & n-te Zeile der Datei\\
H & Die erste Zeile des Bildschirms\\
+ & Die n"achste Zeile des Textanfangs\\
- & Die vorgerige Zeile des Textanfangs\\
( & Satzanfang\\
) & Satzende\\
\verb|{| & Absatzanfang\\
\verb|}| & Absatzende\\
\verb|[| & Am Anfang der Datei springen\\
\verb|]| & Am Ende der Datei springen\\
<strg> + u & Nach oben bl"attern\\
<strg> + d & Nach unten bl"attern\\
L & In der letzten Zeile der Bildschirmausgabe springen\\
\end{tabular}
\caption{Navigieren}
\end{table}
\newpage
%---------- Loeschen ----------
\begin{flushleft}
\textbf{L"oschen}
\end{flushleft}
\begin{table}[ht]
\begin{tabular}{p{2,5cm}p{13,5cm}} % l => Text left, c => center, r => right, p => zeilenumbruch
\rowcolor{hellgrau}\emph{\textbf{Kommando}} & \emph{\textbf{Beschreibung}}\\
\hline
\hline
x & Zeichen l"oschen\\
r & Zeichen ersetzen\\
s & Zeichen ersetzen und in den Bearbeitungsmodus wechseln\\
dd & Aktuelle Zeilen ausschneiden (Zwischenablage)\\
\verb|[|n\verb|]|dd & Die n"achsten [n] Zeilen ausschneiden\\
C & Zeile l"oschen\\
V & Zeile markieren\\
v & Zeichen markieren\\
d & Markierten Text l"oschen\\
cw & Aktuelles Wort ersetzten\\
dw & Aktuelles Wort l"oschen, incl. angeh"angtem Leerzeichen\\
de & Aktuelles Wort l"oschen, "uber Zeile hinaus\\
dl & Zeichen unter Cursor-Position l"oschen\\
dj & Zwei Zeilen l"oschen, Position ist die 1. Zeile\\
dk & Zwei Zeilen l"oschen, Position ist die 2. Zeile\\
:5,10d & Zeilen 5 bis 10 l"oschen\\
:.,\$d & Alle Zeilen l"oschen\\
nx & N-Zeichen ab Cursorposition\\
dL & Bis zum unteren Bildschirmrand l"oschen\\
d) & Bis zum Absatzende l"oschen\\
D & Bis zum Zeilenende l"oschen\\
\end{tabular}
\caption{L"oschen}
\end{table}
\newpage
%---------- Einfuegen ----------
\begin{flushleft}
\textbf{Einf"ugen}
\end{flushleft}
\begin{table}[ht]
\begin{tabular}{p{2,5cm}p{13,5cm}} % l => Text left, c => center, r => right, p => zeilenumbruch
\rowcolor{hellgrau}\emph{\textbf{Kommando}} & \emph{\textbf{Beschreibung}}\\
\hline
\hline
p & Zwischenablage nach aktueller Zeile einf"ugen\\
P & Zwischenablage vor aktueller Zeile einf"ugen\\
R & Text "uberschreiben\\
J & Aktuelle Zeile an das Ende der vorherigen Zeile anh"angen\\
o & Eine Zeile nach der aktuellen Zeile einf"ugen und in den Bearbeitungsmodus wechseln\\
O & Eine Zeile vor der aktuellen Zeile einf"ugen und in den Bearbeitungsmodus wechseln\\
a & Ein Leerzeichen einf"ugen und in den Bearbeitungsmodus wechseln\\
A & Zum Ende der Zeile springen und in den Bearbeitungsmodus wechseln\\
i & In den Bearbeitungsmodus wechseln\\
I & Am Anfang in den Bearbeitungsmodus wechseln\\
s<text> & Ein Zeichen wird durch Text ersetzt\\
S<text> & Eine ganze Zeile wird durch Text ersetzt\\
ns<text> & N-Zeichen werden durch Text ersetzt\\
cw<text> & Ein Wort durch Text ersetzt\\
\end{tabular}
\caption{Einf"ugen}
\end{table}
%---------- Suchen und Ersetzen ----------
\begin{flushleft}
\textbf{Suchen und Ersetzen}
\end{flushleft}
\begin{table}[ht]
\begin{tabular}{p{2,5cm}p{13,5cm}} % l => Text left, c => center, r => right, p => zeilenumbruch
\rowcolor{hellgrau}\emph{\textbf{Kommando}} & \emph{\textbf{Beschreibung}}\\
\hline
\hline
/Tux & Suchen nach dem Wort Tux\\
/ & Suche wiederholen\\
n & Suche wiederholen\\
:s/nach/durch & In aktueller Zeile suchen und ersetzen\\
:1,7s/nach/durch & In Zeile 1 bis 7 suchen und ersetzen\\
:\verb|%|/nach/durch & In allen Zeilen suchen und ersetzen\\
?<nach> & Die Suche erfolgt r"uckw"arts\\
? & Wiederholung r"uckw"arts\\
:s/nach/durch/g & Nur in der aktuellen Zeile wird gesucht und ersetzt\\
\end{tabular}
\caption{Suchen und Ersetzen}
\end{table}
\end{justify}