[ zurück ] [ Inhalt ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ 13 ] [ 14 ] [ 15 ] [ A ] [ weiter ]

Debian-Referenz
Kapitel 11 - Editoren


11.1 Populäre Editoren

Linux bietet viele Alternativen für Texteditoren in der Konsole, unter anderen:

Verwenden Sie update-alternatives --config editor, um den Standardeditor zu wechseln. Viele Programme nutzen auch die Umgebungsvariablen EDITOR oder VISUAL um zu entscheiden, welcher Editor genutzt wird. Vergleichen Sie Editor, Abschnitt 4.3.5.

Einige bemerkenswerte X-basierte Texteditoren:

Diese X-basierten Kommandos nutzen Standardoptionen wie -fn a24, was das Leben für ältere Leute wie mich einfacher macht :) Vergleiche X-Client Programme, Abschnitt 9.4.4.


11.2 Rettungseditoren

Es gibt einige Editoren die sich in /bin/ befinden. Einer von diesen sollte installiert sein, um das Editieren von Dateien zu vereinfachen, wenn auf /usr/ nicht zugegriffen werden kann.


11.3 Emacs und Vim


11.3.1 Vim Hinweise

Lesen Sie das "VIM - main help file" Dokument durch Drücken von <F1> während das Programm läuft.

     <F1>           Hilfe
     <Esc>          Zurück zum normalen Modus
     V              Visueller Modus
     i              Eingabemodus
     :              Kommandozeilen Kommandos
     :set tw=72     Setzen der Textbreite auf 72
     <F11>          Eingabe- (Paste) Modus
     :r! date -R    Einfügen des Datums entsprechend RFC-822
     qa             Aufnahme der Tastenanschläge in Register a
     q              Beenden der Aufnahme
     @a             Ausführen der Tastenanschläge aus Register a
     :edit text.txt Editieren einer anderen Datei text.txt
     :wnext         Sichern der Datei und bearbeiten der nächsten

