Manuales para la línea de comandos

Man » Manual de tmux en línea - documentación en línea detallada para la página de manual de tmux

🌍
tmux — multiplexor de terminal

SINTAXIS

tmux [-2CDhlNuVv] [-c comando-shell] [-f archivo] [-L nombre-socket] [-S ruta-socket] [-T características]
[comando [indicadores]]

DESCRIPCIÓN

tmux es un multiplexor de terminal: permite crear, acceder y controlar varios terminales desde una sola pantalla. tmux puede desconectarse de una pantalla y continuar ejecutándose en segundo plano, y luego volver a conectarse más tarde.

Cuando se inicia tmux, crea una nueva sesión con una sola ventana y la muestra en la pantalla. Una barra de estado en la parte inferior de la pantalla muestra información sobre la sesión actual y se utiliza para ingresar comandos interactivos.

Una sesión es una colección de pseudo terminales administrados por tmux. Cada sesión tiene una o más ventanas asociadas. Una ventana ocupa toda la pantalla y se puede dividir en paneles rectangulares, cada uno de los cuales es un pseudo terminal independiente (la página de manual pty(4) documenta los detalles técnicos de los pseudo terminales). Cualquier número de instancias de tmux puede conectarse a la misma sesión, y cualquier número de ventanas puede estar presente en la misma sesión. Una vez que se eliminan todas las sesiones, tmux sale.

Cada sesión es persistente y sobrevivirá a una desconexión accidental (como el tiempo de espera de la conexión ssh(1)) o una desconexión intencional (con las pulsaciones de teclas ‘C-b d’). tmux se puede volver a conectar usando:

$ tmux attach

En tmux, una sesión se muestra en la pantalla mediante un cliente y todas las sesiones son administradas por un solo servidor. El servidor y cada cliente son procesos separados que se comunican a través de un socket en /tmp.

Las opciones son las siguientes:

-2 Fuerza a tmux a asumir que el terminal admite 256 colores. Esto es equivalente a -T 25.

-C Inicia en modo de control (consulte la sección "MODO DE CONTROL"). Dado dos veces (-CC) deshabilita el eco.

-c comando-shell
Ejecuta comando-shell utilizando el shell predeterminado. Si es necesario, el servidor tmux se iniciará para recuperar la opción default-shell. Esta opción es para compatibilidad con [sh]({filename}../../sh)(1) cuando tmux se utiliza como shell de inicio de sesión.

-D No inicia el servidor tmux como un demonio. Esto también desactiva la opción exit-empty. Con -D, no se puede especificar el comando.

-f archivo Especifica un archivo de configuración alternativo. De forma predeterminada, tmux carga el archivo de configuración del sistema desde /etc/tmux.conf, si existe, y luego busca un archivo de configuración de usuario en ~/.tmux.conf o $XDG_CONFIG_HOME/tmux/tmux.conf.

El archivo de configuración es un conjunto de comandos tmux que se ejecutan en secuencia cuando se inicia el servidor. tmux carga los archivos de configuración una vez que se ha iniciado el proceso del servidor. El comando source-file se puede utilizar para cargar un archivo más tarde.


tmux muestra cualquier mensaje de error de los comandos en los archivos de configuración en la primera sesión creada y continúa procesando el resto del archivo de configuración.

-h Imprime la información de uso y sale.

-L socket-name

tmux almacena el socket del servidor en un directorio dentro de TMUX_TMPDIR o /tmp si no está definido. El socket predeterminado se llama default. Esta opción permite especificar un nombre de socket diferente, lo que permite ejecutar varios servidores tmux independientes. A diferencia de -S, no es necesario especificar una ruta completa: todos los sockets se crean en un directorio tmux-UID dentro del directorio dado por TMUX_TMPDIR o en /tmp. El directorio tmux-UID es creado por tmux y no debe ser legible, escribible o ejecutable para otros usuarios.

Si el socket se elimina accidentalmente, se puede enviar la señal SIGUSR1 al proceso del servidor tmux para volver a crearlo (tenga en cuenta que esto fallará si faltan alguno de los directorios principales).

-l Comportarse como una shell de inicio de sesión. Actualmente, esta opción no tiene ningún efecto y es para la compatibilidad con otras shells cuando se usa tmux como shell de inicio de sesión.

-N No iniciar el servidor incluso si el comando normalmente lo haría (por ejemplo, new-session o start-server).

-S socket-path

Especifica una ruta completa alternativa para el socket del servidor. Si se especifica -S, no se utiliza el directorio de socket predeterminado y se ignora cualquier opción -L.

-T features Establece las características del terminal para el cliente. Esta es una lista separada por comas de características. Consulte la opción terminal-features.

-u Escribe la salida UTF-8 en el terminal incluso si la primera variable de entorno de LC_ALL, LC_CTYPE o LANG que está configurada no contiene "UTF-8" o "UTF8".

-V Informa sobre la versión de tmux.

-v Solicita un registro detallado. Los mensajes de registro se guardarán en los archivos tmux-client-PID.log y tmux-server-PID.log en el directorio actual, donde PID es el PID del proceso del servidor o del cliente. Si se especifica -v dos veces, se genera un archivo adicional tmux-out-PID.log que contiene una copia de todo lo que tmux escribe en el terminal.

Se puede enviar la señal SIGUSR2 al proceso del servidor tmux para alternar el registro entre activado (como si se hubiera dado -v) y desactivado.

command [flags] Esto especifica uno de un conjunto de comandos utilizados para controlar tmux, según se describe en las secciones siguientes. Si no se especifican comandos, se asume el comando en default-client-command, que por defecto es new-session.

ENLAZES DE TECLAS PREDETERMINADOS

tmux se puede controlar desde un cliente adjunto mediante el uso de una combinación de teclas de una tecla de prefijo, 'C-b' (Ctrl-b) por defecto, seguida de una tecla de comando.

Las teclas de comando predeterminadas son:

C-b Envía la tecla de prefijo (C-b) a la aplicación.
C-o Rota los paneles en la ventana actual hacia adelante.
C-z Suspende el cliente tmux.
! Saca el panel actual de la ventana.
" Divide el panel actual en dos, arriba y abajo.
# Enumera todos los búferes de pegado.
$ Cambia el nombre de la sesión actual.
% Divide el panel actual en dos, izquierda y derecha.
& Mata la ventana actual.
' Solicita un índice de ventana para seleccionar.
( Cambia el cliente adjunto a la sesión anterior.
) Cambia el cliente adjunto a la siguiente sesión.
, Cambia el nombre de la ventana actual.
- Elimina el búfer de texto copiado más reciente.
. Solicita un índice para mover la ventana actual.
0 a 9 Selecciona las ventanas 0 a 9.
: Entra en el indicador de comandos tmux.
; Se mueve al panel activo anterior.
= Elija qué búfer pegar de forma interactiva a partir de una lista.
? Enumera todos los enlaces de teclas.
D Elija un cliente para desconectar.
L Cambia el cliente adjunto a la última sesión.
[ Entra en el modo de copia para copiar texto o ver el historial.
] Pega el búfer de texto copiado más reciente.
c Crea una nueva ventana.
d Desconecta el cliente actual.
f Solicita buscar texto en ventanas abiertas.
i Muestra información sobre la ventana actual.
l Se mueve a la ventana seleccionada anterior.
m Marca el panel actual (vea select-pane -m).
M Borra el panel marcado.
n Cambia a la siguiente ventana.
o Selecciona el siguiente panel en la ventana actual.
p Cambia a la ventana anterior.
q Muestra brevemente los índices de los paneles.
r Fuerza un nuevo dibujo del cliente adjunto.
s Selecciona una nueva sesión para el cliente adjunto de forma interactiva.
t Muestra la hora.
w Elija la ventana actual de forma interactiva.
x Mata el panel actual.
z Alterna el estado de zoom del panel actual.
{ Intercambia el panel actual con el panel anterior.
} Intercambia el panel actual con el siguiente panel.
~ Muestra los mensajes anteriores de tmux, si los hay.
Page Up Entra en el modo de copia y se desplaza una página hacia arriba.
Arriba, Abajo
Izquierda, Derecha
Cambia al panel de arriba, de abajo, de la izquierda o de la derecha del panel actual.
M-1 a M-7 Organiza los paneles en uno de los siete diseños preestablecidos: even-horizontal, even-vertical, main-horizontal, main-horizontal-mirrored, main-vertical, main-vertical-mirrored o tiled.
Espacio Organiza la ventana actual en el siguiente diseño preestablecido.
M-n Se mueve a la siguiente ventana con una señal de campana o un marcador de actividad.
M-o Rota los paneles en la ventana actual hacia atrás.
M-p Se mueve a la ventana anterior con una señal de campana o un marcador de actividad.
C-Arriba, C-Abajo
C-Izquierda, C-Derecha
Cambia el tamaño del panel actual en pasos de una celda.
M-Arriba, M-Abajo
M-Izquierda, M-Derecha

Cambia el tamaño del panel actual en pasos de cinco celdas.


Los enlaces de teclado se pueden cambiar con los comandos bind-key y unbind-key.

ANÁLISIS Y EJECUCIÓN DE COMANDOS

tmux admite una gran cantidad de comandos que se pueden utilizar para controlar su comportamiento. Cada comando tiene un nombre y puede aceptar cero o más indicadores y argumentos. Se pueden enlazar a una tecla con el comando `bind-key` o ejecutarse desde el símbolo del sistema, un script de shell, un archivo de configuración o el símbolo del sistema de comandos. Por ejemplo, el mismo comando `set-option` que se ejecuta desde el símbolo del sistema, desde `~/.tmux.conf` y que se enlaza a una tecla podría verse así:

$ tmux set-option -g status-style bg=cyan

set-option -g status-style bg=cyan

bind-key C set-option -g status-style bg=cyan

Aquí, el nombre del comando es ‘set-option’, ‘-g’ es una bandera y ‘status-style’ y ‘bg=cyan’ son argumentos.

tmux distingue entre el análisis y la ejecución de comandos. Para ejecutar un comando, tmux
necesita que se divida en su nombre y argumentos. Esto es el análisis de comandos. Si un comando
se ejecuta desde el shell, el shell lo analiza; si se ejecuta desde dentro de tmux o desde un archivo de configuración, tmux lo hace. Algunos ejemplos de cuándo tmux analiza comandos son:

- en un archivo de configuración;
- escrito en el prompt de comandos (ver command-prompt);
- dado a bind-key;
- pasado como argumentos a if-shell o confirm-before.

Para ejecutar comandos, cada cliente tiene una ‘cola de comandos’. Se utiliza una cola de comandos global, no asociada a ningún cliente, durante el inicio para los archivos de configuración como ~/.tmux.conf. Los comandos analizados que se añaden a la cola se ejecutan en orden. Algunos comandos, como if-shell y confirm-before, analizan sus argumentos para crear un nuevo comando que se inserta inmediatamente después de ellos. Esto significa que los argumentos pueden analizarse dos o más veces, una vez cuando se analiza el comando padre (como if-shell) y de nuevo cuando analiza y ejecuta su comando. Los comandos como if-shell, run-shell y display-panes detienen la ejecución de los comandos subsiguientes en la cola hasta que ocurra algo: if-shell y run-shell hasta que termine el comando del shell y display-panes hasta que se presione una tecla. Por ejemplo, los siguientes comandos:

new-session; new-window
if-shell "true" "split-window"
kill-session

Ejecutarán new-session, new-window, if-shell, el comando del shell true(1), split-window y kill-session en ese orden.

La sección “COMMANDOS” enumera los comandos tmux y sus argumentos.

SINTAXIS DE ANÁLISIS

Esta sección describe la sintaxis de los comandos analizados por tmux, por ejemplo, en un archivo de configuración o en el prompt de comandos. Tenga en cuenta que cuando los comandos se introducen en el shell, son analizados por el shell; consulte, por ejemplo, ksh(1) o csh(1).

Cada comando termina con un salto de línea o un punto y coma (;). Los comandos separados por puntos y comas forman una ‘secuencia de comandos’; si un comando en la secuencia encuentra un error, no se ejecutan los comandos posteriores.

Se recomienda que un punto y coma utilizado como separador de comandos se escriba como un token individual, por ejemplo, desde sh(1):

$ tmux neww \; splitw

O:

$ tmux neww ';' splitw

O desde el prompt de comandos de tmux:


neww ; splitw

Sin embargo, un punto y coma final también se interpreta como un separador de comandos, por ejemplo, en estos comandos sh(1):

$ tmux neww\; splitw

O:

$ tmux 'neww;' splitw

Como se muestra en estos ejemplos, al ejecutar tmux desde la shell, se debe tener mucho cuidado para citar correctamente los puntos y coma:

    Los puntos y coma que deben interpretarse como un separador de comandos deben escaparse de acuerdo con las convenciones de la shell. Para [sh]({filename}../../sh)(1), esto generalmente significa entre comillas (como ‘neww ;’ splitw’) o escapados (como ‘neww \; splitw’).

    Los puntos y coma individuales o los puntos y coma finales que deben interpretarse como argumentos deben escaparse dos veces: una vez de acuerdo con las convenciones de la shell y una segunda vez para tmux; por ejemplo:

$ tmux neww 'foo\;' bar
$ tmux neww foo\\\; bar

    Los puntos y coma que no son tokens individuales o que no siguen a otro token deben escaparse solo una vez de acuerdo con las convenciones de la shell; por ejemplo:

$ tmux neww 'foo-;-bar'
$ tmux neww foo-\;-bar

Los comentarios se indican con el carácter # no entre comillas; cualquier texto restante después de un comentario se ignora hasta el final de la línea.

Si el último carácter de una línea es \, la línea se une a la línea siguiente (la \ y el salto de línea se eliminan por completo). Esto se llama continuación de línea y se aplica tanto dentro como fuera de las cadenas entre comillas, y en los comentarios, pero no dentro de las llaves.

