Nano: Unterschied zwischen den Versionen

Aus Foxwiki
K Textersetzung - „== Syntax ==“ durch „== Aufruf ==“
 
(47 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
'''nano''' - "Nano's ANOther editor"
'''nano''' - Einfacher Test-Editor
 
== Beschreibung ==
== Beschreibung ==
; nano - »Nano's ANOther editor«, inspiriert von Pico
; nano - »Nano's ANOther editor«
Nano ist ein einfacher Editor. Er ermöglicht die Bearbeitung von Dateien in einem Terminal bzw. auf der Konsole, auch ohne grafische Umgebung. Nano hat einen geringeren Funktionsumfang als z. B. VIM oder Emacs, ist dafür aber deutlich einfacher und intuitiver zu bedienen. Daher eignet sich Nano besonders für kleinere, schnelle Bearbeitungen oder für das Schreiben von kurzen Skripten.
* Inspiriert von Pico
* Ermöglicht die Bearbeitung von Dateien in einem Terminal bzw. auf der Konsole, auch ohne grafische Umgebung.  
* Nano hat einen geringeren Funktionsumfang als z. B. VIM oder Emacs, ist dafür aber deutlich einfacher und intuitiver zu bedienen.  
* Daher eignet sich Nano besonders für kleinere, schnelle Bearbeitungen oder für das Schreiben von kurzen Skripten.


Der Editor unterstützt u.a. Syntax-Hervorhebung für verschiedene Programmiersprachen, Undo/Redo Funktionalität, Mausunterstützung (sofern ein Grafikserver läuft), automatische Einrückung, Speichern von Dateien mit MS-DOS oder Mac Zeilenenden u.v.m.
Der Editor unterstützt u.a. Syntax-Hervorhebung für verschiedene Programmiersprachen, Undo/Redo Funktionalität, Mausunterstützung (sofern ein Grafikserver läuft), automatische Einrückung, Speichern von Dateien mit MS-DOS oder Mac Zeilenenden u.v.m.
; nano ist ein kleiner und freundlicher Editor
* Er kopiert das Aussehen und Verhalten von Pico, ist aber freie Software und implementiert verschiedene Funktionen, die Pico fehlen, wie: Öffnen mehrerer Dateien, zeilenweises Rollen, rückgängig machen und Wiederholen, farbige Syntaxhervorhebung, Zeilennummern und fließenden Umbruch überlanger Zeilen.
Wenn Sie in der Befehlszeile einen Dateinamen angeben, können Sie den Cursor in einer bestimmten Zeile platzieren, indem Sie die Zeilennummer mit einem Pluszeichen (+) dem Dateinamen voranstellen.
* Mit einem Komma können Sie sogar die gewünschte Spalte angeben.
* Der Cursor kann in die erste oder letzte Zeile des Vorkommens einer bestimmten Zeichenkette gesetzt werden, indem Sie diese Zeichenkette nach einem +/ oder +? dem Dateinamen voranstellen.
* Fügen Sie zusätzlich ein c und/oder r nach dem Pluszeichen ein, wird für die Zeichenkette Groß-/Kleinschreibung berücksichtigt genauer gesagt, die Zeichenkette als regulärer Ausdruck betrachtet.
* Diese Suchmodi können explizit deaktiviert werden, indem Sie Groß- statt Kleinschreibung verwenden: C und/oder R.
* Wenn die Zeichenkette Leerzeichen enthält, muss sie in Anführungszeichen gesetzt werden.
* Ein Beispiel, in dem eine Datei geöffnet und der Cursor beim ersten Vorkommen des Wortes »Foo« gesetzt werden soll:
$ nano +c/Foo Datei
Als Spezialfall: wird beim Aufruf anstatt eines Dateinamens ein Minuszeichen (-) angegeben, liest nano Daten aus der Standardeingabe.


== Installation ==
== Installation ==
  # apt-get install nano
  # apt-get install nano


== Syntax ==
== Aufruf ==
  $ nano [Optionen] [[+Zeile[,Spalte]] Datei] …
  $ nano [Optionen] [[+Zeile[,Spalte]] Datei] …
  $ nano [Optionen] [[+[crCR](/|?)Zeichenkette] Datei] …
  $ nano [Optionen] [[+[crCR](/|?)Zeichenkette] Datei] …


=== Optionen ===
=== Optionen ===
{| class="wikitable sortable options"
|-
! Unix !! GNU !! Beschreibung
|-
| -A || --smarthome || macht die Pos1-Taste intelligenter.
* Wenn die Pos1-Taste irgendwo gedrückt wird, außer am äußersten Anfang von Nicht-Leerraum in einer Zeile, dann springt der Cursor zu diesem Anfang (entweder vorwärts oder rückwärts).
* Befindet sich der Cursor bereits an dieser Position, springt er zum tatsächlichen Anfang der Zeile.
|-
| -B || --backup || sichert beim Speichern einer Datei die vorherige Version mit dem Namen der aktuellen Datei, dem eine Tilde (~) angehängt wird.
|-
| -C Verzeichnis || --backupdir=Verzeichnis || erstellt nicht nur eine Sicherungsdatei und behält diese, sondern erstellt eine eindeutig nummerierte Datei jedes Mal, wenn eine Datei gespeichert wird – sofern Sicherungen aktiviert sind (-B).
* Die eindeutig nummerierten Dateien werden im angegebenen Verzeichnis gespeichert.
|-
| -D || --boldtext || verwendet für die Benutzeroberfläche Fettdruck anstelle von inversem Text.
* Dies kann durch Setzen der Optionen titlecolor, statuscolor, keycolor, functioncolor, numbercolor und/oder selectedcolor in Ihrer Datei nanorc außer Kraft gesetzt werden.
* Siehe nanorc(5).
|-
| -E || --tabstospaces || wandelt jeden eingegebenen Tabulator in Leerzeichen um, und zwar in die Anzahl der Leerzeichen, wie der Tabulator an dieser Position einnehmen würde.
|-
| -F || --multibuffer || liest standardmäßig eine Datei in einen neuen Puffer ein.
|-
| -G || --locking || aktiviert beim Bearbeiten von Dateien die Dateisperrung im Vim-Stil.
|-
| -H || --historylog || speichert die letzten 100 Suchzeichenketten, Ersetzungszeichenketten und ausgeführten Befehle, so dass sie in späteren Sitzungen leicht wiederverwendet werden können.
|-
| -I || --ignorercfiles ||
übergeht sowohl die systemweite nanorc als auch die nanorc des Benutzers.
|-
| -J Zahl || --guidestripe=Zahl || blendet einen Markierungsbalken in der angegebenen Spalte ein, anhand dessen Sie die Breite des Texts besser beurteilen können.
* Die Farbe des Balkens kann mit der Anweisung set stripecolor in Ihrer Datei nanorc angepasst werden.
|-
| -K || --rawsequences || interpretiert Escape-Sequenzen direkt, anstatt sie durch ncurses übersetzen zu lassen.
* Falls Sie diese Option benötigen, damit einige Tasten korrekt funktionieren, bedeutet das, dass die von Terminfo bereitgestellte Terminalbeschreibung dem tatsächlichen Verhalten Ihres Terminals nicht vollständig entspricht.
* Dies kann beispielsweise passieren, wenn Sie sich per SSH an einer BSD-Maschine anmelden.
* Wenn Sie diese Option verwenden, wird die Mausunterstützung in nano deaktiviert.
|-
| -L || --nonewlines || fügt nicht automatisch einen Zeilenvorschub an, wenn ein Text nicht mit einem solchen endet. (Das kann dazu führen, dass Sie POSIX-inkompatible Textdateien speichern.)
|-
| -M || --trimblanks || entfernt angehängten Leerraum beim automatischen harten Umbruch oder bei der Ausrichtung von Text vom Ende der Zeile.
|-
| -N || --noconvert || deaktiviert die automatische Umwandlung von Dateien aus dem DOS/Mac-Format.
|-
| -O || --bookstyle || fasst beim Ausrichten jede Zeile, die mit Leerraum beginnt, als Beginn eines Absatzes auf (außer wenn automatisches Einrücken aktiviert ist).
|-
| -P || --positionlog || protokolliert für die 200 zuletzt bearbeiteten Dateien die letzte Position des Cursors und setzt ihn beim erneuten Öffnen der Datei wieder an diese Stelle.
|-
| -Q "regulärer_Ausdruck" || --quotestr="regulärer_Ausdruck" ||
legt den regulären Ausdruck für die Übereinstimmungsfindung für Zitate fest.
* Der Vorgabewert ist <nowiki>»^([ \t]*([!#%:;>|}]|//))+«</nowiki>. (Beachten Sie, dass dabei \t für den echten Tabulator steht.)
* Dadurch wird es ermöglicht, beim Verfassen von E-Mails Blöcke aus zitiertem Text neu auszurichten und Blöcke von Zeilenkommentaren beim Schreiben von Quellcode neu umzubrechen.
|-
| -R || --restricted || aktiviert den eingeschränkten Modus: Es wird nichts aus einer Datei gelesen oder in diese geschrieben, die nicht in der Befehlszeile übergeben wurde.
* Das bedeutet, dass keine Verlaufsdateien gelesen oder geschrieben werden, keine Rechtschreibprüfung erlaubt wird, nichts an eine Datei angehängt oder ihr vorangestellt oder die Datei unter einem anderen Namen gespeichert wird, wenn bereits ein Name vergeben wurde; außerdem werden keine Sicherungsdateien erstellt.
* Sie können den eingeschränkten Modus auch aktivieren, indem Sie nano mit einem Namen aufrufen, der mit »r« beginnt (zum Beispiel rnano).
|-
| -S || --softwrap || zeigt Zeilen, die länger als die Bildschirmbreite sind, in mehreren Zeilen an (Sie können diesen fließenden Zeilenumbruch so einrichten, dass an Leerzeichen statt grob am Bildschirmrand umgebrochen wird, indem Sie auch --atblanks verwenden). (Die frühere kurze Option -$ ist nun als veraltet anzusehen.)
|-
| -T Anzahl || --tabsize=Anzahl || setzt die Größe (Breite) von Tabulatoren auf die angegebene Anzahl Spalten.
* Die Anzahl muss größer als 0 sein.
* Der Vorgabewert ist 8.
|-
| -U || --quickblank || blendet die Statuszeile bereits nach einem Tastendruck anstelle von 20 aus.
* Beachten Sie, dass die Option -c (--constantshow) dies außer Kraft setzt.
* Wenn die Option --minibar oder --zero wirksam ist, blendet --quickblank eine Meldung bereits nach 0,8 Sekunden anstelle der vorgegebenen 1,5 Sekunden aus.
|-
| -V || --version || gibt die Versionsnummer aus und beendet das Programm.
|-
| -W || --wordbounds || erkennt Wortgrenzen anders, indem Interpunktionszeichen als Teil eines Wortes angesehen werden.
|-
| -X "Zeichen" || --wordchars="Zeichen" ||
gibt an, welche anderen Zeichen (neben den normalen alphanumerischen Zeichen) als Teil eines Wortes betrachtet werden sollen.
* Wenn Sie diese Option verwenden, dann werden Sie wahrscheinlich die Option -W (--wordbounds) nicht benötigen.
|-
| -Y Name || --syntax=Name || gibt den Namen der zu verwendenden Syntaxhervorhebung an.
* Verwendet werden die in den nanorc-Dateien definierten Syntaxhervorhebungen.
|-
| -Z || --zap || bewirkt, dass durch Drücken einer unmodifizierten Rückschritt- oder Entf-Taste der markierte Bereich gelöscht wird (anstelle eines einzelnen Zeichens und ohne Auswirkung auf die Zwischenablage).
|-
| -a || --atblanks || bricht bei aktiviertem fließendem Zeilenumbruch bei Leerräumen anstatt immer beim Erreichen des Bildschirmrandes um.
|-
| -b || --breaklonglines || bricht die aktuelle Zeile automatisch hart um, wenn sie zu lang wird.
* Diese Option ist das Gegenstück zu -w (--nowrap) – die zuletzt angegebene Option ist wirksam.
|-
| -c || --constantshow || zeigt die Cursorposition permanent in der Statuszeile an.
* Beachten Sie, dass dies -U (--quickblank) außer Kraft setzt.
|-
| -d || --rebinddelete || interpretiert die Entf- und Rückschrittasten anders, so dass sowohl Rückschritt als auch Entf korrekt funktionieren.
* Sie sollten diese Option nur verwenden, wenn auf Ihrem System entweder die Rückschrittaste als Entf-Taste wirkt oder die Entf-Taste als Rückschrittaste.
|-
| -e || --emptyline || verwendet die Leerzeile unter der Titelleiste nicht und lässt diese leer.
|-
| -f Datei || --rcfile=Datei || liest zum Setzen der Optionen für nano nur die angegebene Datei, anstatt sowohl die systemweite nanorc als auch die des Benutzers zu lesen.
|-
| -g || --showcursor || macht den Cursor im Dateibrowser (indem er auf den hervorgehobenen Eintrag gesetzt wird) und im Hilfebetrachter sichtbar.
* Dies ist für Benutzer mit Braille-Zeile oder weniger schwerwiegenden Sehbehinderungen nützlich.
|-
| -h || --help || zeigt eine Zusammenfassung der verfügbaren Befehlszeilenoptionen an und beendet das Programm.
|-
| -i || --autoindent || rückt eine neue Zeile automatisch um die gleiche Anzahl Tabulatoren und/oder Leerzeichen wie die vorhergehende Zeile ein (oder wie die nächste Zeile, wenn die vorhergehende Zeile der Anfang eines Absatzes ist).
|-
| -j || --jumpyscrolling || rollt den Inhalt des Puffers um einen halben Bildschirminhalt statt um eine Zeile.
|-
| -k || --cutfromcursor || bewirkt, dass der Befehl zum Ausschneiden von Text (normalerweise ^K) nur von der aktuellen Cursorposition bis zum Ende der Zeile anstatt die gesamte Zeile ausschneidet.
|-
| -l || --linenumbers || Zeigt Zeilennummern links vom Textbereich an. (Jede Zeile mit einem Anker erhält außerdem eine Markierung im Randbereich.)
|-
| -m || --mouse || aktiviert Mausunterstützung, falls dies auf Ihrem System verfügbar ist.
* Wenn aktiviert, können Sie den Cursor mittels Mausklicks platzieren, die Markierung (mit einem Doppelklick) setzen und Tastenkombinationen ausführen.
* Die Maus wird im X Window System funktionieren, und auch auf der Konsole, wenn gpm läuft.
* Text kann weiterhin durch Ziehen markiert werden, während die Umschalttaste gedrückt gehalten wird.
|-
| -n || --noread || fasst jeden in der Befehlszeile übergebenen Namen als neue Datei auf.
* Dies ermöglicht nano, in benannte Pipes (Weiterleitungen) zu schreiben:
Es wird mit einem leeren Puffer begonnen und in die Pipe geschrieben, wenn der Benutzer die »Datei« speichert.
* Auf diese Weise kann nano als Editor in Kombination mit beispielsweise gpg verwendet werden, ohne dass erst sensible Daten auf die Festplatte geschrieben werden müssen.
|-
| -o Verzeichnis || --operatingdir=Verzeichnis || legt das Verzeichnis fest, in dem gearbeitet werden soll.
* Dadurch wird nano veranlasst, etwas Ähnliches wie ein »Chroot« (temporäres Wurzelverzeichnis) einzurichten.
|-
| -p || --preserve || erhält die Sequenzen XON und XOFF (^Q und ^S), so dass diese vom Terminal abgefangen werden.
|-
| -q || --indicator || zeigt eine Bildlaufleiste am rechten Rand des Editorfensters an.
* Es zeigt die Position des Sichtfeldes im Puffer an, sowie welcher Anteil des Puffers vom Sichtfeld abgedeckt ist.
|-
| -r Anzahl || --fill=Anzahl || legt die gewünschte Breite für die Ausrichtung und den automatischen harten Zeilenumbruch auf die angegebene Anzahl Spalten fest.
* Ist die Anzahl 0 oder kleiner, wird ein harter Zeilenumbruch an der Bildschirmbreite minus der Anzahl Spalten ausgeführt, wodurch sich der Umbruchpunkt an der Bildschirmbreite orientiert und sich mit verändert, wenn die Bildschirmbreite geändert wird.
* Der Vorgabewert ist -8.
|-
| -s "Programm [Argument …]" || --speller="Programm [Argument …]" ||
gibt das für die Rechtschreibprüfung und -korrektur zu verwendende Programm an, welches statt der eingebauten Korrektur verwendet werden soll,
die hunspell(1) oder spell(1) aufruft.
|-
| -t || --saveonexit || speichert einen geänderten Puffer stets ohne Nachfrage (beim Beenden mit ^X).
|-
| -u || --unix || speichert eine Datei standardmäßig im Unix-Format.
* Dies setzt das Standardverhalten von nano außer Kraft, in dem eine Datei in dem Format gespeichert wird, in dem sie bereits vorliegt.
* Diese Option ist wirkungslos, wenn Sie auch --noconvert angeben.
|-
| -v || --view || zeigt lediglich die Datei an und verhindert die Bearbeitung (schreibgeschützter Modus).
* In diesem Modus ist es dem Benutzer gestattet, auch andere Dateien zur Betrachtung zu öffnen, außer wenn ebenfalls --restricted angegeben ist.
|-
| -w || --nowrap || bricht die aktuelle Zeile nicht automatisch hart um, wenn sie zu lang wird.
* Dies ist die Vorgabe.
* Diese Option ist das Gegenstück zu -b
(--breaklonglines) – die zuletzt angegebene Option ist wirksam.
|-
| -x || --nohelp || zeigt die zwei Hilfezeilen am unteren Rand des Bildschirms nicht an.
|-
| -y || --afterends || bewirkt, dass »Strg+Pfeiltaste rechts« und »Strg+Entf« am Wortende anstatt am Wortanfang stoppt.
|-
| -% || --stateflags || verwendet die obere rechte Ecke des Bildschirms zum Anzeigen einiger Statusindikatoren, wenn Folgendes aktiv ist: I bei automatischer Einrückung, M bei Markierungen, L bei hartem Umbruch überlanger Zeilen, R bei der Aufzeichnung eines Makros und S bei fließendem Zeilenumbruch.
* Wenn der Puffer geändert wurde, wird ein Stern (*) nach dem Dateinamen in der Mitte der Titelleiste angezeigt.
|-
| -_ || --minibar || unterdrückt die Anzeige der Titelleiste und zeigt stattdessen am unteren Bildschirmrand im Bereich der Statuszeile Informationen zum aktuellen Puffer an.
* In dieser »Minibar« wird links der Dateiname angezeigt, gefolgt von einem Raute-Zeichen, falls der Puffer geändert wurde.
* Rechts wird Folgendes angezeigt: die aktuelle Zeilen- und Spaltennummer, der Code des Zeichens unter dem Cursor (im Unicode-Format: U+xxxx), die gleichen Indikatoren, wie sie auch mit --stateflags angezeigt werden, sowie ein Prozentsatz, wie weit sich der Cursor in der Datei befindet (zeilenbezogen).
* Beim Laden oder Speichern einer Datei und auch beim Wechsel zwischen Puffern wird nach dem Dateinamen die Anzahl der Zeilen im Puffer angezeigt.
* Diese Zahl wird nach dem nächsten Tastendruck gelöscht oder durch einen [i/n]-Zähler ersetzt, falls mehrere Puffer geöffnet sind.
* Die Zeile einschließlich Spaltennummer sowie der Zeichencode werden nur dann angezeigt, wenn --constantshow verwendet wird.
* Mit M-C können Sie die Anzeige ein- oder ausblenden.
* Die Statusindikatoren werden nur angezeigt, wenn --stateflags verwendet wird.
|-
| -0 || --zero || verbirgt alle Elemente der Benutzerschnittstelle (Titelleiste, Statuszeile und Hilfezeilen) und verwendet alle Zeilen des Terminals für die Anzeige des Pufferinhalts.
* Die Statuszeile erscheint nur dann, wenn eine wichtige Meldung anzuzeigen ist und wird nach 1,5 Sekunden oder beim nächsten Tastendruck ausgeblendet.
* Mit M-Z kann die Anzeige der Titelleiste und Statuszeile und mit M-X die Anzeige der Hilfezeilen ein- oder ausgeschaltet werden.
|-
| -! || --magic || Wenn weder der Name noch die erste Zeile der Datei einen Hinweis liefert, wird versucht, die anwendbare Syntax mittels Libmagic zu bestimmen.
|}
=== Parameter ===
=== Parameter ===
=== Umgebungsvariablen ===
=== Umgebung ===
=== Exit-Status ===
=== Rückgabewert ===


== Anwendung ==
== Anwendung ==
[[File:nanoEditorShortcuts.png|mini|400px|https://www.instagram.com/p/DAvXCF0SvM5/]]
=== Bearbeitung ===
Eingabe von Text und Bewegen innerhalb einer Datei ist einfach: durch Eingabe der Buchstaben und Verwenden der normalen Cursortasten.
* Befehle können Sie mit der Strg-Taste (^) und den Alt- oder Metatasten (M-) eingeben.
* Die Eingabe ^K löscht die aktuelle Zeile und schreibt sie in die Zwischenablage.
* Mehrere aufeinander folgende Eingaben von ^K schreiben die gelöschten Zeilen zusammen in die Zwischenablage.
* Jede Bewegung des Cursors oder Eingabe eines anderen Befehls führt dazu, dass die nächste Eingabe von ^K die Zwischenablage überschreibt.
* Ein ^U fügt den aktuellen Inhalt der Zwischenablage an der aktuellen Cursorposition ein.
Wenn ein etwas genauerer Textteil ausgeschnitten oder kopiert werden soll, können Sie die Markierung mit ^6 beginnen, den Cursor zum gewünschten Ende bewegen (der markierte Text wird nun hervorgehoben) und dann mit ^K den Text ausschneiden oder mit M-6 in die Zwischenablage kopieren.
* Sie können den markierten Text auch mit ^O in einer Datei speichern oder mit ^T^T die Rechtschreibung prüfen lassen.
In einigen Terminals kann Text auch mit den Pfeiltasten bei gedrückt gehaltener Umschalttaste markiert werden.
* Wenn Sie außerdem die Strg- oder Alt-Taste gedrückt halten, wird dies beschleunigt.
* Durch jede Bewegung des Cursors ohne Gedrückthalten der Umschalttaste wird eine solche Auswahl abgebrochen.
Die zwei Zeilen am unteren Bildschirmrand zeigen einige wichtige Befehle; die eingebaute Hilfe (^G) listet alle verfügbaren Befehle auf.
* Die voreingestellten Tastaturschnellzugriffe können über eine Datei nanorc geändert werden, siehe nanorc(5).
Der Editor kann direkt im Terminal gestartet werden:
Der Editor kann direkt im Terminal gestartet werden:
  nano [OPTIONEN] [DATEI]
  nano [OPTIONEN] [DATEI]
Zeile 25: Zeile 231:


==== Tastenkürzel ====
==== Tastenkürzel ====
{| class="wikitable"
{| class="wikitable options"
| colspan="3" |einige Tastenkürzel
| colspan="3" |einige Tastenkürzel
|-
|-
Zeile 120: Zeile 326:
|Syntaxhervorhebung ein/aus
|Syntaxhervorhebung ein/aus
|}
|}
⚓︎


==== Konfiguration ====
==== Konfiguration ====
Zeile 130: Zeile 335:


Standardmäßig ist die Hervorhebung für alle vorhandenen Formate bzw.&nbsp;Sprachen aktiviert. Das geschieht durch folgende Zeile in '''/etc/nanorc'''.
Standardmäßig ist die Hervorhebung für alle vorhandenen Formate bzw.&nbsp;Sprachen aktiviert. Das geschieht durch folgende Zeile in '''/etc/nanorc'''.
{| class="wikitable"
|
1
|
  include "/usr/share/nano/*.nanorc"
  include "/usr/share/nano/*.nanorc"
|}
 
Während der Arbeit mit nano kann durch Alt + Y die Syntaxhervorhebung ein- oder ausgeschaltet werden.
Während der Arbeit mit nano kann durch Alt + Y die Syntaxhervorhebung ein- oder ausgeschaltet werden.


Zeile 142: Zeile 343:


Damit diese Anpassungen übernommen werden, muss die Datei bzw.&nbsp;das Verzeichnis in der lokalen '''(.)nanorc''' eingebunden sein
Damit diese Anpassungen übernommen werden, muss die Datei bzw.&nbsp;das Verzeichnis in der lokalen '''(.)nanorc''' eingebunden sein
{| class="wikitable"
|
1
|
  include "/$HOME/nano/*.nanorc"
  include "/$HOME/nano/*.nanorc"
|}


===== Shellskripte unabhängig vom Dateinamen einfärben =====
===== Shellskripte unabhängig vom Dateinamen einfärben =====
Zeile 162: Zeile 358:
starten, oder zur Laufzeit mit Alt + Y die Hervorhebung deaktivieren.
starten, oder zur Laufzeit mit Alt + Y die Hervorhebung deaktivieren.


=== Fehlerbehebung ===
=== Anmerkungen ===
Die Option -z (--suspendable) wurde entfernt.
* Das Schieben in den Hintergrund ist standardmäßig aktiviert und ist über ^T^Z erreichbar.
* Falls Sie zum Schieben in den Hintergrund ein einfaches ^Z bevorzugen, fügen Sie bind ^Z suspend main zu Ihrer Nanorc hinzu.
 
Falls kein alternativer Befehl zur Rechtschreibprüfung in der Befehlszeile oder in einer der nanorc-Dateien angegeben ist, sucht nano in der Umgebungsvariable SPELL danach.
 
In einigen Fällen versucht nano, den Puffer in einer Notfalldatei zu speichern.
* Dies geschieht hauptsächlich dann, wenn nano ein SIGHUP oder SIGTERM empfängt oder der Speicher ausgeschöpft ist.
* Der Puffer wird in eine Datei namens nano.save geschrieben, falls für den Puffer noch kein Name vergeben wurde, oder die Endung .save wird zum aktuellen Dateinamen hinzugefügt.
* Falls eine Notfalldatei gleichen Namens im aktuellen Verzeichnis bereits existiert, wird außer der Endung .save eine Zahl hinzugefügt (zum Beispiel .save.1, damit sie eindeutig unterscheidbar wird.
* Im Mehrpuffer-Modus schreibt nano alle offenen Puffer in deren jeweilige Notfalldateien.
 
=== Umschaltungen ===
Unter den oben genannten Optionen können einige auch ein- und ausgeschaltet werden, wenn nano läuft.
* Beispielsweise schaltet M-L den harten Umbruch langer Zeilen, M-S den fließenden Umbruch, M-N die Anzeige der Zeilennummern, M-M die Verwendung der Maus, M-I die automatische Einrückung und M-X die Anzeige der Hilfezeilen ein oder aus.
* Am Ende des mit ^G angezeigten Hilfetexts finden Sie eine vollständige Liste.
 
Der Umschalter M-X ist speziell: Er funktioniert in allen Menüs, außer im Hilfebetrachter und im Linter.
* Alle anderen Umschalter funktionieren nur im Hauptmenü.
 
=== Problembehebung ===
Sollten die Definitionsdateien für die Syntaxhervorhebung, die in der '''nanorc''' eingetragen wurden, nicht oder nur teilweise erkannt werden, dann stört sich das Programm möglicherweise daran, dass "include"-Einträge in der globalen Konfigurationsdatei '''/etc/nanorc''' und der lokalen '''~/.config/nano/nanorc''' vorhanden sind. Abhilfe schafft dann die Definitionsdateien in einer der beiden Dateien auzukommentieren.
Sollten die Definitionsdateien für die Syntaxhervorhebung, die in der '''nanorc''' eingetragen wurden, nicht oder nur teilweise erkannt werden, dann stört sich das Programm möglicherweise daran, dass "include"-Einträge in der globalen Konfigurationsdatei '''/etc/nanorc''' und der lokalen '''~/.config/nano/nanorc''' vorhanden sind. Abhilfe schafft dann die Definitionsdateien in einer der beiden Dateien auzukommentieren.
Die Aufzeichnung und Wiedergabe von Tastaturmakros funktioniert nur in einem Terminalemulator fehlerfrei, jedoch nicht in einer Linux-Konsole (VT), da Letztere standardmäßig nicht zwischen modifizierten und unmodifizierten Pfeiltasten unterscheiden kann.
Bitte melden Sie alle andere Fehler, die sie entdecken, auf:
https://savannah.gnu.org/bugs/?group=nano.
Wenn nano abstürzt, speichert es alle geänderten Puffer sicherheitshalber in Dateien mit der Endung .save.
* Falls es Ihnen gelingt, den Absturz zu reproduzieren und Sie einen Backtrace haben wollen, dann definieren Sie die Umgebungsvariable NANO_NOCATCH.


== Konfiguration ==
== Konfiguration ==
=== Dateien ===
=== Dateien ===
Wenn --rcfile angegeben ist, liest nano nur die angegebene Datei zum Setzen der Optionen, Syntaxhervorhebung und Tastenbindungen.
* Ohne diese Option wird nano zwei Konfigurationsdateien lesen: zuerst die nanorc des Systems (falls diese existiert) und danach die nanorc des Benutzers (falls diese existiert), entweder ~/.nanorc oder $XDG_CONFIG_HOME/nano/nanorc oder ~/.config/nano/nanorc, je nachdem, welche zuerst gefunden wird.
* Siehe nanorc(5)
für weitere Informationen zu den möglichen Inhalten dieser Dateien.
Siehe /usr/share/nano/ und /usr/share/nano/extra/ für die verfügbaren Definitionen der farblichen Syntaxhervorhebungen.
<noinclude>
<noinclude>
== Anhang ==
== Anhang ==
=== Siehe auch ===
=== Siehe auch ===
{{Special:PrefixIndex/nano}}
{{Special:PrefixIndex/nano}}


==== Sicherheit ====
==== Dokumentation ====
==== Dokumentation ====
===== Man-Pages =====
/usr/share/doc/nano/
===== Man-Page =====
# [[nanorc]](5)
===== Info-Pages =====
===== Info-Pages =====
==== Links ====
==== Links ====
===== Projekt =====
===== Projekt =====
# https://nano-editor.org/
===== Weblinks =====
===== Weblinks =====
# GitHub: serialhex/nano-highlight 🇬🇧 Sammlung ergänzender Konfigurationsdateien für Syntax-Highlighting
# https://wiki.ubuntuusers.de/Nano
# https://wiki.ubuntuusers.de/Nano
 
# GitHub: serialhex/nano-highlight
= TMP =
#: Sammlung ergänzender Konfigurationsdateien für Syntax-Highlighting
== Beschreibung ==
=== Links ===
 
* Editor Programmübersicht
* Offizielle Homepage 🇬🇧
* GitHub: serialhex/nano-highlight 🇬🇧 Sammlung ergänzender Konfigurationsdateien für Syntax-Highlighting
 
Quelle: https://wiki.ubuntuusers.de/Nano/
 
= TMP =
 
 
Nano 🇬🇧 ist ein einfacher Editor. Er ermöglicht die Bearbeitung von Dateien in einem Terminal bzw.&nbsp;auf der Konsole, auch ohne grafische Umgebung. Nano hat einen geringeren Funktionsumfang als z.&nbsp;B.&nbsp;VIM oder Emacs, ist dafür aber deutlich einfacher und intuitiver zu bedienen. Daher eignet sich Nano besonders für kleinere, schnelle Bearbeitungen oder für das Schreiben von kurzen Skripten.
 
Der Editor unterstützt u.a. Syntax-Hervorhebung für verschiedene Programmiersprachen, Undo/Redo Funktionalität, Mausunterstützung (sofern ein Grafikserver läuft), automatische Einrückung, Speichern von Dateien mit MS-DOS oder Mac Zeilenenden u.v.m.
 
== Benutzung ==
Der Editor kann direkt im Terminal gestartet werden:
nano [OPTIONEN] [DATEI]
Gibt man keine Datei und keine Option an, öffnet sich ein leeres Editorfenster. Gibt man einen Dateinamen an, wird die entsprechende Datei direkt im Editorfenster geöffnet.
 
=== Tastenkürzel ===
{| class="wikitable"
| colspan="3" |einige Tastenkürzel
|-
| colspan="2" |Tasten
(beide Spalten sind gleichwertig)
|Aktion
|-
|Strg  + G
|F1
|Vollständige Liste der Tastenkürzel (M ("Meta") mit Alt  oder Alt  + ⇧  aufrufbar.) Hilfe anzeigen
|-
|Strg  + X
|F2
|Datei schließen
|-
|Strg  + O
|F3
|Datei speichern
|-
|Strg  + W
|F6
|Suche
|-
|Alt  + W
|F16
|Weitersuchen
|-
|Alt  + R
|Strg  + Alt Gr  + ß
|Suchen/Ersetzen
|-
| colspan="3" |
|-
|Alt  + ⇧  + Strg
|Alt  + 6
|Zeile (oder Markierung) in Zwischenablage kopieren
|-
|Strg  + K
|F9
|Zeile (oder Markierung) ausschneiden und in Zwischenablage kopieren
|-
|Strg  + U
|F10
|Inhalt der Zwischenablage einfügen
|-
|Alt  + A
|Strg  + 6
|Markierung beginnen/ Markierung aufheben
|-
|Strg  + A
|Pos1
|Zum Zeilenanfang gehen
|-
|Strg  + E
|Ende
|Zum Zeilenende gehen
|-
|Alt  + Alt Gr  + <
|Alt  + Alt Gr  + ß
|Zum Dateianfang gehen
|-
|Alt  + ⇧  + 7
|Alt  + ⇧  + ß
|Zum Dateiende gehen
|-
|Alt  + G
|Strg  + ⇧  + -
|Zu einer bestimmten Zeile springen
|-
| colspan="3" |
|-
|Alt  + D
|
|Dateistatistiken anzeigen
|-
|Strg  + C
|
|Aktuelle Cursorposition anzeigen
|-
|Alt  + C
|
|Aktuelle Cursorposition ständig anzeigen ein/aus
|-
|Alt  + X
|
|Hilfezeilen anzeigen ein/aus
|-
|Alt  + O
|
|Leerzeile unterhalb der Titelzeile ein/aus
|-
|Alt  + Y
|
|Syntaxhervorhebung ein/aus
|}
⚓︎
 
=== Konfiguration ===
Die systemweite Konfiguration von Nano ist in der Datei '''/etc/nanorc''' hinterlegt. Möchte man sich eine benutzerspezifische Konfiguration anlegen, kopiert man die Datei nach '''~/.config/nano/nanorc''' (oder alternativ '''~/.nanorc''') und nimmt dort die gewünschten Änderungen vor. Die Datei ist ausführlich kommentiert, weitere Hilfe bekommt man auch beim Aufruf der man-Page von '''nanorc''':
man nanorc
 
=== Syntaxhervorhebung ===
Nano bietet Syntaxhervorhebung für eine ganze Reihe von Programmiersprachen und Dateiformaten (wie JSON, XML). Die Dateien für die Syntaxhervorhebung sind im Verzeichnis '''/usr/share/nano''' abgelegt. Die Dateien haben die Endung '''.nanorc''', der Dateiname vor dem Punkt sagt, für welche Sprache oder Dateiart die Syntaxhervorhebung definiert ist, also z.&nbsp;B.&nbsp;'''python.nanorc''' für Python oder '''json.nanorc''' für JSON-Dateien.
 
Standardmäßig ist die Hervorhebung für alle vorhandenen Formate bzw.&nbsp;Sprachen aktiviert. Das geschieht durch folgende Zeile in '''/etc/nanorc'''.
{| class="wikitable"
|
1
|
include "/usr/share/nano/*.nanorc"
|}
Während der Arbeit mit nano kann durch Alt  + Y  die Syntaxhervorhebung ein- oder ausgeschaltet werden.
 
==== Farben der Syntaxhervorhebung anpassen ====
Um die Farben der Syntaxhervorhebung systemweit zu ändern, müssen die Einstellungen in '''/usr/share/nano/''' geändert werden. Sollen sie für einen Benutzer geändert werden, kann die entsprechende Datei z.&nbsp;B.&nbsp;nach  '''~/.nano/''' kopiert und angepasst werden.
 
Damit diese Anpassungen übernommen werden, muss die Datei bzw.&nbsp;das Verzeichnis in der lokalen '''(.)nanorc''' eingebunden sein
{| class="wikitable"
|
1
|
include "/$HOME/nano/*.nanorc"
|}
 
==== Shellskripte unabhängig vom Dateinamen einfärben ====
Nano färbt von sich aus Shellscripte unabhängig vom Dateinamen ein, also auch wenn die Datei nicht auf <code>*.sh</code> endet. Das funktioniert jedoch nur, wenn das Shellscript sich auch als solches ausgibt, also z.&nbsp;B.&nbsp;mit einem Shebang für Shellskripte beginnt. Wer sich für die genauen Regeln interessiert, kann diese in <code>/usr/share/nano/sh.nanorc</code> nachlesen.
 
Wird ein Shellscript nicht als solches erkannt, so kann man mit folgendem Befehl die Einfärbung mit dem Schema "sh" erzwingen:
nano -Y sh [Datei]
 
=== Hinweis: ===
Selbstverständlich funktioniert das auch mit anderen Farbschemata, wie z.&nbsp;B.&nbsp;"html". Das ist aber nur selten nötig, da hier fast immer die Dateiendung zur Erkennung des Inhalts ausreicht.
 
Will man doch einmal eine Datei öffnen, ohne dass jegliche Syntaxhervorhebung angewandt wird (auch nicht das Schema "default"), so muss man nun Nano mit:
nano -Y none [DATEI]
starten, oder zur Laufzeit mit Alt  + Y  die Hervorhebung deaktivieren.


[[Kategorie:Linux/Editoren]]
[[Kategorie:Linux/Editoren]]

Aktuelle Version vom 12. November 2024, 18:39 Uhr

nano - Einfacher Test-Editor

Beschreibung

nano - »Nano's ANOther editor«
  • Inspiriert von Pico
  • Ermöglicht die Bearbeitung von Dateien in einem Terminal bzw. auf der Konsole, auch ohne grafische Umgebung.
  • Nano hat einen geringeren Funktionsumfang als z. B. VIM oder Emacs, ist dafür aber deutlich einfacher und intuitiver zu bedienen.
  • Daher eignet sich Nano besonders für kleinere, schnelle Bearbeitungen oder für das Schreiben von kurzen Skripten.

Der Editor unterstützt u.a. Syntax-Hervorhebung für verschiedene Programmiersprachen, Undo/Redo Funktionalität, Mausunterstützung (sofern ein Grafikserver läuft), automatische Einrückung, Speichern von Dateien mit MS-DOS oder Mac Zeilenenden u.v.m.

nano ist ein kleiner und freundlicher Editor
  • Er kopiert das Aussehen und Verhalten von Pico, ist aber freie Software und implementiert verschiedene Funktionen, die Pico fehlen, wie: Öffnen mehrerer Dateien, zeilenweises Rollen, rückgängig machen und Wiederholen, farbige Syntaxhervorhebung, Zeilennummern und fließenden Umbruch überlanger Zeilen.

Wenn Sie in der Befehlszeile einen Dateinamen angeben, können Sie den Cursor in einer bestimmten Zeile platzieren, indem Sie die Zeilennummer mit einem Pluszeichen (+) dem Dateinamen voranstellen.

  • Mit einem Komma können Sie sogar die gewünschte Spalte angeben.
  • Der Cursor kann in die erste oder letzte Zeile des Vorkommens einer bestimmten Zeichenkette gesetzt werden, indem Sie diese Zeichenkette nach einem +/ oder +? dem Dateinamen voranstellen.
  • Fügen Sie zusätzlich ein c und/oder r nach dem Pluszeichen ein, wird für die Zeichenkette Groß-/Kleinschreibung berücksichtigt genauer gesagt, die Zeichenkette als regulärer Ausdruck betrachtet.
  • Diese Suchmodi können explizit deaktiviert werden, indem Sie Groß- statt Kleinschreibung verwenden: C und/oder R.
  • Wenn die Zeichenkette Leerzeichen enthält, muss sie in Anführungszeichen gesetzt werden.
  • Ein Beispiel, in dem eine Datei geöffnet und der Cursor beim ersten Vorkommen des Wortes »Foo« gesetzt werden soll:
$ nano +c/Foo Datei

Als Spezialfall: wird beim Aufruf anstatt eines Dateinamens ein Minuszeichen (-) angegeben, liest nano Daten aus der Standardeingabe.

Installation

# apt-get install nano

Aufruf

$ nano [Optionen] [[+Zeile[,Spalte]] Datei] …
$ nano [Optionen] [[+[crCR](/|?)Zeichenkette] Datei] …

Optionen

Unix GNU Beschreibung
-A --smarthome macht die Pos1-Taste intelligenter.
  • Wenn die Pos1-Taste irgendwo gedrückt wird, außer am äußersten Anfang von Nicht-Leerraum in einer Zeile, dann springt der Cursor zu diesem Anfang (entweder vorwärts oder rückwärts).
  • Befindet sich der Cursor bereits an dieser Position, springt er zum tatsächlichen Anfang der Zeile.
-B --backup sichert beim Speichern einer Datei die vorherige Version mit dem Namen der aktuellen Datei, dem eine Tilde (~) angehängt wird.
-C Verzeichnis --backupdir=Verzeichnis erstellt nicht nur eine Sicherungsdatei und behält diese, sondern erstellt eine eindeutig nummerierte Datei jedes Mal, wenn eine Datei gespeichert wird – sofern Sicherungen aktiviert sind (-B).
  • Die eindeutig nummerierten Dateien werden im angegebenen Verzeichnis gespeichert.
-D --boldtext verwendet für die Benutzeroberfläche Fettdruck anstelle von inversem Text.
  • Dies kann durch Setzen der Optionen titlecolor, statuscolor, keycolor, functioncolor, numbercolor und/oder selectedcolor in Ihrer Datei nanorc außer Kraft gesetzt werden.
  • Siehe nanorc(5).
-E --tabstospaces wandelt jeden eingegebenen Tabulator in Leerzeichen um, und zwar in die Anzahl der Leerzeichen, wie der Tabulator an dieser Position einnehmen würde.
-F --multibuffer liest standardmäßig eine Datei in einen neuen Puffer ein.
-G --locking aktiviert beim Bearbeiten von Dateien die Dateisperrung im Vim-Stil.
-H --historylog speichert die letzten 100 Suchzeichenketten, Ersetzungszeichenketten und ausgeführten Befehle, so dass sie in späteren Sitzungen leicht wiederverwendet werden können.
-I --ignorercfiles

übergeht sowohl die systemweite nanorc als auch die nanorc des Benutzers.

-J Zahl --guidestripe=Zahl blendet einen Markierungsbalken in der angegebenen Spalte ein, anhand dessen Sie die Breite des Texts besser beurteilen können.
  • Die Farbe des Balkens kann mit der Anweisung set stripecolor in Ihrer Datei nanorc angepasst werden.
-K --rawsequences interpretiert Escape-Sequenzen direkt, anstatt sie durch ncurses übersetzen zu lassen.
  • Falls Sie diese Option benötigen, damit einige Tasten korrekt funktionieren, bedeutet das, dass die von Terminfo bereitgestellte Terminalbeschreibung dem tatsächlichen Verhalten Ihres Terminals nicht vollständig entspricht.
  • Dies kann beispielsweise passieren, wenn Sie sich per SSH an einer BSD-Maschine anmelden.
  • Wenn Sie diese Option verwenden, wird die Mausunterstützung in nano deaktiviert.
-L --nonewlines fügt nicht automatisch einen Zeilenvorschub an, wenn ein Text nicht mit einem solchen endet. (Das kann dazu führen, dass Sie POSIX-inkompatible Textdateien speichern.)
-M --trimblanks entfernt angehängten Leerraum beim automatischen harten Umbruch oder bei der Ausrichtung von Text vom Ende der Zeile.
-N --noconvert deaktiviert die automatische Umwandlung von Dateien aus dem DOS/Mac-Format.
-O --bookstyle fasst beim Ausrichten jede Zeile, die mit Leerraum beginnt, als Beginn eines Absatzes auf (außer wenn automatisches Einrücken aktiviert ist).
-P --positionlog protokolliert für die 200 zuletzt bearbeiteten Dateien die letzte Position des Cursors und setzt ihn beim erneuten Öffnen der Datei wieder an diese Stelle.
-Q "regulärer_Ausdruck" --quotestr="regulärer_Ausdruck"

legt den regulären Ausdruck für die Übereinstimmungsfindung für Zitate fest.

  • Der Vorgabewert ist »^([ \t]*([!#%:;>|}]|//))+«. (Beachten Sie, dass dabei \t für den echten Tabulator steht.)
  • Dadurch wird es ermöglicht, beim Verfassen von E-Mails Blöcke aus zitiertem Text neu auszurichten und Blöcke von Zeilenkommentaren beim Schreiben von Quellcode neu umzubrechen.
-R --restricted aktiviert den eingeschränkten Modus: Es wird nichts aus einer Datei gelesen oder in diese geschrieben, die nicht in der Befehlszeile übergeben wurde.
  • Das bedeutet, dass keine Verlaufsdateien gelesen oder geschrieben werden, keine Rechtschreibprüfung erlaubt wird, nichts an eine Datei angehängt oder ihr vorangestellt oder die Datei unter einem anderen Namen gespeichert wird, wenn bereits ein Name vergeben wurde; außerdem werden keine Sicherungsdateien erstellt.
  • Sie können den eingeschränkten Modus auch aktivieren, indem Sie nano mit einem Namen aufrufen, der mit »r« beginnt (zum Beispiel rnano).
-S --softwrap zeigt Zeilen, die länger als die Bildschirmbreite sind, in mehreren Zeilen an (Sie können diesen fließenden Zeilenumbruch so einrichten, dass an Leerzeichen statt grob am Bildschirmrand umgebrochen wird, indem Sie auch --atblanks verwenden). (Die frühere kurze Option -$ ist nun als veraltet anzusehen.)
-T Anzahl --tabsize=Anzahl setzt die Größe (Breite) von Tabulatoren auf die angegebene Anzahl Spalten.
  • Die Anzahl muss größer als 0 sein.
  • Der Vorgabewert ist 8.
-U --quickblank blendet die Statuszeile bereits nach einem Tastendruck anstelle von 20 aus.
  • Beachten Sie, dass die Option -c (--constantshow) dies außer Kraft setzt.
  • Wenn die Option --minibar oder --zero wirksam ist, blendet --quickblank eine Meldung bereits nach 0,8 Sekunden anstelle der vorgegebenen 1,5 Sekunden aus.
-V --version gibt die Versionsnummer aus und beendet das Programm.
-W --wordbounds erkennt Wortgrenzen anders, indem Interpunktionszeichen als Teil eines Wortes angesehen werden.
-X "Zeichen" --wordchars="Zeichen"

gibt an, welche anderen Zeichen (neben den normalen alphanumerischen Zeichen) als Teil eines Wortes betrachtet werden sollen.

  • Wenn Sie diese Option verwenden, dann werden Sie wahrscheinlich die Option -W (--wordbounds) nicht benötigen.
-Y Name --syntax=Name gibt den Namen der zu verwendenden Syntaxhervorhebung an.
  • Verwendet werden die in den nanorc-Dateien definierten Syntaxhervorhebungen.
-Z --zap bewirkt, dass durch Drücken einer unmodifizierten Rückschritt- oder Entf-Taste der markierte Bereich gelöscht wird (anstelle eines einzelnen Zeichens und ohne Auswirkung auf die Zwischenablage).
-a --atblanks bricht bei aktiviertem fließendem Zeilenumbruch bei Leerräumen anstatt immer beim Erreichen des Bildschirmrandes um.
-b --breaklonglines bricht die aktuelle Zeile automatisch hart um, wenn sie zu lang wird.
  • Diese Option ist das Gegenstück zu -w (--nowrap) – die zuletzt angegebene Option ist wirksam.
-c --constantshow zeigt die Cursorposition permanent in der Statuszeile an.
  • Beachten Sie, dass dies -U (--quickblank) außer Kraft setzt.
-d --rebinddelete interpretiert die Entf- und Rückschrittasten anders, so dass sowohl Rückschritt als auch Entf korrekt funktionieren.
  • Sie sollten diese Option nur verwenden, wenn auf Ihrem System entweder die Rückschrittaste als Entf-Taste wirkt oder die Entf-Taste als Rückschrittaste.
-e --emptyline verwendet die Leerzeile unter der Titelleiste nicht und lässt diese leer.
-f Datei --rcfile=Datei liest zum Setzen der Optionen für nano nur die angegebene Datei, anstatt sowohl die systemweite nanorc als auch die des Benutzers zu lesen.
-g --showcursor macht den Cursor im Dateibrowser (indem er auf den hervorgehobenen Eintrag gesetzt wird) und im Hilfebetrachter sichtbar.
  • Dies ist für Benutzer mit Braille-Zeile oder weniger schwerwiegenden Sehbehinderungen nützlich.
-h --help zeigt eine Zusammenfassung der verfügbaren Befehlszeilenoptionen an und beendet das Programm.
-i --autoindent rückt eine neue Zeile automatisch um die gleiche Anzahl Tabulatoren und/oder Leerzeichen wie die vorhergehende Zeile ein (oder wie die nächste Zeile, wenn die vorhergehende Zeile der Anfang eines Absatzes ist).
-j --jumpyscrolling rollt den Inhalt des Puffers um einen halben Bildschirminhalt statt um eine Zeile.
-k --cutfromcursor bewirkt, dass der Befehl zum Ausschneiden von Text (normalerweise ^K) nur von der aktuellen Cursorposition bis zum Ende der Zeile anstatt die gesamte Zeile ausschneidet.
-l --linenumbers Zeigt Zeilennummern links vom Textbereich an. (Jede Zeile mit einem Anker erhält außerdem eine Markierung im Randbereich.)
-m --mouse aktiviert Mausunterstützung, falls dies auf Ihrem System verfügbar ist.
  • Wenn aktiviert, können Sie den Cursor mittels Mausklicks platzieren, die Markierung (mit einem Doppelklick) setzen und Tastenkombinationen ausführen.
  • Die Maus wird im X Window System funktionieren, und auch auf der Konsole, wenn gpm läuft.
  • Text kann weiterhin durch Ziehen markiert werden, während die Umschalttaste gedrückt gehalten wird.
-n --noread fasst jeden in der Befehlszeile übergebenen Namen als neue Datei auf.
  • Dies ermöglicht nano, in benannte Pipes (Weiterleitungen) zu schreiben:

Es wird mit einem leeren Puffer begonnen und in die Pipe geschrieben, wenn der Benutzer die »Datei« speichert.

  • Auf diese Weise kann nano als Editor in Kombination mit beispielsweise gpg verwendet werden, ohne dass erst sensible Daten auf die Festplatte geschrieben werden müssen.
-o Verzeichnis --operatingdir=Verzeichnis legt das Verzeichnis fest, in dem gearbeitet werden soll.
  • Dadurch wird nano veranlasst, etwas Ähnliches wie ein »Chroot« (temporäres Wurzelverzeichnis) einzurichten.
-p --preserve erhält die Sequenzen XON und XOFF (^Q und ^S), so dass diese vom Terminal abgefangen werden.
-q --indicator zeigt eine Bildlaufleiste am rechten Rand des Editorfensters an.
  • Es zeigt die Position des Sichtfeldes im Puffer an, sowie welcher Anteil des Puffers vom Sichtfeld abgedeckt ist.
-r Anzahl --fill=Anzahl legt die gewünschte Breite für die Ausrichtung und den automatischen harten Zeilenumbruch auf die angegebene Anzahl Spalten fest.
  • Ist die Anzahl 0 oder kleiner, wird ein harter Zeilenumbruch an der Bildschirmbreite minus der Anzahl Spalten ausgeführt, wodurch sich der Umbruchpunkt an der Bildschirmbreite orientiert und sich mit verändert, wenn die Bildschirmbreite geändert wird.
  • Der Vorgabewert ist -8.
-s "Programm [Argument …]" --speller="Programm [Argument …]"

gibt das für die Rechtschreibprüfung und -korrektur zu verwendende Programm an, welches statt der eingebauten Korrektur verwendet werden soll, die hunspell(1) oder spell(1) aufruft.

-t --saveonexit speichert einen geänderten Puffer stets ohne Nachfrage (beim Beenden mit ^X).
-u --unix speichert eine Datei standardmäßig im Unix-Format.
  • Dies setzt das Standardverhalten von nano außer Kraft, in dem eine Datei in dem Format gespeichert wird, in dem sie bereits vorliegt.
  • Diese Option ist wirkungslos, wenn Sie auch --noconvert angeben.
-v --view zeigt lediglich die Datei an und verhindert die Bearbeitung (schreibgeschützter Modus).
  • In diesem Modus ist es dem Benutzer gestattet, auch andere Dateien zur Betrachtung zu öffnen, außer wenn ebenfalls --restricted angegeben ist.
-w --nowrap bricht die aktuelle Zeile nicht automatisch hart um, wenn sie zu lang wird.
  • Dies ist die Vorgabe.
  • Diese Option ist das Gegenstück zu -b

(--breaklonglines) – die zuletzt angegebene Option ist wirksam.

-x --nohelp zeigt die zwei Hilfezeilen am unteren Rand des Bildschirms nicht an.
-y --afterends bewirkt, dass »Strg+Pfeiltaste rechts« und »Strg+Entf« am Wortende anstatt am Wortanfang stoppt.
-% --stateflags verwendet die obere rechte Ecke des Bildschirms zum Anzeigen einiger Statusindikatoren, wenn Folgendes aktiv ist: I bei automatischer Einrückung, M bei Markierungen, L bei hartem Umbruch überlanger Zeilen, R bei der Aufzeichnung eines Makros und S bei fließendem Zeilenumbruch.
  • Wenn der Puffer geändert wurde, wird ein Stern (*) nach dem Dateinamen in der Mitte der Titelleiste angezeigt.
-_ --minibar unterdrückt die Anzeige der Titelleiste und zeigt stattdessen am unteren Bildschirmrand im Bereich der Statuszeile Informationen zum aktuellen Puffer an.
  • In dieser »Minibar« wird links der Dateiname angezeigt, gefolgt von einem Raute-Zeichen, falls der Puffer geändert wurde.
  • Rechts wird Folgendes angezeigt: die aktuelle Zeilen- und Spaltennummer, der Code des Zeichens unter dem Cursor (im Unicode-Format: U+xxxx), die gleichen Indikatoren, wie sie auch mit --stateflags angezeigt werden, sowie ein Prozentsatz, wie weit sich der Cursor in der Datei befindet (zeilenbezogen).
  • Beim Laden oder Speichern einer Datei und auch beim Wechsel zwischen Puffern wird nach dem Dateinamen die Anzahl der Zeilen im Puffer angezeigt.
  • Diese Zahl wird nach dem nächsten Tastendruck gelöscht oder durch einen [i/n]-Zähler ersetzt, falls mehrere Puffer geöffnet sind.
  • Die Zeile einschließlich Spaltennummer sowie der Zeichencode werden nur dann angezeigt, wenn --constantshow verwendet wird.
  • Mit M-C können Sie die Anzeige ein- oder ausblenden.
  • Die Statusindikatoren werden nur angezeigt, wenn --stateflags verwendet wird.
-0 --zero verbirgt alle Elemente der Benutzerschnittstelle (Titelleiste, Statuszeile und Hilfezeilen) und verwendet alle Zeilen des Terminals für die Anzeige des Pufferinhalts.
  • Die Statuszeile erscheint nur dann, wenn eine wichtige Meldung anzuzeigen ist und wird nach 1,5 Sekunden oder beim nächsten Tastendruck ausgeblendet.
  • Mit M-Z kann die Anzeige der Titelleiste und Statuszeile und mit M-X die Anzeige der Hilfezeilen ein- oder ausgeschaltet werden.
-! --magic Wenn weder der Name noch die erste Zeile der Datei einen Hinweis liefert, wird versucht, die anwendbare Syntax mittels Libmagic zu bestimmen.

Parameter

Umgebung

Rückgabewert

Anwendung

https://www.instagram.com/p/DAvXCF0SvM5/

Bearbeitung

Eingabe von Text und Bewegen innerhalb einer Datei ist einfach: durch Eingabe der Buchstaben und Verwenden der normalen Cursortasten.

  • Befehle können Sie mit der Strg-Taste (^) und den Alt- oder Metatasten (M-) eingeben.
  • Die Eingabe ^K löscht die aktuelle Zeile und schreibt sie in die Zwischenablage.
  • Mehrere aufeinander folgende Eingaben von ^K schreiben die gelöschten Zeilen zusammen in die Zwischenablage.
  • Jede Bewegung des Cursors oder Eingabe eines anderen Befehls führt dazu, dass die nächste Eingabe von ^K die Zwischenablage überschreibt.
  • Ein ^U fügt den aktuellen Inhalt der Zwischenablage an der aktuellen Cursorposition ein.

Wenn ein etwas genauerer Textteil ausgeschnitten oder kopiert werden soll, können Sie die Markierung mit ^6 beginnen, den Cursor zum gewünschten Ende bewegen (der markierte Text wird nun hervorgehoben) und dann mit ^K den Text ausschneiden oder mit M-6 in die Zwischenablage kopieren.

  • Sie können den markierten Text auch mit ^O in einer Datei speichern oder mit ^T^T die Rechtschreibung prüfen lassen.

In einigen Terminals kann Text auch mit den Pfeiltasten bei gedrückt gehaltener Umschalttaste markiert werden.

  • Wenn Sie außerdem die Strg- oder Alt-Taste gedrückt halten, wird dies beschleunigt.
  • Durch jede Bewegung des Cursors ohne Gedrückthalten der Umschalttaste wird eine solche Auswahl abgebrochen.

Die zwei Zeilen am unteren Bildschirmrand zeigen einige wichtige Befehle; die eingebaute Hilfe (^G) listet alle verfügbaren Befehle auf.

  • Die voreingestellten Tastaturschnellzugriffe können über eine Datei nanorc geändert werden, siehe nanorc(5).

Der Editor kann direkt im Terminal gestartet werden:

nano [OPTIONEN] [DATEI]

Gibt man keine Datei und keine Option an, öffnet sich ein leeres Editorfenster. Gibt man einen Dateinamen an, wird die entsprechende Datei direkt im Editorfenster geöffnet.

Tastenkürzel

einige Tastenkürzel
Tasten

(beide Spalten sind gleichwertig)

Aktion
Strg + G F1 Vollständige Liste der Tastenkürzel (M ("Meta") mit Alt oder Alt + ⇧ aufrufbar.) Hilfe anzeigen
Strg + X F2 Datei schließen
Strg + O F3 Datei speichern
Strg + W F6 Suche
Alt + W F16 Weitersuchen
Alt + R Strg + Alt Gr + ß Suchen/Ersetzen
Alt + ⇧ + Strg Alt + 6 Zeile (oder Markierung) in Zwischenablage kopieren
Strg + K F9 Zeile (oder Markierung) ausschneiden und in Zwischenablage kopieren
Strg + U F10 Inhalt der Zwischenablage einfügen
Alt + A Strg + 6 Markierung beginnen/ Markierung aufheben
Strg + A Pos1 Zum Zeilenanfang gehen
Strg + E Ende Zum Zeilenende gehen
Alt + Alt Gr + < Alt + Alt Gr + ß Zum Dateianfang gehen
Alt + ⇧ + 7 Alt + ⇧ + ß Zum Dateiende gehen
Alt + G Strg + ⇧ + - Zu einer bestimmten Zeile springen
Alt + D Dateistatistiken anzeigen
Strg + C Aktuelle Cursorposition anzeigen
Alt + C Aktuelle Cursorposition ständig anzeigen ein/aus
Alt + X Hilfezeilen anzeigen ein/aus
Alt + O Leerzeile unterhalb der Titelzeile ein/aus
Alt + Y Syntaxhervorhebung ein/aus

Konfiguration

Die systemweite Konfiguration von Nano ist in der Datei /etc/nanorc hinterlegt. Möchte man sich eine benutzerspezifische Konfiguration anlegen, kopiert man die Datei nach ~/.config/nano/nanorc (oder alternativ ~/.nanorc) und nimmt dort die gewünschten Änderungen vor. Die Datei ist ausführlich kommentiert, weitere Hilfe bekommt man auch beim Aufruf der man-Page von nanorc:

man nanorc

Syntaxhervorhebung

Nano bietet Syntaxhervorhebung für eine ganze Reihe von Programmiersprachen und Dateiformaten (wie JSON, XML). Die Dateien für die Syntaxhervorhebung sind im Verzeichnis /usr/share/nano abgelegt. Die Dateien haben die Endung .nanorc, der Dateiname vor dem Punkt sagt, für welche Sprache oder Dateiart die Syntaxhervorhebung definiert ist, also z. B. python.nanorc für Python oder json.nanorc für JSON-Dateien.

Standardmäßig ist die Hervorhebung für alle vorhandenen Formate bzw. Sprachen aktiviert. Das geschieht durch folgende Zeile in /etc/nanorc.

include "/usr/share/nano/*.nanorc"

Während der Arbeit mit nano kann durch Alt + Y die Syntaxhervorhebung ein- oder ausgeschaltet werden.

Farben der Syntaxhervorhebung anpassen

Um die Farben der Syntaxhervorhebung systemweit zu ändern, müssen die Einstellungen in /usr/share/nano/ geändert werden. Sollen sie für einen Benutzer geändert werden, kann die entsprechende Datei z. B. nach ~/.nano/ kopiert und angepasst werden.

Damit diese Anpassungen übernommen werden, muss die Datei bzw. das Verzeichnis in der lokalen (.)nanorc eingebunden sein

include "/$HOME/nano/*.nanorc"
Shellskripte unabhängig vom Dateinamen einfärben

Nano färbt von sich aus Shellscripte unabhängig vom Dateinamen ein, also auch wenn die Datei nicht auf *.sh endet. Das funktioniert jedoch nur, wenn das Shellscript sich auch als solches ausgibt, also z. B. mit einem Shebang für Shellskripte beginnt. Wer sich für die genauen Regeln interessiert, kann diese in /usr/share/nano/sh.nanorc nachlesen.

Wird ein Shellscript nicht als solches erkannt, so kann man mit folgendem Befehl die Einfärbung mit dem Schema "sh" erzwingen:

nano -Y sh [Datei]

Hinweis:

Selbstverständlich funktioniert das auch mit anderen Farbschemata, wie z. B. "html". Das ist aber nur selten nötig, da hier fast immer die Dateiendung zur Erkennung des Inhalts ausreicht.

Will man doch einmal eine Datei öffnen, ohne dass jegliche Syntaxhervorhebung angewandt wird (auch nicht das Schema "default"), so muss man nun Nano mit:

nano -Y none [DATEI]

starten, oder zur Laufzeit mit Alt + Y die Hervorhebung deaktivieren.

Anmerkungen

Die Option -z (--suspendable) wurde entfernt.

  • Das Schieben in den Hintergrund ist standardmäßig aktiviert und ist über ^T^Z erreichbar.
  • Falls Sie zum Schieben in den Hintergrund ein einfaches ^Z bevorzugen, fügen Sie bind ^Z suspend main zu Ihrer Nanorc hinzu.

Falls kein alternativer Befehl zur Rechtschreibprüfung in der Befehlszeile oder in einer der nanorc-Dateien angegeben ist, sucht nano in der Umgebungsvariable SPELL danach.

In einigen Fällen versucht nano, den Puffer in einer Notfalldatei zu speichern.

  • Dies geschieht hauptsächlich dann, wenn nano ein SIGHUP oder SIGTERM empfängt oder der Speicher ausgeschöpft ist.
  • Der Puffer wird in eine Datei namens nano.save geschrieben, falls für den Puffer noch kein Name vergeben wurde, oder die Endung .save wird zum aktuellen Dateinamen hinzugefügt.
  • Falls eine Notfalldatei gleichen Namens im aktuellen Verzeichnis bereits existiert, wird außer der Endung .save eine Zahl hinzugefügt (zum Beispiel .save.1, damit sie eindeutig unterscheidbar wird.
  • Im Mehrpuffer-Modus schreibt nano alle offenen Puffer in deren jeweilige Notfalldateien.

Umschaltungen

Unter den oben genannten Optionen können einige auch ein- und ausgeschaltet werden, wenn nano läuft.

  • Beispielsweise schaltet M-L den harten Umbruch langer Zeilen, M-S den fließenden Umbruch, M-N die Anzeige der Zeilennummern, M-M die Verwendung der Maus, M-I die automatische Einrückung und M-X die Anzeige der Hilfezeilen ein oder aus.
  • Am Ende des mit ^G angezeigten Hilfetexts finden Sie eine vollständige Liste.

Der Umschalter M-X ist speziell: Er funktioniert in allen Menüs, außer im Hilfebetrachter und im Linter.

  • Alle anderen Umschalter funktionieren nur im Hauptmenü.

Problembehebung

Sollten die Definitionsdateien für die Syntaxhervorhebung, die in der nanorc eingetragen wurden, nicht oder nur teilweise erkannt werden, dann stört sich das Programm möglicherweise daran, dass "include"-Einträge in der globalen Konfigurationsdatei /etc/nanorc und der lokalen ~/.config/nano/nanorc vorhanden sind. Abhilfe schafft dann die Definitionsdateien in einer der beiden Dateien auzukommentieren.

Die Aufzeichnung und Wiedergabe von Tastaturmakros funktioniert nur in einem Terminalemulator fehlerfrei, jedoch nicht in einer Linux-Konsole (VT), da Letztere standardmäßig nicht zwischen modifizierten und unmodifizierten Pfeiltasten unterscheiden kann.

Bitte melden Sie alle andere Fehler, die sie entdecken, auf: https://savannah.gnu.org/bugs/?group=nano.

Wenn nano abstürzt, speichert es alle geänderten Puffer sicherheitshalber in Dateien mit der Endung .save.

  • Falls es Ihnen gelingt, den Absturz zu reproduzieren und Sie einen Backtrace haben wollen, dann definieren Sie die Umgebungsvariable NANO_NOCATCH.

Konfiguration

Dateien

Wenn --rcfile angegeben ist, liest nano nur die angegebene Datei zum Setzen der Optionen, Syntaxhervorhebung und Tastenbindungen.

  • Ohne diese Option wird nano zwei Konfigurationsdateien lesen: zuerst die nanorc des Systems (falls diese existiert) und danach die nanorc des Benutzers (falls diese existiert), entweder ~/.nanorc oder $XDG_CONFIG_HOME/nano/nanorc oder ~/.config/nano/nanorc, je nachdem, welche zuerst gefunden wird.
  • Siehe nanorc(5)

für weitere Informationen zu den möglichen Inhalten dieser Dateien.

Siehe /usr/share/nano/ und /usr/share/nano/extra/ für die verfügbaren Definitionen der farblichen Syntaxhervorhebungen.



Anhang

Siehe auch

Dokumentation

/usr/share/doc/nano/
Man-Page
  1. nanorc(5)
Info-Pages

Links

Projekt
  1. https://nano-editor.org/
Weblinks
  1. https://wiki.ubuntuusers.de/Nano
  2. GitHub: serialhex/nano-highlight
    Sammlung ergänzender Konfigurationsdateien für Syntax-Highlighting