q und @ können für einfache Makroaufnahmen und zum Abspielen genutzt werden. Um beispielsweise ein Makro zu erzeugen, das HTML Italic Tags um das Wort unter dem Cursor einfügt, kann qii<i>^[ea</i>^[q (wobei ^[ die ESC Taste ist) genutzt werden. Die Eingabe von @i beim Start eines Wortes fügt <i> und </i> ein.

Vergleichen Sie auch Benutzung von GnuPG mit Vim, Abschnitt 14.4.2.


11.3.2 Emacs Hinweise

     <F1>                Hilfe
     <F10>               Menü
     C-u M-! date -R     Einfügen des Datums entsprechend RFC-822

11.3.3 Starten des Editors

     Starten des Editors:                   emacs Datei  vim Datei
     Starten mit vi Kompatibilität:                      vim -C
     Starten ohne vi Kompatibilität:                     vim -N
     Starten mit einkompilierten Standards: emacs -q     vim -N -u NONE

11.3.4 Zusammenfassung der Editorkommandos (Emacs, Vim)

     beenden:                        C-x C-c         :qa /:wq /:xa /:q!
     zurücksetzen/Kommandomodus:     C-g             <Esc>
     zurück (links):                 C-b             h
     vorwärts (rechts):              C-f             l
     nächstes (herunter):            C-n             j
     vorheriges (hoch):              C-p             k
     StArt der Zeile (^):            C-a             0
     Ende der Zeile ($):             C-e             $
     mehrere Kommandos:              C-u nnn cmd     nnn cmd
     mehrere Kommandos:              M-Ziffer cmd
     abspeichern:                    C-x C-s         :w Datei
     zum Anfang des Puffers:         M-<             1G
     zum Ende des Puffers:           M->             G
     eine Seite vorwärts scrollen:   C-v             ^F
     1/2 Seiten vorwärts scrollen:                   ^D
     eine Zeile vorwärts scrollen:                   ^E
     eine Seite rückwärts scrollen:  M-v             ^B
     1/2 Seiten rückwärts scrollen:                  ^U
     eine Zeile rückwärts scrollen:                  ^Y
     das andere Fenster scrollen:    M-C-v
     unter Cursor löschen:           C-d             x
     löschen bis zum Zeilenende:     C-k             D
     inkrementelle Suche vorwärtS:   C-s
     inkrementelle Suche Rückwärts:  C-r
     vorwärtS suchen:                C-s Enter       /
     Rückwärts suchen:               C-r Enter       ?
     inkr. Suche nach reg. Ausd.:    M-C-s
     inkr. Suche rückw. n. reg. Ausd.: M-C-r
     suche nach regulären Ausdruck:  M-C-s Enter     /
     suche rückw. nach reg. Ausd.:   M-C-r Enter     ?
     Hilfe:                          C-h C-h         :help
     Hilfe Apropos:                  C-h a
     Hilfe zu Tastenzuordnungen:     C-h b           :help [key]
     Info Seiten anzeigen:           C-h i
     Hilfe Hauptmodus:               C-h m
     Hilfe Tutorial:                 C-h t           :help howto
     rückgängig:                     C-_             u
     nochmals tun (redo):            C-f             ^R
     markiere die Cursorposition:    C-@             m{a-zA-Z}
     wechseln der Markierung und Pos.: C-x C-x
     springe zur Mark. in akt. Datei:                '{a-z}
     springe zur Mark. in jeder Datei:               '{A-Z}
     Bereich kopieren:               M-w             {visual}y
     Bereich entfernen:              C-w             {visual}d
     Bereich einfügen:               C-y             
     einfügen des gelöschten Textes: M-y             p
     in Großbuchstaben umwandeln:    C-x C-u         {visual}U
     in Kleinbuchstaben umwandeln:   C-x C-l         {visual}u
     einfügen spezieller Zeichen:    C-q octalnum/keystroke  
                                                     ^V decimal/keystroke
     ersetzen:                       M-x replace-string  :%s/aaa/bbb/g
     ersetzen regulärer Ausdrücke:   M-x replace-regexp  :%s/aaa/bbb/g
     vor Ersetzen nachfragen:        M-%                 :%s/aaa/bbb/gc
     vor Ersetzen nachfragen:        M-x query-replace
     vor Ersetzen reg. Aus. nachfragen: M-x query-replace-regexp
     Datei öffnen:                   C-x C-f         :r file
     Datei sichern:                  C-x C-s         :w
     alle Puffer speichern:          C-x s           :wa
     speichern unter:                C-x C-w file    :w file
     nach Puffer fragen:             C-x b
     Puffer anzeigen:                C-x C-b         :buffers
     Read-only Flag wechseln:        C-x C-q         :set ro
     nach Puffer fragen und löschen: C-x k
     vertikal aufteilen:             C-x 2           :split
     horizontal aufteilen:           C-x 3           :vsplit (ver. 6)
     in anderes Fenster wechseln:    C-x o           ^Wp
     entfernen dieses Fensters:      C-x 0           :q
     entfernen anderer Fenster:      C-x 1           ^Wo
     Shell im Hintergrund starten:   M-x compile
     Shell im Hintergrund killen:    M-x kill-compilation
     make starten:                                   :make Makefile
     Fehlermeldungen überprüfen:     C-x`            :echo errmsg
     Shell starten und aufzeichnen:  M-x shell       :!script -a tmp
     ...clean BS, ...                                :!col -b <tmp >record
     ...sichern/abrufen der Aufz.:   C-x C-w record  :r record
     Shell starten:                  M-! sh          :sh
     Kommando starten:               M-! Kmd         :!Kmd
     Kommando starten und einfügen:  C-u M-! Kmd     :r!Kmd
     Filter starten:                 M-| Datei       {visual}:w Datei
     Filter starten und einfügen:    C-u M-| Filter  {visual}:!Filter
     Option anzeigen:                                :se[t] {Option}?
     Option auf Standard zurücksetzen:               :se[t] {Option}&
     boolsche Option zurücksetzen:                   :se[t] no{Option}
     boolsche Option ändern:                         :se[t] inv{Option}
     Textumbruch bei Spalte 72:                      :se tw=72
     keinen Zeilenumbruch:                           :se tw=0
     automatische Einrückung:                        :se ai
     Tabulatoren expandieren:                        :se et
     Kommentar angeben (E-Mail):                     :se comments=n:>,n:\|
     
     GDB starten                     M-x gdb
     beschreibe den GDB Mode         C-h m
     eine Zeile ausführen            M-s
     nächste Zeile                   M-n
     eine Anweisung ausführen (stepi) M-i
     aktuelle Funktion beenden       C-c C-f
     weiter                          M-c
     zur übergeordneten Funktion     M-u
     zur untergeordneten Funktion    M-d
     copy number from point, insert at the end
                                     C-x &
     setze einen Haltepunkt          C-x SPC

11.3.5 Vim Konfiguration

Um alle Vim Eigenschaften und Syntax Highlighting zu nutzen, müssen die folgenden Zeilen in ~/.vimrc oder /etc/vimrc eingefügt werden:

     set nocompatible
     set nopaste
     set pastetoggle=<f11>
     syn on

Der Paste Modus unterbindet Probleme mit der automatischen Einrückung bei Markieren-und-Einfügen Operationen in konsolenbasierten Terminals. Dies bewirkt mehr als ein einfaches ":set noai".

Vergleichen Sie Benutzung von GnuPG mit Vim, Abschnitt 14.4.2 für die GnuPG Integration.


11.3.6 Ctags

Starten Sie apt-get install exuberant-ctags und ctags auf den Quelldateien. Geben Sie :tag Funktionsname in Vim ein, um zur Zeile zu springen, wo Funktionsname beginnt. Die Tags funktionieren mit C, C++, Java, Python und vielen anderen Sprachen.

Emacs besitzt die gleichen ctags Fähigkeiten.


11.3.7 Konvertierung eines mit Syntax-Highlighting versehenen Schirms in HTML

so \$VIMRUNTIME/syntax/2html.vim vom Vim Kommandomodus konvertiert hervorgehobenen Text nach HTML. Sichern Sie dies mit :w Datei.html und :q. Dies ist nützlich für C Code, etc.


11.3.8 Aufteilen des Bildschirms mit vim

vim kann mehrere Dateien in mehrfach aufgeteilten Bildschirmen editieren. Geben Sie :help usr_08.txt für Details ein.

Um die Bildschirmdarstellung für verschiedene Dateien aufzuteilen, ist am vi Kommandoprompt folgendes einzugeben:

     :split andere-Datei
     :vsplit andere-Datei

Beim Shell-Prompt führt

     $ vi -o Datei1.txt Datei2.txt   # horizontale Aufteilung
     $ vi -O Datei1.txt Datei2.txt   # vertikale Aufteilung

zu einem Mehr-Fenster vi.

     $ vimdiff Datei.txt~ Datei.txt   # überprüfen der Änderungen von
     $ vimdiff Datei.en Datei.fr      #  Datei.txt bzw. der Übersetzung
     $ gvimdiff Datei.txt~ Datei.txt  # in X

ermöglicht einen schönen Blick auf die Unterschiede zwischen der ursprünglichen und der Backup Datei. In SGML erkennt es Tags, so dass der Vergleich von Übersetzungen in diesem Modus sehr gut funktioniert.

Spezielle Cursor Bewegungen mit Strg-W:

     Strg-W +      vergrößern des Fensters
     Strg-W -      verkleinern des Fensters
     Strg-W h      wechseln ins linke Fenster
     Strg-W j      wechseln in untere Fenster
     Strg-W k      wechseln ins obere Fenster
     Strg-W l      wechseln ins rechte Fenster
     ...

Nutzen Sie folgendes zur Kontrolle (Synchronisation) des Bildschirm Scrollens:

     :set scrollbind
     :set noscrollbind

[ zurück ] [ Inhalt ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ 13 ] [ 14 ] [ 15 ] [ A ] [ weiter ]

Debian-Referenz

1.07-6, Mit 23. Jun 2004, 21:21:03 UTC

Osamu Aoki osamu@debian.org
Übersetzer: Jens Seidel tux-master@web.de
Autoren, Abschnitt A.1