xkb에서 키보드 수정자를 완전히 사용자 정의하는 방법은 무엇입니까?

xkb에서 키보드 수정자를 완전히 사용자 정의하는 방법은 무엇입니까?

저는 Arch Linux와 함께 ThinkPad 노트북을 사용하고 있으며 키보드 레이아웃 + 수정자를 다시 매핑할 가능성을 조사하고 있습니다.

내가 하고 싶은 일이 당신이 할 수 있는 일과 비슷하다QMK펌웨어키보드에는 여러 레이어가 있습니다.그러나 특정 하드웨어에 의존하지 않습니다.

나는 다음과 같은 몇 가지 다른 방법을 찾았습니다.

KLFC는 매우 단순하고 간단해 보였지만, 이해하지 못하는 문제가 몇 가지 있어서 좀 더 깊이 파고들기로 했습니다.

그런 다음 (아마도) 가장 기본적인 방법은 다음을 사용하는 것임을 알았습니다.xkb존재하다X11그런 다음 원하는 레이아웃을 상속하고 필요에 맞게 수정합니다.

/usr/share/X11/xkb나는 다른 파일을 계속해서 찾고 있던 디렉토리의 시스템 파일을 구체적으로 살펴보았고 symbols"xkb" API에 대한 1996년의 일부 문서를 찾았지만 전부 읽지는 않았습니다. 그래서 내가 도움을 청하러 온 거야.

나는 기호 파일이 특정 패턴을 따른다는 것을 발견했습니다.

key <AE01> {    [     1,    exclam      ]   };

따라서 AE01은 첫 번째 행의 첫 번째 키이며 structC의 a처럼 보이며 속성 목록이 있습니다.

목록의 순서는 내가 수정하려는 항목에 따라 다릅니다. 그게 내 문제입니다.

목록의 첫 번째 위치는 1수정자 없이 버튼을 클릭하면 다음 1위치로 인쇄된다는 의미입니다.표준 입력, 즉 수정자 키 (또는 ) exclam를 사용하면 다음으로 전송됩니다.Shiftcapslock!표준 입력.

나만의 수정자 키(잠금 및 잠금)를 정의하고 싶습니다. 어쩌면 10개의 다른 수정자 키가 있을 수도 있습니다. 그들 중 일부는 (잠김) , 또는 caps lock같은 일부 (잠금) , 이미 정의된 것을 사용할 필요가 없도록 독립적 (원시)이기를 원합니다.shiftctrl

또한 일부 (수정 키) + (수정 키)가 "더 깊은 수준"에서 함께 작동하기를 원합니다. 예를 들어, 나는i3+ n(0..9)을 사용하여 winKey데스크톱 간을 전환한 다음 문자 아래의 숫자를 이동하고 caps lock+(일부 문자)를 사용하여 숫자를 가져온 다음 바로가기를 사용합니다.xkb바로가기와 충돌i3그리고 나는 아무것도 얻지 못했습니다.

1994년의 xkb에 대한 오래된 문서를 모두 읽으면 어떻게 해야 하는지 알 수 있을 것 같지만, 전체 시간을 소비하지 않고도 시작할 수 있는 훌륭하고 명확한 튜토리얼이나 팁을 찾고 싶습니다.xkb기르다. :)

관련 정보