Kennt jemand ein besseres Terminalprogramm für Schneeleoparden, das die Textbearbeitung ermöglicht? (dh zu einem bestimmten Charakter springen, ohne die Pfeile einzeln benutzen zu müssen) etc ..? Vielen Dank!
UPDATE: Entschuldigung, ich wollte einen Befehl aktualisieren, der bereits geschrieben wurde. Sagen wir, ich wollte so etwas tun script/generate migration add_field_to_something
. Ich habe das geschrieben und Rails hat eine Migration generiert. Jetzt entscheide ich mich, diese Migration loszuwerden, weil ich einen Fehler gemacht habe. Dazu muss ich schreiben script/destroy migration add_field_to_something
. Im Moment habe ich drei Möglichkeiten: 1) Schreiben Sie den gesamten Befehl von Anfang bis Ende. 2) Drücken Sie die Aufwärtstaste, um den letzten Befehl zu reproduzieren, und dann den Pfeil nach links, bis ich zum Wort komme. generate
Löschen und schreiben Sie dann destroy
oder 3) Kopieren Sie den letzten Befehl in TextEdit, wählen Sie ihn mit der Maus aus (oder überspringen Sie Wörter mit Befehl + Pfeil nach links, um eine schnellere Auswahl zu erzielen - im Terminal nicht möglich) und ersetzen Sie den Befehl durch das Wortdestroy
Kopieren Sie dann zurück zum Terminal. Meine Frage ist - gibt es ein Terminalprogramm, das das Bearbeiten mit der Maus / das Überspringen von Wörtern wie in TextEdit (dh mit Befehl + Pfeil nach links) ermöglicht, um Zeit zu sparen?
Vielen Dank!
Es gibt eine Menge, die Sie mit der Befehlszeilenbearbeitung in
bash
der Standard-Shell tun können . Beachten Sie, dass dies unabhängig davon ist, welches Terminal-Programm verwendet wird. Es gibt viele Informationen dazu im Abschnitt " Befehlszeilenbearbeitung" der Bash-Dokumentation oder sehen Sie sich diesen Screencast an .Aktualisieren Laut meinem Kommentar zu einer anderen Antwort können Sie Mf (Option + F) und Mb (Option + B) verwenden, um wortweise vorwärts und rückwärts zu gehen. Der von mir verlinkte Screencast zeigt, wie das geht. Außerdem wird das Durchsuchen des Befehlsverlaufs mit Cr (etwas, das ich noch nie ausprobiert hatte) erläutert.
quelle
In der Shell gibt es eine Vielzahl von Tipps und Tricks, die mit Tastenkombinationen und Befehlen der Shell genauso schnell behoben werden können.
Wenn Sie beispielsweise die zsh-Shell und Ihr Beispielszenario verwenden, haben Sie die vierte Option:
Hoppla! Das wollte ich nicht. Lass mich das tippen ...
Fest! Das
!*
bedeutet: Verwenden Sie alle Parameter aus dem vorherigen Befehl .Alternativ hätten Sie auch Folgendes eingeben können:
Der
r
Befehl bedeutet Ersetzen im vorherigen Befehl. Der vorherige Befehl würde also ausgeführt, wobei " generate" durch " destroy" ersetzt wird .Ich denke, was ich sage, ist, dass Programmierer faul sind. Sehr faul. Sie haben sich Hunderte von Verknüpfungen und Tricks für die automatische Vervollständigung ausgedacht, um diese Jobs schnell und einfach zu gestalten. Wenn Sie erst einmal gelernt haben, wie eine Shell verwendet und optimiert wird, werden Sie möglicherweise feststellen, dass das "Korrigieren" von Befehlen mithilfe der Mausauswahl möglicherweise nicht die effizienteste Methode ist.
PS.
Viele Rails-Entwickler haben auch eine Alias-Datei erstellt
~/.zsh
, die von ihren aufgerufen wird.zshrc
.Das spart also noch mehr Tastenanschläge.
script/destroy
Möglicherweise möchten Sie keinen Alias erstellen, um versehentliche Aufrufe zu vermeiden. ;-)quelle
Ich bevorzuge iTerm für Terminaloperationen in OSX. http://iterm.sourceforge.net/
Das Terminal ermöglicht die Interaktion mit der Maus (über Standard-XMouse) und hat viele Schnickschnack, die das Standard-Terminal nicht hat.
quelle
Eine andere Möglichkeit ist die Verwendung des Emacs-Shell-Modus. Wenn Sie mit Emacs vertraut sind, können Sie den Mx-Shell-Modus eingeben. Dadurch erhalten Sie eine normale Eingabeaufforderung. Sie können alle normalen Emacs-Bearbeitungsbefehle verwenden.
EINE WARNUNG, da der Aufwärtspfeil (oder Cp) den Cursor tatsächlich eine Zeile nach oben bewegt, müssen Sie Mp und Mn verwenden, um die vorherigen und nächsten Befehle abzurufen ...
Soweit ich weiß, hat vim vielleicht einen ähnlichen Modus, aber ich glaube fest an den Emacs-Kult, also ...
quelle
Verwenden Sie vi als Editor (export EDITOR = vi) und stellen Sie Ihre Shell auf den vi-Modus ein (set -o vi). Danach sind Sie goldrichtig. Wenn Sie sich an die große Zeile erinnern möchten, die Sie hatten, drücken Sie die Esc-Taste und den Schrägstrich, um eine Suche in Ihrem Befehlsverlauf zu starten. Geben Sie die ersten Zeichen ein, die Sie eingegeben haben. Durchfahren Sie sie, indem Sie das vordere Leerzeichen drücken und dann eintreten. Genießen.
quelle