Welche Funktionen bieten Marks im El Capitan Terminal?

117

Seit dem Upgrade auf OS X El Capitan ist mir eine Änderung im Terminal aufgefallen: Ausgeführte Zeilen zeigen links eine öffnende Klammer und rechts eine schließende Klammer, wie in diesem Screenshot dargestellt:

Terminal

Ähnliche Fragen wurden hier gestellt:

Einige der Fragen beziehen sich auf diese Klammern als Markierungen , und das Menü Bearbeiten des Terminals enthält einige Einträge, die sich auf Markierungen beziehen , zum Beispiel:

  • Bearbeiten> Markierungen> Als Eingabeaufforderung markieren und Zurücksenden
  • Bearbeiten> Zu vorheriger Marke zurücksetzen
  • Bearbeiten> Navigieren> Zur vorherigen Marke springen

Menü bearbeiten

Gibt es eine Zusammenfassung, wofür diese Marken verwendet werden können? Ich habe in keinem der El Capitan-Funktionsübersichten einen Hinweis auf diese neue Funktion gesehen.

nwinkler
quelle
9
Wenn wir nur einen besseren Weg gefunden hätten, Siracusa so viel zu bezahlen, dass wir das Betriebssystem monatelang unter die Lupe nehmen
könnten

Antworten:

155

Markierungen im Terminal

Die neuen Terminal- Markierungen (verfügbar ab OS X 10.11 - El Capitan) ähneln den Lesezeichen , die auch im Terminal verfügbar sind, sodass Sie Fensterpositionen markieren und zu einem späteren Zeitpunkt zurückkehren können.

Markierungen (oder Lesezeichen) beziehen sich nicht auf Ihren Befehlsverlauf, sondern auf den im Terminalfenster / -register verwendeten Bildlaufpuffer.

Eine Linie markieren

Standardmäßig wird Enterdie Zeile jedes Mal markiert , wenn Sie im Terminal-Fenster auf drücken. Dies wird durch eine öffnende Klammer am Anfang der Zeile und eine schließende am Ende angezeigt. Dieses Standardverhalten kann über den Menüeintrag Bearbeiten> Markierungen> Aufforderungszeilen automatisch markieren deaktiviert werden. Wenn dies deaktiviert ist, können Sie einen Befehl weiterhin manuell ausführen und mit Cmd+Enter(oder mit dem Menüeintrag Bearbeiten> Markierungen> Als Eingabeaufforderung markieren und Zurücksenden) markieren .

Wenn Sie die automatische Markierung aktiviert haben und einen Befehl ausführen möchten, ohne ihn als Eingabeaufforderung zu markieren , können Sie dies mit Cmd+Shift+Enter(oder mit dem Menüeintrag Bearbeiten> Markierungen> Zurücksenden ohne Markierung ) tun .

Markierungen deaktivieren

Die automatische Markierung von Linien kann über den Menüeintrag Bearbeiten> Marken> Aufforderungslinien automatisch markieren deaktiviert werden .

Über die Befehlszeile kann dasselbe mit erreicht werden

defaults write com.apple.Terminal AutoMarkPromptLines -bool NO

Markierungen verstecken

Wenn Sie die Markierungsfunktion verwenden möchten, aber die Klammern am Anfang und Ende der Zeile nicht sehen möchten, blenden Sie sie über den Menüeintrag Ansicht> Markierungen ausblenden aus . Dadurch bleibt die unten angegebene Funktionalität erhalten, die Klammern werden jedoch nicht mehr angezeigt.

Zwischen Markierungen springen

Nachdem eine Linie markiert wurde, können Sie mit Cmd+Upoder mit schnell zur vorherigen oder zur nächsten Marke springen Cmd+Down. Ähnliche Optionen stehen für Lesezeichen und zum Auswählen der nächsten / vorherigen Marke zur Verfügung:

Menü bearbeiten

Manuelles Markieren einer Zeile

Zusätzlich zur automatischen Markierung können Sie Markierungen auch manuell hinzufügen, indem Sie eine Zeile in der Terminalausgabe mit der Maus auswählen und dann den Menüeintrag Bearbeiten> Markierungen> Als Eingabeaufforderung markieren (oder Cmd+U) auswählen .

Anwendungsfälle

