Manajer sesi untuk tmux, yang memungkinkan pengguna menyimpan dan memuat sesi tmux melalui file konfigurasi sederhana. Didukung oleh libtmux.
Baru mengenal tmux? Tao dari tmux tersedia di Leanpub dan Amazon Kindle. Baca dan telusuri buku secara gratis di web.
Punya waktu luang? Bantu kami melakukan triase dan peninjauan kode serta pelacak. Lihat edisi #290!
pip:
$ pip install --user tmuxp
minuman rumahan:
$ brew install tmuxp
Debian/ubuntu:
$ sudo apt install tmuxp
Nix:
$ [[ -z $( which tmux ) ]] && (nix-env -i tmux && nix-env -i tmuxp) || nix-env -i tmuxp
Temukan paket untuk distro Anda di repology: https://repology.org/project/tmuxp/versions
Rilis pengembangan:
pip:
$ pip install --user --upgrade --pre tmuxp
pipx:
$ pipx install --suffix=@next ' tmuxp ' --pip-args ' --pre ' --force
Kemudian gunakan tmuxp@next load [session]
.
Muat sesi tmux melalui json dan YAML, gaya tmuxinator dan 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
Simpan sebagai mysession.yaml , dan muat:
$ tmuxp load ./mysession.yaml
Proyek dengan .tmuxp.yaml atau .tmuxp.json dimuat melalui direktori:
$ tmuxp load path/to/my/project/
Muat banyak sekaligus (di bg, tawarkan untuk melampirkan terakhir):
$ tmuxp load mysession ./another/project/
Beri nama sesi:
$ tmuxp load -s session_name ./mysession.yaml
contoh konfigurasi sederhana dan sangat rumit
tmuxp memeriksa konfigurasi di direktori pengguna:
$TMUXP_CONFIGDIR
, jika disetel$XDG_CONFIG_HOME
, biasanya $HOME/.config/tmuxp/$HOME/.tmuxp/
Muat konfigurasi tmuxp Anda dari mana saja dengan menggunakan nama file, dengan asumsi ~/.config/tmuxp/mysession.yaml (atau .json ):
$ tmuxp load mysession
Lihat konfigurasi tmuxp penulis dan tmuxp.yaml proyek.
Baru di 1.6.0 :
tmuxp shell
diluncurkan ke konsol python yang dimuat sebelumnya dengan server, sesi, dan jendela terlampir di objek 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))
Mendukung PEP 553 breakpoint()
(termasuk PYTHONBREAKPOINT
). Juga mendukung perintah langsung melalui -c
:
$ tmuxp shell -c ' print(window.name) '
my_window
$ tmuxp shell -c ' print(window.name.upper()) '
MY_WINDOW
Baca lebih lanjut tentang tmuxp shell di dokumen CLI.
Jalankan skrip startup khusus (seperti menginstal dependensi proyek sebelum memuat tmux. Lihat contoh bootstrap_env.py dan before_script
Anda juga dapat memuat sesi di latar belakang dengan meneruskan tanda -d
Jepret tata letak tmux, jalur panel, dan nama jendela/sesi Anda.
$ tmuxp freeze session-name
Lihat selengkapnya tentang membekukan sesi tmux.
Konversikan file sesi dari yaml ke json dan sebaliknya.
$ tmuxp convert filename
Ini akan meminta Anda untuk konfirmasi dan menunjukkan file baru yang akan ditulis.
Anda dapat mengonfirmasi permintaan secara otomatis. Dalam hal ini tidak ada pratinjau yang akan ditampilkan.
$ tmuxp convert -y filename
$ tmuxp convert --yes filename
tmuxp memiliki sistem plugin untuk memungkinkan perilaku khusus. Lihat lebih lanjut tentang Sistem Plugin.
Perintah load
menyediakan cara untuk mencatat output ke file log untuk tujuan debugging.
$ tmuxp load --log-file < log-file-name > .
Kumpulkan info sistem untuk dikirimkan dengan masalah Github:
$ tmuxp debug-info
------------------
environment:
system: Linux
arch: x86_64
# ... so on
Lihat Mulai Cepat.
Beranda dokumentasi (juga dalam bahasa 中文)
Ingin mempelajari lebih lanjut tentang tmux itu sendiri? Baca Tao Tmux online.
Donasi Anda mendanai pengembangan fitur, pengujian, dan dukungan baru. Uang Anda akan langsung digunakan untuk pemeliharaan dan pengembangan proyek. Jika Anda seorang individu, jangan ragu untuk memberikan apa pun yang dirasa tepat untuk nilai yang Anda peroleh dari proyek tersebut.
Lihat opsi donasi di https://git-pull.com/support.html.