menggunakan variabel lingkungan dalam file tmux.conf

12

Apakah mungkin menggunakan variabel lingkungan dalam file tmux.conf? Saya mencoba untuk menetapkan jalur default ke variabel lingkungan. Saat ini yang saya coba adalah:

set -g default-path $MYVAR

lebih lanjut saya ingin memeriksa apakah $ MYVAR sudah diatur sehingga saya bisa melakukan:

if($MYVAR == "") set-environment -g MYVAR /somepath/

Ada ide?

Kekuatan Digital
sumber

Jawaban:

12

Ya sepertinya itu mungkin untuk memperluas variabel shell dalam .tmux.conffile Sepertinya itu tidak diperlukan, tetapi ide yang bagus untuk mengutipnya, esp. Saya berhasil melakukan ini dengan opsi bilah status sekarang.

# In ~/.tmux.conf:
set -g status_left "$MYVAR etc: "

$ export MYVAR="Shell stuff"
$ tmux

Saya tidak tahu tentang 'jika' atau struktur kontrol lain di konfigurasi, tetapi mungkin ada.

Caleb
sumber
Saya tidak bisa menjalankan ini dalam file skrip tmux. Saya yakin $ MYVAR disetel, dan saya menjalankan skrip dan gagal. set -g default-path "$ MYVAR" split-window -h itu membagi jendela tapi path default tidak diatur ke $ MYVAR
Digital Powers
2
ok saya menemukan hal-hal yang rusak, jika saya mengatur variabel lingkungan sebelum saya menjalankan tmux maka saya dapat menggunakannya dalam file tmux.conf saya. Jika saya mengatur variabel lingkungan, baik di tmux.conf menggunakan set-environment atau setelah saya di tmux kemudian muat ulang tmux.conf itu jangan gunakan variabel baru saya yang telah saya atur. Ada yang tahu kenapa?
Kekuatan Digital
Kerang yang Anda jalankan di dalam tmux adalah proses anak dari tmux. Hal yang berubah di dalam lingkungan mereka tidak akan kembali menyebarkan sampai garis untuk proses induk tmux. Ini hanya berfungsi sebaliknya karena tmux menjadi anak dari shell tempat Anda meluncurkannya. Saya menganggap konfigurasi ulang relig mirip dengan meluncurkan anak baru dari proses induk.
Caleb