어쩌면 내가 온라인에서 찾을 수 없는 이유는 그것이 너무 명백하기 때문일 수도 있지만 여전히 그것을 알아낼 수는 없습니다.
예를 들어 두 번째 가상 데스크톱에서 특정 프로그램 창이 항상 자동으로 열리도록 XFCE를 구성하려면 어떻게 해야 합니까?
답변1
다른 작업 공간에서 시작할 수 있는지는 잘 모르겠지만 스크립트를 사용하여 그곳으로 이동할 수 있습니다.
이 페이지를 살펴보십시오:https://wiki.xfce.org/faq, "작업 공간을 프로그래밍 방식으로 전환하고 창을 이동하는 등의 방법은 무엇입니까?" 하위 항목 아래에 있습니다.
따라서 다음과 같은 간단한 쉘 스크립트를 사용하여 프로그램을 시작할 수 있습니다.
#!/bin/sh
yourprogram &
PID="$!"
#echo $PID
sleep 1s
#sleep is required because the window takes some time to open, maybe it can be adjusted
WINH="$(wmctrl -l -p | grep "$PID" | cut -d " " -f1)"
#echo $WINH
wmctrl -i -r $WINH -t 2
프로세스에 여러 개의 창이 있을 수 있으므로(다음에 무슨 일이 일어날지 알 수 없음) 이상적이지는 않지만 간단한 프로그램에서는 작동해야 합니다.
답변2
대부분의 창 관리자는 이 기능을 제공하지 않습니다. 당신은 실행할 수 있습니다악마의 세력창을 다른 작업 공간으로 보내는 등 창이 생성되면 작업을 수행합니다. 그리고악마의 세력 1~/.devilspie/myprogram.ds
, 다음과 같은 내용을 포함하는 파일을 만듭니다.
(if (and (is (application_name) "specific-program")
(matches (window_name) "^Program main window:"))
(set_workspace 2))
그리고데빌스 파이 2~/.devilspie2/myprogram.ds
, 다음과 같은 내용을 포함하는 파일을 만듭니다.
if (get_application_name() == "specific-program" and
string.strfind(get_window_name(), "Program main window") == 1) then
set_workspace(2);
end