"멱등성" .Xmodmap을 작성하려면 어떻게 해야 합니까?

"멱등성" .Xmodmap을 작성하려면 어떻게 해야 합니까?

현재 나는 my 를 다음으로 .Xmodmap변경하는 파일을 가지고 있습니다 ( 저는 Mac에서 Linux를 실행하고 있습니다).CommandCtrlCtrlSuper

훌륭하게 작동하며 한 번만 계속 실행하면(예를 들어 데스크톱 환경(Cinnamon)을 다시 시작하면 파일이 다시 로드됨 .Xmodmap) 기본적으로 변경 사항을 되돌려 설정을 재설정합니다. 원하는 설정과 원래 설정 사이를 효과적으로 전환합니다.

.Xmodmap설정을 한 번만 설정하고 연속 실행 시 다시 변경하지 않는 파일을 어떻게 작성할 수 있습니까 ? 이것은 내 기존 .Xmodmap파일입니다.

clear control
clear mod4

keycode 105 =
keycode 206 =

keycode 133 = Control_L NoSymbol Control_L
keycode 134 = Control_R NoSymbol Control_R
keycode 37 = Super_L NoSymbol Super_L

add control = Control_L
add control = Control_R

답변1

모드를 적용하기 전에 지도를 원래 상태로 재설정하세요. 완전히 재설정하려면 시간이 오래 걸리기 때문에 제가 생각할 수 있는 최선은 차별화입니다.

이 코드는 존재하지 않는 .Xmodmap{.orig,.reset,.mods}경우를 사용하여 .orig현재 상태로 설정하고 .reset현재 위치에서 해당 상태를 복원하는 것을 계산합니다. 신청하기 전에 .mods.

#!/bin/sh
# file xmodmap-reset

#     rm ~/.Xmodmap.orig
# beforehand to take current setup as baseline for Xmodmap.mods changes

stem=~/.Xmodmap
orig=${stem}.orig
reset=${stem}.reset
mods=${stem}.mods

# implement -pme like -pke
#
xmodmap-pme () {
  xmodmap -pm \
  | sed '
        1d
        / [^ ]/!d
        s/^[^ ][^ ]*/clear &\nadd & =/
        s/([^ ]*//g
    '
}

# save baseline if none atm
test -a $orig || {
    xmodmap  -pke
    xmodmap-pme
} > $orig

# payload, diff for commands to reset to baseline from current
{
    xmodmap  -pke
    xmodmap-pme
} \
| {
    diff -u0 $orig - \
    | sed -n '
        1,/^@@/d
        s/^[^+]clear/clear/p
        s/^-//p
      '
} > $reset
xmodmap $reset

# finally ready to apply the mods
test -a $mods && xmodmap $mods

(편집: 정리)

답변2

시스템 > 기본 설정 > 애플리케이션 실행으로 이동하여 xmodmap ~/.Xmodmap. xmodmap 명령 추가

답변3

나는 아직도 당신이 원하는 것이 무엇인지 약간 혼란스럽습니다. 그러나 내 생각에는 이것이다:

이것을 에 넣으면 ~/.Xmodmap,

clear control
clear mod4

keysym Super_L = Control_L
keysym Control_L = Super_L

add control = Control_L
add control = Control_R
add mod4 = Super_L
add mod4 = Super_R

xmodmap ~/.Xmodmap그런 다음 실행될 때 마다 왼쪽 버튼 Ctrl과 왼쪽 버튼이 교체됩니다. 따라서 첫 번째 호출에서는 Ctrl키가 누른 것처럼 작동 하지만 두 번째 호출에서는 Ctrl다시 키처럼 작동합니다.

관련 정보