Manpages

NAME

chr - chr ist ein terminal-basierter Editor

SYNOPSIS

Usage: chr [options] [[+line[,char]] file …] [[+/searchword] file …] [/directory]

Options:
-h, --help Displays help on commandline
options.
--help-all Displays help including Qt
specific options.
-v, --version Displays version
information.
-l, --line-number The line numbers are
displayed
-b, --big-file Open bigger file then 100MB
-w, --wrap-lines <WordWrap|WrapAnywhere|NoWrap> Wrap log lines (NoWrap
Default)
--attributesfile <config> Safe file for attributes,
default ~/.cache/chr/chr.json
-c, --config <config> Load customized config file.
The default if it exist is
~/.config/chr
--syntax-highlighting-theme <name> Name of
syntax-highlighting-theme,
you can list installed themes
with: kate-syntax-highlighter
--list-themes
--disable-syntax disable syntax highlighting

Arguments:
[[+line[,char]] file …] Optional is the line number
and position. Several files
can be opened in multiple
windows.
[[+/searchword] file …] A search word can be set.
[/directory] Or a directory can be
specified to search in the
open dialog.

DESCRIPTION

chr ist ein terminal-basierter Texteditor.

Die Tastenkombinationen ähneln denen der Standard-Editoren in Gnome, KDE und anderen Desktopumgebungen. Dies soll die wechselnde Verwendung von GUI und Terminal Editoren erleichtern.

Das Erscheinungsbild und Verhalten ist eine Kombination aus modernen GUI-Editoren und PC-Textmodus-Editoren der späten 90er Jahre (z. B. Turbo Vision oder edit.com), angepasst an terminalbasierte Arbeitsabläufe.

Schnellstart

Die wichtigen Operationen sind im Menü aufrufbar. Das Menü kann mit F10 oder mit Alt zusammen mit dem hervorgehobenen Buchstaben des Menüpunktes geöffnet werden (z. B. Alt + f).

In Dialogen wird mit Tab zwischen den Elementen navigiert und F6 navigiert zwischen Fenster/Dialogen.

Text kann in den meisten Terminals mit Shift + Pfeiltaste markiert werden. Zum Kopieren wird Ctrl + c verwendet. Einfügen mit Ctrl + v.

Änderungen können mit Ctrl + s gespeichert werden und der Editor mit Ctrl + q verlassen werden.

SHORT CUTS

Shift + Cursor
Markiert Text

Ctrl + a
Markiert den gesamten Text

Ctrl + c / Ctrl + Insert
Kopiert den markierten Text in den Zwischenablage

Ctrl + d
Löscht die aktuelle Zeile

Ctrl + e, hoch/runter/links/rechts
Wechselt das aktive Fenster. Mit den Pfeiltasten gibt man die Richtung des nächsten aktiven Fensters an

Ctrl + e, Ctrl + hoch/runter/links/rechts
Fenstergröße verändern

Ctrl + f
Öffnet den Search-Dialog für die Suche

Ctrl + Backspace
Löscht ein Wort (links vom Cursor)

Ctrl + r
Öffnet den Replace-Dialog zum Suchen und Ersetzen

Ctrl + n
Erstellt ein neues Fenster mit einem leeren Textdokument

Ctrl + q
Programm verlassen

Ctrl + s
Speichern oder Speichern unter...

Ctrl + v / Shift + Insert
Fügt den Inhalt der Zwischenablage an der Cursorposition ein

Ctrl + x / Shift + Delete
Schneidet den markierten Text aus und verschiebt ihn in die Zwischenablage

Ctrl + y
Stellt eine rückgängig gemachte Aktion wieder her

Ctrl + z
Macht eine Aktion rückgängig

Ctrl + Shift + up
Verschiebt die aktuelle Auswahl oder Zeile nach oben

Ctrl + Shift + down
Verschiebt die aktuelle Auswahl oder Zeile nach unten

Ctrl + Left
Springt ein Wort nach links

Ctrl + Shift + Left
Markiert ein Wort nach links

Ctrl + Right
Springt ein Wort nach rechts

Ctrl + Shift Right
Markiert ein Wort nach rechts

Alt + -
Öffnet das Fenster-Menü

Alt + Shift + hoch/runter/links/rechts
Markiert den Text in Blöcken. Das Einfügen der Zwischenablage dupliziert den Text je Zeile. Stimmt beim Einfügen die Anzahl von Zeilen in der Zwischenablage mit der Anzahl der markierten Zeilen überein, werden die Zeilen aus der Zwischenablage auf die markierten Zeilen verteilt.

Alt + Shift + S
Markierte Zeilen werden alphabetisch (lexikografisch nach Codepoint) sortiert

Alt + x
Öffnet eine Kommandozeile. Für weitere Hilfe "help" eintippen

Tab / Shift + Tab
Rückt einen markierten Block um einen Tabulator ein oder entfernt diesen

F3 / Shift + F3
Springt zum nächsten oder vorherigen Suchwort

F4
Wechselt den Markierungsmodus, um das Markieren in Terminals, in denen Markierung mit Shift + Pfeiltasten nicht funktioniert, zu ermöglichen

