Come posso scorrere verso l'alto o verso il basso in tmux con Terminal.app?


62

Quando sono tmuxsolo in una parte del testo appare. Se provo a scorrere verso l'alto o verso il basso la console scorre verso l'alto ma non il testo effettivo . Se faccio CTRL + b seguito da [, vedo nella barra di stato *tmux, e se premo la freccia su o giù posso effettivamente andare su / giù sul testo riga per riga . Quando premo qvedo nella riga di stato bash.

Quando lo CTRL+bseguo Page UPo Pagela console va su o giù ma non il testo.

Come posso scorrere il testo verso l'alto o verso il basso in più di una riga alla volta?


Ciò di cui sono rimasto sorpreso, ma che sembra funzionare immediatamente, è scorrere con il mouse centrale mentre si utilizza tmux all'interno di gnome-terminal.
— Anthon,

Risposte:


89

Se stai usando Terminal.app di OS X, acquisirà i Page up/downtasti premuti e scorrerà semplicemente il contenuto della finestra, come se avessi usato la barra di scorrimento. Puoi usare Shift+ Page up/downper inviarli all'applicazione all'interno del terminale.

Usando quello, dovresti essere in grado di scorrere una pagina alla volta usando:

  1. Control+B
  2. [
  3. Tasti freccia o Shift+Page up/down
  4. Control+ Cal termine dello scrollback

Se vuoi cambiarlo per comportarti come qualsiasi altra app terminale su ogni altra piattaforma, puoi andare su Terminale -> Preferenze, Impostazioni, scegliere il tuo profilo e andare su Tastiera, e scambiare i collegamenti con "pagina giù / pagina su" e "sposta pagina giù / sposta pagina su":

Schermata delle impostazioni della tastiera Terminal.app


+1 anche se non riesco a provarlo ma sembra essere una risposta vincente. Ricordo di aver provato CMDcon le frecce ma non ricordo di aver provato SHIFT. Inoltre swap the bindings for "page down/page up" and "shift page down/shift page upcosa intendi? Non sono sicuro di cosa fare. Spero davvero che funzioni perché i miei nervi sono completamente distrutti da questi
— Jim

@Jim Dai un'occhiata allo screenshot. Se apri le impostazioni sul tuo computer, vedrai che i tuoi tasti "Pagina su / giù" e "Sposta pagina su / giù" hanno azioni diverse da quelle che ho (queste sono le associazioni: quale chiave fa quale azione). Se li cambi, puoi cambiare cosa succede quando tieni il turno o non lo fai. (Se li stai modificando, puoi inserire \033premendo Esc)
— mrb

Non ho il mio macdisponibile per verificare questo in questo momento, ma nel tuo screenshot shift page downha un testo cioè scroll to next page in buffer. Questo è un testo speciale che fa esattamente ciò che dice? Cioè definisce alcune mappature? C'è anche un buon libro su questi in mac? Perché sono impazzito con la tastiera nelle ultime settimane
— Jim

@Jim non conosco nessun libro; Sono solo circondato da persone cresciute su Mac. Per quanto riguarda le impostazioni chiave, avrà più senso una volta che lo stai effettivamente facendo. :)
— sig.

Ok. Proverò questo al più presto. La ringrazio per la risposta. Sono sicuro che mi hai dato la soluzione al mio problema !!! Lo accetterò non appena lo collaudo
— Jim

31

Uso la combinazione predefinita su MacBook Pro pre Yosemite: fn+ ⇧+ ↑o fn+ ⇧+ ↓.

EDIT: ho trovato su un MBP che esegue Yosemite fn+ ↑o fn+ ↓dovrebbe funzionare di default.

Nella documentazione viene spesso mostrato come ⇞ o ⇟


1
Questo funziona per me su un nuovo Air con 10.9.4 senza modificare alcuna preferenza o file di configurazione o eseguire comandi.
— Paul A Jungwirth,

8

Modifica il file ~ / .tmux.conf, inserisci l'impostazione 'mouse' e dai origine al file, ovvero:

###Find tmux version first:
tmux -V
> 1.8 

###For tmux version 1.8;
vim ~/.tmux.conf ### file
set -g mode-mouse on  ### Edit the .tmux.conf file with this setting
tmux source-file ~/.tmux.conf

###For tmux 2.1 version on:
vim ~/.tmux.conf ### file
set -g mouse on ### Edit the .tmux.conf file with this setting
tmux source-file ~/.tmux.conf

Funziona perfettamente!
— Sibbs Gioco d'azzardo

7

Un aggiornamento dei comandi di associazione nella risposta di Rob e in risposta ai commenti di Alex:

Ho anche trovato page-upe page-downnon sono validi i comandi tmux (v1.8), un modo corretto di aggiornare il tuo ~/.tmux.confè:

bind-key -t (emacs|vi)-copy j page-up
bind-key -t (emacs|vi)-copy ; page-down

Scegliere sia emacs o vi seconda di ciò che tmux stile utilizza, consultare mode-keysin tmux manuale

Successivamente è possibile scorrere le pagine verso il basso con je ;in modalità copia


1
Link rapido su come mettere tmux in modalità vi blog.sanctum.geek.nz/vi-mode-in-tmux
— JiminyCricket

Se leggi attentamente l' articolo pubblicato da JiminyCricket, viene spiegato che la sintassi sopra è solo per tmux versione 2.3 e precedenti. Se hai una versione più recente, dopo aver abilitato la modalità vi, il comando list-keys -T copy-mode-vimostrerà i collegamenti dei tasti nella nuova sintassi (buoni esempi da seguire). Se si desidera creare un'associazione di pagina in su, ad esempio, utilizzare la rigabind-key -T copy-mode-vi j send-keys -X page-up
— mareoraft

3

Da https://wiki.archlinux.org/index.php/Tmux

Se riscontri problemi con lo scorrimento di Shift-PageUp / Shift-PageDown nel tuo terminale, prova questo:

set -g terminal-overrides 'xterm *: smcup @: rmcup @'

Potrebbe anche essere una cosa di emulazione terminale, provare una delle seguenti.

export TERM=vt100
export TERM=ansi
export TERM=xterm

forse uno di quelli lo farebbe.

C'è anche bind-key, in ~/.tmux.conf

bind-key j page-up
bind-key ; page-down

si legherebbe je ;al precedente e al prossimo.


1
page-upe page-downnon sono comandi tmux (v1.8) validi, quindi questi ultimi due comandi danno un errore:Unknown command: page-(up|down)
— Alex Leach,

Vedi la risposta di Ronnie di seguito per far funzionare le pagine su e giù
— Silfheed,

1

Verifica di utilizzare le associazioni di tasti tmux appropriate (vi vs emacs) provando entrambi i set: https://superuser.com/questions/196060/selecting-text-tmux-copy-mode

Ho avuto un problema simile in cui potevo spostare il cursore con i tasti freccia ma non potevo scorrere in alto o in basso usando Control+ U/ De non potevo selezionare e copiare usando Spacee Enter. Si scopre che tmux era in modalità emacs sul mio Mac e vi in ​​Linux, anche se non l'ho mai impostato esplicitamente per nessuno dei due sistemi operativi.


0

Se non conosci OS X e hai familiarità con le scorciatoie da tastiera di Windows e Linux, probabilmente avrai l'abitudine di usare il CTRLper molte cose. In OS X il tasto Comando (noto anche come Apple) viene spesso utilizzato al posto del CTRLtasto.

Inoltre, anziché i tasti Pagina, prova a utilizzare Command + Up(o gli altri tasti direzionali) per spostare il cursore o lo schermo.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.