Ich habe eine Schlüsselzuordnung in VIM, die so aussieht:
map <F5> :silent !tmux send-keys -t 0:0 C-m "python %" C-m<cr>
Wenn ich F5 drücke, führt vim mein aktuelles Python-Skript in tmux-Sitzung 0, Fenster 0 aus. Befindet sich Fenster 0 derzeit jedoch in einem Bildlaufstatus (dh Shift-PgUp oder Maus-Bildlauf), führt tmux den Befehl aus, scrollt jedoch nicht weiter neue Ausgabe.
Wie sende ich einen Schlüssel an das tmux-Fenster, der den Bildlaufmodus beendet? (Ich möchte, dass es bei der Ausgabe gescrollt wird)
Hinweis : Normalerweise verlasse ich den Bildlaufmodus durch Drücken von Esc, konnte jedoch nicht herausfinden, wie eine Escape-Taste mit gesendet werden soll tmux send-keys
. Ich habe versucht zu senden, C-[
aber das hat nicht funktioniert.
cat | od -t x2
in tmux aus und führen Sie:tmux send-keys $'\e\n\004'
von einem anderen Ort aus ( dh ESC, NL, Cd). Sie sollten sehen0a1b
oder1b0a
abhängig von Ihrer Architektur Endianess.scrollTtyOutput
zu erreichen, müssen Sie Ihr Terminal aktivieren , das vom Terminal abhängig ist.tmux
Schriftrolle ausbrechen, lesen Sie einfach Ihre Frage noch einmal und sehen Sie, dass ich falsch lag. Löscht diese Antwort in Kürze.scrollTtyOutput
Option für das Terminal nicht ausreicht . Wenn der Befehl ausgeführt wirdtmux
, wird er nicht als Terminalausgabe registriert. Ich habe eine wirklich hässliche Arbeit dafür, ich werde es posten, wenn nichts anderes vorgeschlagen wird.