tmux new pane tiene el directorio de inicio como predeterminado en lugar del directorio anterior


24

Cuando presiono Ctrl+ "(crear un nuevo panel) mientras estoy en un panel, que tiene, PWD /tmppor ejemplo, el nuevo panel comienza como mi carpeta de inicio ~.

Miré /unix//a/109255/72471 y me ayudó con el mismo problema relacionado con Windows.

Sin embargo, no pude solucionar el split-windowproblema insertando

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

en mi ~/.tmux.conf.

Estoy usando tmux 1.9a y, por lo tanto, no quiero una solución bastante desordenada para las versiones anteriores que se indican aquí (de todos modos, no funciona en mi caso):

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

¿Cómo puedo decir tmuxque establezca el directorio predeterminado como la ruta actual de un panel, al crear un nuevo panel?

Respuestas:


45

Intente especificar vpara vertical u hhorizontal

Mi .tmux.confarchivo tiene:

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

(Yo uso \y -como divisores de panel de un dedo.)

Se abren nuevos paneles para mí usando mi directorio actual, donde sea que esté.
¡Sin duda es una característica clave para mí!

Otra cosa crítica con tmux (este fue el problema en este caso) es que debe aplicar los cambios con:

tmux source-file ~/.tmux.conf

Tenga en cuenta que cerrar terminales, incluso cerrar sesión y reiniciar, NO aplicará cambios tmux: debe usar ese comando (o usar Ctrl+ B :source-file ~/.tmux.conf).

Puede ver mi .tmux.confarchivo completo en https://github.com/durrantm/setups .


2
Usted dijo "Tenga en cuenta que cerrar terminales, incluso cerrar sesión y reiniciar NO aplicará cambios tmux". Por supuesto, si solo desconectó tmux, no lo hará, pero matar y reiniciar el servidor aplicará cambios :).
soyuka

2
¡Muchas gracias! Esto fue súper útil. Sin embargo, estoy bastante seguro de que reiniciar la computadora aplica cambios tmux :)
vitiral

Reiniciar la computadora no me aplicó cambios anteriormente, lo que me generó confusión. ymmv
Michael Durrant

Tenga en cuenta que se puede hacer lo mismo paranew-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

Agregue la última línea a su ~/.tmux.confpara mantener $PWDen una nueva ventana también.


6

Eso es porque,

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

debiera ser

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

2

En caso de que alguien llegue buscando, esto funciona bien con tmux 2.7 y debería estar bien con todas las versiones

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

unbind %
bind % split-window -h -c '#{pane_current_path}'  # Split panes horizontal
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.