目前,我基于正在使用的目录使用配色方案。我手动打开Konsole shell,然后将其cd进入目录,然后转到“设置”并更改配色方案。

我想做的是让Konsole根据我所在的目录自动设置其前景色和背景色。基本上,如果我位于/home/me/src/java下的任何子目录中,那么我想使用白色文本,例如背景蓝色。如果我在/home/me/src/documentation下,则希望文本为黑色,背景为白色。我希望当我调用“cd”命令时,以编程方式自动进行颜色更改。

这可能吗?如果是这样,您能为我提供一些指导吗?

以我的方式看,我将需要能够做几件事:

  • 能够检测shell进程(bash)在哪个Konsole中运行。
  • 可以通过API调用告诉Konsole即时更改配色方案。
  • 最佳答案

    为了让您入门,here有关使用D-Bus编写Konsole脚本的一些信息。

    您没有说要使用哪个shell,但是如果它是Bash,则可能需要使用$PROMPT_COMMAND变量,该变量包含每次发出$ PS1提示时要执行的命令。 Z shell具有类似的功能,可能功能更强大(请参阅man zshmiscchpwd)。

    否则,您可能可以使用xterm escape sequences

    关于linux - 如何在Konsole中基于当前目录以编程方式更改颜色?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2119167/

    10-13 01:55