Los argumentos de los comandos se pueden especificar como cadenas entre comillas simples (') o comillas dobles ("), o como listas de comandos entre llaves ({}). Esto es necesario cuando el argumento contiene algún carácter especial. Las cadenas entre comillas simples y dobles no pueden abarcar varias líneas, excepto con la continuación de línea. Las llaves pueden abarcar varias líneas.

Fuera de las comillas y dentro de las comillas dobles, se realizan los siguientes reemplazos:

- Las variables de entorno precedidas por $ se reemplazan por su valor del entorno global (consulte la sección “ENTORNO GLOBAL Y DE SESIÓN”).

- Un ~ o ~usuario inicial se expande al directorio de inicio del usuario actual o especificado.

- \uXXXX o \uXXXXXXXX se reemplaza por el punto de código Unicode correspondiente al número hexadecimal de cuatro u ocho dígitos dado.

- Cuando se precede (escapa) con una \, los siguientes caracteres se reemplazan: \e por el carácter de escape; \r por un retorno de carro; \n por un salto de línea; y \t por una tabulación.

- \ooo se reemplaza por un carácter del valor octal ooo. Se requieren tres dígitos octales, por ejemplo \001. El carácter válido más grande es \377.

- Cualquier otro carácter precedido por \ se reemplaza por sí mismo (es decir, la \ se elimina) y no se trata como si tuviera algún significado especial; por lo tanto, por ejemplo, \; no marcará una secuencia de comandos y \$ no expandirá una variable de entorno.

Las llaves se analizan como un archivo de configuración (por lo que las condiciones como ‘%if’ se procesan) y luego se convierten en una cadena. Están diseñadas para evitar la necesidad de escapar adicional al pasar un grupo de comandos de tmux como un argumento (por ejemplo, a if-shell). Estos dos ejemplos producen el mismo comando; observe que no se necesita escapar cuando se usan las llaves:


if-shell true {
display -p 'brace-dollar-foo: }$foo'
}

if-shell true "display -p 'brace-dollar-foo: }\$foo'"

Las llaves pueden estar anidadas dentro de otras llaves, por ejemplo:

bind x if-shell "true" {
if-shell "true" {
display "true!"
}
}

Las variables de entorno se pueden establecer utilizando la sintaxis ‘nombre=valor’, por ejemplo ‘HOME=/home/user’. Las variables establecidas durante el análisis se agregan al entorno global. Se puede establecer una variable oculta con ‘%hidden’, por ejemplo:

%hidden MYVAR=42

Las variables ocultas no se pasan al entorno de los procesos creados por tmux. Consulte la sección “ENTORNO GLOBAL Y DE SESIÓN”.

Los comandos se pueden analizar condicionalmente encerrándolos con ‘%if’, ‘%elif’, ‘%else’ y ‘%endif’. El argumento de ‘%if’ y ‘%elif’ se expande como un formato (consulte “FORMATOS”) y, si se evalúa como falso (cero o vacío), el texto posterior se ignora hasta el cierre ‘%elif’, ‘%else’ o ‘%endif’. Por ejemplo:

%if "#{==:#{host},myhost}"
set -g status-style bg=red
%elif "#{==:#{host},myotherhost}"
set -g status-style bg=green
%else
set -g status-style bg=blue
%endif

Esto cambiará la línea de estado a rojo si se ejecuta en ‘myhost’, verde si se ejecuta en ‘myotherhost’ o azul si se ejecuta en otro host. Los condicionales pueden especificarse en una sola línea, por ejemplo:

%if #{==:#{host},myhost} set -g status-style bg=red %endif

COMANDOS

Esta sección describe los comandos admitidos por tmux. La mayoría de los comandos aceptan el argumento opcional -t (y, a veces, -s) con uno de los siguientes: target-client, target-session, target-window o target-pane. Estos especifican el cliente, la sesión, la ventana o el panel que debe afectar el comando.

target-client debe ser el nombre del cliente, normalmente el archivo pty(4) al que está conectado el cliente, por ejemplo, cualquiera de /dev/ttyp1 o ttyp1 para el cliente conectado a /dev/ttyp1. Si no se especifica ningún cliente, tmux intenta averiguar el cliente que se está utilizando actualmente; si esto falla, se informa un error. Los clientes se pueden enumerar con el comando list-clients.

target-session se intenta como, en orden:

Un ID de sesión precedido por un $.

    Un nombre exacto de una sesión (como se muestra en el comando list-sessions).

    El inicio de un nombre de sesión, por ejemplo, ‘mysess’ coincidiría con una sesión con el nombre ‘mysession’.

Un patrón glob(7) que se compara con el nombre de la sesión.

Si el nombre de la sesión está precedido por un ‘=’, solo se acepta una coincidencia exacta (por lo que ‘=mysess’ solo coincidirá exactamente con ‘mysess’, no con ‘mysession’).

Si se encuentra una sola sesión, se utiliza como sesión de destino; varias coincidencias producen un error. Si se omite una sesión, se utiliza la sesión actual si está disponible; si no hay ninguna sesión actual disponible, se elige la que se utilizó más recientemente.


target-window (o target-session o dst-window) especifica una ventana en el formato sesión:ventana.
session sigue las mismas reglas que para target-session, y ventana se busca en orden como:

Un token especial, que se enumera a continuación.

Un índice de ventana, por ejemplo ‘mis sesión:1’ es la ventana 1 en la sesión ‘mis sesión’.

Un ID de ventana, como @1.

    Un nombre de ventana exacto, como ‘mis sesión:miventana’.

    El inicio de un nombre de ventana, como ‘mis sesión:mivin’.

    Como un patrón glob(7) que se compara con el nombre de la ventana.

Como en las sesiones, un prefijo ‘=’ realizará una coincidencia exacta. Un nombre de ventana vacío especifica el siguiente
índice no utilizado si es apropiado (por ejemplo, para los comandos new-window y link-window); de lo contrario,
se elige la ventana actual en la sesión.

Los siguientes tokens especiales están disponibles para indicar ventanas particulares. Cada uno tiene una forma alternativa de un solo carácter.

Token              Significado
{start}       ^    La ventana con el número más bajo
{end}         $    La ventana con el número más alto
{last}        !    La última ventana (previamente activa)
{next}        +    La siguiente ventana por número
{previous}    -    La ventana anterior por número

target-pane (o src-pane o dst-pane) puede ser un ID de panel o toma una forma similar a target-window
pero con la adición opcional de un punto seguido de un índice de panel o un ID de panel, por ejemplo:
‘mis sesión:miventana.1’. Si se omite el índice del panel, se utiliza el panel activo actual en la ventana especificada.
Los siguientes tokens especiales están disponibles para el índice del panel:

Token                  Significado
{last}            !    El último panel (previamente activo)
{next}            +    El siguiente panel por número
{previous}        -    El panel anterior por número
{top}                  El panel superior
{bottom}               El panel inferior
{left}                 El panel más a la izquierda
{right}                El panel más a la derecha
{top-left}             El panel superior izquierdo
{top-right}            El panel superior derecho
{bottom-left}          El panel inferior izquierdo
{bottom-right}         El panel inferior derecho
{up-of}                El panel que está encima del panel activo
{down-of}              El panel que está debajo del panel activo
{left-of}              El panel que está a la izquierda del panel activo
{right-of}             El panel que está a la derecha del panel activo

Los tokens ‘+’ y ‘-’ pueden ir seguidos de un desplazamiento, por ejemplo:

select-window -t:+2

Además, target-session, target-window o target-pane pueden consistir enteramente en el token
‘{mouse}’ (forma alternativa ‘=’) para especificar la sesión, ventana o panel donde se produjo el evento del ratón más reciente (véase la sección “SOPORTE PARA EL RATÓN”) o ‘{marked}’ (forma alternativa ‘~’)
para especificar el panel marcado (véase select-pane -m).

Las sesiones, ventanas y paneles se numeran con un ID único; los ID de sesión tienen el prefijo ‘$’, los de ventana el prefijo ‘@’ y los de panel el prefijo ‘%’.
Estos son únicos y permanecen sin cambios durante la vida útil de la sesión, ventana o panel en el servidor tmux.
El ID del panel se pasa al proceso hijo del panel en la variable de entorno TMUX_PANE. Los ID pueden mostrarse
utilizando los formatos ‘session_id’, ‘window_id’ o ‘pane_id’ (véase la sección “FORMATOS”) y los comandos display-message,
list-sessions, list-windows o list-panes.

los argumentos del comando de shell son comandos sh(1). Esto puede ser un único argumento que se pasa al shell, por ejemplo:

new-window 'vi ~/.tmux.conf'

Esto ejecutará:

/bin/sh -c 'vi ~/.tmux.conf'

Además, los comandos new-window, new-session, split-window, respawn-window y respawn-pane permiten que el comando shell se proporcione como múltiples argumentos y se ejecute directamente (sin 'sh -c'). Esto puede evitar problemas con las comillas del shell. Por ejemplo:

$ tmux new-window vi ~/.tmux.conf

Esto ejecutará vi(1) directamente sin invocar el shell.

command [argument ...] se refiere a un comando tmux, que se pasa ya sea con el comando y los argumentos por separado, por ejemplo:

bind-key F1 set-option status off

O se pasa como un único argumento de cadena en .tmux.conf, por ejemplo:

bind-key F1 { set-option status off }

Ejemplos de comandos tmux incluyen:

refresh-client -t/dev/ttyp2

rename-session -tfirst newname

set-option -wt:0 monitor-activity on

new-window ; split-window -d

bind-key R source-file ~/.tmux.conf \; \
display-message "source-file done"

O desde sh(1):

$ tmux kill-window -t :1

$ tmux new-window \; split-window -d

$ tmux new-session -d 'vi ~/.tmux.conf' \; split-window -d \; attach

CLIENTES Y SESIONES

El servidor tmux gestiona clientes, sesiones, ventanas y paneles. Los clientes se conectan a las sesiones para interactuar con ellas, ya sea cuando se crean con el comando new-session o posteriormente con el comando attach-session. Cada sesión tiene una o más ventanas enlazadas. Las ventanas pueden estar enlazadas a varias sesiones y están formadas por uno o más paneles, cada uno de los cuales contiene un pseudo terminal. Los comandos para crear, enlazar y manipular ventanas se tratan en la sección "VENTANAS Y PANELES".

Los siguientes comandos están disponibles para gestionar clientes y sesiones:

attach-session [-dErx] [-c working-directory] [-f flags] [-t target-session]
(alias: attach)

Si se ejecuta desde fuera de tmux, se conecta a target-session en el terminal actual. target-session ya debe existir; para crear una nueva sesión, consulte el comando new-session (con -A para crear o conectar). Si se utiliza desde dentro, cambia la sesión conectada actualmente a target-session. Si se especifica -d, se desconectan todos los demás clientes conectados a la sesión. Si se da -x, se envía la señal SIGHUP al proceso padre del cliente, lo que normalmente hace que éste salga. -f establece una lista separada por comas de marcas de cliente. Las marcas son:


active-pane
el cliente tiene un panel activo independiente

ignore-size
el cliente no afecta el tamaño de otros clientes

no-detach-on-destroy
no separar el cliente cuando se destruye la sesión a la que está adjunto si hay otras sesiones

no-output
el cliente no recibe la salida del panel en modo de control

pause-after=seconds
la salida se pausa una vez que el panel se retrasa en 'seconds' segundos en modo de control

read-only
el cliente es de solo lectura

wait-exit
esperar una entrada de línea vacía antes de salir en modo de control

Un ‘!’ al principio desactiva una bandera si el cliente ya está adjunto. -r es un alias para -f read-only,ignore-size. Cuando un cliente es de solo lectura, solo las teclas vinculadas a los comandos detach-client o switch-client tienen algún efecto. Un cliente con la bandera active-pane permite que el panel activo se seleccione independientemente del panel activo de la ventana utilizado por los clientes sin la bandera. Esto solo afecta la posición del cursor y los comandos emitidos desde el cliente; otras funciones como los hooks y los estilos continúan utilizando el panel activo de la ventana.

Si no se inicia ningún servidor, attach-session intentará iniciarlo; esto fallará a menos que las sesiones se creen en el archivo de configuración.

Las reglas de target-session para attach-session se ajustan ligeramente: si tmux necesita seleccionar la sesión más utilizada recientemente, preferirá la sesión no adjunta más utilizada recientemente.

-c establecerá el directorio de trabajo de la sesión (utilizado para nuevas ventanas) en working-directory.

Si se utiliza -E, la opción update-environment no se aplicará.

detach-client [-aP] [-E shell-command] [-s target-session] [-t target-client]
(alias: detach)

Desconectar el cliente actual si está vinculado a una tecla, el cliente especificado con -t o todos los clientes actualmente adjuntos a la sesión especificada por -s. La opción -a cierra todos los clientes excepto el cliente dado con -t. Si se da -P, se envía SIGHUP al proceso padre del cliente, lo que normalmente hace que este salga. Con -E, se ejecuta shell-command para reemplazar el cliente.

has-session [-t target-session]
(alias: has)

Informar de un error y salir con 1 si la sesión especificada no existe. Si existe, salir con 0.

kill-server

Eliminar el servidor y los clientes de tmux y destruir todas las sesiones.

kill-session [-aC] [-t target-session]

Destruir la sesión dada, cerrar cualquier ventana vinculada a ella y no otras sesiones, y desconectar todos los clientes adjuntos a ella. Si se da -a, se eliminan todas las sesiones excepto la especificada. La bandera -C borra las alertas (campana, actividad o silencio) en todas las ventanas vinculadas a la sesión.

list-clients [-F format] [-f filter] [-t target-session]
(alias: lsc)

Listar todos los clientes adjuntos al servidor. -F especifica el formato de cada línea y -f un filtro. Solo se muestran los clientes para los que el filtro sea verdadero. Ver la sección “FORMATOS”. Si se especifica target-session, listar solo los clientes conectados a esa sesión.


list-commands [-F format] [command]
(alias: lscm)

Lista la sintaxis del comando o, si no se especifica, de todos los comandos admitidos por tmux.

list-sessions [-F format] [-f filter]
(alias: ls)

Lista todas las sesiones administradas por el servidor. -F especifica el formato de cada línea y -f un filtro. Solo se muestran las sesiones para las que el filtro es verdadero. Consulte la sección "FORMATOS".

lock-client [-t target-client]
(alias: lockc)

Bloquea el cliente de destino; consulte el comando lock-server.

lock-session [-t target-session]
(alias: locks)

Bloquea todos los clientes conectados a la sesión de destino.

new-session [-AdDEPX] [-c start-directory] [-e environment] [-f flags] [-F format] [-n window-name] [-s session-name] [-t group-name] [-x width] [-y height] [shell-command argument ...]
(alias: new)

Crea una nueva sesión con el nombre session-name.

La nueva sesión se conecta al terminal actual a menos que se especifique -d. window-name y shell-command son el nombre y el comando de shell que se ejecutarán en la ventana inicial. Con -d, el tamaño inicial proviene de la opción global default-size; -x e -y se pueden usar para especificar un tamaño diferente. '-' usa el tamaño del cliente actual, si existe. Si se especifica -x o -y, la opción default-size se establece para la sesión. -f establece una lista separada por comas de indicadores de cliente (vea attach-session).

Si se ejecuta desde un terminal, se guardan los caracteres especiales de termios(4) y se utilizan para las nuevas ventanas en la nueva sesión.

La opción -A hace que new-session se comporte como attach-session si session-name ya existe; si se da -A, -D se comporta como -d para attach-session, y -X se comporta como -x para attach-session.

Si se da -t, especifica un grupo de sesiones. Las sesiones en el mismo grupo comparten el mismo conjunto de ventanas: las nuevas ventanas están vinculadas a todas las sesiones del grupo y cualquier ventana cerrada se elimina de todas las sesiones. La ventana actual y la ventana anterior, y cualquier opción de sesión, permanecen independientes, y cualquier sesión en un grupo puede eliminarse sin afectar a las demás. El argumento group-name puede ser:

el nombre de un grupo existente, en cuyo caso la nueva sesión se agrega a ese grupo;

el nombre de una sesión existente: la nueva sesión se agrega al mismo grupo que esa sesión, creando un nuevo grupo si es necesario;

el nombre de un nuevo grupo que contiene solo la nueva sesión.

-n y shell-command no son válidos si se usa -t.

La opción -P imprime información sobre la nueva sesión después de que se haya creado. Por defecto, utiliza el formato '#{session_name}:', pero se puede especificar un formato diferente con -F.

Si se usa -E, la opción update-environment no se aplicará. -e tiene el formato 'VARIABLE=valor' y establece una variable de entorno para la sesión recién creada; se puede especificar varias veces.

refresh-client [-cDLRSU] [-A pane:state] [-B name:what:format] [-C size] [-f flags] [-l [target-pane]] [-r pane:report] [-t target-client] [adjustment]
(alias: refresh)

Actualiza el cliente actual si está vinculado a una tecla, o un solo cliente si se proporciona con -t. Si se especifica -S, solo se actualiza la línea de estado del cliente.


Las opciones -U, -D, -L, -R y -c permiten modificar la porción visible de una ventana que es más grande que el cliente. -U mueve la parte visible hacia arriba por un número determinado de filas, y -D hacia abajo. -L mueve la parte visible hacia la izquierda por un número determinado de columnas, y -R hacia la derecha. -c vuelve a la configuración predeterminada para que la posición siga al cursor automáticamente. Si no se especifica el ajuste, se utiliza el valor 1. Tenga en cuenta que la posición visible es una propiedad del cliente, no de la ventana, y cambiar la ventana actual en la sesión adjunta restablecerá esta configuración.

-C establece el ancho y el alto de un cliente en modo de control o de una ventana para un cliente en modo de control. El tamaño debe ser uno de los siguientes: 'ancho x alto' o 'ID de ventana:ancho x alto', por ejemplo, '80x24' o '@0:80x24'. -A permite que un cliente en modo de control active acciones en un panel. El argumento es un ID de panel (con un prefijo '%'), dos puntos y una de las siguientes opciones: 'activado', 'desactivado', 'continuar' o 'pausar'. Si es 'desactivado', tmux no enviará la salida del panel al cliente, y si todos los clientes han desactivado el panel, dejará de leer del panel. Si es 'continuar', tmux volverá a enviar la salida al panel si se había pausado (manualmente o con la opción pause-after). Si es 'pausar', tmux pausará el panel. -A se puede usar varias veces para diferentes paneles.

-B establece una suscripción a un formato para un cliente en modo de control. El argumento se divide en tres partes separadas por dos puntos: el nombre es un nombre para la suscripción; 'qué' es un tipo de elemento al que suscribirse; y 'formato' es el formato. Después de agregar una suscripción, los cambios en el formato se informan con la notificación '%subscription-changed', como máximo una vez por segundo. Si solo se proporciona el nombre, se elimina la suscripción. 'Qué' puede estar vacío para verificar solo el formato para la sesión adjunta, o puede ser uno de los siguientes: un ID de panel, como '%0'; '%*' para todos los paneles en la sesión adjunta; un ID de ventana, como '@0'; o '@*' para todas las ventanas en la sesión adjunta.

-f establece una lista separada por comas de indicadores de cliente, consulte attach-session. -r permite que un cliente en modo de control proporcione información sobre un panel a través de un informe (como la respuesta a OSC 10). El argumento es un ID de panel (con un prefijo '%'), dos puntos y luego una secuencia de escape de informe.

-l solicita el portapapeles del cliente utilizando la secuencia de escape xterm(1). Si se proporciona target-pane, el portapapeles se envía (en formato codificado); de lo contrario, se almacena en un nuevo búfer de pegado.

-L, -R, -U y -D mueven la porción visible de la ventana hacia la izquierda, la derecha, hacia arriba o hacia abajo por un ajuste, si la ventana es más grande que el cliente. -c restablece la configuración para que la posición siga al cursor. Consulte la opción window-size.

rename-session [-t target-session] new-name

(alias: rename) Cambia el nombre de la sesión a new-name.

server-access [-adlrw] [user]

Cambia el acceso o el permiso de lectura/escritura de un usuario. El usuario que ejecuta el servidor tmux (su propietario) y el usuario root no se pueden cambiar y siempre tienen permiso de acceso.


-a y -d se utilizan para conceder o revocar acceso al usuario especificado. Si el usuario ya está asociado, la opción -d hace que sus clientes se desconecten.

-r y -w cambian los permisos para el usuario: -r hace que sus clientes sean de solo lectura y -w
de escritura. -l muestra los permisos de acceso actuales.

Por defecto, la lista de acceso está vacía y tmux crea sockets con permisos del sistema de archivos que impiden el acceso a cualquier usuario que no sea el propietario (y root). Estos permisos deben cambiarse manualmente. Se debe tener mucho cuidado para no permitir el acceso a usuarios no confiables, incluso en modo de solo lectura.

show-messages [-JT] [-t cliente-objetivo]
(alias: showmsgs)

Mostrar mensajes o información del servidor. Los mensajes se almacenan, hasta un máximo del límite establecido por la opción del servidor message-limit. -J y -T muestran información de depuración sobre trabajos y terminales.

source-file [-Fnqv] [-t panel-objetivo] ruta ...
(alias: source)

Ejecutar comandos desde uno o más archivos especificados por ruta (que pueden ser patrones glob(7)). Si se presenta -F, entonces la ruta se expande como un formato. Si se da -q, no se devolverá ningún error si la ruta no existe. Con -n, el archivo se analiza pero no se ejecutan comandos. -v muestra los comandos analizados y los números de línea si es posible.

start-server
(alias: start)

Iniciar el servidor tmux, si aún no se está ejecutando, sin crear ninguna sesión.

Tenga en cuenta que, dado que por defecto el servidor tmux saldrá si no hay sesiones, esto solo es útil si se crea una sesión en ~/.tmux.conf, exit-empty está desactivado o se ejecuta otro comando como parte de la misma secuencia de comandos. Por ejemplo:

$ tmux start \; show -g

suspend-client [-t cliente-objetivo]
(alias: suspendc)

Suspender un cliente enviando SIGTSTP (detener la terminal).

switch-client [-ElnprZ] [-c cliente-objetivo] [-t sesión-objetivo] [-T tabla-de-teclas]
(alias: switchc)

Cambiar la sesión actual para el cliente target-client a target-session. Como caso especial, -t puede referirse a un panel (un objetivo que contiene ‘:’, ‘.’ o ‘%’), para cambiar la sesión, la ventana y el panel. En ese caso, -Z mantiene la ventana con zoom si estaba con zoom. Si se usa -l, -n o -p, el cliente se mueve a la última, siguiente o anterior sesión respectivamente. -r alterna las opciones read-only e ignore-size (vea el comando attach-session).

Si se usa -E, la opción update-environment no se aplicará.

-T establece la tabla de teclas del cliente; la siguiente tecla del cliente se interpretará desde key-table. Esto se puede utilizar para configurar múltiples teclas de prefijo, o para vincular comandos a secuencias de teclas. Por ejemplo, para hacer que escribir ‘abc’ ejecute el comando list-keys:

bind-key -Ttable2 c list-keys
bind-key -Ttable1 b switch-client -Ttable2
bind-key -Troot   a switch-client -Ttable1

VENTANAS Y PANELES

Cada ventana mostrada por tmux puede dividirse en uno o más paneles; cada panel ocupa una cierta área de la pantalla y es una terminal separada. Una ventana se puede dividir en paneles utilizando el comando split-window. Las ventanas se pueden dividir horizontalmente (con la opción -h) o verticalmente. Los paneles se pueden cambiar de tamaño con el comando resize-pane (vinculado a ‘C-Up’, ‘C-Down’ ‘C-Left’ y ‘C-Right’ por defecto), el panel actual se puede cambiar con el comando select-pane y los comandos rotate-window y swap-pane se pueden utilizar para intercambiar paneles sin cambiar su posición. Los paneles se numeran comenzando desde cero en el orden en que se crean.

En modo de copia, se muestra un indicador en la esquina superior derecha del panel con la posición actual y el número de líneas en el historial.

Los comandos se envían al modo de copia utilizando el indicador -X en el comando send-keys. Cuando se presiona una tecla, el modo de copia utiliza automáticamente una de las dos tablas de teclas, según la opción mode-keys: copy-mode para emacs o copy-mode-vi para vi. Las tablas de teclas se pueden ver con el comando list-keys.

Los siguientes comandos son compatibles en el modo de copia:

append-selection
Agrega la selección al búfer de pegado superior.

append-selection-and-cancel (vi: A)
Agrega la selección al búfer de pegado superior y sale del modo de copia.

back-to-indentation (vi: ^) (emacs: M-m)
Mueve el cursor hacia atrás a la indentación.

begin-selection (vi: Espacio) (emacs: C-Espacio)
Comienza la selección.

bottom-line (vi: L)
Mueve al final de la línea.

cancel (vi: q) (emacs: Escape)
Sale del modo de copia.

clear-selection (vi: Escape) (emacs: C-g)
Borra la selección actual.

copy-end-of-line [-CP] [prefijo]
Copia desde la posición del cursor hasta el final de la línea. El prefijo se utiliza para nombrar el nuevo búfer de pegado.

copy-end-of-line-and-cancel [-CP] [prefijo]
Copia desde la posición del cursor y sale del modo de copia.

copy-pipe-end-of-line [-CP] [comando] [prefijo]
Copia desde la posición del cursor hasta el final de la línea y canaliza el texto al comando. El prefijo se utiliza para nombrar el nuevo búfer de pegado.

copy-pipe-end-of-line-and-cancel [-CP] [comando] [prefijo]
Igual que `copy-pipe-end-of-line` pero también sale del modo de copia.

copy-line [-CP] [prefijo]
Copia toda la línea.

copy-line-and-cancel [-CP] [prefijo]

Copia toda la línea y sale del modo de copia.

copy-pipe-line [-CP] [comando] [prefijo]

Copia toda la línea y envía el texto al comando. El prefijo se utiliza para nombrar el nuevo búfer de pegado.

copy-pipe-line-and-cancel [-CP] [comando] [prefijo]

Igual que copy-pipe-line, pero también sale del modo de copia.

copy-pipe [-CP] [comando] [prefijo]

Copia la selección, la borra y envía su texto al comando. El prefijo se utiliza para nombrar el nuevo búfer de pegado.

copy-pipe-no-clear [-CP] [comando] [prefijo]

Igual que copy-pipe, pero no borra la selección.

copy-pipe-and-cancel [-CP] [comando] [prefijo]

Igual que copy-pipe, pero también sale del modo de copia.

copy-selection [-CP] [prefijo]

Copia la selección actual.

copy-selection-no-clear [-CP] [prefijo]

Igual que copy-selection, pero no borra la selección.

copy-selection-and-cancel [-CP] [prefijo] (vi: Enter) (emacs: M-w)

Copia la selección actual y sale del modo de copia.

cursor-down (vi: j) (emacs: Down)

Mueve el cursor hacia abajo.

cursor-down-and-cancel

Igual que cursor-down, pero también sale del modo de copia si se alcanza la parte inferior.

cursor-left (vi: h) (emacs: Left)

Mueve el cursor hacia la izquierda.

cursor-right (vi: l) (emacs: Right)

Mueve el cursor hacia la derecha.

cursor-up (vi: k) (emacs: Up)

Mueve el cursor hacia arriba.

cursor-centre-vertical (emacs: C-l)

Mueve el cursor al centro vertical del panel.

cursor-centre-horizontal (emacs: M-l)

Mueve el cursor al centro horizontal del panel.

end-of-line (vi: $) (emacs: C-e)

Mueve el cursor al final de la línea.

goto-line line (vi: :) (emacs: g)

Mueve el cursor a una línea específica.

halfpage-down (vi: C-d) (emacs: M-Down)

Desplaza hacia abajo media página.

halfpage-down-and-cancel

Igual que halfpage-down, pero también sale del modo de copia si se alcanza la parte inferior.

halfpage-up (vi: C-u) (emacs: M-Up)

Desplaza hacia arriba media página.

history-bottom (vi: G) (emacs: M->)

Desplaza hasta el final del historial.

history-top (vi: g) (emacs: M-<)

Desplaza hasta el principio del historial.

jump-again (vi: ;) (emacs: ;)

Repite el último salto.

jump-backward to (vi: F) (emacs: F)

Salta hacia atrás al texto especificado.

jump-forward to (vi: f) (emacs: f)

Salta hacia adelante al texto especificado.

jump-reverse (vi: ,) (emacs: ,)

Repite el último salto en la dirección inversa (hacia adelante se convierte en hacia atrás y viceversa).

jump-to-backward to (vi: T)

Salta hacia atrás, pero un carácter menos, colocando el cursor en el carácter posterior al objetivo.

jump-to-forward to (vi: t)

Salta hacia adelante, pero un carácter menos, colocando el cursor en el carácter anterior al objetivo.

jump-to-mark (vi: M-x) (emacs: M-x)

Salta a la última marca.

middle-line (vi: M) (emacs: M-r)

Mueve a la línea central.

next-matching-bracket (vi: %) (emacs: M-C-f)

Mueve al siguiente corchete coincidente.

next-paragraph (vi: }) (emacs: M-})

Mueve al siguiente párrafo.

next-prompt [-o]

Mueve al siguiente indicador.

next-word (vi: w)

Mueve a la siguiente palabra.

next-word-end (vi: e) (emacs: M-f)

Mueve al final de la siguiente palabra.


next-space (vi: W)

Similar a next-word pero usa un espacio solo como separador de palabras.

next-space-end (vi: E)

Similar a next-word-end pero usa un espacio solo como separador de palabras.

other-end (vi: o)

Cambia en qué extremo de la selección se encuentra el cursor.

page-down (vi: C-f) (emacs: PageDown)

Desplázate hacia abajo una página.

page-down-and-cancel

Similar a page-down pero también sale del modo de copia si se llega al final.

page-up (vi: C-b) (emacs: PageUp)

Desplázate hacia arriba una página.

pipe [comando]

Envía el texto seleccionado al comando y borra la selección.

pipe-no-clear [comando]

Similar a pipe pero no borra la selección.

pipe-and-cancel [comando] [prefijo]

Similar a pipe pero también sale del modo de copia.

previous-matching-bracket (emacs: M-C-b)

Mueve al corchete coincidente anterior.