F6 / Shift + F6
Wechselt das aktive Fenster, mit Shift in umgekehrter Reihenfolge

Esc
Schließt einen aktiven Dialog, ein Menü oder beendet eine Aktion

Menu

File

New
Erstellt ein neues Fenster mit einem leeren Textdokument.

Open
Öffnet einen Dateidialog, um eine zu öffnende Datei auszuwählen.

Save
Speichert den aktuellen Stand der Datei. Sollte der Speicherpfad noch nicht angegeben sein, wird "Save as..." ausgeführt.

Save as...
Öffnet einen Dateidialog, um einen Speicherort aktuellen Stand des Textdokuments auszuwählen und speichert den aktuellen Stand.

Reload
Lädt die aktuelle Datei neu. Dabei werden alle Änderungen verworfen.

Close
Schließt das aktive Fenster.

Quit
Beendet den Editor. Sollte noch ein ungespeichertes Textdokument geöffnet sein, wird zuvor der Speichern-Dialog aufgerufen.

Edit

Cut, Copy, Paste, Select all
Mit den Pfeiltasten und dem gleichzeitigen gedrückt halten der Shifttaste kann Text markiert werden. Der gesamte Text kann mit Select all markiert werden. Dieser markierte Text kann dann mittels Copy kopiert oder mit Cut ausgeschnitten werden. Mit Paste kann dieser Text an der aktuellen Cursorposition wieder eingefügt werden. Befindet sich vor dem Kopieren (oder Ausscheiden) Text in der Zwischenablage, so wird dieser ersetzt.

Diese Funktionen verwenden eine interne Zwischenablage, die unterschiedlichen Inhalt enthält als die ggf. im Terminal als Copy und Paste Befehle verwendete Zwischenablage, da der Editor die System-Zwischenablage nicht zugreifen kann.

Delete Line
Die gesamte Zeile wird gelöscht.

Select Mode
Wechselt den Markierungsmodus, um das Markieren in Terminals, in denen Markierung mit Shift + Pfeiltasten nicht funktioniert, zu ermöglichen.

Undo, Redo
Mit Undo oder Ctrl + z können Eingaben rückgängig gemacht werden. Mit Redo oder Ctrl + y können rückgängig gemachte Änderungen wiederhergestellt werden.

Search
Mit Search oder Ctrl + f wird der Suchen-Dialog geöffnet. Unter "Find" gibt man ein Suchwort ein. Über die Optionen kann man die Suche verfeinern. Ist Livesuche aktiviert, so wird während der Eingabe des Suchbegriffs automatisch das erste passende Ergebnis ausgewählt. Ist das Textdokument aktiv, kann mit F3 zur nächste bzw. mit Shift + F3 zur vorherigen Fundstelle gesprungen werden.

Search Next
Springt zur nächsten Fundstelle des aktuellen Suchbegriffs.

Search Previous
Springt zur vorherigen Fundstelle des aktuellen Suchbegriffs.

Replace
Mit Replace oder Ctrl + r wird der "Ersetzen"-Dialog geöffnet. Im Feld "Find" wird das Suchwort angegeben. Im Feld "Replace" wird das Wort angegeben, das eingefügt werden soll. Mit "Next" wird die nächste Fundstelle gesucht. Mit "Replace" wird das Suchwort ersetzt. Mit "All" werden alle Fundstellen ersetzt.

Insert Character...
Öffnet einen Dialog, in dem ein Zeichencode (Unicode codepoint) eines einzufügenden Sonderzeichens eingegeben werden kann.

Goto
Öffnet einen Dialog, um zu einer Zeile zu springen.

Sort Selected Lines
Markierte Zeilen werden alphabetisch (lexikografisch nach Codepoint) sortiert.

Options

Tab settings
Öffnet den Tab-Settings-Dialog. Hier können die Einstellungen für die Einrückung vorgenommen werden. Es kann zwischen Tab (\t) und Leerzeichen gewählt werden. Zudem kann die Breite der Einrückungen festgelegt werden. Die Standardeinstellungen können auch in der ~/.config/chr Datei vorgenommen werden. Hier kann: "tab_size=8" oder "tab=false" für Leerzeichen angegeben werden.

Line Number
Schaltet die Darstellung der Zeilennummern auf der linken Seite des Editors ein. Die Standardeinstellungen können auch in der ~/.config/chr Datei vorgenommen werden. Hier kann: "line_number=true" angegeben werden.

Formatting
Im Formatting-Dialog können "Formatting Characters", "Color Tabs" und "Color Spacs at end of line" ein und ausgestaltet werden.

"Formatting characters" kennzeichnen Leerzeichen mit einem Punkt: "·", Zeilenenden (\n) durch ein "¶" und das Ende der Datei mit: "♦".

Mit "Color Tabs" werden Tabs farblich hervorgehoben. Hierbei wird die Tabgrenze dunkler dargestellt.

Mit "Color Spacs at end of line" werden Leerzeichen am Ende der Zeile rot markiert.

