오른쪽 Alt 키를 다시 사용하여 오른쪽 Ctrl 키로 동작


8

나는 다시 매핑하기 위해 노력하고있어 right alt내처럼 행동하는 right ctrl그래서 언론에 내 오른쪽 엄지 손가락을 사용할 수있는 ctrl버튼을 누릅니다. 우분투 12.04입니다.

다음 내용으로 홈 폴더에 .Xmodmap 파일을 만들었습니다.

clear control
clear mod1
!keycode 64 = Alt_L Meta_L
keycode 108 = Alt_R Meta_R
add control = Control_L Control_R Alt_R
add mod1 = Alt_L Meta_L

추측 할 수 있듯이 왼쪽 alt 키에는 키 코드 64가 있고 left alt키에는 키 코드 108이 있습니다.

이것은 실제로 오른쪽 Alt 키가 마치 마치 ctrl키를 누르는 것처럼 동작한다는 의미에서 작동 합니다.

그러나 왼쪽 alt키는 이제 더 이상 아무것도하지 않으므로 alt키가 남아 있지 않습니다 . 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),  Alt_R (0x6c)
mod1        Alt_L (0x40),  Alt_L (0xcc),  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)

이상한 것은에 대한 Alt_R 매핑을 제거 control하면 alt키가 작동 한다는 것입니다.

(즉, 두 번째 줄을 마지막 줄로 변경하십시오.)

add control = Control_L Control_R

이제 내 권리조차도 alt나를 혼란스럽게 하는 열쇠 처럼 행동 합니다. 제어 라인에서 Alt_R 맵핑을 제거한 후 출력 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),  Alt_L (0xcc),  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)

너희들이 도울 수 있기를 바랍니다.

추신. 이 웹 사이트를 소스로 사용 했습니다 .

답변:


6

당신은 간단하게 사용할 수 있어야합니다 키보드 레이아웃 >> 옵션 >> Ctrl 키 위치 >> 오른쪽 Ctrl 키와 같은 오른쪽 Alt 키를 ,하지만이 작동하지 않습니다. 이것은 이미 데비안에 대해 Bug # 663218 로 제출되었습니다.

1) ~ / .Xmodmap을 삭제하여 새로 시작하십시오.

2) Control 및 Mod1 을 지우지 않아도됩니다 . 이렇게하면 원하는 것만 쉽게 변경할 수 있습니다. ~ / .Xmodmap은 다음과 같습니다.

!Swap right control and right alt
remove Control = Control_R
remove Mod1 = Alt_R
keycode 105 = Alt_R
keycode 108 = Control_R
add Control = Control_R
add Mod1 = Alt_R

2

당신이 나 같은 불행한 사람들 중 하나라면 xmodmap이 오른쪽 Ctrl로 오른쪽 Alt를 전환 할 수 없다면 도움이 될 것입니다.

오른쪽 Alt 키와 e 키를 누르면 é가 표시되며이 솔루션이 적합합니다 (개선 필요).

터미널에서 이것을 실행하십시오 (xev로 키 코드를 확인하십시오).

xmodmap -e "keycode 108 = Alt_R Meta_R Alt_R Meta_R"

그런 다음이 코드를 .Xmodmap에 넣으십시오.

remove Control = Control_R
remove Mod1 = Alt_R
keycode 105 = Alt_R
keycode 108 = Control_R
add Control = Control_R
add Mod1 = Alt_R

이 코드는 Alt_Gr 키를 Alt_R로 설정 한 다음 Alt_r을 Ctrl_R로 바꿉니다.

로그 아웃 한 후이 상태를 유지하려면 시작 쉘 파일 (예 : ~ / .profile)에 다음 명령을 입력하십시오.

if [ -f $HOME/.Xmodmap ]; then
  xmodmap -e "keycode 108 = Alt_R Meta_R Alt_R Meta_R"
  /usr/bin/xmodmap $HOME/.Xmodmap
fi

출처 : question1 question2


1

Ubuntu 19.04에서 시스템 전체에 매핑을 만들려면 두 파일을 변경해야합니다.

  • / usr / share / X11 / xkb / symbols / altwin
  • / usr / share / X11 / xkb / symbols / pc

이전 섹션에 다음 섹션을 추가하십시오.

// Ctrl is mapped to the Alt.
partial modifier_keys
xkb_symbols "right_alt" {
    key <LALT> { [ Alt_L, Meta_L ] };
    key <RALT> { type[Group1] = "TWO_LEVEL",
                 symbols[Group1] = [ Control_R, Control_R ] };
    modifier_map Mod1 { Alt_L, Alt_R, Meta_L, Meta_R };
    modifier_map Control { <LCTL>, <RALT> };
};

후자를 대신 include "altwin(meta_alt)"하십시오 include "altwin(right_alt)".


이것은 질문에 대답하고 작동합니다. 그러나 받아 들여진 대답은 오른쪽 Alt와 오른쪽 Ctrl을 바꿉니다. 이것은 원래 요청되지 않았지만 많은 사람들이 찾고있는 솔루션이라고 생각합니다 (오른쪽에 두 개의 컨트롤이있는 것은 그렇게 편리하지 않습니다). 올바른 컨트롤을 오른쪽 alt에 매핑하는 방법을 추가 하시겠습니까?
— Tedward
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.