tmux使用当前激活的conda环境创建新的窗格或窗口

时间:2019-10-18 09:21:18

标签: conda tmux

当我使用tmux创建新的窗格或窗口时,我想使用刚才使用的相同conda环境。

即我现在正在使用名为XXXenv的conda env,并使用Ctrl+b + %创建一个新窗格,我想要的是新创建的窗格由conda env { {1}}。

实际上,我已经尝试过Have tmux windows inherit activated anaconda environment,但对我来说不起作用。

1 个答案:

答案 0 :(得分:0)

嘿,您的 shell 中可能有一个名为 CONDA_DEFAULT_ENV 的环境变量。创建一个定义所需布局的 bash 脚本,并使用此变量将原始窗格的当前活动环境发送到所有新窗格。

dev-sesh.sh

#!/bin/sh

current_session=$(tmux display-message -p '#S')
current_conda=$CONDA_DEFAULT_ENV

tmux split-window -v -p 75 -b 
tmux split-window -h -p 50 
tmux send-keys  -t "$current_session.{left}" "conda activate $current_conda" 'Enter'
tmux send-keys  -t "$current_session.{right}" "conda activate $current_conda" 'Enter'
tmux send-keys  -t "$current_session.{left}" "clear && figlet Welcome" 'Enter'
tmux send-keys  -t "$current_session.{right}" "clear" 'Enter'
tmux send-keys  -t "$current_session.{bottom}" "clear" 'Enter'

tmux.conf

bind -n C-n send-keys 'bash ~/.dotfiles/dev-sesh.sh' Enter

结果enter image description here