previous-paragraph (vi: {) (emacs: M-{)

Mueve al párrafo anterior.

previous-prompt [-o]

Mueve al indicador anterior.

previous-word (vi: b) (emacs: M-b)

Mueve a la palabra anterior.

previous-space (vi: B)

Similar a previous-word pero usa un espacio solo como separador de palabras.

rectangle-on

Activa el modo de selección rectangular.

rectangle-off

Desactiva el modo de selección rectangular.

rectangle-toggle (vi: v) (emacs: R)

Alterna el modo de selección rectangular.

refresh-from-pane (vi: r) (emacs: r)

Actualiza el contenido desde el panel.

scroll-bottom

Desplázate hacia arriba hasta que la línea actual esté en la parte inferior, manteniendo el cursor en esa línea.

scroll-down (vi: C-e) (emacs: C-Down)

Desplázate hacia abajo.

scroll-down-and-cancel

Similar a scroll-down pero también sale del modo de copia si el cursor llega al final.

scroll-middle (vi: z)

Desplázate para que la línea actual se convierta en la línea central, manteniendo el cursor en esa línea.

scroll-top

Desplázate hacia arriba hasta que la línea actual esté en la parte superior, manteniendo el cursor en esa línea.

scroll-up (vi: C-y) (emacs: C-Up)

Desplázate hacia arriba.

search-again (vi: n) (emacs: n)

Repite la última búsqueda.

search-backward texto (vi: ?)

Busca hacia atrás el texto especificado.

search-backward-incremental texto (emacs: C-r)

Busca incrementalmente hacia atrás el texto especificado. Se espera que se utilice con la opción -i del comando command-prompt.

search-backward-text texto

Busca hacia atrás el texto plano especificado.

search-forward texto (vi: /)

Busca hacia adelante el texto especificado.

search-forward-incremental texto (emacs: C-s)

Busca incrementalmente hacia adelante el texto especificado. Se espera que se utilice con la opción -i del comando command-prompt.

search-forward-text texto

Busca hacia adelante el texto plano especificado.

search-reverse (vi: N) (emacs: N)

Repite la última búsqueda en la dirección inversa (hacia adelante se convierte en hacia atrás y viceversa).

select-line (vi: V)

Selecciona la línea actual.

select-word

Selecciona la palabra actual.

selection-mode [carácter | palabra | línea]

Cambia el modo de selección.

set-mark (vi: X) (emacs: X)

Marca la línea actual.

start-of-line (vi: 0) (emacs: C-a)

Mueve el cursor al inicio de la línea.

stop-selection

Deja de seleccionar sin borrar la selección actual.


toggle-position (vi: P) (emacs: P)

Alterna la visibilidad del indicador de posición en la esquina superior derecha.

top-line (vi: H) (emacs: M-R)

Mueve al principio de la línea.

Los comandos de búsqueda vienen en varias variedades: ‘search-forward’ y ‘search-backward’ buscan una expresión regular; las variantes ‘-text’ buscan una cadena de texto sin formato en lugar de una expresión regular; ‘-incremental’ realiza una búsqueda incremental y se espera que se utilice con la bandera -i del comando de la línea de comandos. ‘search-again’ repite la última búsqueda y ‘search-reverse’ hace lo mismo pero invierte la dirección (hacia adelante se convierte en hacia atrás y viceversa).

Los atajos de teclado de búsqueda incremental predeterminados, ‘C-r’ y ‘C-s’, están diseñados para emular emacs(1). Cuando se presionan por primera vez, permiten ingresar un nuevo término de búsqueda; si se presionan con un término de búsqueda vacío, repiten el término de búsqueda utilizado anteriormente.

Los comandos ‘next-prompt’ y ‘previous-prompt’ se mueven entre los avisos del shell, pero requieren que el shell emita una secuencia de escape (\033]133;A\033\) para indicar a tmux dónde se encuentran los avisos; si el shell no lo hace, estos comandos no harán nada. La bandera -o salta al principio de la salida del comando en lugar del aviso del shell. Encontrar el principio de la salida del comando requiere que el shell emita una secuencia de escape (\033]133;C\033\) para indicar a tmux dónde comienza la salida. Si el shell no envía estas secuencias de escape, estos comandos no hacen nada.

Los comandos de copia pueden tomar un argumento de prefijo de búfer opcional que se utiliza para generar el nombre del búfer (el valor predeterminado es ‘buffer’, por lo que los búferes se nombran ‘buffer0’, ‘buffer1’, etc.). Los comandos de canalización toman un argumento de comando, que es el comando al que se canaliza el texto seleccionado. Las variantes ‘copy-pipe’ también copian la selección. Las variantes ‘-and-cancel’ de algunos comandos salen del modo de copia después de que se hayan completado (para los comandos de copia) o cuando el cursor llegue al final (para los comandos de desplazamiento). Las variantes ‘-no-clear’ no borran la selección. Todos los comandos de copia pueden tomar las banderas -C y -P. La bandera -C suprime la configuración del portapapeles del terminal al copiar, mientras que la bandera -P suprime la adición de un búfer de pegado con el texto.

Las teclas de siguiente y anterior palabra omiten los espacios en blanco y tratan las ejecuciones consecutivas de separadores de palabras o de otras letras como palabras. Los separadores de palabras se pueden personalizar con la opción de sesión word-separators. La siguiente palabra se mueve al principio de la siguiente palabra, la siguiente palabra final se mueve al final de la siguiente palabra y la palabra anterior se mueve al principio de la palabra anterior. Las tres teclas de siguiente y anterior espacio funcionan de manera similar, pero utilizan un solo espacio como separador de palabras. Establecer word-separators en una cadena vacía hace que siguiente/anterior palabra sea equivalente a siguiente/anterior espacio.

Los comandos de salto habilitan el movimiento rápido dentro de una línea. Por ejemplo, escribir ‘f’ seguido de ‘/’ moverá el cursor al siguiente carácter ‘/’ de la línea actual. Un ‘;’ saltará a la siguiente ocurrencia.


En el modo de copia, los comandos pueden ir precedidos de un número opcional para indicar la cantidad de repeticiones. Con las asignaciones de teclas de vi, un prefijo se introduce utilizando las teclas numéricas; con emacs, la tecla Alt (meta) seguida de un número inicia la entrada del prefijo.

La sintaxis para el comando de modo de copia es:

copy-mode [-deHMqSu] [-s src-pane] [-t target-pane]

Entra en el modo de copia.

-u entra en el modo de copia y se desplaza una página hacia arriba, y -d una página hacia abajo. -H oculta el indicador de posición en la esquina superior derecha. -q cancela el modo de copia y cualquier otro modo.

-M inicia un arrastre del ratón (válido solo si está vinculado a una tecla del ratón, consulte "SOPORTE DEL RATÓN").
-S se desplaza cuando está vinculado a un evento de arrastre del ratón; por ejemplo, copy-mode -Se está vinculado a MouseDrag1ScrollbarSlider de forma predeterminada.

-s copia desde src-pane en lugar de target-pane.

-e especifica que desplazarse hasta el final del historial (hasta la pantalla visible) debe salir del modo de copia. Mientras está en el modo de copia, presionar una tecla que no sea una de las utilizadas para el desplazamiento deshabilitará este comportamiento. Esto tiene como objetivo permitir un desplazamiento rápido a través del historial de un panel, por ejemplo, con:

bind PageUp copy-mode -eu
bind PageDown copy-mode -ed

Hay disponibles varios arreglos predefinidos de paneles, llamados diseños. Estos se pueden seleccionar con el comando select-layout o cambiar con next-layout (vinculado a "Espacio" de forma predeterminada); una vez que se elige un diseño, los paneles dentro de él se pueden mover y cambiar de tamaño como de costumbre.

Los siguientes diseños son compatibles:

even-horizontal

Los paneles se distribuyen uniformemente de izquierda a derecha en la ventana.

even-vertical

Los paneles se distribuyen uniformemente de arriba hacia abajo.

main-horizontal

Se muestra un panel grande (principal) en la parte superior de la ventana y los paneles restantes se distribuyen de izquierda a derecha en el espacio restante en la parte inferior. Utilice la opción de ventana main-pane-height para especificar la altura del panel superior.

main-horizontal-mirrored

Es lo mismo que main-horizontal, pero reflejado para que el panel principal esté en la parte inferior de la ventana.

main-vertical

Se muestra un panel grande (principal) en la izquierda de la ventana y los paneles restantes se distribuyen de arriba hacia abajo en el espacio restante en la derecha. Utilice la opción de ventana main-pane-width para especificar el ancho del panel izquierdo.

main-vertical-mirrored

Es lo mismo que main-vertical, pero reflejado para que el panel principal esté en la derecha de la ventana.

tiled Los paneles se distribuyen de la manera más uniforme posible en la ventana en filas y columnas.

Además, select-layout se puede utilizar para aplicar un diseño previamente utilizado; el comando list-windows muestra el diseño de cada ventana en un formato adecuado para su uso con select-layout. Por ejemplo:

$ tmux list-windows
0 ksh [159x48]
layout: bb62,159x48,0,0{79x48,0,0,79x48,80,0}
$ tmux select-layout 'bb62,159x48,0,0{79x48,0,0,79x48,80,0}'

tmux ajusta automáticamente el tamaño del diseño para el tamaño actual de la ventana. Tenga en cuenta que no se puede aplicar un diseño a una ventana con más paneles que los que tenía el diseño originalmente.

Los comandos relacionados con ventanas y paneles son los siguientes:

break-pane [-abdP] [-F format] [-n window-name] [-s src-pane] [-t dst-window]
(alias: breakp)

Separa src-pane de su ventana contenedora para que sea el único panel en dst-window. Con -a o -b, la ventana se mueve al siguiente índice después o antes (las ventanas existentes se mueven si es necesario). Si se da -d, la nueva ventana no se convierte en la ventana actual. La opción -P imprime información sobre la nueva ventana después de que se haya creado. Por defecto, utiliza el formato ‘#{session_name}:#{window_index}.#{pane_index}’ pero se puede especificar un formato diferente con -F.

capture-pane [-aepPqCJMN] [-b buffer-name] [-E end-line] [-S start-line] [-t target-pane]
(alias: capturep)

Captura el contenido de un panel. Si se da -p, la salida va a stdout, de lo contrario, al buffer especificado con -b o a un nuevo buffer si se omite. Si se da -a, se utiliza la pantalla alterna y el historial no es accesible. Si no existe una pantalla alterna, se devolverá un error a menos que se dé -q. Del mismo modo, si el panel está en un modo, -M utiliza la pantalla para el modo. Si se da -e, la salida incluye secuencias de escape para atributos de texto y fondo. -C también escapa los caracteres no imprimibles como \xxx octales. -T ignora las posiciones finales que no contienen un carácter. -N preserva los espacios finales al final de cada línea y -J preserva los espacios finales y une cualquier línea que se haya ajustado; -J implica -T. -P captura solo cualquier salida que el panel haya recibido que sea el comienzo de una secuencia de escape aún incompleta.

-S y -E especifican los números de línea inicial y final, cero es la primera línea del panel visible y los números negativos son líneas en el historial. ‘-’ a -S es el comienzo del historial y a -E el final del panel visible. Por defecto, solo captura el contenido visible del panel.

choose-client [-NryZ] [-F format] [-f filter] [-K key-format] [-O sort-order] [-t target-pane]
[template]

Coloca un panel en modo cliente, lo que permite seleccionar un cliente de forma interactiva a partir de una lista. Cada cliente se muestra en una línea. Se muestra una tecla de acceso directo en el lado izquierdo que permite una selección inmediata, o la lista se puede navegar y un elemento se puede elegir o manipular de otra manera utilizando las teclas a continuación. -Z amplía el panel. -y deshabilita cualquier solicitud de confirmación. Se pueden utilizar las siguientes teclas en modo cliente:

Tecla Función
Enter Elegir el cliente seleccionado
Arriba Seleccionar el cliente anterior
Abajo Seleccionar el siguiente cliente
C-s Buscar por nombre
n Repetir la última búsqueda hacia adelante
N Repetir la última búsqueda hacia atrás
t Alternar si el cliente está etiquetado
T Eliminar la etiqueta de todos los clientes
C-t Etiquetar todos los clientes
d Desconectar el cliente seleccionado
D Desconectar los clientes etiquetados
x Desconectar y enviar HUP al cliente seleccionado
X Desconectar y enviar HUP a los clientes etiquetados
z Suspender el cliente seleccionado
Z Suspender los clientes etiquetados
f Introducir un formato para filtrar los elementos
O Cambiar el campo de ordenación
r Invertir el orden de ordenación
v Alternar la vista previa
q Salir del modo

Después de que se elige un cliente, ‘%%’ se reemplaza por el nombre del cliente en la plantilla y el resultado se ejecuta como un comando. Si no se proporciona una plantilla, se utiliza "detach-client -t '%%'".

-O especifica el campo de ordenación inicial: uno de ‘name’, ‘size’, ‘creation’ (tiempo) o ‘activity’ (tiempo). -r invierte el orden de ordenación. -f especifica un filtro inicial: el filtro es un formato; si se evalúa como cero, el elemento de la lista no se muestra; de lo contrario, se muestra. Si un filtro provocaría una lista vacía, se ignora. -F especifica el formato para cada elemento de la lista y -K un formato para cada tecla de acceso directo; ambos se evalúan una vez para cada línea. -N inicia sin la vista previa o, si se proporciona dos veces, con la vista previa más grande. Este comando solo funciona si al menos un cliente está conectado.

choose-tree [-GNrswyZ] [-F format] [-f filter] [-K key-format] [-O sort-order] [-t target-pane] [template]

Coloca un panel en modo de árbol, donde una sesión, ventana o panel se pueden elegir de forma interactiva desde un árbol. Cada sesión, ventana o panel se muestra en una línea. Se muestra una tecla de acceso directo en el lado izquierdo entre corchetes, lo que permite una selección inmediata, o se puede navegar por el árbol y elegir un elemento o manipularlo de otra manera utilizando las teclas que se indican a continuación. -s inicia con las sesiones contraídas y -w con las ventanas contraídas. -Z amplía el panel. -y deshabilita cualquier solicitud de confirmación. Las siguientes teclas se pueden usar en el modo de árbol:

Tecla    Función
Enter  Seleccionar el elemento seleccionado
Up     Seleccionar el elemento anterior
Down   Seleccionar el elemento siguiente
S-Up   Intercambiar la ventana actual con la anterior
S-Down Intercambiar la ventana actual con la siguiente
+      Expandir el elemento seleccionado
-      Contraer el elemento seleccionado
M-+    Expandir todos los elementos
M--    Contraer todos los elementos
x      Eliminar el elemento seleccionado
X      Eliminar los elementos etiquetados
<      Desplazar la lista de vistas previas hacia la izquierda
>      Desplazar la lista de vistas previas hacia la derecha
C-s    Buscar por nombre
m      Establecer el panel marcado
M      Borrar el panel marcado
n      Repetir la última búsqueda hacia adelante
N      Repetir la última búsqueda hacia atrás
t      Alternar si el elemento está etiquetado
T      Etiquetar ningún elemento
C-t    Etiquetar todos los elementos
:      Ejecutar un comando para cada elemento etiquetado
f      Introducir un formato para filtrar elementos
H      Ir al panel de inicio
O      Cambiar el campo de ordenación
r      Invertir el orden de ordenación
v      Alternar la vista previa
q      Salir del modo

Después de que se elige una sesión, ventana o panel, la primera instancia de ‘%%’ y todas las instancias de ‘%1’ se reemplazan por el destino en la plantilla y el resultado se ejecuta como un comando. Si no se proporciona una plantilla, se utiliza "switch-client -t '%%'".

-O especifica el campo de ordenación inicial: uno de ‘index’, ‘name’ o ‘time’ (actividad). -r invierte el orden de ordenación. -f especifica un filtro inicial: el filtro es un formato; si se evalúa como cero, el elemento no se muestra; de lo contrario, se muestra. Si un filtro provocaría una lista vacía, se ignora. -F especifica el formato para cada elemento del árbol y -K un formato para cada tecla de acceso directo; ambos se evalúan una vez para cada línea. -N inicia sin la vista previa o, si se proporciona dos veces, con la vista previa más grande. -G incluye todas las sesiones en cualquier grupo de sesiones en el árbol en lugar de solo la primera. Este comando solo funciona si al menos un cliente está conectado.

customize-mode [-NZ] [-F format] [-f filter] [-t target-pane] [template]
Pone un panel en modo de personalización, donde las opciones y las teclas de acceso rápido se pueden explorar y modificar desde una lista. Los valores de las opciones en la lista se muestran para el panel activo en la ventana actual. -Z amplía el panel. Las siguientes teclas se pueden usar en el modo de personalización:

Tecla   Función
Enter   Establece el valor de la opción de panel, ventana, sesión o global
Arriba  Selecciona el elemento anterior
Abajo   Selecciona el siguiente elemento
    +   Expande el elemento seleccionado
    -   Contrae el elemento seleccionado
    M-+ Expande todos los elementos
    M-- Contrae todos los elementos
    s   Establece el valor de la opción o el atributo de la tecla
    S   Establece el valor de la opción global
    w   Establece el valor de la opción de la ventana, si la opción es para el panel y la ventana
    d   Establece una opción o una tecla en el valor predeterminado
    D   Establece las opciones etiquetadas y las teclas etiquetadas en el valor predeterminado
    u   Anula una opción (establece el valor predeterminado si es global) o desvincula una tecla
    U   Anula las opciones etiquetadas y desvincula las teclas etiquetadas
    C-s Busca por nombre
    n   Repite la última búsqueda hacia adelante
    N   Repite la última búsqueda hacia atrás
    t   Alterna si el elemento está etiquetado
    T   No etiqueta ningún elemento
    C-t Etiqueta todos los elementos
    f   Introduce un formato para filtrar los elementos
    v   Alterna la información de la opción
    q   Sale del modo

-f especifica un filtro inicial: el filtro es un formato; si se evalúa como cero, el elemento de la lista no se muestra; de lo contrario, se muestra. Si un filtro provocara una lista vacía, se ignora. -F especifica el formato para cada elemento del árbol. -N inicia sin la información de la opción. Este comando solo funciona si se ha adjuntado al menos un cliente.

display-panes [-bN] [-d duration] [-t target-client] [template]
(alias: displayp)
Muestra un indicador visible de cada panel mostrado por target-client. Consulte las opciones de sesión display-panes-colour y display-panes-active-colour. El indicador se cierra cuando se presiona una tecla (a menos que se dé -N) o han transcurrido duration milisegundos. Si no se da -d, se usa display-panes-time. Una duración de cero significa que el indicador permanece hasta que se presiona una tecla. Mientras el indicador está en la pantalla, se puede seleccionar un panel con las teclas '0' a '9', lo que hará que se ejecute template como un comando con '%%' sustituido por el ID del panel. El valor predeterminado de template es "select-pane -t '%%'". Con -b, otros comandos no se bloquean hasta que se cierra el indicador.

find-window [-iCNrTZ] [-t target-pane] match-string
(alias: findw)
Busca un patrón glob(7) o, con -r, una coincidencia de expresión regular match-string en los nombres de las ventanas, los títulos y el contenido visible (pero no el historial). Las marcas controlan el comportamiento de la coincidencia: -C coincide solo con el contenido visible de la ventana, -N coincide solo con el nombre de la ventana y -T coincide solo con el título de la ventana. -i hace que la búsqueda no distinga entre mayúsculas y minúsculas. El valor predeterminado es -CNT. -Z amplía el panel.

Este comando solo funciona si al menos un cliente está conectado.

join-pane [-bdfhv] [-l size] [-s src-pane] [-t dst-pane]
(alias: joinp)

Similar a split-window, pero en lugar de dividir dst-pane y crear un nuevo panel, lo divide y mueve src-pane al espacio. Esto se puede utilizar para revertir break-pane. La opción -b hace que src-pane se una al lado izquierdo o por encima de dst-pane.

Si se omite -s y existe un panel marcado (ver select-pane -m), se utiliza el panel marcado en lugar del panel actual.

kill-pane [-a] [-t target-pane]
(alias: killp)

Destruye el panel dado. Si no quedan paneles en la ventana que lo contiene, también se destruye. La opción -a elimina todos los paneles excepto el dado con -t.

kill-window [-a] [-t target-window]
(alias: killw)

Elimina la ventana actual o la ventana en target-window, eliminándola de cualquier sesión a la que esté enlazada. La opción -a elimina todas las ventanas excepto la dada con -t.

last-pane [-deZ] [-t target-window]
(alias: lastp)

Selecciona el último panel (seleccionado anteriormente). -Z mantiene la ventana con zoom si estaba con zoom. -e habilita o -d deshabilita la entrada al panel.

last-window [-t target-session]
(alias: last)

Selecciona la última ventana (seleccionada anteriormente). Si no se especifica target-session, selecciona la última ventana de la sesión actual.

link-window [-abdk] [-s src-window] [-t dst-window]
(alias: linkw)

Enlaza la ventana en src-window a la dst-window especificada. Si se especifica dst-window y no existe tal ventana, src-window se enlaza allí. Con -a o -b, la ventana se mueve al siguiente índice después o antes de dst-window (las ventanas existentes se mueven si es necesario). Si se da -k y dst-window existe, se elimina; de lo contrario, se genera un error. Si se da -d, la ventana enlazada recientemente no se selecciona.

list-panes [-as] [-F format] [-f filter] [-t target]
(alias: lsp)

Si se da -a, se ignora target y se listan todos los paneles del servidor. Si se da -s, target es una sesión (o la sesión actual). Si no se da ninguno, target es una ventana (o la ventana actual). -F especifica el formato de cada línea y -f un filtro. Solo se muestran los paneles para los que el filtro es verdadero. Consulte la sección “FORMATOS”.

list-windows [-a] [-F format] [-f filter] [-t target-session]
(alias: lsw)

Si se da -a, se listan todas las ventanas del servidor. De lo contrario, se listan las ventanas en la sesión actual o en target-session. -F especifica el formato de cada línea y -f un filtro. Solo se muestran las ventanas para las que el filtro es verdadero. Consulte la sección “FORMATOS”.

move-pane [-bdfhv] [-l size] [-s src-pane] [-t dst-pane]
(alias: movep)

Hace lo mismo que join-pane.


move-window [-abrdk] [-s src-window] [-t dst-window]
(alias: movew)

Esto es similar a link-window, excepto que la ventana en src-window se mueve a dst-window. Con -r, todas las ventanas en la sesión se renumeran en orden secuencial, respetando la opción base-index.

new-window [-abdkPS] [-c start-directory] [-e environment] [-F format] [-n window-name] [-t target-window] [shell-command [argument ...]]
(alias: neww)

Crear una nueva ventana. Con -a o -b, la nueva ventana se inserta en el siguiente índice después o antes de la ventana especificada, moviendo las ventanas hacia arriba si es necesario; de lo contrario, target-window es la ubicación de la nueva ventana.

