Können in Bash (Mac / Linux-Terminal-Shell) die Aufwärts- und Abwärtspfeiltasten so eingestellt werden, dass sie wie in Texteditoren funktionieren?


8

Wenn ich in Texteditoren die Aufwärts- und Abwärtspfeiltasten drücke, bewegt sich der Cursor zwischen den Textzeilen.

Wenn ich in Bash einen langen Befehl eingebe, der mehrere Zeilen umfasst, und die Aufwärts- und Abwärtspfeiltasten drücke, wird der Befehlsverlauf durchlaufen.

Ich möchte das frühere Verhalten in Bash. Ist das möglich? Wenn nicht, gibt es eine Möglichkeit, den Cursor in einem mehrzeiligen Befehl direkt nach oben oder unten zu bewegen?


Sie bewegen sich zwischen Linien ... nur dass die Linie sehr lang ist.
vonbrand

Antworten:


11

Nein, es ist nicht möglich. Bash verwendet GNU Readline für die interaktive Zeileneingabe . In Readline gibt es weder einen Befehl, der sich wie gewünscht zwischen Anzeigezeilen bewegt, noch eine Konfigurationsvariable, die mit der visuellen Variablen für die Zeilenverschiebung von GNU Emacs vergleichbar ist und bewirkt, dass die nächste und vorherige Zeile um Anzeigezeilen verschoben werden.


Enttäuschend, aber danke! Und ich denke, die Antworten auf eine andere Frage wären für Leute mit derselben Frage nützlich: stackoverflow.com/questions/657130/…
Frungi


3

Vielleicht suchst du so etwas wie xiki. Es ist wie eine Shell / ein Texteditor.

Hier ist eine Video-Demo: http://youtu.be/bUR_eUVcABg


Xiki sieht toll aus! Ich möchte so etwas, das unter Windows laufen kann ...
Max

2
@Max laut der Github-Seite des Projekts: "Wir haben gerade el4r gepatcht, daher besteht die Möglichkeit, dass Xiki in Windows funktioniert." Sie können es hier überprüfen: github.com/trogdoro/xiki
Jason

Das ist erstaunlich ordentlich und nerdig, aber wirklich nicht das, was ich tun wollte. Ich wollte nur Bash oder eine andere gängige Shell verwenden. Trotzdem danke!
Frungi

3

Sie können Ctrl+ Leftund Ctrl+ verwenden Right, um durch Wörter anstatt durch Zeichen zu navigieren Homeund Endzum Anfang und Ende des eingegebenen Befehls zu gelangen.


2
Auch Strg + A, um zum Anfang zu gehen, und Strg + E, um zum Ende zu gehen
ignis

1
@ignis du solltest das in eine Antwort setzen.
Evilsoup

2

Weitere Navigationsverknüpfungen finden Sie in der bash(1)Manpage unter der Überschrift Commands for Moving.


1

Strg + A, um zum Anfang zu gelangen, und Strg + E, um zum Ende des Befehls zu gelangen.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.