tmux new riquadro ha la home directory come predefinita invece della directory precedente


24

Quando premo Ctrl+ "(crea un nuovo riquadro) mentre ci si trova in un riquadro, PWD /tmpad esempio, il nuovo riquadro viene avviato come cartella home ~.

Ho guardato /unix//a/109255/72471 e mi ha aiutato con lo stesso problema relativo a Windows.

Tuttavia, non ho potuto risolvere il split-windowproblema inserendo

bind " split-window -c "#{pane_current_path}"

nel mio ~/.tmux.conf.

Sto usando tmux 1.9a e quindi non voglio una soluzione piuttosto disordinata per le versioni precedenti dichiarate qui (non funziona nel mio caso, comunque):

bind '"' set default-path "" \; split-window -v \; set -u default-path

Come posso dire tmuxdi impostare la directory predefinita come percorso corrente di un riquadro, durante la creazione di un nuovo riquadro?

Risposte:


45

Prova a specificare vper verticale o horizzontale

Il mio .tmux.conffile ha:

bind \ split-window -h -c '#{pane_current_path}'  # Split panes horizontal
bind - split-window -v -c '#{pane_current_path}'  # Split panes vertically

(Uso \e -come divisori di riquadri con un dito.)

Nuovi riquadri si aprono per me utilizzando la mia directory corrente, ovunque io sia.
È sicuramente una caratteristica chiave per me!

Un'altra cosa critica con tmux (questo era il problema in questo caso) è che devi applicare le modifiche con:

tmux source-file ~/.tmux.conf

Si noti che la chiusura dei terminali, anche la disconnessione e il riavvio, NON applicheranno queste modifiche: è necessario utilizzare effettivamente quel comando (o usare Ctrl+ B :source-file ~/.tmux.conf).

Puoi vedere il mio .tmux.conffile completo su https://github.com/durrantm/setups .


2
Hai detto "Nota che chiudere i terminali, anche disconnettersi e riavviare NON applicherà più modifiche". Ovviamente se hai rimosso solo tmux non lo farà, ma uccidere e riavviare il server applicherà le modifiche :).
— soyuka,

2
Grazie mille! Questo è stato super utile. Tuttavia, sono abbastanza sicuro che il riavvio del computer applica le modifiche apportate a :)
— vitiral

Il riavvio del computer non ha applicato modifiche per me che in precedenza mi hanno causato confusione. ymmv
— Michael Durrant,

Si noti che la stessa cosa può essere fatta pernew-window
— math2001

25
bind '%' split-window -h -c '#{pane_current_path}'  # Split panes horizontal
bind '"' split-window -v -c '#{pane_current_path}'  # Split panes vertically
bind c new-window -c '#{pane_current_path}' # Create new window

Aggiungi l'ultima riga alla tua ~/.tmux.confper mantenerla anche $PWDin una nuova finestra.


6

È perché,

bind " split-window -c "#{pane_current_path}"

dovrebbe essere

bind '"' split-window -c "#{pane_current_path}"

2

Nel caso in cui qualcuno arrivi qui cercando, questo funziona bene con tmux 2.7 e dovrebbe andare bene con probabilmente tutte le versioni

unbind '"'
bind '"' split-window -v -c '#{pane_current_path}'  # Split panes vertically

unbind %
bind % split-window -h -c '#{pane_current_path}'  # Split panes horizontal
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.