Si se da -d, la sesión no convierte la nueva ventana en la ventana actual. target-window representa la ventana que se va a crear; si el destino ya existe, se muestra un error, a menos que se utilice la bandera -k, en cuyo caso se destruye. Si se da -S y ya existe una ventana con el nombre window-name, se selecciona (a menos que también se dé -d, en cuyo caso el comando no hace nada).

shell-command es el comando a ejecutar. Si no se especifica shell-command, se utiliza el valor de la opción default-command. -c especifica el directorio de trabajo en el que se crea la nueva ventana.

Cuando el comando shell se completa, la ventana se cierra. Consulte la opción remain-on-exit para cambiar este comportamiento.

-e tiene la forma ‘VARIABLE=value’ y establece una variable de entorno para la nueva ventana creada; puede especificarse varias veces.

La variable de entorno TERM debe establecerse en ‘screen’ o ‘tmux’ para todos los programas que se ejecuten dentro de tmux. Las nuevas ventanas tendrán automáticamente ‘TERM=screen’ añadida a su entorno, pero se debe tener cuidado de no restablecer esto en los archivos de inicio del shell o mediante la opción -e.

La opción -P imprime información sobre la nueva ventana después de que se haya creado. Por defecto, utiliza el formato ‘#{session_name}:#{window_index}’ pero se puede especificar un formato diferente con -F.

next-layout [-t target-window]
(alias: nextl)

Mover una ventana al siguiente diseño y reorganizar los paneles para que encajen.

next-window [-a] [-t target-session]
(alias: next)

Moverse a la siguiente ventana en la sesión. Si se usa -a, moverse a la siguiente ventana con una alerta.

pipe-pane [-IOo] [-t target-pane] [shell-command]
(alias: pipep)

Canalizar la salida enviada por el programa en target-pane a un comando shell o viceversa. Un panel solo puede estar conectado a un comando a la vez; cualquier canal existente se cierra antes de ejecutar shell-command. La cadena shell-command puede contener las secuencias de caracteres especiales admitidas por la opción status-left. Si no se proporciona shell-command, el canal actual (si existe) se cierra.

-I y -O especifican cuál de los flujos de salida del comando shell se conecta al panel: con -I, stdout se conecta (de modo que cualquier cosa que shell-command imprima se escriba en el panel como si se hubiera escrito); con -O, stdin se conecta (de modo que cualquier salida en el panel se canaliza a shell-command). Ambos se pueden utilizar juntos y si ninguno de los dos se especifica, se utiliza -O.


La opción -o solo abre un nuevo pipe si no existe un pipe anterior, lo que permite alternar un pipe con una sola tecla, por ejemplo:

bind-key C-p pipe-pane -o 'cat >>~/output.#I-#P'

^ revious-layout [-t target-window] (alias: prevl) Mueve a la disposición anterior en la sesión.

^ revious-window [-a] [-t target-session] (alias: prev) Mueve a la ventana anterior en la sesión. Con -a, mueve a la ventana anterior con una alerta.

^ ename-window [-t target-window] new-name (alias: renamew) Cambia el nombre de la ventana actual, o de la ventana en target-window si se especifica, a new-name.

