Wie springe ich mit der Maus auf iTerm / Terminal zu einem Ort?
43
Die meiste Zeit arbeite ich an einem Terminal.
Gibt es eine Anwendung / ein Plugin über iTerm oder eine andere Terminal-ähnliche Anwendung, mit der ich die Cursorposition meines Terminals mit einer Maus steuern kann?
Ich möchte zum Cursor springen. Der Anwendungsfall ist: Wenn ich eine lange, durch Leerzeichen begrenzte Zeile habe, möchte ich zu einer bestimmten Stelle springen. Das Verwenden der Tastatur erfordert viele Tastenanschläge.
Sairam
Wenn Sie bereits Terminal verwenden, schätzen Sie wahrscheinlich die Tastatur. Lernen Sie die Tastaturkürzel, um zum Anfang / Ende der Zeile zu springen und wortweise zu navigieren. Dadurch sparen Sie viele Tastenanschläge und sind wahrscheinlich schneller als die Maus.
Zumindest in Terminal.app können Sie gedrückt halten, optionwährend Sie klicken, um in Ihrer aktuellen Zeile zu springen (das bedeutet eigentlich nur die Zeile. Wenn Ihre aktuelle Eingabeaufforderung also so lang ist, dass sie in eine zweite Eingabezeile optionübergeht, müssen Sie -klicken an den Anfang der "zweiten" Zeile und dann mit den Pfeiltasten zur "ersten" Zeile optionspringen, wo Sie erneut klicken können.)
Option klicken, interessant. Das habe ich noch nie gewusst. Achten Sie jedoch darauf, auf die Linie zu klicken, Heiliger Mist. Ich verstehe nicht einmal, was passiert, wenn ich über / unter die aktuelle Zeile klicke. Ich nehme an, es drängt sich mehrmals auf, aber ich bin mir ziemlich sicher, dass der Befehlsverlauf nicht genau übereinstimmt.
Jason Salaz
Nun, es wird nur die Anzahl der Spalten gelesen, auf die Sie klicken und zu dieser Position in der aktuellen (!) Zeile springen. Wenn Sie sich also am Ende einer umbrochenen Eingabeaufforderung befinden (z. B. Zeile 2: Spalte 45) und bei gedrückter Wahltaste in der ersten Zeile (z. B. Zeile 1: Spalte 4) auf etwas klicken, gelangen Sie in Spalte 4 (großartig) bleib in Zeile 2 (falsch!).
Asmus
2
Die Funktionsweise von Option-Click besteht darin, dass das Äquivalent der Pfeiltasteneingaben ausgegeben wird. Dies funktioniert gut in Editoren wie Emacs, aber wenn Sie sich an der Bash-Eingabeaufforderung befinden, interpretiert es Auf / Ab als "Vorheriger / Nächster Befehl im Verlauf". Wenn Sie also bei gedrückter Wahltaste auf eine andere Stelle als die Zeile klicken, in der sich die Eingabeaufforderung befindet, wird der Befehlsverlauf durchlaufen, anstatt den Cursor zu bewegen.
Chris Seite
Funktioniert in iTerm2.
Ahmet Alp Balkan
9
Es ist schon eine Weile her, dass diese Frage auftauchte und ich habe das Folgende auf dieser Plattform bereits in Option-Klick in iTerm und im Issue-Tracker von iTerm2 erwähnt, aber vielleicht hilft es dem einen oder anderen:
Hallo, wollte Sie nur wissen lassen, dass ich diese Funktion in iTerm2 implementiert habe. Es ist noch nicht im offiziellen iTerm2-Repo, aber wenn Sie es ausprobieren möchten , können Sie es bei github finden .
Da es nur von mir getestet wurde, halte es für nicht stabil. Ich habe es mit bash, vi und emacs getestet und mein Bestes gegeben, um dem Verhalten von Terminal.app zu ähneln.
Ist die Mausmeldung in der letzten Version unterbrochen? Es funktioniert nicht mehr für mich, ich sehe nicht den Cursor "o" und ich kann nicht herausfinden, wie ich es zurückbekomme.
Michael
Ich nehme das zurück. Die Maus-Berichterstellung funktioniert nur in einigen Fällen nicht. Wenn Sie beispielsweise auf einem anderen Computer ssh ausführen, stellen Sie eine Verbindung zu einer TMUX-Sitzung her, in der bereits Emacs ausgeführt wird. Das hat früher funktioniert. Jetzt müssen Sie manchmal Emacs beenden und neu starten, bevor die Maus-Berichterstellung funktioniert ...
Michael
Es scheint nur zu einer Position in der aktuellen Zeile zu gehen. Ist es möglich, irgendwo auf den aktiven Befehl zu klicken?
Skeleton Bow
6
Die Tastatur ist oft dein bester Freund. In einer Standardkonfiguration steuert Ihre Shell einen Großteil der Navigation in der Eingabeaufforderung.
Option+ bgeht ein Wort zurück (der Cursor steht am ersten Buchstaben des vorherigen Wortes).
Option+ fgeht ein Wort vorwärts (der Cursor steht nach dem nächsten Wort auf dem Nichtbuchstaben).
Shift+ Fn+ Left Arrow (←)setzt den Cursor an den Anfang der Zeile. ( Ctrl+ macht adas auch.)
Shift+ Fn+ Right Arrow (→)setzt den Cursor an das Ende der Zeile. ( Ctrl+ macht edas auch.)
Wenn ich also einen langen Befehl habe, zum Beispiel:
Und wenn ich anfange, Option+ zu bdrücken, stoppt der Cursor auf dem A- In-Bereich, dem O- In-Output, dem D- In-Deployment usw.
Wenn ich an den Zeilenanfang gehe und Option+ drücke, stoppt fder Cursor bei dem Leerzeichen nach rsync, dem Leerzeichen nach avz, dem Leerzeichen nach progress, den / after Sites usw.
Ich mag Ihre achtsame Lösung "XY-Problem". Obwohl die ursprüngliche Frage nicht beantwortet wurde, ist sie eine sehr würdige Alternative. Ist es jedoch beabsichtigt, dass Sie manchmal CMD + b und Option + b sagen?
Cornelius Roemer
1
Nein, das war ein Fehler von meiner Seite. Der Befehl sollte hier niemals verwendet werden, da er das Verhalten des Terminalfensters und nicht das Verhalten der Shell / Bewegung steuert.
Jason Salaz
5
In iTerm2 halten Sie die Alt-Taste (links oder rechts) gedrückt und klicken, um den Cursor an eine beliebige Position in einer beliebigen Zeile zu bewegen.
Wenn Sie speziell an Bewegungen in Vim interessiert sind, können Sie diese set mouse=azu Ihrer ~/.vimrcDatei hinzufügen .
Es funktioniert in iTerm für Bewegung. Sie können Abschnitte auch so markieren, als ob Sie in den visuellen Modus gewechselt wären, sodass Sie sie ruckeln oder löschen oder Code auskommentieren können, abhängig von Ihren Plugins.
Sehr bequem können Sie auch schnell mit einem Zwei-Finger-Dia oder einem Mausrad durch ein großes Dokument scrollen.
Der einzige Nachteil besteht darin, dass es schwierig ist, Text auszuwählen, den Sie zur Verwendung in anderen Anwendungen kopieren möchten. Sie müssen jedoch nur drücken, optionwährend Sie auswählen.
Beachten Sie auch, dass Sie, wenn Sie etwas wie Vimpager hinzufügen (auch auf Macports), nach dem Hinzufügen auch durch die Manpages scrollen können:
export PAGER=/opt/local/bin/vimpager #or wherever vimpager is installed
alias less=$PAGER
Antworten:
Zumindest in Terminal.app können Sie gedrückt halten, optionwährend Sie klicken, um in Ihrer aktuellen Zeile zu springen (das bedeutet eigentlich nur die Zeile. Wenn Ihre aktuelle Eingabeaufforderung also so lang ist, dass sie in eine zweite Eingabezeile optionübergeht, müssen Sie -klicken an den Anfang der "zweiten" Zeile und dann mit den Pfeiltasten zur "ersten" Zeile optionspringen, wo Sie erneut klicken können.)
quelle
Es ist schon eine Weile her, dass diese Frage auftauchte und ich habe das Folgende auf dieser Plattform bereits in Option-Klick in iTerm und im Issue-Tracker von iTerm2 erwähnt, aber vielleicht hilft es dem einen oder anderen:
Hallo, wollte Sie nur wissen lassen, dass ich diese Funktion in iTerm2 implementiert habe. Es ist noch nicht im offiziellen iTerm2-Repo, aber wenn Sie es ausprobieren möchten , können Sie es bei github finden .
Da es nur von mir getestet wurde, halte es für nicht stabil. Ich habe es mit bash, vi und emacs getestet und mein Bestes gegeben, um dem Verhalten von Terminal.app zu ähneln.
Es gibt auch eine vorkompilierte Binärdatei auf Github. ITerm_v1.0.0.20120312.git-b919985b.zip (für i386 / x86_64 / ppc).
Natürlich ist jedes Feedback willkommen.
quelle
Die Tastatur ist oft dein bester Freund. In einer Standardkonfiguration steuert Ihre Shell einen Großteil der Navigation in der Eingabeaufforderung.
Option+ bgeht ein Wort zurück (der Cursor steht am ersten Buchstaben des vorherigen Wortes).
Option+ fgeht ein Wort vorwärts (der Cursor steht nach dem nächsten Wort auf dem Nichtbuchstaben).
Shift+ Fn+ Left Arrow (←)setzt den Cursor an den Anfang der Zeile. ( Ctrl+ macht adas auch.)
Shift+ Fn+ Right Arrow (→)setzt den Cursor an das Ende der Zeile. ( Ctrl+ macht edas auch.)
Wenn ich also einen langen Befehl habe, zum Beispiel:
$ rsync -avz --progress ~/Sites/Development/My/Project web@server:/deployment/output/area
Und wenn ich anfange, Option+ zu bdrücken, stoppt der Cursor auf dem A- In-Bereich, dem O- In-Output, dem D- In-Deployment usw.
Wenn ich an den Zeilenanfang gehe und Option+ drücke, stoppt fder Cursor bei dem Leerzeichen nach rsync, dem Leerzeichen nach avz, dem Leerzeichen nach progress, den / after Sites usw.
quelle
In iTerm2 halten Sie die Alt-Taste (links oder rechts) gedrückt und klicken, um den Cursor an eine beliebige Position in einer beliebigen Zeile zu bewegen.
quelle
Wenn Sie speziell an Bewegungen in Vim interessiert sind, können Sie diese
set mouse=a
zu Ihrer~/.vimrc
Datei hinzufügen .Es funktioniert in iTerm für Bewegung. Sie können Abschnitte auch so markieren, als ob Sie in den visuellen Modus gewechselt wären, sodass Sie sie ruckeln oder löschen oder Code auskommentieren können, abhängig von Ihren Plugins.
Sehr bequem können Sie auch schnell mit einem Zwei-Finger-Dia oder einem Mausrad durch ein großes Dokument scrollen.
Der einzige Nachteil besteht darin, dass es schwierig ist, Text auszuwählen, den Sie zur Verwendung in anderen Anwendungen kopieren möchten. Sie müssen jedoch nur drücken, optionwährend Sie auswählen.
Beachten Sie auch, dass Sie, wenn Sie etwas wie Vimpager hinzufügen (auch auf Macports), nach dem Hinzufügen auch durch die Manpages scrollen können:
zu deinem
.profile
oder.bashrc
.quelle