我想使用Cool Retro Terminal的鱼,但我通常使用的提示符有unicode字符,复古终端中的字体不支持。我有fish_prompt
函数检查$simple_prompt
是否为1并且我知道它有效,但是我需要一种方法来设置变量,仅针对该终端实例,使用retro命令选项终奌站。
我到目前为止最接近的是fish -c "set -gx simple_prompt 1; fish"
,但是它将变量导出到系统上的所有shell实例,并且对所有这些实例也提供简单的提示。 fish -c "set -g simple_prompt 1; fish"
不起作用。
答案 0 :(得分:0)
预计set -g simple_prompt 1
对您启动的下一个鱼类实例不可见。全局变量仅对当前shell实例可见。如果您使用的终端设置了一些环境变量,可以让您确定鱼在该特定终端内运行,我会使用该信息。例如,macOS上的iTerm2导出ITERM_PROFILE
以及其他四个唯一的env变量。如果酷复古终端没有做到这一点,也许有其他方式检测到该终端类型。它可能就像检查TERM
变量一样简单。
如果上述解决方案不是一个选项,那么唯一的解决方案就是第一个解决方案中的环境变量。因为你说它将该变量导出到所有鱼类实例,我怀疑你没有准确地描述你在做什么。因为如果将该命令设置为Cool Retro Terminal用于启动shell的命令,则只会影响在该终端中运行的fish实例。这就是你想要的。