In der Konfigurationsdatei: ~/.config/chr kann mit der Option "formatting_characters=true", "color_tabs=true", "color_space_end=true" das Verhalten eingestellt werden.

Wrap long lines
Hier kann eingestellt werden, ob Zeilen, die breiter als das Fenster sind, abgeschnitten oder umgebrochen dargestellt werden. Es kann an der Wortgrenze oder am Zeilenende hart umgebrochen werden. Diese Verhalten kann über die Option "wrap_lines=WordWrap" oder "wrap_lines=WrapAnywhere" in der ~/.config/chr Datei beeinflusst werden.

Zudem kann mit der Option: "Display Right Margin at Column" ein numerischer Wert angegeben werden, ab dem die Hintergrundfarbe dunkel gefärbt wird. Dieser Wert lest sich auch mit der Konfigurationsoption: "right_margin_hint=80" in der ~/.config/chr einstellen.

Stop Input Pipe
Einlesen von einer pipe wird unterbrochen. Der Standard-Eingabedatei-Deskriptor wird geschlossen.

Highlight Brackets
Wenn aktiv und der Cursor auf einer Klammer steht, wird die Klammer an der Cursorposition und die zugehörige andere Klammer hervorgehoben. Mit der Option "highlight_bracket=false" kann dieses Verhalten in der ~/.config/chr eingestellt werden. Unterstützte Klammertypen sind: [{(<>)}].

Syntax Highlighting
Wenn der Editor mit dem Feature "SyntaxHighlighting" compiliert wurden, steht das Syntax Highlighting generell zur Verfügung. Die Sprache wird beim Öffnen einer Datei automatisch erkannt und in der Statusbar angezeigt. Bei Bedarf kann diese aber auch über das Syntax Highlighting Dialog ein uns aus bzw. angepasst werden. In diesem Dialog kann das Syntax Highlighting auch deaktiviert werden.

Über die command line kann "--syntax-highlighting-theme" kann der Theme angepasst werden. Der Editor bringt bereits die Themes "chr-bluebg" und "chr-blackbg" mit. Bei Bedarf kann ein Theme aus der Liste, die mit "kate-syntax-highlighter --list-themes" anzeigbar ist, benutzt werden. Mit der Option "syntax_highlighting_theme=chr-bluebg" kann der Theme in der ~/.config/chr eingestellt werden.

Über die command line kann mittels "--disable-syntax" das Syntax Highlighting beim Starten des Editors ausgeschaltet werden. Mit der Option "disable_syntax=true" kann der Theme in der ~/.config/chr eingestellt werden.

Theme
Es öffnet den Theme-Dialog zum auswählen eines Theme. Es steht der "Classic" (Blau) oder der "Dark" (schwarz weiß) Theme zur Verfügung. Mit der Option "theme=classic" oder "theme=dark", kann dies in der ~/.config/chr eingestellt werden.

Window

Next, Previous
Wechselt das aktive Fenster, mit Shift in umgekehrter Reihenfolge. (Siehe F6)

Tile Vertically, Horizontally, Fullscreen
Wählt aus, wie mehrere offene Textdokumente angezeigt werden.

Vertikal und Horizontal teilen den verfügbaren Platz automatisch auf die Dokumentenfenster auf. Wird Fullscreen gewählt, ist jeweils nur ein Dokumentenfenster gleichzeitig sichtbar. (Siehe F6)

Konfigurationsdatei

Der Editor lädt (falls vorhanden) eine Konfigurationsdatei aus ~/.config/chr. (Wenn die Environmentvariable $XDG_CONFIG_HOME gesetzt ist, dann aus $XDG_CONFIG_HOME/chr)

Zusätzlich zu den oben dokumentieren Optionen sind folgende Optionen verfügbar:

eat_space_before_tabs
Diese Option ist nur aktiv, wenn tab=false gesetzt ist.

Ist diese Option aktiv und wird die Tab-Taste gedrückt, während der Cursor in der Einrückung am Anfang einer Zeile steht, so wird die Einrückung auf die nächste Tabposition erweitert.

attributes_file
Gibt den Pfad der Datei an, in der die Cursor- und Scrollposition in der Vergangenheit geöffneter Dateien gespeichert wird.

Default config

Es gibt eine default Config (~/.config/chr) in der folgenden Optionen gesetzt werden können.
attributes_file="/home/user/.cache/chr/chr.json"
color_space_end=false
color_tabs=false
disable_syntax=false
eat_space_before_tabs=true
formatting_characters=false
highlight_bracket=true
line_number=false
logfile=""
right_margin_hint=0
syntax_highlighting_theme="chr-bluebg"
tab=false
tab_size=4
theme="classic"
wrap_lines="NoWrap"

FILES

~/.config/chr
Your personal chr initializations.

~/.cache/chr/chr.json
History über die geänderten Dateien. Hierin werden Positionen von Cursor gespeichert.

BUGS

Fehler in dieser Software können über den Bugtracker auf https://github.com/istoph/editor
gemeldet werden.

AUTHOR

Christoph Hüffelmann <chr [AT] istoph.de> Martin Hostettler <textshell [AT] uchuujin.de>