^ esize-pane [-DLMRTUZ] [-t target-pane] [-x width] [-y height] [adjustment] (alias: resizep) Cambia el tamaño de un panel, hacia arriba, abajo, izquierda o derecha en adjustment con -U, -D, -L o -R, o a un tamaño absoluto con -x o -y. El ajuste se da en líneas o columnas (el valor predeterminado es 1; -x e -y pueden darse como un número de líneas o columnas o seguidos de % para un porcentaje del tamaño de la ventana (por ejemplo, -x 10%). Con -Z, el panel activo se alterna entre el estado ampliado (ocupando toda la ventana) y el estado no ampliado (su posición normal en la disposición).

^ M inicia el cambio de tamaño con el ratón (solo válido si se enlaza a una tecla de enlace del ratón, consulte la sección "SOPORTE DEL RATÓN").

^ T recorta todas las líneas por debajo de la posición actual del cursor y mueve las líneas fuera del historial para reemplazarlas.

^ esize-window [-aADLRU] [-t target-window] [-x width] [-y height] [adjustment] (alias: resizew) Cambia el tamaño de una ventana, hacia arriba, abajo, izquierda o derecha en adjustment con -U, -D, -L o -R, o a un tamaño absoluto con -x o -y. El ajuste se da en líneas o celdas (el valor predeterminado es 1. -A establece el tamaño de la sesión más grande que contiene la ventana; -a el tamaño de la más pequeña. Este comando establecerá automáticamente window-size en manual en las opciones de la ventana.

^ espawn-pane [-k] [-c start-directory] [-e environment] [-t target-pane] [shell-command [argument ...]] (alias: respawnp) Reactiva un panel en el que el comando ha finalizado (vea la opción de ventana remain-on-exit). Si no se proporciona shell-command, se ejecuta el comando utilizado cuando se creó o se volvió a iniciar el panel por última vez. El panel debe estar inactivo, a menos que se proporcione -k, en cuyo caso se eliminará cualquier comando existente. -c especifica un nuevo directorio de trabajo para el panel. La opción -e tiene el mismo significado que para el comando new-window.

^ espawn-window [-k] [-c start-directory] [-e environment] [-t target-window] [shell-command [argument ...]] (alias: respawnw) Reactiva una ventana en la que el comando ha finalizado (vea la opción de ventana remain-on-exit). Si no se proporciona shell-command, se ejecuta el comando utilizado cuando se creó o se volvió a iniciar la ventana por última vez. La ventana debe estar inactiva, a menos que se proporcione -k, en cuyo caso se eliminará cualquier comando existente. -c especifica un nuevo directorio de trabajo para la ventana. La opción -e tiene el mismo significado que para el comando new-window.


rotate-window [-DUZ] [-t target-window]
(alias: rotatew)

Rota las posiciones de los paneles dentro de una ventana, ya sea hacia arriba (numéricamente inferior) con -U o hacia abajo (numéricamente superior). -Z mantiene la ventana ampliada si lo estaba.

select-layout [-Enop] [-t target-pane] [layout-name]
(alias: selectl)

Elige un diseño específico para una ventana. Si no se proporciona layout-name, se vuelve a aplicar el último diseño preestablecido utilizado (si lo hay). -n y -p son equivalentes a los comandos next-layout y previous-layout. -o aplica el último diseño establecido si es posible (deshace el cambio de diseño más reciente). -E extiende el panel actual y cualquier panel adyacente de forma uniforme.

select-pane [-DdeLlMmRUZ] [-T title] [-t target-pane]
(alias: selectp)

Hace que el panel target-pane sea el panel activo en su ventana. Si se utiliza una de las opciones -D, -L, -R o -U, respectivamente, se utiliza el panel que está debajo, a la izquierda, a la derecha o por encima del panel de destino. -Z mantiene la ventana ampliada si lo estaba. -l es lo mismo que usar el comando last-pane. -e habilita o -d deshabilita la entrada al panel. -T establece el título del panel.

-m y -M se utilizan para establecer y borrar el panel marcado. Solo hay un panel marcado a la vez; establecer un nuevo panel marcado borra el último. El panel marcado es el destino predeterminado para -s para join-pane, move-pane y swap-pane, así como para swap-window.

select-window [-lnpT] [-t target-window]
(alias: selectw)

Selecciona la ventana en target-window. -l, -n y -p son equivalentes a los comandos last-window, next-window y previous-window. Si se proporciona -T y la ventana seleccionada ya es la ventana actual, el comando se comporta como last-window.

split-window [-bdfhIvPZ] [-c start-directory] [-e environment] [-F format] [-l size] [-t target-pane] [shell-command [argument ...]]
(alias: splitw)

Crea un nuevo panel dividiendo target-pane: -h realiza una división horizontal y -v una división vertical; si no se especifica ninguno de los dos, se asume -v. La opción -l especifica el tamaño del nuevo panel en líneas (para división vertical) o en columnas (para división horizontal); el tamaño puede ir seguido de '%' para especificar un porcentaje del espacio disponible. La opción -b hace que el nuevo panel se cree a la izquierda o por encima de target-pane. La opción -f crea un nuevo panel que ocupa toda la altura de la ventana (con -h) o todo el ancho de la ventana (con -v), en lugar de dividir el panel activo. -Z amplía la ventana si no está ampliada o la mantiene ampliada si ya lo está.

Un shell-command vacío ('') creará un panel sin ningún comando en ejecución. Se puede enviar salida a dicho panel con el comando display-message. La opción -I (si shell-command no está especificado o está vacío) creará un panel vacío y reenviará cualquier salida de stdin a él. Por ejemplo:

$ make 2>&1|tmux splitw -dI &

Todas las demás opciones tienen el mismo significado que para el comando new-window.


swap-pane [-dDUZ] [-s src-pane] [-t dst-pane]
(alias: swapp)

Intercambia dos paneles. Si se usa -U y no se especifica un panel de origen con -s, el panel de destino se intercambia con el panel anterior (numéricamente); -D intercambia con el siguiente panel (numéricamente). -d indica que tmux no debe cambiar el panel activo y -Z mantiene la ventana con zoom si tenía zoom.

Si se omite -s y hay un panel marcado presente (vea select-pane -m), se utiliza el panel marcado en lugar del panel actual.

swap-window [-d] [-s src-window] [-t dst-window]
(alias: swapw)

Similar a link-window, excepto que las ventanas de origen y destino se intercambian. Es un error si no existe ninguna ventana en src-window. Si se da -d, la nueva ventana no se convierte en la ventana actual.

Si se omite -s y hay un panel marcado presente (vea select-pane -m), se utiliza la ventana que contiene el panel marcado en lugar de la ventana actual.

unlink-window [-k] [-t target-window]
(alias: unlinkw)

Desvincula target-window. A menos que se dé -k, una ventana solo se puede desvincular si está vinculada a varias sesiones; las ventanas no pueden estar vinculadas a ninguna sesión; si se especifica -k y la ventana está vinculada a una sola sesión, se desvincula y se destruye.

ENLAZOS DE TECLAS

tmux permite enlazar un comando a la mayoría de las teclas, con o sin una tecla de prefijo. Al especificar las teclas, la mayoría se representan a sí mismas (por ejemplo, 'A' a 'Z'). Las teclas Ctrl se pueden prefijar con 'C-' o '^', las teclas Mayús con 'S-' y Alt (meta) con 'M-'. Además, se aceptan los siguientes nombres de teclas especiales: Arriba, Abajo, Izquierda, Derecha, Retroceso, Tab, Borrar, Fin, Intro, Escape, F1 a F12, Inicio, Ins, PágDesc, PágAnt, Espacio y Tab. Tenga en cuenta que para enlazar las teclas '"' o "'", es necesario utilizar comillas, por ejemplo:

bind-key '"' split-window
bind-key "'" new-window

Un comando enlazado a la tecla Any se ejecutará para todas las teclas que no tengan un enlace más específico.

Los comandos relacionados con los enlaces de teclas son los siguientes:

bind-key [-nr] [-N note] [-T key-table] key [command [argument ...]]
(alias: bind)

Enlaza la tecla key al comando. Las teclas se enlazan en una tabla de teclas. Por defecto (sin -T), la tecla se enlaza en la tabla de teclas de prefijo. Esta tabla se utiliza para las teclas que se presionan después de la tecla de prefijo (por ejemplo, por defecto 'c' se enlaza a new-window en la tabla de prefijos, por lo que 'C-b c' crea una nueva ventana). La tabla raíz se utiliza para las teclas que se presionan sin la tecla de prefijo: enlazar 'c' a new-window en la tabla raíz (no recomendado) significa que una simple 'c' creará una nueva ventana. -n es un alias de -T root. Las teclas también se pueden enlazar en tablas de teclas personalizadas y el comando switch-client -T se puede utilizar para cambiar a ellas desde un enlace de teclas. La bandera -r indica que esta tecla puede repetirse, vea las opciones initial-repeat-time y repeat-time. -N adjunta una nota a la tecla (que se muestra con list-keys -N), que se puede borrar pasando una cadena vacía. Las banderas -r y -N se pueden utilizar sin comando para modificar un enlace existente.


Para ver las asignaciones predeterminadas y los comandos posibles, consulte el comando list-keys.

list-keys [-1aN] [-P prefix-string] [-T key-table] [key]
(alias: lsk)

Lista las asignaciones de teclas. Hay dos formas: la forma predeterminada lista las teclas como comandos bind-key; -N lista solo las teclas con notas adjuntas y muestra solo la tecla y la nota para cada tecla.

En la forma predeterminada, todas las tablas de teclas se listan por defecto. -T lista solo las teclas en key-table.

Con la forma -N, solo las teclas en las tablas de teclas raíz y de prefijo se listan por defecto; -T también lista solo las teclas en key-table. -P especifica un prefijo para imprimir antes de cada tecla y -1 lista solo la primera tecla coincidente. -a lista el comando para las teclas que no tienen una nota en lugar de omitirlas.

send-keys [-FHKlMRX] [-c target-client] [-N repeat-count] [-t target-pane] [key ...]
(alias: send)

Envía una tecla o teclas a una ventana o cliente. Cada argumento key es el nombre de la tecla (como 'C-a' o 'NPage') a enviar; si la cadena no se reconoce como una tecla, se envía como una serie de caracteres. Si se proporciona -K, las teclas se envían a target-client, por lo que se buscan en la tabla de teclas del cliente, en lugar de a target-pane. Todos los argumentos se envían secuencialmente de primero a último. Si no se proporcionan teclas y el comando está vinculado a una tecla, entonces esa tecla se utiliza.

La bandera -l desactiva la búsqueda de nombres de teclas y procesa las teclas como caracteres UTF-8 literales. La bandera -H espera que cada tecla sea un número hexadecimal para un carácter ASCII.

La bandera -R hace que se restablezca el estado del terminal.

-M pasa un evento del ratón (solo válido si está vinculado a una asignación de tecla del ratón, consulte la sección "SOPORTE DEL RATÓN").

`-X` se utiliza para enviar un comando al modo de copia (consulte la sección "VENTANAS Y PANELES"). `-N` especifica un recuento de repetición y `-F` expande los formatos en los argumentos cuando corresponda.

send-prefix [-2] [-t target-pane]

Envía la tecla de prefijo, o con -2 la tecla de prefijo secundaria, a una ventana como si se hubiera presionado.

unbind-key [-anq] [-T key-table] key
(alias: unbind)

Desvincula el comando vinculado a key. -n y -T son los mismos que para bind-key. Si está presente -a, se eliminan todas las asignaciones de teclas. La opción -q evita que se devuelvan errores.

OPCIONES

La apariencia y el comportamiento de tmux se pueden modificar cambiando el valor de varias opciones. Cada opción pertenece a uno o varios ámbitos (servidor, sesión, ventana y panel) y tiene un tipo (cadena, número, tecla, color, bandera, elección o comando). Los valores de las opciones de tipo bandera pueden ser: 1, on, yes, 0, off o no; para los posibles valores de elección, consulte la opción respectiva; para las opciones de tipo tecla, la sección "ASIGNACIONES DE TECLAS"; y para las opciones de tipo color, la sección "ESTILOS".

El servidor tmux tiene un conjunto de opciones de servidor globales que no se aplican a ninguna ventana o sesión o panel en particular. Estas se modifican con el comando set-option -s, o se muestran con el comando show-options -s.

Además, cada sesión individual puede tener un conjunto de opciones de sesión y existe un conjunto separado de opciones de sesión globales. Las sesiones que no tienen configurada una opción en particular heredan el valor de las opciones de sesión globales. Las opciones de sesión se establecen o se eliminan con el comando set-option y se pueden mostrar con el comando show-options. Las opciones de servidor y de sesión disponibles se enumeran en el comando set-option.

De manera similar, a cada ventana se le adjunta un conjunto de opciones de ventana y a cada panel, un conjunto de opciones de panel. Las opciones de panel heredan de las opciones de ventana. Esto significa que cualquier opción de panel se puede establecer como una opción de ventana para aplicar la opción a todos los paneles de la ventana sin que se establezca la opción, por ejemplo, los siguientes comandos establecerán el color de fondo en rojo para todos los paneles, excepto para el panel 0:

set -w window-style bg=red
set -pt:.0 window-style bg=blue

También existe un conjunto de opciones de ventana globales de las cuales se heredan todas las opciones de ventana o de panel que no estén establecidas. Las opciones de ventana y de panel se modifican con los comandos set-option -w y -p, y se muestran con show-option -w y -p.

Tmux también admite opciones de usuario que tienen el prefijo @. Las opciones de usuario pueden tener cualquier nombre, siempre que tengan el prefijo @, y se pueden establecer en cualquier cadena. Por ejemplo:

$ tmux set -wq @foo "abc123"
$ tmux show -wv @foo
abc123

Las opciones se administran con estos comandos:

set-option [-aFgopqsuUw] [-t target-pane] option [value]
(alias: set)

Establece una opción de panel con -p, una opción de ventana con -w, una opción de servidor con -s, de lo contrario, una opción de sesión. Si la opción no es una opción de usuario, -w o -s pueden no ser necesarios: tmux inferirá el ámbito a partir del nombre de la opción, asumiendo -w para las opciones de panel. Si se da -g, se establece la opción de ventana o de sesión global.

-F expande los formatos en el valor de la opción. La bandera `-u` anula una opción, de modo que una sesión hereda la opción de las opciones globales (o con `-g`, restaura una opción global al valor predeterminado). `-U` anula una opción (como `-u`) pero si la opción es una opción de panel, también anula la opción en cualquier panel de la ventana. El valor depende de la opción y su tipo, y se puede omitir para las opciones de indicador y de elección para alternar su valor (las opciones de elección alternan entre las dos primeras opciones).

La bandera -o impide establecer una opción que ya está establecida, y la bandera -q suprime los errores sobre opciones desconocidas o ambiguas.

Con -a, y si la opción espera una cadena o un estilo, el valor se agrega a la configuración existente. Por ejemplo:

set -g status-left "foo"
set -ag status-left "bar"

Esto dará como resultado foobar. Y:

set -g status-style "bg=red"
set -ag status-style "fg=blue"

Esto dará como resultado un fondo rojo y un primer plano azul. Sin -a, el resultado sería el fondo predeterminado y un primer plano azul.

show-options [-AgHpqsvw] [-t target-pane] [option]
(alias: show)

Muestra las opciones del panel (o una sola opción si se proporciona la opción) con -p, las opciones de la ventana con -w, las opciones del servidor con -s, de lo contrario, las opciones de la sesión. Si la opción no es una opción de usuario, -w o -s pueden no ser necesarios: tmux inferirá el ámbito a partir del nombre de la opción, asumiendo -w para las opciones de panel. Las opciones de sesión o de ventana globales se enumeran si se usa -g. -v muestra solo el valor de la opción, no el nombre. Si se establece -q, no se devolverá ningún error si la opción no está establecida. -H incluye los hooks (omitidos por defecto). -A incluye las opciones heredadas de un conjunto de opciones primarias; dichas opciones están marcadas con un asterisco.


Las opciones de servidor disponibles son:

backspace key
Establece la tecla que tmux envía para la tecla de retroceso.

buffer-limit number
Establece el número de búferes; a medida que se agregan nuevos búferes a la parte superior de la pila, los antiguos se eliminan de la parte inferior si es necesario para mantener esta longitud máxima.

command-alias[] name=value
Esta es una matriz de alias personalizados para comandos. Si un comando desconocido coincide con `name`, se reemplaza con `value`. Por ejemplo, después de:

set -s command-alias[100] zoom='resize-pane -Z'

Usando:

zoom -t:.1

Es equivalente a:

resize-pane -Z -t:.1

Tenga en cuenta que los alias se expanden cuando se analiza un comando en lugar de cuando se ejecuta, por lo que vincular un alias con `bind-key` vinculará la forma expandida.

codepoint-widths[] string
Una opción de matriz que permite anular los anchos de los puntos de código Unicode. Tenga en cuenta que el nuevo ancho se aplica a todos los clientes. Cada entrada tiene el formato `codepoint=width`, donde `codepoint` puede ser un carácter UTF-8 o un identificador del formato `'U+number'`, donde `number` es un número hexadecimal.

copy-command shell-command
Proporciona el comando al que se debe canalizar si se utiliza el comando `copy-pipe` del modo de copia sin argumentos.

default-client-command command
Establece el comando predeterminado que se ejecutará cuando se llame a tmux sin un comando. El valor predeterminado es `new-session`.

default-terminal terminal
Establece el terminal predeterminado para las nuevas ventanas creadas en esta sesión: el valor predeterminado de la variable de entorno `TERM`. Para que tmux funcione correctamente, esto debe establecerse en `screen`, `tmux` o un derivado de estos.

escape-time time
Establece el tiempo en milisegundos que tmux espera después de que se introduce un escape para determinar si forma parte de una función o de secuencias de teclas Meta.

editor shell-command
Establece el comando que se utiliza cuando tmux ejecuta un editor.

exit-empty [on | off]
Si está habilitado (el valor predeterminado), el servidor saldrá cuando no haya sesiones activas.

exit-unattached [on | off]
Si está habilitado, el servidor saldrá cuando no haya clientes conectados.

extended-keys [on | off | always]
Controla cómo se informan las teclas modificadas (teclas que se presionan junto con Control, Meta o Shift). Esta es el equivalente del recurso `modifyOtherKeys` de xterm(1).

Cuando se establece en `on`, el programa dentro del panel puede solicitar uno de dos modos: el modo 1, que cambia la secuencia solo para las teclas que no tienen una representación conocida; o el modo 2, que cambia la secuencia para todas las teclas. Cuando se establece en `always`, los modos 1 y 2 aún pueden ser solicitados por las aplicaciones, pero el modo 1 se forzará en su lugar del modo estándar. Cuando se establece en `off`, esta característica está desactivada y solo se informan las teclas estándar.

tmux siempre solicitará las teclas extendidas si el terminal las admite. Consulte también la función `extkeys` para la opción `terminal-features`, la opción `extended-keys-format` y la variable `pane_key_mode`.

`extended-keys-format` [csi-u | xterm]
Selecciona uno de los dos formatos posibles para informar a las aplicaciones sobre las teclas modificadas. Esto es equivalente al recurso `formatOtherKeys` de `xterm(1)`. Por ejemplo, `C-S-a` se informará como `^[[27;6;65~` cuando se establezca en `xterm` y como `^[[65;6u` cuando se establezca en `csi-u`.

`focus-events` [on | off]
Cuando se habilita, se solicitan eventos de enfoque desde el terminal si es compatible y se transmiten a las aplicaciones que se ejecutan en tmux. Los clientes adjuntos deben desconectarse y volver a conectarse después de cambiar esta opción.

`history-file` path
Si no está vacío, es un archivo en el que tmux escribirá el historial de la línea de comandos al salir y lo cargará al iniciar.

`input-buffer-size` bytes
Tamaño máximo en bytes permitido para leer en secuencias de escape y control. Una vez alcanzado, la secuencia se descartará.

`message-limit` number
Establece el número de mensajes de error o información que se guardarán en el registro de mensajes para cada cliente.

`prompt-history-limit` number
Establece el número de elementos de historial que se guardarán en el archivo de historial para cada tipo de línea de comandos.

`set-clipboard` [on | external | off]
Intenta establecer el contenido del portapapeles del terminal utilizando la secuencia de escape de `xterm(1)`, si existe una entrada `Ms` en la descripción de `terminfo(5)` (consulte la sección "EXTENSIONES DE TERMINFO").

Si se establece en `on`, tmux aceptará tanto la secuencia de escape para crear un búfer como intentará establecer el portapapeles del terminal. Si se establece en `external`, tmux intentará establecer el portapapeles del terminal, pero ignorará los intentos de las aplicaciones de establecer los búferes de tmux. Si se establece en `off`, tmux no aceptará la secuencia de escape del portapapeles ni intentará establecer el portapapeles.

Tenga en cuenta que esta función debe habilitarse en `xterm(1)` configurando el recurso:

`disallowedWindowOps: 20,21,SetXprop`

O cambiando esta propiedad desde el menú interactivo de `xterm(1)` cuando sea necesario.

`terminal-features[]` string
Establece las funciones del terminal para los tipos de terminal leídos de `terminfo(5)`. tmux tiene un conjunto de funciones de terminal con nombre. Cada una aplicará los cambios apropiados a la entrada `terminfo(5)` en uso.

tmux puede detectar funciones para algunos terminales comunes; esta opción se puede utilizar para indicarle fácilmente a tmux las funciones admitidas por los terminales que no puede detectar. La opción `terminal-overrides` permite establecer capacidades `terminfo(5)` individuales en su lugar; `terminal-features` está destinada a clases de funcionalidad admitidas de manera estándar, pero no informadas por `terminfo(5)`. Se debe tener cuidado al configurar esto solo con las funciones que el terminal realmente admite.

Esta es una opción de arreglo donde cada entrada es una cadena separada por dos puntos compuesta por un patrón de tipo de terminal (que se compara usando patrones glob(7)) seguido de una lista de características del terminal. Las características disponibles son:

256 Admite 256 colores con las secuencias de escape SGR.

clipboard
Permite establecer el portapapeles del sistema.

ccolour
Permite establecer el color del cursor.

cstyle
Permite establecer el estilo del cursor.

extkeys
Admite teclas extendidas.

focus
Admite la notificación de enfoque.

hyperlinks
Admite hipervínculos OSC 8.

ignorefkeys
Ignora las teclas de función de terminfo(5) y usa solo el conjunto interno de tmux.

margins
Admite márgenes DECSLRM.

mouse
Admite secuencias de ratón xterm(1).

osc7
Admite la extensión de directorio de trabajo OSC 7.

overline
Admite el atributo de línea superior SGR.

rectfill
Admite la secuencia de escape de relleno de rectángulo DECFRA.

RGB
Admite color RGB con las secuencias de escape SGR.

sixel
Admite gráficos SIXEL.

strikethrough
Admite la secuencia de escape de tachado SGR.

sync
Admite actualizaciones sincronizadas.

title
Admite la configuración del título xterm(1).

usstyle
Permite establecer el estilo y el color del subrayado.

terminal-overrides[] string
Permite que las descripciones de terminal leídas usando terminfo(5) se sobrescriban. Cada entrada es una cadena separada por dos puntos compuesta por un patrón de tipo de terminal (que se compara usando patrones glob(7)) y un conjunto de entradas name=value.

Por ejemplo, para establecer la entrada ‘clear’ de terminfo(5) en ‘\e[H\e[2J’ para todos los tipos de terminal que coincidan con ‘rxvt*’:

rxvt*:clear=\e[H\e[2J

El valor de la entrada de terminal se pasa a través de strunvis(3) antes de la interpretación.

user-keys[] key
Establece la lista de secuencias de escape de teclas definidas por el usuario. Cada elemento se asocia con una tecla con nombre ‘User0’, ‘User1’, etc.

Por ejemplo:

set -s user-keys[0] "\e[5;30012~"
bind User0 resize-pane -L 3

variation-selector-always-wide [on | off]
Siempre trata el selector de variación Unicode 16 como que marca un carácter ancho. Esta es una característica de algunos terminales como parte de su soporte de Unicode 14.

Las opciones de sesión disponibles son:

activity-action [any | none | current | other]
Establece la acción al detectar actividad en la ventana cuando monitor-activity está activado. any significa que la actividad en cualquier ventana vinculada a una sesión provoca una señal audible o un mensaje (según visual-activity) en la ventana actual de esa sesión, none significa que se ignora toda la actividad (equivalente a que monitor-activity esté desactivado), current significa que solo se ignora la actividad en las ventanas distintas a la ventana actual y other significa que se ignora la actividad en la ventana actual, pero no en las demás.

assume-paste-time milliseconds
Si las teclas se introducen más rápido que una cada milisegundos, se asume que se han pegado en lugar de escribirse y no se procesan los enlaces de teclas de tmux. El valor predeterminado es un milisegundo y cero lo deshabilita.

base-index index
Establece el índice base a partir del cual se debe buscar un índice no utilizado cuando se crea una nueva ventana. El valor predeterminado es cero.

bell-action [cualquiera | ninguno | actual | otro]
Establece la acción a realizar sobre una señal acústica en una ventana cuando monitor-bell está activado. Los valores son los mismos que los de activity-action.

default-command comando-shell
Establece el comando que se utilizará para las nuevas ventanas (si no se especifica al crear la ventana) en comando-shell, que puede ser cualquier comando [sh]({filename}../../sh)(1). El valor predeterminado es una cadena vacía, lo que indica a tmux que cree un shell de inicio de sesión utilizando el valor de la opción default-shell.

default-shell ruta
Especifica el shell predeterminado. Esto se utiliza como shell de inicio de sesión para las nuevas ventanas cuando la opción default-command se establece en una cadena vacía, y debe ser la ruta completa del ejecutable. Al iniciarse, tmux intenta establecer un valor predeterminado a partir de la primera opción válida de la variable de entorno SHELL, el shell devuelto por getpwuid(3) o /bin/sh. Esta opción debe configurarse cuando tmux se utiliza como shell de inicio de sesión.

default-size AnxAl
Establece el tamaño predeterminado de las nuevas ventanas cuando la opción window-size está establecida en manual o cuando se crea una sesión con new-session -d. El valor es el ancho y la altura separados por un carácter 'x'. El valor predeterminado es 80x24.

destroy-unattached [apagado | encendido | mantener-último | mantener-grupo]
Si está en on, destruye la sesión después de que el último cliente se haya desconectado. Si está en off (el valor predeterminado), deja la sesión huérfana. Si está en keep-last, destruye la sesión solo si está en un grupo y tiene otras sesiones en ese grupo. Si está en keep-group, destruye la sesión a menos que esté en un grupo y sea la única sesión en ese grupo.

detach-on-destroy [apagado | encendido | sin-desconexión | anterior | siguiente]
Si está en on (el valor predeterminado), el cliente se desconecta cuando se destruye la sesión a la que está conectado. Si está en off, el cliente se cambia a la sesión más reciente de las sesiones restantes. Si está en no-detached, el cliente se desconecta solo si no hay sesiones desconectadas; si existen sesiones desconectadas, el cliente se cambia a la sesión más reciente. Si está en previous o next, el cliente se cambia a la sesión anterior o siguiente en orden alfabético.

display-panes-active-colour color
Establece el color que se utiliza el comando display-panes para mostrar el indicador del panel activo.

display-panes-colour color
Establece el color que se utiliza el comando display-panes para mostrar los indicadores de los paneles inactivos.

display-panes-time tiempo
Establece el tiempo en milisegundos durante el cual aparecen los indicadores que muestra el comando display-panes.

display-time tiempo
Establece la cantidad de tiempo durante el cual se muestran los mensajes de la barra de estado y otros indicadores en pantalla. Si se establece en 0, los mensajes y los indicadores se muestran hasta que se presiona una tecla. El tiempo está en milisegundos.

history-limit líneas
Establece el número máximo de líneas que se guardan en el historial de la ventana. Esta configuración se aplica solo a las nuevas ventanas; los historiales de las ventanas existentes no se cambian de tamaño y conservan el límite en el momento en que se crearon.

initial-repeat-time tiempo
Establece el tiempo en milisegundos para la repetición inicial cuando se vincula una tecla con la bandera -r. Esto permite ingresar varios comandos sin volver a presionar la tecla de prefijo. Consulte también la opción repeat-time. Si initial-repeat-time es cero, repeat-time se utiliza para la primera pulsación de tecla.

key-table key-table
Establece la tabla de teclas predeterminada en key-table en lugar de root.

lock-after-time número
Bloquea la sesión (como el comando lock-session) después de número segundos de inactividad. El valor predeterminado es no bloquear (establecer en 0).

lock-command shell-command
Comando a ejecutar al bloquear cada cliente. El valor predeterminado es ejecutar lock(1) con -np.

menu-style style
Establece el estilo del menú. Consulte la sección “ESTILOS” para obtener información sobre cómo especificar el estilo.

menu-selected-style style
Establece el estilo del elemento de menú seleccionado. Consulte la sección “ESTILOS” para obtener información sobre cómo especificar el estilo.

menu-border-style style
Establece el estilo del borde del menú. Consulte la sección “ESTILOS” para obtener información sobre cómo especificar el estilo.

menu-border-lines type
Establece el tipo de caracteres utilizados para dibujar los bordes del menú. Consulte popup-border-lines para conocer los valores posibles para border-lines.

message-command-style style
Establece el estilo de la línea de estado para los mensajes del comando. Esto se utiliza para el indicador de comandos con las teclas de vi(1) cuando se está en modo de comando. Para obtener información sobre cómo especificar el estilo, consulte la sección “ESTILOS”.

message-line [0 | 1 | 2 | 3 | 4]
Establece la línea en la que se muestran los mensajes de la línea de estado y el indicador de comandos.

message-style style
Establece el estilo de la línea de estado para los mensajes. Esto se utiliza para los mensajes y para el indicador de comandos. Para obtener información sobre cómo especificar el estilo, consulte la sección “ESTILOS”.

mouse [on | off]
Si está activado, tmux captura el ratón y permite que los eventos del ratón se enlacen como enlaces de teclas. Consulte la sección “SOPORTE DEL RATÓN” para obtener más detalles.

prefix key
Establece la tecla que se acepta como tecla de prefijo. Además de las teclas estándar descritas en “ENLACES DE TECLAS”, se puede establecer el prefijo en la tecla especial ‘None’ para no establecer ningún prefijo.

prefix2 key
Establece una tecla secundaria que se acepta como tecla de prefijo. Al igual que prefix, prefix2 se puede establecer en ‘None’.

prefix-timeout time
Establece el tiempo, en milisegundos, que tmux espera después de que se introduce el prefijo antes de descartarlo. Se puede establecer en cero para desactivar cualquier tiempo de espera.

prompt-cursor-colour colour
Establece el color del cursor en el indicador de comandos.

prompt-cursor-style style
Establece el estilo del cursor en el indicador de comandos. Consulte las opciones cursor-style para conocer los estilos disponibles.

renumber-windows [on | off]
Si está activado, cuando se cierra una ventana en una sesión, vuelve a numerar automáticamente las demás ventanas en orden numérico. Esto respeta la opción base-index si se ha establecido. Si está desactivado, no vuelve a numerar las ventanas.

repeat-time time
Permite introducir varios comandos sin pulsar la tecla de prefijo de nuevo en el tiempo especificado, en milisegundos (el valor predeterminado es 500). Se puede establecer si una tecla se repite cuando se enlaza utilizando la marca -r de bind-key. La repetición está habilitada para las teclas predeterminadas enlazadas al comando resize-pane. Consulte también la opción initial-repeat-time.

set-titles [on | off]

Intenta establecer el título del terminal del cliente utilizando las entradas tsl y fsl de terminfo(5) si existen. tmux establece automáticamente estas entradas en la secuencia \e]0;...\007 si el terminal parece ser xterm(1). Esta opción está desactivada de forma predeterminada.

set-titles-string string

Cadena utilizada para establecer el título del terminal del cliente si set-titles está activado. Los formatos se expanden, consulte la sección “FORMATOS”.

silence-action [any | none | current | other]

Establece la acción cuando se produce silencio en la ventana cuando monitor-silence está activado. Los valores son los mismos que los de activity-action.

status [off | on | 2 | 3 | 4 | 5]

Muestra u oculta la línea de estado o especifica su tamaño. Usar on muestra una línea de estado de una fila de altura; 2, 3, 4 o 5 filas más.

status-format[] format

Especifica el formato que se utilizará para cada línea de la línea de estado. El valor predeterminado construye la línea de estado superior a partir de las diversas opciones de estado individuales que se indican a continuación.

status-interval interval

Actualiza la línea de estado cada interval segundos. De forma predeterminada, las actualizaciones se producirán cada 15 segundos. Un valor de cero deshabilita el redibujo a intervalos.

status-justify [left | centre | right | absolute-centre]

Establece la posición de la lista de ventanas en la línea de estado: izquierda, centro o derecha. centre coloca la lista de ventanas en el centro relativo del espacio libre disponible; absolute-centre utiliza el centro del espacio horizontal completo.

status-keys [vi | emacs]

Utiliza enlaces de teclado de estilo vi o emacs en la línea de estado, por ejemplo, en la línea de comandos. El valor predeterminado es emacs, a menos que las variables de entorno VISUAL o EDITOR estén establecidas y contengan la cadena ‘vi’.

status-left string

Muestra una cadena a la izquierda de la línea de estado. De forma predeterminada, se muestra el nombre de la sesión. La cadena se pasará a strftime(3). Consulte también las secciones “FORMATOS” y “ESTILOS”.

status-left-length length

Establece la longitud máxima del componente izquierdo de la línea de estado. El valor predeterminado es 10.

status-left-style style

Establece el estilo de la parte izquierda de la línea de estado. Para obtener información sobre cómo especificar el estilo, consulte la sección “ESTILOS”.

status-position [top | bottom]

Establece la posición de la línea de estado.

status-right string

Muestra una cadena a la derecha de la línea de estado. De forma predeterminada, se muestra el título del panel actual entre comillas dobles, la fecha y la hora. Al igual que con status-left, la cadena se pasará a strftime(3) y los pares de caracteres se reemplazarán.

status-right-length length

Establece la longitud máxima del componente derecho de la línea de estado. El valor predeterminado es 40.

status-right-style style

Establece el estilo de la parte derecha de la línea de estado. Para obtener información sobre cómo especificar el estilo, consulte la sección “ESTILOS”.

status-style style

Establece el estilo de la línea de estado. Para obtener información sobre cómo especificar el estilo, consulte la sección “ESTILOS”.


update-environment[] variable

Establece la lista de variables de entorno que se copiarán en el entorno de la sesión cuando se cree una nueva sesión o se adjunte una sesión existente. Cualquier variable que no exista en el entorno de origen se eliminará del entorno de la sesión (como si se hubiera proporcionado la opción -r al comando set-environment).

visual-activity [on | off | both]

Si se establece en on, muestra un mensaje en lugar de enviar una señal de timbre cuando se produce actividad en una ventana para la que la opción de ventana monitor-activity está habilitada. Si se establece en both, se produce tanto una señal de timbre como un mensaje.

visual-bell [on | off | both]

Si se establece en on, muestra un mensaje en una ventana para la que la opción de ventana monitor-bell está habilitada en lugar de enviarlo al terminal (lo que normalmente produce un sonido). Si se establece en both, se produce tanto una señal de timbre como un mensaje. Consulte también la opción bell-action.

visual-silence [on | off | both]

Si monitor-silence está habilitado, imprime un mensaje después de que haya transcurrido el intervalo en una ventana determinada en lugar de enviar una señal de timbre. Si se establece en both, se produce tanto una señal de timbre como un mensaje.

word-separators string

Establece la concepción de la sesión sobre qué caracteres se consideran separadores de palabras, para los fines de los comandos de palabra siguiente y palabra anterior en el modo de copia.

Las opciones de ventana disponibles son:

aggressive-resize [on | off]

Redimensiona agresivamente la ventana elegida. Esto significa que tmux redimensionará la ventana al tamaño de la sesión más pequeña o más grande (consulte la opción window-size) para la que es la ventana actual, en lugar de la sesión a la que está adjunta. La ventana puede cambiar de tamaño cuando se cambia la ventana actual en otra sesión; esta opción es buena para programas de pantalla completa que admiten SIGWINCH y no es buena para programas interactivos como los shells.

automatic-rename [on | off]

Controla el cambio de nombre automático de la ventana. Cuando esta configuración está habilitada, tmux cambiará automáticamente el nombre de la ventana utilizando el formato especificado por automatic-rename-format. Esta opción se desactiva automáticamente para una ventana individual cuando se especifica un nombre en la creación con new-window o new-session, o más tarde con rename-window, o con una secuencia de escape del terminal. Se puede desactivar globalmente con:

set-option -wg automatic-rename off

automatic-rename-format format

El formato (consulte la sección “FORMATOS”) que se utiliza cuando la opción automatic-rename está habilitada.

clock-mode-colour colour

Establece el color del reloj.

clock-mode-style [12 | 24 | 12-with-seconds | 24-with-seconds]

Establece el formato de la hora del reloj.

fill-character character

Establece el carácter utilizado para rellenar las áreas del terminal no utilizadas por una ventana.

main-pane-height height
main-pane-width width

Establece el ancho o la altura del panel principal (izquierdo o superior) en los diseños main-horizontal, main-horizontal-mirrored, main-vertical o main-vertical-mirrored. Si tiene el sufijo ‘%’, esto es un porcentaje del tamaño de la ventana.

copy-mode-match-style style

Establece el estilo de las coincidencias de búsqueda en el modo de copia. Para saber cómo especificar el estilo, consulte la sección “ESTILOS”.


copy-mode-mark-style style
Establece el estilo de la línea que contiene la marca en el modo de copia. Para saber cómo especificar el estilo, consulte la sección “ESTILOS”.

copy-mode-current-match-style style
Establece el estilo de la coincidencia de búsqueda actual en el modo de copia. Para saber cómo especificar el estilo, consulte la sección “ESTILOS”.

copy-mode-position-format format
Formato del indicador de posición en el modo de copia.

mode-keys [vi | emacs]
Utiliza enlaces de teclado de estilo vi o emacs en el modo de copia. El valor predeterminado es emacs, a menos que VISUAL o EDITOR contengan ‘vi’.

copy-mode-position-style style
Establece el estilo del indicador de posición en el modo de copia. Para saber cómo especificar el estilo, consulte la sección “ESTILOS”.

copy-mode-selection-style style
Establece el estilo de la selección en el modo de copia. Para saber cómo especificar el estilo, consulte la sección “ESTILOS”.

mode-style style
Establece el estilo de los modos de ventana. Para saber cómo especificar el estilo, consulte la sección “ESTILOS”.

monitor-activity [on | off]
Supervisa la actividad en la ventana. Las ventanas con actividad se resaltan en la línea de estado.

monitor-bell [on | off]
Supervisa si se emite un sonido de alerta en la ventana. Las ventanas con un sonido de alerta se resaltan en la línea de estado.

monitor-silence [interval]
Supervisa el silencio (ausencia de actividad) en la ventana durante un intervalo de segundos. Las ventanas que hayan estado en silencio durante el intervalo se resaltan en la línea de estado. Un intervalo de cero deshabilita la supervisión.

other-pane-height height
Establece la altura de los otros paneles (no el panel principal) en los diseños main-horizontal y main-horizontal-mirrored. Si esta opción se establece en 0 (el valor predeterminado), no tendrá ningún efecto. Si tanto la opción main-pane-height como la opción other-pane-height están establecidas, el panel principal se hará más alto para que los otros paneles tengan la altura especificada, pero nunca se reducirá para ello. Si se añade ‘%’, esto es un porcentaje del tamaño de la ventana.

other-pane-width width
Similar a other-pane-height, pero establece el ancho de los otros paneles en los diseños main-vertical y main-vertical-mirrored.

pane-active-border-style style
Establece el estilo del borde del panel activo. Para saber cómo especificar el estilo, consulte la sección “ESTILOS”. Se ignoran los atributos.

pane-base-index index
Similar a base-index, pero establece el índice inicial para los números de los paneles.

pane-border-format format
Establece el texto que se muestra en las líneas de estado del borde del panel.

pane-border-indicators [off | colour | arrows | both]
Indica el panel activo coloreando solo la mitad del borde en las ventanas con exactamente dos paneles, mostrando marcadores de flecha, dibujando ambos o ninguno.

pane-border-lines type
Establece el tipo de caracteres utilizados para dibujar los bordes de los paneles. type puede ser uno de los siguientes:

single  líneas simples que utilizan caracteres ACS o UTF-8

double  líneas dobles que utilizan caracteres UTF-8

heavy   líneas gruesas que utilizan caracteres UTF-8

simple  caracteres ASCII simples

number  el número del panel

spaces  caracteres de espacio

‘double’ y ‘heavy’ volverán a utilizar el trazado de líneas ACS estándar cuando no se admita UTF-8.

pane-border-status [off | top | bottom]
Desactiva las líneas de estado del borde del panel o establece su posición.

pane-border-style style
Establece el estilo del borde del panel para los paneles que no sean el panel activo. Para obtener información sobre cómo especificar el estilo, consulta la sección “ESTILOS”. Los atributos se ignoran.

popup-style style
Establece el estilo de la ventana emergente. Consulta la sección “ESTILOS” para obtener información sobre cómo especificar el estilo. Los atributos se ignoran.

popup-border-style style
Establece el estilo del borde de la ventana emergente. Consulta la sección “ESTILOS” para obtener información sobre cómo especificar el estilo. Los atributos se ignoran.

popup-border-lines type
Establece el tipo de caracteres utilizados para dibujar los bordes de las ventanas emergentes. `type` puede ser uno de los siguientes:

single líneas simples que utilizan caracteres ACS o UTF-8 (predeterminado)

rounded
variación de `single` con esquinas redondeadas que utilizan caracteres UTF-8

double líneas dobles que utilizan caracteres UTF-8

heavy líneas pesadas que utilizan caracteres UTF-8

simple caracteres ASCII simples

padded carácter de espacio ASCII simple

none sin borde

`double` y `heavy` volverán a utilizar el trazado de líneas ACS estándar cuando no se admita UTF-8.

pane-scrollbars [off | modal | on]
Cuando se habilita, aparece una barra de desplazamiento basada en caracteres en el lado izquierdo o derecho de cada panel. Una sección rellena de la barra de desplazamiento, conocida como el "deslizador", representa la posición y el tamaño de la parte visible del contenido del panel.

Si se establece en `on`, la barra de desplazamiento es visible todo el tiempo. Si se establece en `modal`, la barra de desplazamiento solo aparece cuando el panel está en modo de copia o modo de vista. Cuando la barra de desplazamiento es visible, el panel se reduce por el ancho de la barra de desplazamiento y el texto del panel se vuelve a formatear. Si se establece en `modal`, el panel se reduce solo cuando la barra de desplazamiento es visible.

Consulta también `pane-scrollbars-style`.

pane-scrollbars-style style
Establece el estilo de las barras de desplazamiento. Para obtener información sobre cómo especificar el estilo, consulta la sección “ESTILOS”. El color de primer plano se utiliza para el deslizador, el color de fondo para el resto de la barra de desplazamiento. El atributo `width` establece el ancho de la barra de desplazamiento y el atributo `pad` el espacio entre la barra de desplazamiento y el panel. Se ignoran los demás atributos.

pane-scrollbars-position [left | right]
Establece qué lado del panel se utilizará para mostrar las barras de desplazamiento del panel.

pane-status-current-style style
Establece el estilo de la línea de estado para el panel activo. Para obtener información sobre cómo especificar el estilo, consulta la sección “ESTILOS”.

pane-status-style style
Establece el estilo de la línea de estado para un solo panel. Para obtener información sobre cómo especificar el estilo, consulta la sección “ESTILOS”.

session-status-current-style style
Establece el estilo de la línea de estado para la sesión activa. Para obtener información sobre cómo especificar el estilo, consulta la sección “ESTILOS”.

session-status-style style
Establece el estilo de la línea de estado para una sola sesión. Para obtener información sobre cómo especificar el estilo, consulta la sección “ESTILOS”.

tiled-layout-max-columns number
Establece el número máximo de columnas en la disposición en mosaico. Un valor de 0 (el valor predeterminado) significa que no hay límite. Cuando se establece un límite, los paneles se organizan para no superar este número de columnas, y los paneles adicionales se apilan en filas adicionales.

window-status-activity-style estilo
Establece el estilo de la línea de estado para las ventanas con una alerta de actividad. Para obtener información sobre cómo especificar el estilo, consulte la sección "ESTILOS".

window-status-bell-style estilo
Establece el estilo de la línea de estado para las ventanas con una alerta de sonido. Para obtener información sobre cómo especificar el estilo, consulte la sección "ESTILOS".

window-status-current-format cadena
Similar a window-status-format, pero es el formato que se utiliza cuando la ventana es la ventana actual.

window-status-current-style estilo
Establece el estilo de la línea de estado para la ventana activa. Para obtener información sobre cómo especificar el estilo, consulte la sección "ESTILOS".

window-status-format cadena
Establece el formato en el que se muestra la ventana en la lista de ventanas de la línea de estado. Consulte las secciones "FORMATOS" y "ESTILOS".

window-status-last-style estilo
Establece el estilo de la línea de estado para la última ventana activa. Para obtener información sobre cómo especificar el estilo, consulte la sección "ESTILOS".

window-status-separator cadena
Establece el separador que se dibuja entre las ventanas en la línea de estado. El valor predeterminado es un solo carácter de espacio.

window-status-style estilo
Establece el estilo de la línea de estado para una sola ventana. Para obtener información sobre cómo especificar el estilo, consulte la sección "ESTILOS".

window-size largest | smallest | manual | latest
Configura cómo tmux determina el tamaño de la ventana. Si se establece en largest, se utiliza el tamaño de la sesión adjunta más grande; si se establece en smallest, se utiliza el tamaño de la sesión más pequeña. Si se establece en manual, el tamaño de una nueva ventana se establece a partir de la opción default-size y las ventanas se cambian de tamaño automáticamente. Con latest, tmux utiliza el tamaño del cliente que tuvo la actividad más reciente.
Consulte también el comando resize-window y la opción aggressive-resize.

wrap-search [on | off]
Si esta opción está establecida, las búsquedas se ajustarán al final del contenido del panel. El valor predeterminado es on.

Las opciones de panel disponibles son:

allow-passthrough [on | off | all]
Permite que los programas en el panel omitan tmux utilizando una secuencia de escape de terminal (\ePtmux;...\e\\). Si se establece en on, las secuencias de paso se permitirán solo si el panel es visible. Si se establece en all, se permitirán incluso si el panel es invisible.

allow-rename [on | off]
Permite que los programas en el panel cambien el nombre de la ventana utilizando una secuencia de escape de terminal (\ek...\e\\).

allow-set-title [on | off]
Permite que los programas en el panel cambien el título utilizando las secuencias de escape de terminal (\e]2;...\e\\ o \e]0;...\e\\).

alternate-screen [on | off]
Esta opción configura si los programas que se ejecutan dentro del panel pueden usar la función de pantalla alterna del terminal, que permite las capacidades smcup y rmcup de terminfo(5). La función de pantalla alterna preserva el contenido de la ventana cuando se inicia una aplicación interactiva y lo restaura al salir, de modo que cualquier salida visible antes de que se inicie la aplicación reaparezca sin cambios después de que salga.

cursor-colour color
Establece el color del cursor.

cursor-style estilo
Establece el estilo del cursor. Los estilos disponibles son: default, blinking-block, block, blinking-underline, underline, blinking-bar, bar.

pane-colours[] colour
La paleta de colores predeterminada. Cada entrada del array define el color que tmux usa cuando se solicita el color con ese índice. El índice puede estar entre cero y 255.

remain-on-exit [on | off | failed]
Un panel con esta opción activada no se destruye cuando el programa que se ejecuta en él finaliza. Si se establece en failed, entonces solo cuando el estado de salida del programa no es cero. El panel se puede reactivar con el comando respawn-pane.

remain-on-exit-format string
Establece el texto que se muestra en la parte inferior de los paneles que se han cerrado cuando remain-on-exit está habilitado.

scroll-on-clear [on | off]
Cuando se borra toda la pantalla y esta opción está activada, se desplaza el contenido de la pantalla al historial antes de borrarlo.

synchronize-panes [on | off]
Duplica la entrada en todos los demás paneles en la misma ventana donde también está activada esta opción (solo para paneles que no están en ningún modo).

window-active-style style
Establece el estilo del panel cuando es el panel activo. Para obtener información sobre cómo especificar el estilo, consulte la sección "ESTILOS".

window-style style
Establece el estilo del panel. Para obtener información sobre cómo especificar el estilo, consulte la sección "ESTILOS".

HOOKS

tmux permite que se ejecuten comandos en varios disparadores, llamados hooks. La mayoría de los comandos de tmux tienen un hook "after" y existen varios hooks que no están asociados con comandos.

Los hooks se almacenan como opciones de array, los miembros del array se ejecutan en orden cuando se activa el hook. Al igual que las opciones, los hooks pueden ser globales o pertenecer a una sesión, ventana o panel. Los hooks se pueden configurar con los comandos set-hook o set-option y se pueden mostrar con show-hooks o show-options -H. Los siguientes dos comandos son equivalentes:

set-hook -g pane-mode-changed[42] 'set -g status-left-style bg=red'
set-option -g pane-mode-changed[42] 'set -g status-left-style bg=red'

Establecer un hook sin especificar un índice de array borra el hook y establece el primer miembro del array.

El hook "after" de un comando se ejecuta después de que este se completa, excepto cuando el comando se ejecuta como parte de un hook. Se nombran con el prefijo "after-". Por ejemplo, el siguiente comando agrega un hook para seleccionar el diseño "even-vertical" después de cada split-window:

set-hook -g after-split-window "selectl even-vertical"

Si un comando falla, se activará el hook "command-error". Por ejemplo, esto se podría usar para escribir en un archivo de registro:

set-hook -g command-error "run-shell \"echo 'a tmux command failed' >>/tmp/log\""

Todas las notificaciones enumeradas en la sección "CONTROL MODE" son hooks (sin argumentos), excepto %exit. Los siguientes hooks adicionales están disponibles:

alert-activity Run when a window has activity. See monitor-activity.

alert-bell Run when a window has received a bell. See monitor-bell.

alert-silence Run when a window has been silent. See monitor-silence.

client-active Run when a client becomes the latest active client of its session.

client-attached     Se ejecuta cuando se adjunta un cliente.

client-detached     Se ejecuta cuando se desvincula un cliente.

client-focus-in     Se ejecuta cuando el foco entra en un cliente.

client-focus-out        Se ejecuta cuando el foco sale de un cliente.

client-resized      Se ejecuta cuando se redimensiona un cliente.

client-session-changed  Se ejecuta cuando cambia la sesión adjunta de un cliente.

client-light-theme      Se ejecuta cuando un cliente cambia a un tema claro.

client-dark-theme       Se ejecuta cuando un cliente cambia a un tema oscuro.

command-error       Se ejecuta cuando falla un comando.

pane-died           Se ejecuta cuando el programa que se ejecuta en un panel finaliza, pero remain-on-exit está activado, por lo que el panel no se ha cerrado.

pane-exited         Se ejecuta cuando el programa que se ejecuta en un panel finaliza.

pane-focus-in       Se ejecuta cuando el foco entra en un panel, si la opción focus-events está activada.

pane-focus-out      Se ejecuta cuando el foco sale de un panel, si la opción focus-events está activada.

pane-set-clipboard  Se ejecuta cuando se establece el portapapeles del terminal utilizando la secuencia de escape xterm(1).

session-created     Se ejecuta cuando se crea una nueva sesión.

session-closed      Se ejecuta cuando se cierra una sesión.

session-renamed     Se ejecuta cuando se cambia el nombre de una sesión.

window-layout-changed   Se ejecuta cuando se cambia el diseño de la ventana.

window-linked       Se ejecuta cuando una ventana se vincula a una sesión.

window-renamed      Se ejecuta cuando se cambia el nombre de una ventana.

window-resized      Se ejecuta cuando se cambia el tamaño de una ventana. Esto puede ocurrir después de que se ejecute el hook client-resized.

window-unlinked     Se ejecuta cuando una ventana se desvincula de una sesión.

Los hooks se gestionan con estos comandos:

set-hook [-agpRuw] [-t target-pane] hook-name [command]

Sin -R, establece (o con -u, elimina) el hook hook-name con el comando. Los indicadores son los mismos que para set-option.

Con -R, ejecuta el hook-name inmediatamente.

show-hooks [-gpw] [-t target-pane] [hook]

Muestra los hooks. Los indicadores son los mismos que para show-options.

SOPORTE DEL MOUSE

Si la opción mouse está activada (el valor predeterminado es desactivada), tmux permite que los eventos del mouse se enlacen como teclas. El nombre de cada tecla se compone de un evento del mouse (como ‘MouseUp1’) y un sufijo de ubicación, uno de los siguientes:

Pane            El contenido de un panel.
Border          El borde de un panel.
Status          La línea de estado de la lista de ventanas.
StatusLeft      La parte izquierda de la línea de estado.
StatusRight     La parte derecha de la línea de estado.
StatusDefault       Cualquier otra parte de la línea de estado.
ScrollbarSlider El control deslizante de la barra de desplazamiento.
ScrollbarUp     Arriba del control deslizante de la barra de desplazamiento.
ScrollbarDown       Debajo del control deslizante de la barra de desplazamiento.

Los siguientes eventos del mouse están disponibles:

WheelUp     WheelDown
MouseDown1      MouseUp1        MouseDrag1      MouseDragEnd1
MouseDown2      MouseUp2        MouseDrag2      MouseDragEnd2
MouseDown3      MouseUp3        MouseDrag3      MouseDragEnd3
SecondClick1        SecondClick2        SecondClick3
DoubleClick1        DoubleClick2        DoubleClick3
TripleClick1        TripleClick2        TripleClick3

Los eventos ‘SecondClick’ se activan para el segundo clic de un doble clic, incluso si puede haber un tercer clic que active ‘TripleClick’ en lugar de ‘DoubleClick’.


Cada uno debe tener el sufijo de una ubicación, por ejemplo, ‘MouseDown1Status’.

El token especial ‘{mouse}’ o ‘=’ puede usarse como ventana de destino o panel de destino en los comandos vinculados a las teclas del ratón. Se resuelve a la ventana o panel sobre el que se produjo el evento del ratón (por ejemplo, la ventana en la línea de estado sobre la que se soltó el botón 1 para una vinculación ‘MouseUp1Status’, o el panel sobre el que se hizo clic en la rueda para una vinculación ‘WheelDownPane’).

La marca -M de send-keys puede usarse para reenviar un evento del ratón a un panel.

Las vinculaciones de teclas predeterminadas permiten usar el ratón para seleccionar y cambiar el tamaño de los paneles, para copiar texto y para cambiar de ventana usando la línea de estado. Estas se activan si la opción del ratón está activada.

FORMATOS

Algunos comandos aceptan la marca -F con un argumento de formato. Esta es una cadena que controla el formato de salida del comando. Las variables de formato están encerradas entre ‘#{‘ y ‘}’, por ejemplo, ‘#{session_name}’. Las posibles variables se enumeran en la tabla a continuación, o se puede usar el nombre de una opción de tmux para el valor de una opción, o el nombre de una variable de entorno. Algunas variables tienen un alias más corto como ‘#S’; ‘##’ se reemplaza por un solo ‘#’, ‘#,’ por una ‘,’ y ‘#}’ por una ‘}’.

Los condicionales están disponibles prefijando con ‘?’. Para cada par de dos argumentos, si la variable en el primero del par existe y no es cero, se elige el segundo del par, de lo contrario, continúa. Si no hay ningún condicional de argumentos emparejados que coincida, se elige el valor predeterminado. Si hay un argumento final no emparejado, ese es el valor predeterminado. Si no, el valor predeterminado es la cadena vacía. Por ejemplo, ‘#{?session_attached,attached,not attached}’ incluirá la cadena ‘attached’ si la sesión está adjunta y la cadena ‘not attached’ si no lo está, o ‘#{?automatic-rename,yes,no}’ incluirá ‘yes’ si automatic-rename está habilitado, o ‘no’ si no lo está. ‘#{?#{n:window_name},#{window_name} - }’ incluirá el nombre de la ventana con un separador de guión si hay un nombre de ventana, o la cadena vacía si el nombre de la ventana está vacío. ‘#{?session_format,format1,window_format,format2,format3}’ incluirá format1 para un formato de sesión, format2 para un formato de ventana o format3 para ninguno de los formatos de sesión o ventana. Los condicionales se pueden anidar arbitrariamente. Dentro de un condicional, ‘,’ y ‘}’ deben escaparse como ‘#,’ y ‘#}’, a menos que formen parte de una sustitución ‘#{...}’. Por ejemplo:

#{?pane_in_mode,#[fg=white#,bg=red],#[fg=red#,bg=white]}#W

Las comparaciones de cadenas se pueden expresar prefijando dos alternativas separadas por comas con ‘==’, ‘!=’, ‘<’, ‘>’, ‘<=’ o ‘>=’ y dos puntos. Por ejemplo, ‘#{==:#{host},myhost}’ se reemplazará por ‘1’ si se ejecuta en ‘myhost’, de lo contrario, por ‘0’. ‘||’ y ‘&&’ se evalúan como verdadero si alguna o todas las alternativas separadas por comas son verdaderas, por ejemplo, ‘#{||:#{pane_in_mode},#{alternate_on}}’. ‘!’ se evalúa como verdadero si el valor es falso y viceversa, por ejemplo, ‘#{!:#{pane_in_mode}}’. ‘!!’ convierte un valor en una forma booleana canónica, 1 para verdadero y 0 para falso, por ejemplo, ‘#{!!:non-empty string}’ se evalúa como 1.

Una ‘m’ especifica una comparación con un patrón glob(7) o una expresión regular. El primer argumento es el patrón y el segundo es la cadena a comparar. Un argumento opcional especifica las banderas: ‘r’ significa que el patrón es una expresión regular en lugar del patrón glob(7) por defecto, y ‘i’ significa ignorar mayúsculas y minúsculas. Por ejemplo: ‘#{m:*foo*,#{host}}’ o ‘#{m/ri:^A,MYVAR}’. Una ‘C’ realiza una búsqueda de un patrón glob(7) o una expresión regular en el contenido del panel y devuelve cero si no se encuentra, o el número de línea si se encuentra. Al igual que ‘m’, una bandera ‘r’ significa buscar una expresión regular y ‘i’ ignora mayúsculas y minúsculas. Por ejemplo: ‘#{C/r:^Start}’.

Se pueden realizar operaciones numéricas prefijando dos alternativas separadas por comas con una ‘e’ y un operador. Se puede proporcionar una bandera ‘f’ opcional después del operador para usar números de punto flotante; de lo contrario, se usan enteros. Esto puede ir seguido de un número que indica el número de decimales a usar para el resultado. Los operadores disponibles son: adición ‘+’, sustracción ‘-’, multiplicación ‘*’, división ‘/’, módulo ‘m’ o ‘%’ (tenga en cuenta que ‘%’ debe escaparse como ‘%%’ en los formatos que también se expanden con strftime(3)) y operadores de comparación numérica ‘==’, ‘!=’, ‘<’, ‘<=’, ‘>’ y ‘>=’. Por ejemplo, ‘#{e|*|f|4:5.5,3}’ multiplica 5.5 por 3 para obtener un resultado con cuatro decimales, y ‘#{e|%%:7,3}’ devuelve el módulo de 7 y 3. ‘a’ reemplaza un argumento numérico por su equivalente ASCII, por lo que ‘#{a:98}’ da como resultado ‘b’. ‘c’ reemplaza un color tmux por su valor RGB hexadecimal de seis dígitos.

Se puede colocar un límite en la longitud de la cadena resultante prefijándola con un ‘=’, un número y dos puntos. Los números positivos cuentan desde el inicio de la cadena y los negativos desde el final, por lo que ‘#{=5:pane_title}’ incluirá como máximo los primeros cinco caracteres del título del panel, o ‘#{=-5:pane_title}’ los últimos cinco caracteres. Se puede proporcionar un sufijo o prefijo como segundo argumento; si se proporciona, se agrega o se antepone a la cadena si la longitud se ha recortado, por ejemplo, ‘\#{=/5/...:pane\_title}’ agregará ‘...’ si el título del panel tiene más de cinco caracteres. De manera similar, ‘p’ rellena la cadena a un ancho determinado, por ejemplo, ‘\#{p10:pane\_title}’ dará como resultado un ancho de al menos 10 caracteres. Un ancho positivo rellena a la izquierda, un ancho negativo a la derecha. ‘n’ se expande a la longitud de la variable y ‘w’ a su ancho cuando se muestra, por ejemplo, ‘#{n:window_name}’. ‘R’ repite el primer argumento un número de veces dado por el segundo argumento, por lo que ‘#{R:a,3}’ dará como resultado ‘aaa’.

Prefijar una variable de tiempo con ‘t:’ la convertirá en una cadena, por lo que si ‘#{window_activity}’ devuelve ‘1445765102’, ‘#{t:window_activity}’ devuelve ‘Sun Oct 25 09:25:02 2015’. Agregar ‘p (’ ‘`t/p`’) utilizará un formato de tiempo más corto pero menos preciso para los tiempos en el pasado. Se puede proporcionar un formato personalizado utilizando un sufijo ‘f’ (tenga en cuenta que ‘%’ debe escaparse como ‘%%’ si el formato se está pasando por separado a través de strftime(3), por ejemplo, en la opción status-left): ‘#{t/f/%%H#:%%M:window_activity}’, consulte strftime(3).

Los prefijos ‘b:’ y ‘d:’ son [basename]({filename}../../basename)(3) y dirname(3) de la variable, respectivamente. ‘q:’
escapará los caracteres especiales de [sh]({filename}../../sh)(1) o, con un sufijo ‘h’, escapará los caracteres de hash (de modo que ‘\#’ se convierta en
‘##’). ‘E:’ expandirá el formato dos veces; por ejemplo, ‘\#{E:status-left}’ es el resultado de expandir el contenido de la opción status-left en lugar de la opción en sí. ‘T:’ es similar a ‘E:’
pero también expande los especificadores de strftime(3). ‘S:’, ‘W:’, ‘P:’ o ‘L:’ recorrerán cada sesión,
ventana, panel o cliente e insertarán el formato una vez por cada uno. ‘L:’, ‘S:’ y ‘W:’ pueden tomar un argumento de ordenamiento opcional ‘/i’, ‘/n’, ‘/t’ para ordenar por índice, nombre o hora de la última actividad; además,
‘/r’ para ordenar en orden inverso. ‘/r’ también se puede utilizar con ‘P:’ para invertir el orden de clasificación por índice de panel. Por ejemplo, ‘S/nr:’ para ordenar las sesiones por nombre en orden inverso. Para cada uno, se pueden proporcionar dos formatos separados por comas: el segundo se utiliza para la ventana actual, el panel activo o la sesión activa. Por ejemplo, para obtener una lista de ventanas con formato como la línea de estado:

\#{W:#{E:window-status-format} ,\#{E:window-status-current-format} }

‘N:’ verifica si un nombre de ventana (sin ningún sufijo o con el sufijo ‘w’) o un nombre de sesión (con el sufijo ‘s’) existe; por ejemplo, ‘\`N/w:foo\`’ se reemplaza con 1 si existe una ventana llamada ‘foo’.

Un prefijo de la forma ‘s/foo/bar/:’ sustituirá ‘foo’ por ‘bar’ en todo el texto. El primer argumento puede ser una expresión regular extendida y se puede agregar un argumento final ‘i’ para ignorar mayúsculas y minúsculas; por ejemplo, ‘s/a(.)/\1x/i:’ cambiaría ‘abABab’ a ‘bxBxbx’. Se puede utilizar un carácter delimitador diferente para evitar colisiones con las barras diagonales literales en el patrón. Por ejemplo,
‘s|foo/|bar/|:’ sustituirá ‘foo/’ por ‘bar/’ en todo el texto.

Múltiples modificadores pueden separarse con un punto y coma (;) como en ‘#{T;=10:status-left}’, lo que limita la cadena resultante expandida por strftime(3) a un máximo de 10 caracteres.

Además, la última línea de la salida de un comando de shell puede insertarse utilizando ‘#()’. Por ejemplo, ‘#(uptime)’ insertará el tiempo de actividad del sistema. Al construir formatos, tmux no espera a que los comandos ‘#()’ terminen; en su lugar, se utiliza el resultado anterior de la ejecución del mismo comando, o un marcador de posición si el comando no se ha ejecutado antes. Si el comando no ha finalizado, se utilizará la línea de salida más reciente, pero la línea de estado no se actualizará más de una vez por segundo. Los comandos se ejecutan utilizando /bin/sh y con el entorno global de tmux establecido (consulte la sección “ENTORNO GLOBAL Y DE SESIÓN”).

Un ‘`l`’ especifica que una cadena debe interpretarse literalmente y no expandirse. Por ejemplo, ‘`#{l:#{?pane_in_mode,yes,no}}`’ se reemplazará por ‘`#{?pane_in_mode,yes,no}`’.

Las siguientes variables están disponibles, según corresponda:

Nombre de la variable Alias Se reemplaza con

^ ctive_window_index Índice de la ventana activa en la sesión ^ lternate_on 1 si el panel está en la pantalla alterna ^ lternate_saved_x X del cursor guardado en la pantalla alterna ^ lternate_saved_y Y del cursor guardado en la pantalla alterna ^ uffer_created Hora de creación del búfer ^ uffer_full Contenido completo del búfer ^ uffer_name Nombre del búfer ^ uffer_sample Muestra del inicio del búfer ^ uffer_size Tamaño del búfer especificado en bytes ^ lient_activity Tiempo de la última actividad del cliente ^ lient_cell_height Altura de cada celda del cliente en píxeles ^ lient_cell_width Ancho de cada celda del cliente en píxeles ^ lient_control_mode 1 si el cliente está en modo de control ^ lient_created Hora de creación del cliente ^ lient_discarded Bytes descartados cuando el cliente está inactivo ^ lient_flags Lista de indicadores del cliente ^ lient_height Altura del cliente ^ lient_key_table Tabla de teclas actual ^ lient_last_session Nombre de la última sesión del cliente ^ lient_name Nombre del cliente ^ lient_pid PID del proceso del cliente ^ lient_prefix 1 si se ha presionado la tecla de prefijo ^ lient_readonly 1 si el cliente es de solo lectura ^ lient_session Nombre de la sesión del cliente ^ lient_termfeatures Características del terminal del cliente, si las hay ^ lient_termname Nombre del terminal del cliente ^ lient_termtype Tipo de terminal del cliente, si está disponible ^ lient_tty Pseudo terminal del cliente ^ lient_uid UID del proceso del cliente ^ lient_user Usuario del proceso del cliente ^ lient_utf8 1 si el cliente admite UTF-8 ^ lient_width Ancho del cliente ^ lient_written Bytes escritos en el cliente ^ ommand Nombre del comando en uso, si lo hay ^ ommand_list_alias Alias del comando si se enumeran los comandos ^ ommand_list_name Nombre del comando si se enumeran los comandos ^ ommand_list_usage Uso del comando si se enumeran los comandos ^ onfig_files Lista de archivos de configuración cargados ^ ursor_blinking 1 si el cursor parpadea ^ opy_cursor_hyperlink Hipervínculo debajo del cursor en el modo de copia ^ opy_cursor_line Línea en la que se encuentra el cursor en el modo de copia ^ opy_cursor_word Palabra debajo del cursor en el modo de copia ^ opy_cursor_x Posición X del cursor en el modo de copia ^ opy_cursor_y Posición Y del cursor en el modo de copia ^ urrent_file Archivo de configuración actual ^ ursor_character Carácter en el cursor en el panel ^ ursor_colour Color del cursor en el panel ^ ursor_flag Indicador del cursor ^ indow_raw_flags Indicadores de ventana con nada escapado ^ indow_flags Indicadores de ventana con # escapado como ## ^ indow_format 1 si el formato es para una ventana ^ indow_height Altura de la ventana ^ indow_id ID único de la ventana ^ indow_index Índice de la ventana ^ indow_last_flag 1 si la ventana es la última usada ^ indow_layout Descripción del diseño de la ventana, ignorando los paneles de ventana ampliados ^ indow_linked 1 si la ventana está vinculada entre sesiones ^ indow_linked_sessions Número de sesiones a las que está vinculada esta ventana ^ indow_linked_sessions_list Lista de sesiones a las que está vinculada esta ventana ^ indow_marked_flag 1 si la ventana contiene el panel marcado ^ indow_name Nombre de la ventana ^ indow_offset_x Desplazamiento X en la ventana si es más grande que el cliente ^ indow_offset_y Desplazamiento Y en la ventana si es más grande que el cliente ^ indow_panes Número de paneles en la ventana ^ indow_raw_flags Indicadores de ventana con nada escapado ^ indow_silence_flag 1 si la ventana tiene alerta de silencio ^ indow_stack_index Índice en la pila más reciente de la sesión ^ indow_start_flag 1 si la ventana tiene el índice más bajo ^ indow_visible_layout Descripción del diseño de la ventana, respetando los paneles de ventana ampliados ^ indow_width Ancho de la ventana ^ indow_zoomed_flag 1 si la ventana está ampliada ^ rap_flag Indicador de ajuste de línea del panel


ESTILOS

tmux ofrece varias opciones para especificar el color y los atributos de aspectos de la interfaz, por ejemplo, `status-style` para la barra de estado. Además, se pueden especificar estilos integrados en las opciones de formato, como `status-left`, encerrándolos entre `#[` y `]`.

Un estilo puede ser el término único `default` para especificar el estilo predeterminado (que puede provenir de una opción, por ejemplo, `status-style` en la barra de estado) o una lista separada por espacios o comas de los siguientes:

`fg=color`
Establece el color de primer plano. El color es uno de: `black`, `red`, `green`, `yellow`, `blue`,
`magenta`, `cyan`, `white`; si se admite, las variantes brillantes `brightblack`, `brightred`, ...;
`colour0` a `colour255` del conjunto de 256 colores; `default` para el color predeterminado; `terminal`
para el color predeterminado del terminal; o una cadena RGB hexadecimal como `"#ffffff"`.

bg=color

Establece el color de fondo.

us=color

Establece el color del subrayado.

none

Establece ningún atributo (desactiva cualquier atributo activo).

acs, bright (o bold), dim, underscore, blink, reverse, hidden, italics, overline, strikethrough,
double-underscore, curly-underscore, dotted-underscore, dashed-underscore

Establece un atributo. Cualquiera de los atributos puede tener el prefijo ‘no’ para desactivarlo. acs es el conjunto de caracteres alternativo del terminal.

align=left (o noalign), align=centre, align=right

Alinea el texto a la izquierda, al centro o a la derecha del espacio disponible, si es apropiado.

fill=color

Rellena el espacio disponible con un color de fondo, si es apropiado.

list=on, list=focus, list=left-marker, list=right-marker, nolist

Marca la posición de los distintos componentes de la lista de ventanas en la opción status-format: list=on marca el inicio de la lista; list=focus es la parte de la lista que debe mantenerse en foco si toda la lista no cabe en el espacio disponible (normalmente la ventana actual); list=left-marker y list=right-marker marcan el texto que se utilizará para indicar que se ha recortado texto del lado izquierdo o derecho de la lista si no hay suficiente espacio.

noattr

No copiar atributos del estilo predeterminado.

push-default, pop-default

Guarda los colores y atributos actuales como predeterminados o restablece al predeterminado anterior. push-default afecta a cualquier uso posterior del terminal predeterminado hasta un pop-default. Solo se puede guardar un predeterminado (cada push-default reemplaza el predeterminado guardado anterior).

range=left, range=right, range=session|X, range=window|X, range=pane|X, range=user|X, norange

Marca un rango para eventos del ratón en la opción status-format. Cuando se produce un evento del ratón en el rango range=left o range=right, se activan las vinculaciones de teclas StatusLeft y StatusRight.

`range=session|X`, `range=window|X` y `range=pane|X` son rangos para una sesión, ventana o
panel. Estos activan la tecla de ratón `Status` con la sesión, ventana o panel de destino especificada
por el argumento `X`. `X` es un ID de sesión, un índice de ventana en la sesión actual o un ID de panel. Para estos, la variable de formato `mouse_status_range` se establecerá en `session`, `window` o `pane`.

`range=user|X` es un rango definido por el usuario; activa la tecla de ratón `Status`. El argumento
`X` estará disponible en la variable de formato `mouse_status_range`. `X` debe tener como máximo 15
bytes de longitud.

set-default

Establece los colores y atributos actuales como predeterminados, sobrescribiendo cualquier predeterminado anterior. El predeterminado anterior no se puede restaurar.

Ejemplos son:

fg=yellow bold underscore blink
bg=black,fg=default,noreverse

NOMBRES Y TÍTULOS

tmux distingue entre nombres y títulos. Las ventanas y sesiones tienen nombres, que se pueden
utilizar para especificarlos en los destinos y se muestran en la línea de estado y en varias listas: el nombre es
el identificador de tmux para una ventana o sesión. Solo los paneles tienen títulos. El título de un panel suele estar definido por el programa que se ejecuta en el panel mediante una secuencia de escape (como lo haría para establecer el
título de la ventana xterm(1) en X(7)). Las ventanas en sí no tienen títulos; el título de una ventana es el
título de su panel activo. tmux puede establecer el título del terminal en el que se ejecuta el cliente, consulte la opción `set-titles`.

El nombre de una sesión se establece con los comandos new-session y rename-session. El nombre de una ventana se establece con uno de los siguientes:

Un argumento de comando (como -n para new-window o new-session).

Una secuencia de escape (si la opción allow-rename está activada):

$ printf '\033kWINDOW_NAME\033\\'

Renombrado automático, que establece el nombre al comando activo en el panel activo de la ventana. Consulte la opción automatic-rename.

Cuando se crea un panel por primera vez, su título es el nombre de host. El título de un panel se puede establecer mediante la secuencia de escape title, por ejemplo:

$ printf '\033]2;My Title\033\\'

También se puede modificar con el comando select-pane -T.

ENTORNO GLOBAL Y DE SESIÓN

Cuando se inicia el servidor, tmux copia el entorno en el entorno global; además, cada sesión tiene un entorno de sesión. Cuando se crea una ventana, se fusionan el entorno de sesión y el entorno global. Si una variable existe en ambos, se utiliza el valor del entorno de sesión. El resultado es el entorno inicial que se pasa al nuevo proceso.

La opción de sesión update-environment se puede utilizar para actualizar el entorno de sesión desde el cliente cuando se crea una nueva sesión o se vuelve a conectar una sesión antigua. tmux también inicializa la variable TMUX con alguna información interna para permitir que los comandos se ejecuten desde dentro, y la variable TERM con la configuración de terminal correcta de screen.

Las variables tanto en el entorno de sesión como en el entorno global pueden marcarse como ocultas. Las variables ocultas no se pasan al entorno de los nuevos procesos y, en su lugar, solo pueden ser utilizadas por tmux (por ejemplo, en formatos, consulte la sección “FORMATOS”).

Los comandos para alterar y ver el entorno son:

set-environment [-Fhgru] [-t target-session] variable [value]
(alias: setenv)

Establece o elimina una variable de entorno. Si se utiliza -g, el cambio se realiza en el entorno global; de lo contrario, se aplica al entorno de sesión para target-session. Si está presente -F, entonces value se expande como un formato. La bandera -u elimina una variable. -r indica que la variable debe eliminarse del entorno antes de iniciar un nuevo proceso. -h marca la variable como oculta.

show-environment [-hgs] [-t target-session] [variable]
(alias: showenv)

Muestra el entorno para target-session o el entorno global con -g. Si se omite variable, se muestran todas las variables. Las variables eliminadas del entorno van precedidas de un -. Si se utiliza -s, la salida se formatea como un conjunto de comandos de Bourne shell. -h muestra las variables ocultas (omite por defecto).


LÍNEA DE ESTADO

tmux incluye una línea de estado opcional que se muestra en la línea inferior de cada terminal.

De forma predeterminada, la línea de estado está habilitada y tiene una línea de altura (se puede desactivar o hacer que tenga varias líneas con la opción de sesión status). Contiene, de izquierda a derecha: el nombre de la sesión actual entre corchetes; la lista de ventanas; el título del panel activo entre comillas dobles; y la hora y la fecha.

Cada línea de la línea de estado se configura con la opción status-format. El valor predeterminado consta de tres partes: secciones izquierda y derecha configurables (que pueden contener contenido dinámico, como la hora o la salida de un comando de shell; consulte las opciones status-left, status-left-length, status-right y status-right-length a continuación) y una lista de ventanas central. De forma predeterminada, la lista de ventanas muestra el índice, el nombre y (si los hay) la marca de las ventanas presentes en la sesión actual en orden numérico ascendente. Puede personalizarse con las opciones window-status-format y window-status-current-format. La marca es uno de los siguientes símbolos que se agrega al nombre de la ventana:

Símbolo Significado * Indica la ventana actual. - Marca la última ventana (seleccionada anteriormente). # Se supervisa la actividad de la ventana y se ha detectado actividad. ! Se supervisan las alertas de sonido de la ventana y se ha producido un sonido en la ventana. ~ La ventana ha estado inactiva durante el intervalo monitor-silence. M La ventana contiene el panel marcado. Z El panel activo de la ventana está ampliado.

El símbolo # se relaciona con la opción window de monitor-activity. El nombre de la ventana se imprime en colores invertidos si hay una alerta (sonido, actividad o silencio).

El color y los atributos de la línea de estado se pueden configurar, la línea de estado completa utilizando la opción de sesión status-style y las ventanas individuales utilizando la opción window de window-status-style.

La línea de estado se actualiza automáticamente a intervalos si ha cambiado, el intervalo se puede controlar con la opción de sesión status-interval.

Los comandos relacionados con la línea de estado son los siguientes:

clear-prompt-history [-T prompt-type]
(alias: clearphist)

Borrar el historial de la línea de comandos para el tipo de línea de comandos prompt-type. Si se omite -T, entonces borrar el historial de todos los tipos. Consulte command-prompt para ver los valores posibles de prompt-type.

command-prompt [-1bFiklN] [-I inputs] [-p prompts] [-t target-client] [-T prompt-type] [template]

Abrir la línea de comandos en un cliente. Esto se puede utilizar desde dentro de tmux para ejecutar comandos de forma interactiva.

Si se especifica template, se utiliza como el comando. Con -F, template se expande como un formato.

Si -I está presente, inputs es una lista separada por comas del texto inicial para cada línea de comandos. Si se proporciona -p, prompts es una lista separada por comas de las líneas de comandos que se muestran en orden; de lo contrario, se muestra una sola línea de comandos, construida a partir de template si está presente, o ":" si no. -l deshabilita la división de inputs y prompts en comas y los trata literalmente.


Antes de que se ejecute el comando, la primera ocurrencia de la cadena '%%' y todas las ocurrencias de '%1' se reemplazan por la respuesta a la primera pregunta, todas las '%2' se reemplazan con la respuesta a la segunda pregunta, y así sucesivamente para las preguntas posteriores. Se pueden reemplazar hasta nueve respuestas a las preguntas ('%1' a '%9'). '%%%' es como '%%' pero todas las comillas se escapan.

-1 hace que la pregunta solo acepte una pulsación de tecla, en cuyo caso la entrada resultante es un solo carácter. -k es como -1 pero la pulsación de tecla se traduce a un nombre de tecla. -N hace que la pregunta solo acepte pulsaciones de teclas numéricas. -i ejecuta el comando cada vez que cambia la entrada de la pregunta en lugar de cuando el usuario sale de la pregunta.

-T le dice a tmux el tipo de pregunta. Esto afecta a las sugerencias que se ofrecen cuando se presiona la tecla Tab. Los tipos disponibles son: 'command', 'search', 'target' y 'window-target'.

Las siguientes teclas tienen un significado especial en la pregunta, dependiendo del valor de la opción status-keys:

Función                             vi        emacs
Cancelar la pregunta                q         Escape
Eliminar desde el cursor hasta el comienzo de la palabra            C-w
Eliminar todo el comando                d         C-u
Eliminar desde el cursor hasta el final            D         C-k
Ejecutar el comando                      Enter     Enter
Obtener el siguiente comando del historial                  Down
Obtener el comando anterior del historial              Up
Insertar el búfer de pegado superior              p         C-y
Buscar sugerencias                 Tab       Tab
Mover el cursor a la izquierda                     h         Left
Mover el cursor a la derecha                    l         Right
Mover el cursor al final                   $         C-e
Mover el cursor a la siguiente palabra             w         M-f
Mover el cursor a la palabra anterior         b         M-b
Mover el cursor al principio                 0         C-a
Transponer caracteres                           C-t

Con -b, la pregunta se muestra en segundo plano y el cliente que la invoca no se cierra hasta que se descarta.

confirm-before [-by] [-c confirm-key] [-p prompt] [-t target-client] comando

(alias: confirm) Solicitar confirmación antes de ejecutar el comando. Si se proporciona -p, prompt es la pregunta que se mostrará; de lo contrario, se construye una pregunta a partir del comando. Puede contener las secuencias de caracteres especiales admitidas por la opción status-left. Con -b, la pregunta se muestra en segundo plano y el cliente que la invoca no se cierra hasta que se descarta. -y cambia el comportamiento predeterminado (si solo se presiona Enter) de la pregunta para ejecutar el comando. -c cambia la tecla de confirmación a confirm-key; el valor predeterminado es 'y'.

display-menu [-OM] [-b border-lines] [-c target-client] [-C starting-choice] [-H selected-style]
[-s style] [-S border-style] [-t target-pane] [-T title] [-x position] [-y position] name
key command [name key command ...]

(alias: menu) Mostrar un menú en target-client. target-pane indica el destino para cualquier comando que se ejecute desde el menú.


Se pasa un menú como una serie de argumentos: primero el nombre del elemento del menú, segundo el atajo de teclado (o vacío si no hay) y tercero el comando a ejecutar cuando se elige el elemento del menú.
El nombre y el comando tienen formatos, ver las secciones “FORMATOS” y “ESTILOS”. Si el nombre comienza con un guion (-), el elemento se desactiva (se muestra atenuado) y no se puede elegir.
El nombre puede estar vacío para una línea separadora, en cuyo caso tanto la tecla como el comando deben omitirse.

-b establece el tipo de caracteres que se utilizan para dibujar los bordes del menú. Consulte popup-border-lines para conocer los posibles valores de border-lines.

-H establece el estilo del elemento de menú seleccionado (consulte “ESTILOS”).

-s establece el estilo del menú y -S establece el estilo del borde del menú (consulte “ESTILOS”).

-T es un formato para el título del menú (consulte “FORMATOS”).

-C establece el elemento de menú seleccionado por defecto, si el menú no está enlazado a una vinculación de teclas del ratón.

-x e -y dan la posición del menú. Ambos pueden ser un número de fila o columna, o uno de los siguientes valores especiales:

Valor Indicador Significado C Ambos El centro de la terminal R -x El lado derecho de la terminal P Ambos La esquina inferior izquierda del panel M Ambos La posición del ratón W Ambos La posición de la ventana en la línea de estado S -y La línea superior o inferior de la línea de estado

O un formato, que se expande incluyendo las siguientes variables adicionales:

Nombre de la variable Se reemplaza con popup_centre_x Centrado en el cliente popup_centre_y Centrado en el cliente popup_height Altura del menú o ventana emergente popup_mouse_bottom Abajo en la posición del ratón popup_mouse_centre_x Centro horizontal en la posición del ratón popup_mouse_centre_y Centro vertical en la posición del ratón popup_mouse_top Arriba en la posición del ratón popup_mouse_x Posición X del ratón popup_mouse_y Posición Y del ratón popup_pane_bottom Abajo del panel popup_pane_left Izquierda del panel popup_pane_right Derecha del panel popup_pane_top Arriba del panel popup_status_line_y Arriba o debajo de la línea de estado popup_width Ancho del menú o ventana emergente popup_window_status_line_x En la posición de la ventana en la línea de estado popup_window_status_line_y En la línea de estado que muestra la ventana

Cada menú consta de elementos seguidos de un atajo de teclado que se muestra entre corchetes. Si el menú es demasiado grande para caber en la terminal, no se muestra. Al presionar el atajo de teclado se elige el elemento correspondiente. Si el ratón está habilitado y el menú se abre desde una vinculación de teclas del ratón, al soltar el botón del ratón con un elemento seleccionado se elige ese elemento y al soltar el botón del ratón sin un elemento seleccionado se cierra el menú. -O cambia este comportamiento para que el menú no se cierre cuando se suelta el botón del ratón sin seleccionar un elemento; el menú no se cierra y debe hacer clic en un botón del ratón para elegir un elemento.


-M indica a tmux que el menú debe manejar eventos del ratón; por defecto, solo los menús abiertos desde enlaces de teclado del ratón lo hacen.

Las siguientes teclas están disponibles en los menús:

Tecla   Función
Enter   Seleccionar el elemento seleccionado
Arriba  Seleccionar el elemento anterior
Abajo   Seleccionar el siguiente elemento
q   Salir del menú

display-message [-aCIlNpv] [-c target-client] [-d delay] [-t target-pane] [message]
(alias: display)

Muestra un mensaje. Si se da -p, la salida se imprime en stdout; de lo contrario, se muestra en la línea de estado del target-client durante un máximo de delay milisegundos. Si delay no se da, se usa la opción display-time; un delay de cero espera a que se presione una tecla. ‘N’ ignora las pulsaciones de teclas y se cierra solo después de que expire el delay. Si se da -C, el panel seguirá actualizándose mientras se muestra el mensaje. Si se da -l, el mensaje se imprime sin cambios. De lo contrario, el formato del mensaje se describe en la sección "FORMATOS"; la información se toma de target-pane si se da -t, de lo contrario, del panel activo.

-v imprime un registro detallado mientras se analiza el formato y -a enumera las variables de formato y sus valores.

-I reenvía cualquier entrada leída desde stdin al panel vacío dado por target-pane.

display-popup [-BCEkN] [-b border-lines] [-c target-client] [-d start-directory] [-e environment]
[-h height] [-s style] [-S border-style] [-t target-pane] [-T title] [-w width] [-x
position] [-y position] [shell-command [argument ...]]
(alias: popup)

Muestra un popup ejecutando el shell-command (o default-command cuando se omite) en target-client. Un popup es una caja rectangular dibujada sobre los paneles. Los paneles no se actualizan mientras está presente un popup. Si el comando se ejecuta dentro de un popup existente, ese popup se modifica. Solo se aceptan las opciones -b, -B, -C, -E, -EE, -K, -N, -s y -S en este caso; las demás se ignoran.

-E cierra el popup automáticamente cuando shell-command sale. Dos -E cierran el popup solo si shell-command salió con éxito. -k permite que cualquier tecla cierre el popup en lugar de solo ‘Escape’ o ‘C-c’.

-x e -y dan la posición del popup, tienen el mismo significado que para el comando display-menu. -w y -h dan el ancho y el alto; ambos pueden ser un porcentaje (seguido de ‘%’). Si se omiten, se utiliza la mitad del tamaño del terminal.

-B no rodea el popup con un borde.

-b establece el tipo de caracteres utilizados para dibujar los bordes del popup. Cuando se especifica -B, la opción -b se ignora. Consulte popup-border-lines para ver los posibles valores para border-lines.

-s establece el estilo del popup y -S establece el estilo del borde del popup (consulte “STYLES”).

-e toma la forma ‘VARIABLE=valor’ y establece una variable de entorno para la ventana emergente; puede especificarse varias veces.

-T es un formato para el título de la ventana emergente (ver “FORMATOS”).

La opción -C cierra cualquier ventana emergente en el cliente.

-N deshabilita cualquier opción -E, -EE o -k especificada anteriormente.

show-prompt-history [-T prompt-type]
(alias: showphist)

Muestra el historial de indicaciones de estado para el tipo de indicación prompt-type. Si se omite -T, entonces muestra el historial para todos los tipos. Consulte el comando command-prompt para obtener los valores posibles de prompt-type.

BÚFERES

tmux mantiene un conjunto de búferes con nombre. Cada búfer puede tener un nombre explícito o automático. Los búferes con nombre explícito se nombran al crearlos con los comandos set-buffer o load-buffer, o al cambiar el nombre de un búfer con nombre automático con set-buffer -n. Los búferes con nombre automático reciben un nombre como ‘buffer0001’, ‘buffer0002’, etc. Cuando se alcanza el límite de búferes (buffer-limit), el búfer automático con nombre más antiguo se elimina. Los búferes con nombre explícito no están sujetos al límite de búferes y pueden eliminarse con el comando delete-buffer.

Los búferes se pueden agregar utilizando el modo de copia o los comandos set-buffer y load-buffer, y se pueden pegar en una ventana utilizando el comando paste-buffer. Si se utiliza un comando de búfer y no se especifica ningún búfer, se asume el búfer automático con nombre más reciente.

También se mantiene un búfer de historial configurable para cada ventana. Por defecto, se guardan hasta 2000 líneas; esto se puede cambiar con la opción history-limit (consulte el comando set-option anterior).

Los comandos de búfer son los siguientes:

choose-buffer [-NryZ] [-F format] [-f filter] [-K key-format] [-O sort-order] [-t target-pane]
[template]

Pone un panel en modo de búfer, donde se puede elegir un búfer de forma interactiva de una lista. Cada búfer se muestra en una línea. Se muestra una tecla de acceso directo a la izquierda, lo que permite una elección inmediata, o la lista se puede navegar y un elemento se puede elegir o manipular de otra manera utilizando las teclas que se muestran a continuación. -Z amplía el panel. -y deshabilita cualquier indicación de confirmación. Las siguientes teclas se pueden usar en el modo de búfer:

Key    Función
Enter  Pega el búfer seleccionado
Up     Selecciona el búfer anterior
Down   Selecciona el siguiente búfer
C-s    Busca por nombre o contenido
n      Repite la última búsqueda hacia adelante
N      Repite la última búsqueda hacia atrás
t      Alterna si el búfer está etiquetado
T      No etiqueta ningún búfer
C-t    Etiqueta todos los búferes
p      Pega el búfer seleccionado
P      Pega los búferes etiquetados
d      Elimina el búfer seleccionado
D      Elimina los búferes etiquetados
e      Abre el búfer en un editor
f      Introduce un formato para filtrar los elementos
O      Cambia el campo de ordenación
r      Invierte el orden de ordenación
v      Alterna la vista previa
q      Sale del modo

Después de que se elige un búfer, ‘%%’ se reemplaza por el nombre del búfer en la plantilla y el resultado se ejecuta como un comando. Si no se proporciona ninguna plantilla, se utiliza “paste-buffer -p -b ‘%%’”.

-O especifica el campo de ordenación inicial: uno de ‘time’ (creación), ‘name’ o ‘size’. -r invierte el orden de ordenación. -f especifica un filtro inicial: el filtro es un formato; si se evalúa como cero, el elemento de la lista no se muestra, de lo contrario se muestra. Si un filtro daría como resultado una lista vacía, se ignora. -F especifica el formato para cada elemento de la lista y -K un formato para cada tecla de acceso directo; ambos se evalúan una vez para cada línea. -N inicia sin la vista previa. Este comando solo funciona si al menos un cliente está conectado.

clear-history [-H] [-t target-pane]
(alias: clearhist)

Elimina y libera el historial para el panel especificado. -H también elimina todos los hipervínculos.

delete-buffer [-b buffer-name]
(alias: deleteb)

Elimina el búfer denominado buffer-name, o el búfer de nombre automático agregado más recientemente si no se especifica.

list-buffers [-F format] [-f filter]
(alias: lsb)

Lista los búferes globales. -F especifica el formato de cada línea y -f un filtro. Solo se muestran los búferes para los que el filtro es verdadero. Consulte la sección “FORMATOS”.

load-buffer [-w] [-b buffer-name] [-t target-client] path
(alias: loadb)

Carga el contenido del búfer especificado desde la ruta. Si se proporciona -w, el búfer también se envía al portapapeles para target-client mediante la secuencia de escape xterm(1), si es posible. Si la ruta es '-', el contenido se lee desde stdin.

paste-buffer [-dpr] [-b buffer-name] [-s separator] [-t target-pane]
(alias: pasteb)

Inserta el contenido de un búfer en el panel especificado. Si no se especifica, se pega en el panel actual. Con -d, también elimina el búfer. Cuando se muestra, cualquier carácter de nueva línea (LF) en el búfer se reemplaza con un separador, por defecto, retorno de carro (CR). Se puede especificar un separador personalizado utilizando la marca -s. La marca -r significa no realizar ningún reemplazo (equivalente a un separador de LF). Si se especifica -p, se insertan códigos de control de corchetes alrededor del búfer si la aplicación ha solicitado el modo de pegado con corchetes.

save-buffer [-a] [-b buffer-name] path
(alias: saveb)

Guarda el contenido del búfer especificado en la ruta. La opción -a agrega en lugar de sobrescribir el archivo. Si la ruta es '-', el contenido se escribe en stdout.

set-buffer [-aw] [-b buffer-name] [-t target-client] [-n new-buffer-name] data
(alias: setb)

Establece el contenido del búfer especificado en data. Si se proporciona -w, el búfer también se envía al portapapeles para target-client mediante la secuencia de escape xterm(1), si es posible. La opción -a agrega en lugar de sobrescribir el búfer. La opción -n cambia el nombre del búfer a new-buffer-name.

show-buffer [-b buffer-name]
(alias: showb)

Muestra el contenido del búfer especificado.

MISCELÁNEOS

Los comandos misceláneos son los siguientes:

clock-mode [-t target-pane]

Muestra un reloj grande.

if-shell [-bF] [-t target-pane] shell-command command [command]
(alias: if)

Ejecuta el primer comando si shell-command (ejecutado con /bin/sh) devuelve éxito o el segundo comando en caso contrario. Antes de la ejecución, shell-command se expande utilizando las reglas especificadas en la sección “FORMATOS”, incluidas las relevantes para target-pane. Con -b, shell-command se ejecuta en segundo plano.


Si se proporciona -F, el comando de shell no se ejecuta, pero se considera un éxito si no está vacío ni es cero (después de que se expanden los formatos).

lock-server
(alias: lock)

Bloquea cada cliente individualmente ejecutando el comando especificado por la opción lock-command.

run-shell [-bCE] [-c start-directory] [-d delay] [-t target-pane] [shell-command]
(alias: run)

Ejecuta shell-command usando /bin/sh o (con -C) un comando tmux en segundo plano sin crear una ventana. Antes de ser ejecutado, shell-command se expande usando las reglas especificadas en la sección "FORMATOS". Con -b, el comando se ejecuta en segundo plano. -d espera durante delay segundos antes de iniciar el comando. -E redirige el stderr del comando a stdout en lugar de ignorarlo. Si se da -c, el directorio de trabajo actual se establece en start-directory. Si no se da -C, cualquier salida a stdout se muestra en modo de visualización (en el panel especificado por -t o en el panel actual si se omite) después de que el comando finaliza. Si el comando falla, también se muestra el estado de salida.

wait-for [-L | -S | -U] channel
(alias: wait)

Cuando se usa sin opciones, impide que el cliente salga hasta que se le despierte usando wait-for -S con el mismo canal. Cuando se usa -L, el canal se bloquea y cualquier cliente que intente bloquear el mismo canal debe esperar hasta que el canal se desbloquee con wait-for -U.

MENSAJES DE SALIDA

Cuando un cliente tmux se desconecta, imprime un mensaje. Este puede ser uno de los siguientes:

detached (from session ...)

El cliente se desconectó normalmente.

detached and SIGHUP

El cliente se desconectó y su proceso padre envió la señal SIGHUP (por ejemplo, con detach-client -P).

lost tty

El tty(4) o pty(4) del cliente se destruyó inesperadamente.

terminated

El cliente fue terminado con SIGTERM.

too far behind

El cliente está en modo de control y no pudo mantenerse al día con los datos de tmux.

exited  El servidor se cerró cuando no tenía sesiones.

server exited

El servidor se cerró cuando recibió SIGTERM.

server exited unexpectedly

El servidor falló o se cerró de otra manera sin decirle al cliente la razón.

EXTENSIONES DE TERMINFO

tmux comprende algunas extensiones no oficiales de terminfo(5). Normalmente, no es necesario establecer estas manualmente; en su lugar, se debe utilizar la opción terminal-features.

AX      Una extensión existente que le dice a tmux que la terminal admite colores predeterminados.

Bidi    Indica a tmux que la terminal admite las extensiones de texto bidireccional VTE.

Cs, Cr  Establece el color del cursor. El primero toma un solo argumento de cadena y se utiliza para establecer el color; el segundo no toma argumentos y restaura el color del cursor predeterminado. Si se establece, se puede utilizar una secuencia como esta para cambiar el color del cursor desde dentro de tmux:

$ printf '\033]12;red\033\\'

El color es un color X(7), consulte XParseColor(3).

Cmg, Clmg, Dsmg, Enmg

Establece, borra, deshabilita o habilita los márgenes DECSLRM. Estos se establecen automáticamente si la terminal informa que es compatible con VT420.

Dsbp, Enbp

Deshabilita y habilita el pegado entre corchetes. Estos se establecen automáticamente si está presente la capacidad XT.

Dseks, Eneks

Deshabilita y habilita las teclas extendidas.

Dsfcs, Enfcs

Deshabilita y habilita la notificación de enfoque. Estos se establecen automáticamente si está presente la capacidad XT.

Hls Establece o borra una anotación de hipervínculo.

Nobr Indica a tmux que la terminal no utiliza colores brillantes para la visualización en negrita.

Rect Indica a tmux que la terminal admite operaciones de rectángulo.

Smol Habilita el atributo de línea superior.

Smulx Establece un subrayado con estilo. El único parámetro es uno de: 0 para ningún subrayado, 1 para subrayado normal, 2 para subrayado doble, 3 para subrayado ondulado, 4 para subrayado punteado y 5 para subrayado discontinuo.

Setulc, Setulc1, ol

Establece el color del subrayado o restablece al valor predeterminado. Setulc es para colores RGB y Setulc1 es para colores ANSI o de 256 colores. El argumento de Setulc es (rojo * 65536) + (verde * 256) + azul, donde cada uno está entre 0 y 255.

Ss, Se Establece o restablece el estilo del cursor. Si se establece, se puede utilizar una secuencia como esta para cambiar el cursor a un subrayado:

$ printf '\033[4 q'

Si Se no está establecido, Ss con el argumento 0 se utilizará para restablecer el estilo del cursor en su lugar.

Swd Establece la secuencia de apertura para la notificación del directorio de trabajo. La secuencia se termina utilizando la capacidad fsl estándar.

Sxl Indica que la terminal admite SIXEL.

Sync Inicia (el parámetro es 1) o finaliza (el parámetro es 2) una actualización sincronizada.

Tc Indica que la terminal admite la secuencia de escape RGB de "color directo" (por ejemplo, \e[38;2;255;255;255m).

Si es compatible, esto se utiliza para la secuencia de escape de inicialización de color (que se puede habilitar agregando las capacidades "initc" y "ccc" a la entrada terminfo(5) de tmux).

Esto es equivalente a la capacidad terminfo(5) de RGB.

Ms Almacena el búfer actual en el portapapeles de la terminal host. Consulte la opción set-clipboard anterior y la página de manual de xterm(1).

XT Esta es una capacidad de extensión existente que tmux utiliza para indicar que la terminal admite las secuencias de establecimiento de título de xterm(1) y para establecer automáticamente algunas de las capacidades anteriores.

MODO DE CONTROL

tmux ofrece una interfaz textual llamada modo de control. Esto permite que las aplicaciones se comuniquen con tmux utilizando un protocolo de solo texto simple.

En el modo de control, un cliente envía comandos de tmux o secuencias de comandos terminadas con saltos de línea en la entrada estándar. Cada comando producirá un bloque de salida en la salida estándar. Un bloque de salida consta de una línea %begin seguida de la salida (que puede estar vacía). El bloque de salida termina con un %end o %error. %begin y el %end o %error correspondiente tienen tres argumentos: una hora entera (como segundos desde la época), un número de comando y marcas (que actualmente no se utilizan). Por ejemplo:


%begin 1363006971 2 1
0 ksh* (1 paneles) [80x24] [diseño b25f,80x24,0,0,2] @2 (activo)
%end 1363006971 2 1

El comando refresh-client -C se puede usar para establecer el tamaño de un cliente en modo de control.

En modo de control, tmux emite notificaciones. Una notificación nunca ocurrirá dentro de un bloque de salida.

Las siguientes notificaciones están definidas:

%client-detached client

El cliente se ha desconectado.

%client-session-changed client session-id name

El cliente ahora está conectado a la sesión con ID session-id, que tiene el nombre name.

%config-error error

Ha ocurrido un error en un archivo de configuración.

%continue pane-id

El panel con ID pane-id se ha reanudado después de haber sido pausado (si se establece la bandera pause-after, consulte refresh-client -A).

%exit [reason]

El cliente de tmux se está cerrando inmediatamente, ya sea porque no está conectado a ninguna sesión o porque se produjo un error. Si está presente, reason describe por qué el cliente se cerró.

%extended-output pane-id age ... : value

Nueva forma de %output enviada cuando se establece la bandera pause-after. age es el tiempo en milisegundos durante el cual tmux ha almacenado en búfer la salida antes de que se enviara. Cualquier argumento posterior hasta una sola ‘:’ es para uso futuro y debe ignorarse.

%layout-change window-id window-layout window-visible-layout window-flags

El diseño de una ventana con ID window-id ha cambiado. El nuevo diseño es window-layout. El diseño visible de la ventana es window-visible-layout y las banderas de la ventana son window-flags.

%message message

Un mensaje enviado con el comando display-message.

%output pane-id value

Un panel de ventana produjo salida. value escapa los caracteres no imprimibles y la barra diagonal como \xxx en octal.

%pane-mode-changed pane-id

El panel con ID pane-id ha cambiado de modo.

%paste-buffer-changed name

El nombre del búfer de pegado ha sido cambiado.

%paste-buffer-deleted name

El nombre del búfer de pegado ha sido eliminado.

%pause pane-id

El panel ha sido pausado (si se establece la bandera pause-after).

%session-changed session-id name

El cliente ahora está conectado a la sesión con ID session-id, que tiene el nombre name.

%session-renamed name

La sesión actual fue renombrada a name.

%session-window-changed session-id window-id

La sesión con ID session-id cambió su ventana activa a la ventana con ID window-id.

%sessions-changed

Se creó o destruyó una sesión.

%subscription-changed name session-id window-id window-index pane-id ... : value

El valor del formato asociado con la suscripción name ha cambiado a value. Consulte refresh-client -B. Cualquier argumento después de pane-id hasta una sola ‘:’ es para uso futuro y debe ignorarse.

%unlinked-window-add window-id

La ventana con ID window-id fue creada pero no está enlazada a la sesión actual.

%unlinked-window-close window-id

La ventana con ID window-id, que no está enlazada a la sesión actual, fue cerrada.


%unlinked-window-renamed window-id

La ventana con ID window-id, que no está vinculada a la sesión actual, ha sido renombrada.

%window-add window-id

La ventana con ID window-id ha sido vinculada a la sesión actual.

%window-close window-id

La ventana con ID window-id se ha cerrado.

%window-pane-changed window-id pane-id

El panel activo de la ventana con ID window-id ha cambiado al panel con ID pane-id.

%window-renamed window-id name

La ventana con ID window-id ha sido renombrada a name.

ENTORNO

Cuando se inicia tmux, inspecciona las siguientes variables de entorno:

EDITOR    Si el comando especificado en esta variable contiene la cadena ‘vi’ y VISUAL no está definida,
utilice enlaces de teclado de tipo vi. Anulada por las opciones mode-keys y status-keys.

HOME El directorio de inicio del usuario. Si no está definida, se consulta la base de datos passwd(5).

LC_CTYPE  La configuración regional de codificación de caracteres(1). Se utiliza para dos fines diferentes. Para la salida al
terminal, se utiliza UTF-8 si se proporciona la opción -u o si LC_CTYPE contiene "UTF-8"
o "UTF8". De lo contrario, solo se escriben los caracteres ASCII y los caracteres no ASCII se
reemplazan con guiones bajos ('_'). Para la entrada, tmux siempre se ejecuta con una configuración regional UTF-8. Si
en_US.UTF-8 es proporcionada por el sistema operativo, se utiliza e LC_CTYPE se ignora para
la entrada. De lo contrario, LC_CTYPE indica a tmux cuál es el nombre de la configuración regional UTF-8 en el sistema
actual. Si la configuración regional especificada por LC_CTYPE no está disponible o no es una configuración regional UTF-8,
tmux sale con un mensaje de error.

LC_TIME   La configuración regional de fecha y hora(1). Se utiliza para especificadores de formato strftime(3) dependientes de la configuración regional.

PWD       El directorio de trabajo actual que se establecerá en el entorno global. Esto puede ser útil
si contiene enlaces simbólicos. Si el valor de la variable no coincide con el directorio de trabajo actual, la variable se ignora y se utiliza en su lugar el resultado de getcwd(3).

SHELL     La ruta absoluta al shell predeterminado para las nuevas ventanas. Consulte la opción default-shell
para obtener más detalles.

TMUX_TMPDIR

El directorio padre del directorio que contiene los sockets del servidor. Consulte la opción -L para obtener más detalles.

VISUAL    Si el comando especificado en esta variable contiene la cadena ‘vi’, utilice enlaces de teclado de tipo vi. Anulada por las opciones mode-keys y status-keys.

ARCHIVOS

~/.tmux.conf
$XDG_CONFIG_HOME/tmux/tmux.conf
~/.config/tmux/tmux.conf

Archivo de configuración predeterminado de tmux. /etc/tmux.conf Archivo de configuración a nivel de sistema.

EJEMPLOS

Para crear una nueva sesión de tmux que ejecute vi(1):

$ tmux new-session vi

La mayoría de los comandos tienen una forma más corta, conocida como alias. Para new-session, este es new:

$ tmux new vi

Alternativamente, se acepta la forma más corta e inequívoca de un comando. Si hay varias opciones, se enumeran:

$ tmux n
comando ambiguo: n, podría ser: new-session, new-window, next-window

Dentro de una sesión activa, se puede crear una nueva ventana escribiendo ‘C-b c’ (Ctrl seguido de la tecla ‘b’ seguida de la tecla ‘c’).


Windows puede navegarse con: ‘C-b 0’ (para seleccionar la ventana 0), ‘C-b 1’ (para seleccionar la ventana 1), y así sucesivamente; ‘C-b n’ para seleccionar la siguiente ventana; y ‘C-b p’ para seleccionar la ventana anterior.

Una sesión puede separarse usando ‘C-b d’ (o mediante un evento externo como la desconexión de ssh(1)) y volver a conectarse con:

$ tmux attach-session

Escribir ‘C-b ?’ lista los enlaces de teclado actuales en la ventana actual; las teclas de cursor arriba y abajo pueden usarse para navegar por la lista o ‘q’ para salir de ella.

Los comandos que se ejecutarán cuando se inicie el servidor tmux pueden colocarse en el archivo de configuración ~/.tmux.conf. Algunos ejemplos comunes incluyen:

Cambiar la tecla de prefijo predeterminada:

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

Desactivar la barra de estado o cambiar su color:

set-option -g status off
set-option -g status-style bg=blue

Establecer otras opciones, como el comando predeterminado o bloquear después de 30 minutos de inactividad:

set-option -g default-command "exec /bin/ksh"
set-option -g lock-after-time 1800

Crear nuevos enlaces de teclado:

bind-key b set-option status
bind-key / command-prompt "split-window 'exec man %%'"
bind-key S command-prompt "new-window -n %1 'ssh %1'"

VER TAMBIÉN

pty(4)

AUTORES

Nicholas Marriott <_>