tmux sin tener en cuenta el archivo de configuración

88

Acabo de instalar tmux en Ubuntu 10.04 e intenté reasignar la clave de prefijo C-acreando el archivo ~/.tmux.confcon estas líneas:

set-option -g prefix C-a
unbind-key C-b

Al iniciar tmux, tanto regularmente como con -f ~/.tmux.conf, el prefijo es efectivamente el mismo valor predeterminadoC-b

No hay errores ni advertencias de ningún tipo.

¿Alguna idea de lo que está mal con la carga de la conf?

GJ
fuente
Funciona para mí ™. Intenta ejecutar strace -s9999 -f -o tmux.strace tmux -c truey publicar la salida de grep -C5 'tmux\.conf' tmux.strace.
Gilles
Tuve este mismo problema, no hay sesiones existentes, ('tmux ls' informó que la conexión se rechazó, es decir, no se estaba ejecutando), pero todavía no estaba leyendo el archivo conf. Lo estaba iniciando con un CWD en algún lugar de / usr, pero cuando cambié a ~ / y lancé tmux, procesó el archivo conf. Es un comportamiento extraño, pero eso es algo para verificar.
Ranko Kohime

Respuestas:

119

El archivo ~ / .tmux.conf se carga cuando el servidor tmux se inicia por primera vez. Por lo tanto, si hay sesiones tmux existentes, comenzar una nueva sesión con tmuxno resulta en la recarga del archivo .tmux.conf. Intente reiniciar el servidor tmux: use el comando tmux list-sessionspara ver si hay sesiones existentes. Salga de ellos (p. Ej., Cierre tmux attachtodas las ventanas y salga). Una vez que todas las sesiones se hayan ido, intente tmuxnuevamente. Esta vez la nueva encuadernación debería funcionar.

Miguel
fuente
27
killall tmuxo tmux kill-serverhará el trabajo también
Matt
55
Solía killall tmuxy tmux kill-serveraún mi conf no está cargado. ¡Puedo confirmar que es válido, ya que usarlo :source-file ~/.tmux.confen tmux realmente hace los cambios de configuración! No puedo entender qué está causando este comportamiento.
Ambidex
Me pregunto por qué no se mencionó la recarga de la configuración en esta respuesta. A veces funciona y a veces no. ¿Alguna idea sobre eso?
DarthPaghius
53

Para recargar su ~ / .tmux.conf sin matar su sesión, simplemente puede hacer:

C-b :source-file /absolute/path/to/your/.tmux.conf
peroumal1
fuente
44
Puede agregar lo siguiente a .tmux.conf para usar Ctrl-A r para recargar:bind r source-file ~/.tmux.conf \; display-message "Config reloaded..."
RedPixel
+1 por señalar la necesidad del camino absoluto
Akash Agarwal
20

ejecutar dentro de su sesión tmux:

tmux source-file /absolute/path/to/your/.tmux.conf
HVNSweeting
fuente
Nota: esto no afectará la ventana actual de tmux (obviamente), sino todas las ventanas nuevas de tmux.
Klaws
3

También hay un enlace para recargar su atajo de teclado por defecto ~/.tmux.conf, por lo menos en mi instalación: C-b r. Si lo golpeas C-b ?, aparece una lista de todos los atajos de teclado vinculados, para que puedas ver si ya tienes uno definido.

Josh Earl
fuente
Eso es específico para su instalación / configuración. Por defecto, <prefix> restá vinculado a refresh-client(lo que describe sería algo así como source ~/.tmux.conf).
Chris Johnsen
1

Tuve este problema porque estaba usando tmux-next .

Inicialmente lo resolví simplemente pasando el archivo de configuración explícitamente tmux -f ~/.tmux.confcomo señala la pregunta aquí. (Ya había alias tmux-next to tmux).

Luego me di cuenta de que tmux-next está usando tmux-next.conf, por lo que solo tiene que vincularlo si lo usa y solo necesita ejecutar la próxima versión de tmux.

ln -s ~/.tmux.conf ~/.tmux-next.conf

mahemoff
fuente
1

Renuncié y volví a abrir mi terminal y esa es la única forma en que podría hacer que vuelva a funcionar. No estoy seguro de por qué.

usando Terminal en Mac OSX

Connor McCormick
fuente