Administrador de sesiones para tmux, que permite a los usuarios guardar y cargar sesiones de tmux a través de archivos de configuración simples. Desarrollado por libtmux.
¿Nuevo en tmux? El Tao de tmux está disponible en Leanpub y Amazon Kindle. Lea y explore el libro de forma gratuita en la web.
¿Tienes algo de tiempo libre? Ayúdanos a clasificar y revisar el código y el rastreador. ¡Vea el número 290!
pepita:
$ pip install --user tmuxp
Elaboración casera:
$ brew install tmuxp
Debian/ubuntu:
$ sudo apt install tmuxp
Nada:
$ [[ -z $( which tmux ) ]] && (nix-env -i tmux && nix-env -i tmuxp) || nix-env -i tmuxp
Encuentre el paquete para su distribución en repology: https://repology.org/project/tmuxp/versions
Lanzamientos de desarrollo:
pepita:
$ pip install --user --upgrade --pre tmuxp
pipx:
$ pipx install --suffix=@next ' tmuxp ' --pip-args ' --pre ' --force
Luego use tmuxp@next load [session]
.
Cargue sesiones tmux a través de json y YAML, estilo tmuxinator y teamocil.
session_name : 4-pane-split
windows :
- window_name : dev window
layout : tiled
shell_command_before :
- cd ~/ # run as a first command in all panes
panes :
- shell_command : # pane no. 1
- cd /var/log # run multiple commands in this pane
- ls -al | grep .log
- echo second pane # pane no. 2
- echo third pane # pane no. 3
- echo forth pane # pane no. 4
Guarde como mysession.yaml y cargue:
$ tmuxp load ./mysession.yaml
Los proyectos con .tmuxp.yaml o .tmuxp.json se cargan a través del directorio:
$ tmuxp load path/to/my/project/
Cargue varios a la vez (en bg, ofrezca adjuntar al final):
$ tmuxp load mysession ./another/project/
Nombra una sesión:
$ tmuxp load -s session_name ./mysession.yaml
ejemplos de configuración simples y muy elaborados
tmuxp busca configuraciones en los directorios de usuarios:
$TMUXP_CONFIGDIR
, si está configurado$XDG_CONFIG_HOME
, normalmente $HOME/.config/tmuxp/$HOME/.tmuxp/
Cargue su configuración de tmuxp desde cualquier lugar usando el nombre de archivo, asumiendo ~/.config/tmuxp/mysession.yaml (o .json ):
$ tmuxp load mysession
Consulte las configuraciones de tmuxp del autor y el tmuxp.yaml de los proyectos.
Nuevo en 1.6.0 :
tmuxp shell
se inicia en una consola de Python precargada con el servidor, la sesión y la ventana adjuntos en objetos libtmux.
$ tmuxp shell
(Pdb) server
<libtmux.server.Server object at 0x7f7dc8e69d10>
(Pdb) server.sessions
[Session($1 your_project)]
(Pdb) session
Session($1 your_project)
(Pdb) session.name
'your_project'
(Pdb) window
Window(@3 1:your_window, Session($1 your_project))
(Pdb) window.name
'your_window'
(Pdb) window.panes
[Pane(%6 Window(@3 1:your_window, Session($1 your_project)))
(Pdb) pane
Pane(%6 Window(@3 1:your_window, Session($1 your_project))
Admite breakpoint()
(incluido PYTHONBREAKPOINT
). También admite comandos directos a través de -c
:
$ tmuxp shell -c ' print(window.name) '
my_window
$ tmuxp shell -c ' print(window.name.upper()) '
MY_WINDOW
Lea más sobre tmuxp shell en los documentos CLI.
Ejecute scripts de inicio personalizados (como instalar dependencias del proyecto antes de cargar tmux. Consulte el ejemplo de bootstrap_env.py y before_script
También puedes cargar sesiones en segundo plano pasando el indicador -d
Realice una instantánea del diseño de tmux, las rutas de los paneles y los nombres de las ventanas/sesiones.
$ tmuxp freeze session-name
Vea más sobre cómo congelar sesiones de tmux.
Convierta un archivo de sesión de yaml a json y viceversa.
$ tmuxp convert filename
Esto le pedirá confirmación y le mostrará el nuevo archivo que se va a escribir.
Puede confirmar automáticamente el mensaje. En este caso no se mostrará ninguna vista previa.
$ tmuxp convert -y filename
$ tmuxp convert --yes filename
tmuxp tiene un sistema de complementos para permitir un comportamiento personalizado. Ver más sobre el sistema de complementos.
El comando load
proporciona una forma de registrar la salida en un archivo de registro con fines de depuración.
$ tmuxp load --log-file < log-file-name > .
Recopile información del sistema para enviarla con un problema de Github:
$ tmuxp debug-info
------------------
environment:
system: Linux
arch: x86_64
# ... so on
Consulte el inicio rápido.
Página de inicio de documentación (también en 中文)
¿Quieres aprender más sobre tmux? Lea El Tao de Tmux en línea.
Sus donaciones financian el desarrollo de nuevas funciones, pruebas y soporte. Su dinero irá directamente al mantenimiento y desarrollo del proyecto. Si es un individuo, siéntase libre de dar lo que le parezca correcto por el valor que obtiene del proyecto.
Vea las opciones de donación en https://git-pull.com/support.html.