我喜欢 i3 中的一项功能,您可以使用 windows-enter 打开新终端。但不幸的是,它总是以 ~ 开始。很多时候,我需要在我已经工作的目录中使用第二个终端。有没有办法获取当前活动终端的目录并将其路由到下一个要打开的终端?具体来说,我想在活动终端的当前目录中启动一个新终端(如果当前活动的窗口/分割不是终端,则为 ~),并将其绑定到 ctrl-windows-enter。
答案1
我认为最简洁的方法是将此功能绑定到您的终端仿真器不在你的 WM 中。
阿拉克里蒂:
将以下几行添加到alacritty.yml
。然后您可以按Ctrl+Shift+Enter
。
key_bindings:
- { key: Return, mods: Control|Shift, action: SpawnNewInstance }
英石:
应用新术语补丁。然后您可以按Ctrl+Shift+Enter
。
但你仍然可以使用脚本来启动终端。这Luke Smith 的 shell 脚本应该可以在任何 X 窗口管理器上运行:
#!/bin/sh
PID=$(xprop -id "$(xprop -root | awk '/_NET_ACTIVE_WINDOW\(WINDOW\)/{print $NF}')" | grep -m 1 PID | cut -d " " -f 3)
PID="$(pstree -lpA "$PID" | tail -n 1 | awk -F'---' '{print $NF}' | sed -re 's/[^0-9]//g')"
cd "$(readlink /proc/"$PID"/cwd)" || return 1
"$TERMINAL"
您还可以使用財政部获取当前工作目录或使用 Bash 解决方案这个Unix和Linux问题。