我使用 powerlevel9k-theme 来获得精美的 zsh 提示符。但是我用来获得所需提示的字体和字形与我用来 ssh 进入工作站的终端模拟器(Android 上的 JuiceSSH)不兼容。
我试图让我.zshrc
“检测”正在使用哪个模拟器。在我的工作站上,我使用 gnome-terminal。所以我编写了一个简单的函数来检查 gnome 特定变量是否存在$VTE_VERSION
:
## functions.zsh: Choose theme based on emulator
function choosetheme() {
if [ -n "${VTE_VERSION+1}" ]
then
zgen load bhilburn/powerlevel9k powerlevel9k ## fancy theme
else
zgen oh-my-zsh themes/avit ## basic theme for Android use
fi
}
然后在我的.zshrc
:
source functions.zsh
choosetheme
但结果是无论哪个模拟器都会显示powerlevel9k提示。
有什么想法如何完成在不同模拟器上有不同提示/主题的任务吗?或者也许我忽略了一些事情?
答案1
命令
ps -p$PPID | awk '{print $4}'
将返回两行,第二行正是您正在使用的终端模拟器。希望我有帮助=)