Ctrl일부 리디렉션(예: 리디렉션 + p대상 등) 을 수행하기 위해 xkb 구성 파일에 사용자 정의 키 유형을 정의했습니다 Up. 그러나 이 사용자 정의 유형에 대해 자동 반복이 작동하도록 할 수 없습니다(원래 키(예: p) 또는 리디렉션 작업(예: + Up에서 리디렉션 )에 자동 반복이 있음).Ctrlp
repeat=true,
다음을 기반으로 구성에 추가하려고했습니다.keysyms
이것은 xfree86 메일링 리스트에서 가져온 것입니다.하지만 그것도 작동하지 않습니다.
답변1
man xset
이 옵션을 읽어주세요 r
. 명령에 정수 코드를 제공하여 특정 키의 자동 반복을 활성화할 수 있습니다 xset r
. 예를 들어:
나는 가지고있다
<SPCE> = 134;
내 사용자 정의 xkbcom 키맵 파일에 있습니다. 따라서 다음을 발행하십시오.
xset r 134
터미널에서 다시 매핑된 스페이스바에 대해 자동 반복이 활성화됩니다.
이 명령을 파일에 추가할 수 있습니다 ~/.xinitrc
. xkb 구성 파일 자체를 수정할 필요는 없습니다.
답변2
Chromium OS 저장소에서 도움이 될 만한 패치를 우연히 발견했습니다. 실제로 Chrome 자체에 패치를 적용한 후 제거된 것으로 보입니다. 패치에 대한 QA가 어떻게 되었는지, 또는 패치가 업스트림으로 전송되었는지 확실하지 않습니다.
여기 링크:X: Alt-Up 및 Alt-Down을 Page Up 및 Page Down에 매핑
패치는 다음과 같습니다.
This is a probably-wrong fix for an issue where autorepeat
is disabled for keys assigned by XKB. As far as I can tell,
XKB has the correct autorepeat settings for the keys before
a completely-empty autorepeat array from X is copied over
it; then the XKB array is copied back to X. This makes us
skip the first copy.
diff --git a/xkb/xkbUtils.c b/xkb/xkbUtils.c
index 75e243c..bceb55c 100644
--- a/xkb/xkbUtils.c
+++ b/xkb/xkbUtils.c
@@ -342,9 +342,6 @@ CARD8 * repeat;
xkb= xkbi->desc;
repeat= xkb->ctrls->per_key_repeat;
- if (pXDev->kbdfeed)
- memcpy(repeat,pXDev->kbdfeed->ctrl.autoRepeats,32);
-
XkbUpdateDescActions(xkb,first,num,changes);
if ((pXDev->kbdfeed)&&
아직 직접 해보지는 않았지만 시도해 볼 수도 있겠네요.
답변3
나는 같은 문제가 있었고 작동했지만 복제되지 않은 방법 SUPER + H으로 리디렉션했습니다.LEFT
주요 기호 정의에 추가하면 autorepeat = yes
작동했습니다 .
여기에서 찾으세요:http://web.archive.org/web/20190320180541/http://pascal.tsu.ru/en/xkb/gram-symbols.html