Langer Zeilenumbruch in Nano

66

Wenn ich eine authorised_keys-Datei in Nano bearbeite, möchte ich lange Zeilen umbrechen, damit ich das Ende der Zeilen sehen kann (dh sagen, wessen Schlüssel es ist). Im Wesentlichen möchte ich, dass es wie die Ausgabe von aussiehtcat authorised_keys

Ich drücke also, Esc + Lwas der Metaschlüssel zum Aktivieren des Zeilenumbruchs auf meiner Plattform ist, und es wird die Meldung angezeigt, dass der Zeilenumbruch aktiviert wurde, aber die Zeilen nicht wie erwartet umgebrochen werden.

Ich verwende Terminal unter OSX 10.8.5

Codecowboy
quelle

Antworten:

89

Verwenden Sie zum Anzeigen des von Ihnen beschriebenen Zeilenumbruch-Stils nano's "soft wrapping": Esc+ $.

Der Befehl Esc+, den LSie (und alle anderen) ausprobiert haben, erledigt "Hard Wrapping".

Hinweis zur Tastennotation - Wenn Sie Linux noch nicht kennen, bedeutet die Notation Esc+ $Drücken und Loslassen Escund dann $. Die vollständige Tastendruck Sequenz dann ist Esc, Shift+4.

(Dies bedeutet nicht , dass Sie beim Drücken die Esc-Taste gedrückt halten $.)

Quelle: https://www.nano-editor.org/dist/v2.9/nano.html (Suche nach --softwrap)


Hinweis zu Softwrap- und Formatierungsfehlern - Wenn Sie mit Nano noch nicht vertraut sind, sollten Sie ein wenig auf Softwrap achten. Wenn Sie eine Konfigurationsdatei oder etwas anderes bearbeiten, das auf Zeilenumbrüche oder Einzüge reagiert, können Formatierungsfehler auftreten. Bis Sie sich mit dem Verhalten von Softwrap vertraut gemacht haben, empfehle ich, vor dem Speichern eine schnelle Überprüfung mit deaktiviertem Softwrap durchzuführen (die Tastensequenz erneut ausführen).

Beachten Sie die Güte, die andere in ihren Antworten unten angegeben haben - weil verschiedene Betriebssysteme und verschiedene Versionen von nano die Dinge ein wenig anders machen:

  • Wenn Sie Softwrap die ganze Zeit mögen, legen Sie es in Ihrem .nanorc fest, wie in der Antwort von x0a unten beschrieben , da es ein bisschen durchgehender ist als das von Prashant.
  • Wenn Sie einen Himbeer-Pi haben, beachten Sie die Antwort von Chainsawmascara, dass ein zusätzlicher Tastendruck erforderlich ist, damit der Softwrap wirksam wird.
  • Wenn Sie einen Mac haben, wie die Antwort von lodeOfCode unten , können Sie immer nano und hier aktualisieren und sich so im warmen Glanz von Softwrap aalen!

Coreyt
quelle
3
Dies war mein größter Tierärger in Nano. Danke, dass Sie das geregelt haben.
user208145
1
Ich würde empfehlen, Zeilennummern Alt + Shift + 3oder set linenumbersin der ~/.nanorcEinstellungsdatei zu aktivieren .
Daniel Sokolowski
1
Bitte beachten Sie, dass ältere Versionen von Nano diese Funktion nicht enthalten. In Version 2.0.9 ist es nicht enthalten, in Version 2.5.3 jedoch. Wenn Sie eine Version verwenden, die diese Funktion nicht unterstützt, wird in der unteren Mitte des Textbearbeitungsbereichs die Warnmeldung "Unbekannter Befehl" angezeigt.
Frederickjh
15

Ich lese die Antworten hier und muss das klarstellen!

Nano unterstützt zwei verschiedene Formen des Zeilenumbruchs, und es kann wichtig sein, den Unterschied zu kennen!

Erstens ist die Meta-Taste oft die Alt-Taste, aber nicht unbedingt.

  • Der Zeilenumbruch wird mit Meta- aktiviert $. Bricht Zeilen um, ohne Zeilenumbruchzeichen in die Datei einzufügen. Das heißt, der Effekt ist rein visuell.
  • Der Zeilenumbruch wird mit Meta- aktiviert L. Bricht Zeilen um, indem Zeilenumbrüche in die Datei eingefügt werden . Die Datei wird physisch geändert.

