Fedora 22를 실행하는 USB Apple 키보드의 일부 특정 키를 변경하려고 합니다.
3일 동안 답을 찾고 다양한 솔루션을 시도한 후 결국 다음을 사용하게 되었습니다.xmodmap하지만 여전히 모든 것을 제대로 작동시킬 수는 없습니다.
내 구체적인 질문은 다음과 같습니다.
- 교환Alt 왼쪽 클릭열쇠오른쪽으로
- 교환Ctrl 왼쪽열쇠왼쪽 명령열쇠
이것이 내가 지금까지 시도한 마지막 작업입니다.
내 것을 복사했어요xmodmap문서:
xmodmap -pke ~/.xmodmap
그러다가 내가 바꾸려고 했던 열쇠의 키코드를 알아냈어요시프그러면 Alt Left와 Alt Right가 제공됩니다.
KeyPress event, serial 36, synthetic NO, window 0x3400001,
root 0xd7, subw 0x0, time 7033878, (38,-14), root:(38,23),
state 0x10, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyPress event, serial 36, synthetic NO, window 0x3400001,
root 0xd7, subw 0x0, time 7035742, (38,-14), root:(38,23),
state 0x10, keycode 108 (keysym 0xfe03, ISO_Level3_Shift), same_screen YES,
XKeysymToKeycode returns keycode: 92
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
그래서Alt 왼쪽 클릭핵심은 사용하는 것입니다.키 코드 64,게다가오른쪽으로이름이 다음과 같은 열쇠ISO_레벨3_시프트,사용 중키 코드 108.
웹의 다른 소스와 관련하여 다음 내용으로 새 xmodmap 파일을 만들었습니다.
keycode 64 = Alt_L
keycode 108 = ISO_Level3_Shift
remove Mod1 = Alt_L
remove Mod4 = ISO_Level3_Shift
add Mod1 = ISO_Level3_Shift
add Mod4 = Alt_L
그런 다음 이 새로운 구성을 실행해 봅니다.
xmodmap -v .mymodmap
그리고 이 오류가 발생했습니다:
! .mymodmap:
! 1: keycode 64 = Alt_L
keycode 0x40 = Alt_L
! 2: keycode 108 = ISO_Level3_Shift
keycode 0x6c = ISO_Level3_Shift
! 3: remove Mod1 = Alt_L
! Keysym Alt_L (0xffe9) corresponds to keycode(s) 0x40 0xcc
remove mod1 = 0x40 0xcc
! 4: remove Mod4 = ISO_Level3_Shift
! Keysym ISO_Level3_Shift (0xfe03) corresponds to keycode(s) 0x5c 0x6c 0x9a
remove mod4 = 0x5c 0x6c 0x9a
! 5: add Mod1 = ISO_Level3_Shift
add mod1 = ISO_Level3_Shift
! 6: add Mod4 = Alt_L
add mod4 = Alt_L
!
! executing work queue
!
keycode 0x40 = Alt_L
keycode 0x6c = ISO_Level3_Shift
remove mod1 = 0x40 0xcc
remove mod4 = 0x5c 0x6c 0x9a
add mod1 = ISO_Level3_Shift
add mod4 = Alt_L
X Error of failed request: BadValue (integer parameter out of range for operation)
Major opcode of failed request: 118 (X_SetModifierMapping)
Value in failed request: 0x17
Serial number of failed request: 15
Current serial number in output stream: 15
해결책을 찾고 있지만 이로 인해 혼란스럽습니다.
새로운 Apple 키보드의 특정 키를 변경하는 방법에 대한 단서나 정보 소스가 있는 사람이 있습니까?
편집하다:
지금까지 여러 가지 구성을 시도한 후 다음과 같은 가장 가까운 접근 방식을 선택했습니다.
clear mod1
clear mod5
keycode 64 = ISO_Level3_Shift Mode_switch ISO_Level3_Shift Mode_switch
keycode 92 = Alt_L Meta_L Alt_L Meta_L
keycode 108 = Alt_L Meta_L Alt_L Meta_L
add mod1 = ISO_Level3_Shift Mode_switch
add mod5 = Alt_L Meta_L
키 코드92그리고108내가 본 것과 같은 열쇠인 것 같아시프산출.
이 내 꺼야xmodmap산출앞으로내 변경사항:
xmodmap: up to 4 keys per modifier, (keycodes in parentheses):
shift Shift_L (0x32), Shift_R (0x3e)
lock Caps_Lock (0x42)
control Control_L (0x25), Control_R (0x69)
mod1 Alt_L (0x40), Meta_L (0xcd)
mod2 Num_Lock (0x4d)
mod3
mod4 Super_L (0x85), Super_R (0x86), Super_L (0xce), Hyper_L (0xcf)
mod5 ISO_Level3_Shift (0x5c), Mode_switch (0xcb)
이 내 꺼야xmodmap산출뒤쪽에내 변경사항:
xmodmap: up to 4 keys per modifier, (keycodes in parentheses):
shift Shift_L (0x32), Shift_R (0x3e)
lock Caps_Lock (0x42)
control Control_L (0x25), Control_R (0x69)
mod1 ISO_Level3_Shift (0x40), Mode_switch (0xcb)
mod2 Num_Lock (0x4d)
mod3
mod4 Super_L (0x85), Super_R (0x86), Super_L (0xce), Hyper_L (0xcf)
mod5 Alt_L (0x5c), Alt_L (0x6c), Alt_L (0xcc), Meta_L (0xcd)
이러한 변경 사항을 적용한 후 내 권리는대리자키는 왼쪽 Alt 키처럼 작동하는 것처럼 보이지만(예: 일부 응용 프로그램의 메뉴 전환) 왼쪽 Alt 키는 아무 작업도 수행하지 않습니다.
아마도 내 의도를 구체적으로 설명하자면 다음과 같습니다.
프로그래밍 목적으로 사무실에 있는 Apple 키보드가 집에 있는 키보드처럼 작동하도록 하려면 두 개의 Alt 키를 전환해야 합니다(저는 Macbook을 사용합니다).
저는 왼쪽 Alt 키를 사용하여 물결표 ~ 및 파이프 | 등과 같은 특수 기호를 작성하는 데 매우 익숙합니다(왼쪽 Alt 키는 왼쪽 엄지손가락으로 실행됩니다).
나도 전환해야 해왼쪽 클릭 명령그리고왼쪽Ctrl집에 있는 맥북에서도 이것들이 열려있으니까요.
물론, 직장에서 이러한 토글 키에 익숙해질 수는 있지만, 올바른 키를 생각하지 않고 흐름 중에 잘못된 키 조합을 치기 때문에 매일 짜증이 납니다.
그럼 누구든지 나를 도와줄 수 있나요?
답변1
지금까지 전환에 대한 부분적인 솔루션이 있습니다.제어 키그리고지침왼쪽에.
이것은 어리석을 정도로 간단하지만 내 목적에는 적합합니다.
나는 사용한다그놈 조정 도구이 키의 동작을 변경하십시오. 내 언어에는 다음과 같은 옵션이 있습니다.입력하다이 옵션 아래에는 "Ctrl 키 위치" 위에서 다섯 번째 지점이 있는데, 이를 "왼쪽 슈퍼 키와 왼쪽 Ctrl 키 교환"으로 변경했습니다.
다른 번역에도 비슷한 내용이 있어야 합니다.
지금까지 사용할 수 있습니다왼쪽 클릭 명령일부 표준 단축키용 키(복사용 cmd + c 등) 그런데 집에 있는 맥북의 키보드와는 다르게 키보드를 사용할 수가 없어요.cmd + 탭. 그러므로 나는 사용해야한다Ctrl + 탭또는Alt + 탭. 하지만 괜찮습니다. 익숙해지면 됩니다.
하지만 안타깝게도 아직 두 가지를 바꿀 수 있는 옵션을 찾지 못했습니다.대리자열쇠.