Ich habe gerade angefangen, tmux zu verwenden, und es gefällt mir sehr gut, aber ich muss in der Lage sein, in den Puffern / Fenstern / Fenstern zu scrollen, die ich geöffnet habe. Es ist mir egal, ob es mit der Maus funktioniert oder nicht. Wenn ich die tmux-Manpage durchsuche, werden nur zwei Instanzen des Wortes "scroll" angezeigt, und beide haben mit dem Kopiermodus zu tun. Gibt es eine Möglichkeit, einen Bildlauf durchzuführen, ohne den gesamten Aufwand für den Kopiermodus aufzuwenden?
1297
copy-mode
ist die Möglichkeit, den Verlauf anzuzeigen (und optional Inhalte daraus zu kopieren).set -g mode-mouse on
Die Antwort von per @ chaiyachaiya war der Gewinner für michAntworten:
Ctrl- bDann [können Sie mit den normalen Navigationstasten (z. B. Up Arrowoder PgDn) navigieren . Drücken Sie, qum den Bildlaufmodus zu beenden.
Alternativ können Sie die Taste Ctrl- b PgUpdirekt in den Kopiermodus zu gehen und eine Seite nach oben (was es klingt wie Sie die meiste Zeit wollen)
Im
vi
Modus (siehe unten) können Sie die Seite auch mit Shift- kund Shift- zeilenweise nach oben / unten scrollen j(wenn Sie sich bereits im Scroll-Modus befinden). Unverschoben bewegt sich der Cursor anstelle der Seite.Auszüge aus der Manpage :
Plus ein paar mehr. Beachten Sie, dass Sie
C-b
zweimal drücken müssen, wenn Sie dieseC-b
Taste zum Blättern verwenden, da sie als Befehlstaste gebunden ist. Informationen zum Voranstellen eines Kopiermodusbefehls mit einer Wiederholungszahl finden Sie auf der Manpage.Sie können den Schlüsselbindungsmodus mit Ctrl- bund dann einstellen
oder
vi
.quelle
C-b =
istchoose-buffer
voreingestellt. Meinten SieC-b [
(wascopy-mode
standardmäßig ist)? Sie können auch verwendenC-b PageUp
, um den Kopiermodus direkt auf der vorherigen Seite zu starten (sehr praktisch, wenn Sie wissen, was Sie anzeigen / kopieren möchten, ist die aktuelle Seite bereits gescrollt).C-b [
in den Kopiermodus wechseln und dann entweder die emacs-Taste oder die vi-Taste verwenden, um einen Bildlauf durchzuführen. Dies scheint eine Menge von Schritten zu sein, nur um zu scrollen, aber die Vorteile von tmux überwiegen immer noch diese Belästigungen. Ich habe ein Macbook und es gibt keinen PageUp-Key: - \. (Wie mache ich Schlüssel mit Abschriften wie du, Dennis?)<kbd>Ctrl</kbd>
Nun, Sie sollten sich überlegen, wie Sie das Scrollen richtig einstellen können: Fügen Sie Ihre
tmux.conf
oder
Bei mir hat es in Fenstern und Scheiben geklappt. Jetzt ist tmux einfach perfekt.
Praktisches tmux enthält weitere Informationen zu tmux.conf-Dateien.
quelle
q
Scroll-Modus durch Drücken von beenden .set -g mouse on
wird und das Scrollen nicht automatisch wie zuvor in den Kopiermodus wechselt.Aus meiner .tmux.conf:
Dies ermöglicht natives XTerm-Scrollen.
quelle
Für den neuesten tmux 2.1 ist dies die richtige Antwort, um mit der Maus zu scrollen:
Es reicht nicht aus, nur Ihre .tmux.conf neu zu laden, sondern Sie müssen Ihre tmux neu starten, z
tmux kill-server && tmux
entnommen aus https://github.com/tmux/tmux/issues/145
quelle
Shift+click
wenn Sie den Mausmodus aktiviert haben.In meinem Fall nur opt+ UpArrowund opt+ DownArrowunter OSX.
quelle
tmux
kann auch unter OS X verwendet werden.Dies ist die Art und Weise, wie ich es gemacht habe, und die Gründe, warum ich denke, dass es besser ist als die Standardmethode.
Um es auszuprobieren, geben Sie alle Codeabschnitte ein
~/.tmux.conf
.Schritt 1. Ändern Sie den Präfixschlüssel, damit Sie kein Bit erreichen müssen. 'B' scheint eine enge Taste zu sein, befindet sich jedoch in der Mitte der beiden Zeigefinger (bei 'F' bzw. 'J'). Da diese Abkürzung in tmux von wesentlicher Bedeutung ist, ist Cj viel besser, da es sich um eine Null-Hand-Bewegung handelt (abgesehen vom Drücken der Taste).
Schritt 2. 'S' (um in den Kopiermodus zu gelangen) ist: 1) Schließen (gleicher Grund wie oben), 2) beinhaltet die andere Hand (vergleiche: das 1-2 in Boxing oder den
ls
Befehl zum Anzeigen von Dateien in einem Verzeichnis ) und 3) könnten als Mnemonik für "scrollen" angesehen werden (obwohl der Kopiermodus nicht nur das Scrollen zum Gegenstand hat).Schritt 3. Der letzte Teil, das eigentliche Scrollen. 'P' und 'N' sind den Emacs-Benutzern für diesen Zweck vertraut. Sie sind nah, intuitiv ('P' steht über 'N' auf der Tastatur) und mnemonisch ("Vorherige" und "Nächste"). Wenn Sie nur in Emacs gescrollt haben und dann zu tmux gegangen sind, ist es sinnvoll, diese Verknüpfungen zu haben.
Ich fand jedoch, dass 'I' und 'K' noch besser sind - sie sind noch näher als 'P' und 'N' und intuitiv (aus dem gleichen Grund); Was Mnemonics betrifft - da das Scrollen so häufig vorkommt, spielt Mnemonics keine Rolle, da die Verknüpfungen bald Ihr Gehirn umgehen und in das Muskelgedächtnis gelangen.
quelle
Ich habe viel nach dieser und der für mich besten Lösung gesucht, die in diesem ausführlichen Handbuch aufgeführt ist: http://tangledhelix.com/blog/2012/07/16/tmux-and-mouse-mode/
Fügen Sie diese Bindungen in ~ / .tmux.conf hinzu:
Wenn der oben beschriebene Ansatz implementiert ist, können Sie auch aus Bereichen in einem Fenster kopieren, indem Sie zunächst mit Präfix + in jeden Bereich zoomen .
Ein wichtiges Detail, das im Mausmodus fehlte, ist das Drücken der Umschalttaste, bevor ein zu kopierender Bereich ausgewählt wird. Dies kopiert es in den traditionellen Terminal-Puffer anstatt in den tmux-Kopierpuffer. ( https://wiki.archlinux.org/index.php/Tmux#Scrolling_issues )
quelle
Ich würde empfehlen, das tmux-better-mouse-mode- Plugin auszuprobieren, um die meisten Probleme mit der tmux-mouse zu lösen.
Es ist kompatibel mit Tmux 2.1+ und dem neuen
set-option -g mouse on
Ansatz.quelle
scroll-without-changing-pane
in Kombination mitscroll-without-changing-pane
undemulate-scroll-for-no-mouse-alternate-buffer
. Jetzt ist meine Erfahrung mit tmux viel besser.Das Einzige, was für mich funktioniert, ist Folgendes
~/.tmux.conf
(Möglicherweise müssen Sie einen Neustart durchführen, damit dies wirksam wird.)
Aktualisieren:
Ich habe festgestellt, dass diese Lösung nicht mehr funktioniert, wenn Sie die Einstellung in Putty Connection> Data> Terminal-type in "putty" (zur Behebung einiger Formatierungsprobleme) von "xterm" ändern.
Update 2:
Verwenden Sie dies, wenn Sie "Kitt" als Terminaltyp wünschen:
set -g terminal-overrides "putty*:XT:smcup@:rmcup@:kUP5=\eOA:kDN5=\eOB:kLFT5=\eOD:kRIT5=\eOC"
quelle
set -ga terminal-overrides ',xterm*:smcup@:rmcup@'
Das hat bei mir funktioniert:
quelle
set -g mouse on
FWIW, auf einem MacBook / OSX Mojave, nach dem Ausführen von
ctrl+[
:up arrow
für die Aufstellungdown arrow
für die Linie nach untenfn + up arrow
für die Seite nach obenfn + down arrow
zum runterblätternquelle
Das einzige, was bei mir funktioniert hat, war, dass vim ~ / .tmux.conf -g mode-mouse auf ### gesetzt hat. Fügen Sie diese Einstellung mit vim ein und geben Sie dann die Quelle für die Datei ein. tmux-Quelldatei ~ / .tmux.conf
quelle
quelle
Ctrl-B
(Ctrl-A
ist die Standardeinstellung für den GNU-Bildschirm).