KDE 플라즈마에서 모든 글로벌 단축키를 비활성화하는 방법은 무엇입니까?

KDE 플라즈마에서 모든 글로벌 단축키를 비활성화하는 방법은 무엇입니까?

KDE+i3내 컴퓨터에는 KDE에서 제공하는 모든 전역 단축키를 i3-config에 올바르게 바인딩했기 때문에 비활성화하려는 설정이 있습니다 . API를
탐색한 후 이 명령이 모든 플라즈마 세션에서 작동한다는 것을 알았습니다.qdbus

qdbus org.kde.kglobalaccel /kglobalaccel blockGlobalShortcuts true

질문

문제는 자동화를 시작하는 방법입니다. 다음과 같은 문제가 있습니다.

  • 전역 키는 다음 이후에 다시 작동하기 시작합니다.,잠그다플라즈마가 다시 시작될 때까지 기다리십시오.
  • 나는 사용했다
    exec --no-startup-id qdbus org.kde.kglobalaccel /kglobalaccel \
    blockGlobalShortcuts true
    
    현재는 플라즈마가 다시 시작되지 않을 때까지만 가능합니다.

이를 구현하려면 어떻게 진행해야 합니까?

답변1

KDE의 모든 전역 단축키를 비활성화하는 방법을 찾았습니다. 이것이 내가 한 일입니다:

  • ~/.config/kglobalshortcutsrc단축키는 지정된 형식으로 저장됩니다 foo=bar.
  • 단축키를 사용하고 sed교체하세요.
  • kglobalaccel변경 사항을 관찰하려면 재부팅하십시오 .

스크립트는 다음과 같습니다.

#!/bin/sh

hotkeysRC="$XDG_CONFIG_HOME/kglobalshortcutsrc"

# Remove application launching shortcuts.
sed -i 's/_launch=[^,]*/_launch=none/g' $hotkeysRC

# Remove other global shortcuts.
sed -i 's/^\([^_].*\)=[^,]*/\1=none/g' $hotkeysRC

# Reload hotkeys.
kquitapp5 kglobalaccel && sleep 2s && kglobalaccel5 &

이제 마침내 모든 키 바인딩을 i3 구성으로 이동할 수 있습니다!

답변2

설치에 작동하지 않았기 때문에 Utkarsh의 스크립트를 약간 수정했습니다(kglobalshortcutsrc의 구문이 변경되었을 수 있음).

#!/bin/sh

fl="$HOME/.config/kglobalshortcutsrc"

sed -i 's/=.*,.*,/=none,none,/g' $fl
sed -i 's/Walk Through Windows=.*/Walk Through Windows=Alt+Tab,Alt+Tab,Walk Through Windows/' $fl # return alt+tab

# Reload hotkeys.
kquitapp5 kglobalaccel && sleep 2s && kglobalaccel5 &

관련 정보