Openbox에서는 일치하는 창에서 명령을 실행하거나 일치하는 항목이 없으면 새 창을 열 수 있습니까?

Openbox에서는 일치하는 창에서 명령을 실행하거나 일치하는 항목이 없으면 새 창을 열 수 있습니까?

본질적으로 저는 새 터미널을 생성하는 대신 tmux를 실행하는 하나의 터미널을 열어두고 세션 내에서 새 창을 여는 방법을 찾고 있습니다.

키 시퀀스를 누를 때 아직 열려 있지 않은 경우 새 터미널을 열고 싶습니다. 그러나 이미 열려 있는 경우 데스크탑으로 전환하고 필요한 경우 창에 초점을 맞춘 다음 명령을 보내고 싶습니다.

Windows 작업에 대한 문서를 찾았고 If전역 작업에 대한 유사한 구성을 기대했지만 보지 못했습니다.

편집 : 솔루션

결국 단순화된 버전을 사용하게 되었습니다.jw013의 스크립트.

원본 스크립트는 지진 터미널 효과를 위해 작성되었지만 더 간단한 것을 원했습니다. 터미널을 전환하지 않고 항상 단일 tmux 터미널 세션에서 창을 열어 두는 것입니다. 내가 놓친 핵심 구성 요소는 wmctrl들어본 적이 없는 것입니다.

jw013의 스크립트를 기본으로 사용하여 다음과 같이 단순화했습니다.

# the variable name for the window (used in openbox rc.xml for the rule as well)
wmclass=tmux_terminal

# if we successfully focus the window then open a new tmux window inside
if wmctrl -a $wmclass -x; then
  tmux new-window

# otherwise the window hasn't been opened.  open it and attach to tmux.
else
  urxvt -name $wmclass -e tmux attach &
fi

그런 다음 그것을 openbox에 묶고 첫 번째 데스크탑에서 최대화되도록 W-space애플리케이션을 설정했습니다 . name=tmux_terminal이제 터미널이 열려 있지 않으면 W-space열려서 tmux에 연결되고, 그렇지 않으면 단순히 기존 tmux 세션 창으로 전환하여 새 창이 열립니다.

답변1

나는 openbox가 적어도 아직까지는 이것을 할 수 있다고 생각하지 않습니다. 그러나 단축키로 표시/숨길 수 있는 지진과 같은 드롭다운 터미널이 허용 가능한 대체품이 될까요? Tilda, Yakuake, Guake 등은 지진과 유사한 기능을 갖도록 특별히 설계된 터미널 에뮬레이터입니다. 게다가 (뻔뻔한 플러그) 이런 작은 것도 있어요스크립트유사한 작업을 수행하는 개인적인 용도로 작성한 코드 xterm- 실행하도록 매핑했으며 Alt-`해당 터미널에서 항상 가장 먼저 수행하는 작업은 실행 screen(예: tmux)입니다.

관련 정보