我目前正在使用 DWM 作为我的窗口管理器,为了方便起见,我希望能够打开我的终端(ST)的单独实例,以便自动为我打开 ranger。
我在 DWM 中映射了一个自定义命令,运行以下命令:“st ranger”。
然而,我注意到,无论我怎么尝试,ranger(仅当以这种方式打开时)只会在我的 ST 目录(即 $HOME/st)中打开,就像它是起始目录一样。如果我在已经存在的终端实例中打开 ranger,它会启动并表现得与预期完全一致。
我尝试了各种修改此命令的方法,试图强制 ranger 在我的 $HOME 目录中打开,例如“st ranger $HOME”和“st ranger --cmd='cd $HOME'”以及一系列其他变体。每当我通过 DWM 键绑定应用这些命令时,我的终端都会快速打开并关闭,并显示一条简短的错误消息,提示我的 $HOME 目录未定义。它将仅有的如果我的 ST 目录位于我的主文件夹中,则打开。如果我将 ST 目录移动到其他地方,它会出现类似的错误。
谁能解释为什么会发生这种情况以及我该如何解决它?