Wenn Sie es also in einer Datei aktivieren, in der Zeilenumbrüche von Bedeutung sind (Konfigurationsdateien, Programmiersprachen, Skripte), möchten Sie grundsätzlich keine Zeilenumbrüche, da sonst die Bedeutung des Codes geändert wird.

Außerdem hätten Sie diese Verknüpfungen mit ^ G (dh Ctrl- G) in Nano gefunden.

Jonas
quelle
5
Meta $= Alt+ Shift+4
JamesTheAwesomeDude
1
Soft Wrapping ist in nanorc mit aktiviert set softwrap, während Hard Wrapping in nanorc mit deaktiviert ist set nowrap.
Mwfearnley
14

Ich habe gerade nach Zeilenumbrüchen für Nano gesucht und diese waren sehr erfolgreich. Daher werde ich meine Ergebnisse für GNU nano 2.2.6 auf dem Raspberry Pi, Raspbian GNU / Linux 7, veröffentlichen: Esc+ Lgab mir dieselbe Nachricht; aber damit der Zeilenumbruch wirksam wird, musste ich die Zeile ändern. Sobald ich ein anderes Zeichen in die lange Zeile eingetippt hatte, kam der Wrapping ins Spiel.

Kettensägenmascara
quelle
7

Öffne den nanorc generell unter ~ / .nanorc oder / etc / nanorc, kommentiere die Zeile aus

set nowrap

Und Kommentarzeile

set softwrap
Prashant Shubham
quelle
1
Unter pfSense (und möglicherweise auch unter FreeBSD im Allgemeinen) wird die Datei / usr / local / etc / nanorc benötigt. Gelingt dies nicht, find / -type d -name etcfinde ich wahrscheinlich andere mögliche Standorte.
Mwfearnley
5

Das Festlegen eines kurzen Alias ​​für Ihren Nano-Editor funktioniert ebenfalls gut. Ich benutze normalerweise:

 alias  e='nano -\$cwS'
 alias se='sudo nano -\$cwS'

(Legen Sie diese in ~/.bashrc(oder .bash_aliasesauf einigen Systemen) oder Ihrem bevorzugten Shell-Start fest.)

Flaggen / Optionen verwendet:

\$= Aktivierte Weichverpackung von Linien ( entkommen Backslash verwenden)
c = anzeigen Position konstant Cursor (unten)
w = disable jede ‚harte Umhüllung‘
S = glatte Scrollen

Und einmal (wie bereits erwähnt) in Editor, Verwendung Esc, $umschalten Softpack ON / OFF.

bshea
quelle
3

Sie können die Standardeinstellungen festlegen ~/.nanorc. Beachten Sie jedoch, dass die Konfigurationseinstellungen für Nano 1, Nano 2 und Nano 3 unterschiedlich sind.

Auf Nano 1 haben Sie nur die set nowrapEinstellung, mit der alle Zeilenumbrüche deaktiviert werden .

Auf nano 2 , set softwrapwurde hinzugefügt, die softwrapping und deaktiviert hardwrapping ermöglicht. set nowrapwurde so geändert, dass nur das Hardwrapping deaktiviert wird

Auf nano 3 , set softwrapwird ignoriert und nano setzt sich auch , wenn Sie auf hardwrap set nowrap.

Wenn Sie also einen Textumbruch für lange Zeilen wünschen, der Ihre Konfigurationsdateien nicht beschädigt (nur Softwrapping), funktioniert dies für die Versionen 2 und 3 : Fügen Sie die folgenden 2 Zeilen hinzu~/.nanorc

set nowrap
set softwrap
x0a
quelle
Dies ist auch eine nachdenkliche Antwort, und ich beziehe mich auf meine Antwort oben.
Coreyt
2

Mac-Benutzer werden darauf hingewiesen, dass die mit High Sierra (v2.0.6) oder früher gelieferte Version von Nano den hier beschriebenen Zeilenumbruch nicht unterstützt. Sie erhalten einen unbekannten Befehlsfehler. v2.2 ist die früheste Version mit Erwähnung von Soft Wrap in den Manpages. Versuchen Sie also nicht eine Stunde lang all diese Lösungen wie ich.

Esc + L funktioniert wie erwartet.

lodeOfCode
quelle