我的鍵盤右shift鍵
無法使用了。想使用右alt鍵
代替。
查詢了一下 xmodmap 命令可以實現該功能。
以下是我的配置方法的記錄。
建立乙個 xmodmap 配置檔案:
/etc/xmodmap.config
xmodmap 配置檔案內容:
! swap alt_r and shift_r
remove shift = shift_r
remove mod1 = alt_r
keysym shift_r = alt_r
keysym alt_r = shift_r
add shift = shift_r
add mod1 = alt_r
xmodmap 執行配置檔案。交換右shift鍵
和右alt鍵
。
xmodmap /etc/xmodmap.config
將以上的指令寫入/etc/profile
中。就可以再開機的時候自動配置了。
注意:
如果再執行一次xmodmap /etc/xmodmap.config
。兩鍵又會交換回來的。
使用 xmodmap 檢視 modifier 鍵值影射。
xmodmap
> xmodmap: up to 4 keys per modifier, (keycodes in parentheses):
>
>
shift shift_l (0x32), shift_r (0x6c)
> lock caps_lock (0x42)
> control control_l (0x25), control_r (0x69)
> mod1 alt_r (0x3e), 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)
使用 xev 指令可以檢視 keycode 和 keyname。
xev |
grep keycode
> state 0x0, keycode 38 (keysym 0x61, a), same_screen yes, # key `a` pressed
> state 0x0, keycode 38 (keysym 0x61, a), same_screen yes, # key `a` released
> state 0x0, keycode 37 (keysym 0xffe3, control_l), same_screen yes, # key `control_l` pressed
> state 0x4, keycode 37 (keysym 0xffe3, control_l), same_screen yes, # key `control_l` released
> state 0x0, keycode 50 (keysym 0xffe1, shift_l), same_screen yes, # key `shift_l` pressed
> state 0x1, keycode 50 (keysym 0xffe1, shift_l), same_screen yes, # key `shift_l` released
> state 0x0, keycode 36 (keysym 0xff0d, return), same_screen yes, # key `return` pressed
> state 0x0, keycode 36 (keysym 0xff0d, return), same_screen yes, # key `return` released
/usr/lib/systemd/user-preset/xmodmap.service
[unit]
description=run xmodmap config
documentation=man:xmodmap
after=graphical.target
wants=graphical.target
[service]
type=oneshot
execstart=/usr/bin/bash -c 'export display=":0"; /usr/bin/xmodmap -quiet /etc/xmodmap.config'
[install]
wantedby=graphical.target
注意:
為了防止出現systemctl status xmodmap.service
以下問題:
問題/usr/bin/xmodmap: unable to open display ':0'
。
指令碼需要增加以下指令:
after=graphical.target
wants=graphical.target
問題/usr/bin/xmodmap: unable to open display ''
指令碼需要增加以下指令:
export display=":0";
# install xmodmap.service
ln -s /usr/lib/systemd/user-preset/xmodmap.service /etc/systemd/system/xmodmap.service
# enable xmodmap.service
systemctl enable xmodmap.service
機器重啟後,需要等待 幾分鐘才可以交換按鍵。
how to make xmodmap changes permanent?
centos7使用筆記
檢視核心版本 uname a 檢視發行版本 cat etc elease 設定靜態ip cd etc sysconfig network scripts 看到類似這樣的乙個檔案 ifcfg eno16777736 vim ifcfg eno16777736 修改如下 bootproto改為stati...
CentOS7使用筆記
在centos7中用的全新服務啟動管理器 systemctl 在centos6做服務的啟停用service systemctl 代替service chkconfig 在centos6中只需要把啟動的服務檔案放到 etc ini.d目錄下就可以了,但是在centos7中怎麼處理了?檢視服務列表狀態 ...
centos7使用筆記(一)
首先,在已經裝有win7系統的電腦上安裝centos7,安裝步驟略過。一 配置雙系統啟動項 1 安裝完成centos7後,啟動電腦,出現的啟動選項中沒有win7,只能從centos7啟動。2 先進入centos7中配置grub檔案 一般不要直接去修改grub.conf檔案,在 etc grb.d 4...