Die Markierungsfunktion ist nützlich, wenn einige Ihrer ausgeführten Befehle eine große Anzahl von Ausgaben erzeugen und Sie schnell zu der Position blättern möchten, an der Sie den Befehl eingegeben haben. Durch Drücken von gelangen Cmd+UpSie dorthin. Durch wiederholtes Drücken gelangen Sie weiter nach oben, während Sie durch erneutes Drücken Cmd+Downwieder nach unten gelangen. Der Zielort wird bequem hervorgehoben, wenn Sie herumspringen / scrollen.

Markiert die Verwendung

Inhalt auswählen

Die gleiche Markierungsfunktion kann zur Auswahl des Terminal-Ausgangs verwendet werden. Durch Drücken von Cmd+Shift+Upwird der Inhalt bis zur vorherigen Marke und durch Drücken Cmd+Shift+Downvon bis zur nächsten Marke ausgewählt. Dies ist nützlich, wenn Sie Protokollausgaben oder andere Inhalte vom Terminal kopieren möchten.

Diese Funktion ist auch über das Menü Bearbeiten> Navigieren verfügbar, während Sie die ShiftTaste drücken:

Menü navigieren

Zusammenfassung

Nachdem ich das jetzt ein paar Tage lang benutzt habe, finde ich es unglaublich nützlich. Das Scrollen durch Hunderte von Ausgabezeilen, um den Anfang der Ausgabe des Befehls zu finden, ist plötzlich viel einfacher geworden.

Ich frage mich, warum dieses neue Feature nicht besonders erwähnt wird - ich habe es in keinem der exemplarischen Vorgehensweisen für El Capitan gesehen. Die Terminal-Hilfe enthält derzeit auch keine Details zu dieser Funktion.

nwinkler
quelle
1
Gute Antwort. Um ein wenig hinzuzufügen, können Lesezeichen auch benannt werden. Stellen Sie sich also Lesezeichen als Kapitel in einem Buch vor und markieren Sie sie als Absätze. Sie können ein neues Lesezeichen erstellen, wenn Sie eine neue Aufgabe im selben Terminal starten. So können Sie sich genau merken, wo Sie begonnen haben und was Sie getan haben.
user14492
Das ist eigentlich sehr nützlich. Vielen Dank für diese tolle Erklärung! Ich habe mich gefragt, warum ich dasselbe vor Monaten beobachtet habe, aber ich habe es ignoriert, bis mir klar wurde, dass es nichts mit meiner modifizierten PS1 zu tun hat. Toll!
Bretonics
4

Sieht aus wie eine Art "schnelles / leichtes Lesezeichen". Ich vermute, dass das Deaktivieren von "Aufforderungszeilen automatisch markieren" die Funktion deutlicher macht. Danach speichert Cmd-Enter die Marke explizit und Cmd-Up / Down springt zwischen ihnen.

Da Sie Marken in Lesezeichen umwandeln können und umgekehrt, würde ich sie als leichtgewichtige Lesezeichen oder Lesezeichen der zweiten Ebene betrachten.

Fonso
quelle
1
Das scheint nicht ganz richtig zu sein. Wenn ich Cmd + Up verwende , durchläuft es nicht meinen Verlauf, sondern scrollt das gesamte Terminalfenster zum zuvor markierten Befehl.
Nwinkler
Ich habe El Capitan (noch) nicht installiert und meine Antwort ist ein bisschen unangebracht. Wenn es sich um eine Verlaufssuchfunktion handelt, wie sie von @fonso erwähnt wurde, hat Apple anscheinend die alte Funktion <kbd> CTRL </ kbd> - <kbd> R </ kbd> von bash überarbeitet, mit der Sie eine umgekehrte interaktive Verlaufssuche durchführen können . Und Apple scheint es visualisiert zu haben.
Garex
2
Nein, ist es nicht. Wie ich in meinem Kommentar sagte, hat es keine Überlappung mit der STRG + R-Verlaufssuche. Es sieht so aus, als ob die Markierungsfunktion als eine Art automatisches Lesezeichen funktioniert, mit dem Sie schnell durch den Puffer des Terminalfensters scrollen können.
Nwinkler
Entschuldigung, alles in Ordnung, es markiert den Scroll-Punkt, nicht die Geschichte! Ich werde die Antwort bearbeiten.
Fonso