게임을 할 때 핫 코너 및 화면 가장자리 버튼 클릭에 대한 Compiz 바인딩을 비활성화하려면 어떻게 해야 합니까?

게임을 할 때 핫 코너 및 화면 가장자리 버튼 클릭에 대한 Compiz 바인딩을 비활성화하려면 어떻게 해야 합니까?

방금 XFCE 장치에 Compiz를 다시 설치하고 Scale과 같은 창 전환 Compiz 플러그인을 위해 모서리를 매핑하고 화면 상단을 클릭했습니다. 90%의 경우 훌륭하게 작동하지만 게임을 할 때 실수로 계속 실행됩니다. 문제는 게임을 할 때 Compiz 핫 코너와 버튼 클릭 바인딩(Compiz 용어는 가장자리 및 버튼 바인딩이라고 생각합니다)을 어떻게 비활성화합니까?입니다.

답변1

노트:이것은 제가 직접 사용하기 위해 개발한 시스템이며 Q&A 형식으로 여러분과 공유하고 싶었습니다. 누군가 다른 시스템을 생각해 내면 답변을 게시하십시오.

모든 Compiz 기능 외에도 다음이 필요합니다.xdo 도구, Linux의 Autohotkey와 약간 비슷합니다. Compiz 플러그인을 실행하기 위해 쉘 스크립트에서 단축키 조합을 보낼 수 있습니다.

확대/축소 중에 Compiz가 최소화된 창을 표시하는 데 관심이 있다면,내가 게시한 이 질문과 답변을 참조하세요.


전략


Scale과 같은 플러그인을 사용하면 Scale 플러그인 자체 내에서 핫스팟(가장자리 및 버튼 매핑)을 매핑하는 대신 키 조합만 매핑할 수 있습니다. 그런 다음 xdotools를 통해 이러한 키 조합을 보내는 쉘 스크립트를 만들고 해당 쉘 스크립트를 명령 섹션에서 원하는 가장자리 및 버튼 바인딩에 매핑할 수 있습니다. 그런 다음 가장자리 및 버튼 바인딩을 활성화하지 않으려는 경우 다른 이름으로 이름을 바꾸고 기능을 복원하려는 경우 원래 이름을 복원하는 스크립트를 만들 수 있습니다.


이점


게임 플레이 중에 Compiz를 일시적으로 Metacity 또는 xfwm으로 교체하여 Compiz를 완전히 비활성화하는 것과 비교하여 이 방법을 사용하면 나머지 기능을 유지하면서 게임 Compiz 기능을 방해하는 몇 가지 기능을 간단하고 즉시 비활성화할 수 있는 유연성을 제공한다는 것입니다. 손대지 않은. 따라서 이 경우 창 전환을 위해 핫 코너를 비활성화할 수 있지만 단축키와 Desktop Cube, Show Desktop 또는 Expo와 같은 Compiz의 다른 모든 기능을 사용하여 창을 전환하는 기능은 그대로 유지됩니다. 또한 모든 compiz 키 바인딩을 잃지 않거나 각 창 관리자에 대해 두 세트를 만들어야 합니다. 이름 바꾸기 스크립트 몇 개를 전환하는 것은 즉각적이고 안정적이지만, 게임을 시작하고 종료할 때마다 창 관리자를 전환하는 데는 5~10초가 소요됩니다. 저는 개인적으로 창 관리자를 전환한 후 로그아웃했다가 다시 로그인해야 했습니다. 안정.


이것은 예이다


마우스를 오른쪽 상단과 왼쪽 모서리 위로 이동할 때 스케일 플러그인에서 실행 창 선택기를 활성화하고 싶습니다. 또한 화면 상단을 마우스 왼쪽 버튼으로 클릭하면 "모든 창에 대해 창 선택기 실행"을 원할 수도 있습니다. 전자의 단축키를 "Alt Tab"으로 설정하고 후자의 단축키를 "Win Tab"으로 설정했습니다.


1단계: 쉘 스크립트를 만듭니다. 홈 디렉토리에 넣으세요:


Initiate_Window_Picker_on.sh

xdotool keydown Alt key Tab keyup Alt

Initiate_Window_Picker_AllWindows_on.sh

xdotool keydown Super key Tab keyup Super

게임 모드 스위치.sh

~/./gamemode-on.sh

gamemode-on.sh

mv -T ~/Initiate_Window_Picker_on.sh ~/Initiate_Window_Picker_off.sh
mv -T ~/Initiate_Window_Picker_AllWindows_on.sh ~/Initiate_Window_Picker_AllWindows_off.sh

echo ~/./gamemode-off > ~/gamemode-toggle.sh
chmod +x ~/gamemode-toggle.sh

게임 모드 off.sh

mv -T ~/Initiate_Window_Picker_off.sh ~/Initiate_Window_Picker_on.sh
mv -T ~/Initiate_Window_Picker_AllWindows_off.sh ~/Initiate_Window_Picker_AllWindows_on.sh

echo ~/./gamemode-on > ~/gamemode-toggle.sh
chmod +x ~/gamemode-toggle.sh

터미널에서 모든 스크립트에 실행 권한을 부여합니다.

chmod +x ~/*.sh

2단계: 단축키를 그대로 유지하면서 확대/축소 플러그인 자체 내에서 가장자리와 버튼 바인딩을 매핑 해제합니다.


3단계: Compiz 설정 관리자에서 명령으로 이동하고(아직 활성화하지 않은 경우 플러그인을 활성화해야 함) 가장자리와 버튼을 쉘 스크립트에 바인딩합니다. 또한 단축키를 gamemode-toggle.sh 스크립트에 매핑하고 게임 내 가장자리와 버튼 바인딩을 전환할 수도 있습니다.


예를 들어.

명령을 받고(~ 문자는 여기서는 작동하지 않습니다)

명령줄 0:

/home/your_username/./Initiate_Window_Picker_on.sh

명령줄 1:

/home/your_username/./Initiate_Window_Picker_AllWindows_on.sh

명령줄 2:

/home/your_username/./gamemode-toggle.sh   

키 바인딩에서:

명령 0 실행:

명령 1을 실행하십시오.

명령 2를 실행합니다.

<Super>F12

버튼 바인딩

명령 0 실행:

명령 1을 실행하십시오.

<TopEdge>Button1

명령 2를 실행합니다.


아래 바인딩

명령 0 실행:

TopLeft|TopRight

명령 1을 실행하십시오.

명령 2를 실행합니다.

관련 정보