如何仅在Alacritty中自动启动Zellij并添加bash补全?
仅在Alacritty中自动启动Zellij的解决方案
方法一:修正独立脚本与Alacritty配置
编写启动脚本
创建alacritty-start.sh,内容如下:# Autostart Zellij eval "$(zellij setup --generate-auto-start bash)" # Add Zellij completions eval "$(zellij setup --generate-completion bash)"给脚本添加执行权限:
chmod +x /path/to/my/alacritty-start.sh修正Alacritty配置
之前的args配置错误在于将命令拆分为多个数组元素,-c需要接收一个完整的命令字符串。修改alacritty.toml(或alacritty.yml)的shell部分:[shell] program = "/bin/bash" args = ["-c", ". /path/to/my/alacritty-start.sh && exec bash"]这里用
exec bash是为了让新启动的bash替换当前的shell进程,避免退出时出现额外的shell层级。
方法二:直接在.bashrc中做终端判断(更简洁)
无需单独脚本,直接在.bashrc中添加条件判断,仅当终端是Alacritty时加载Zellij配置:
# 仅在Alacritty中启动Zellij并加载补全 if [[ -n "$ALACRITTY_WINDOW_ID" ]]; then # Autostart Zellij eval "$(zellij setup --generate-auto-start bash)" # Add Zellij completions eval "$(zellij setup --generate-completion bash)" fi
Alacritty启动时会自动设置ALACRITTY_WINDOW_ID环境变量,VSCode中的bash不会有这个变量,因此只会在Alacritty中生效。
内容的提问来源于stack exchange,提问作者mdevino
相关产品推荐
相关产品推荐

