Ubuntu 下 Swap left ctrl and alt

51 篇文章 2 订阅

摘要 传统xmodmap已被废弃,只好setxkbmap,自造option解决

因为我的笔记本Ctrl被Fn键隔的大老远,必须换之!

Caps 跟 Esc 互换,左边的Ctrl 和Alt 互换,这是我个人用的映射。这样,Esc在A的左边,Ctrl在空格左边,不常用的Alt在空格右边(偶尔也用左下角),Super原样,适用一个月下来,我是蛮习惯的。

被淘汰的xmodmap就不提了,那个在有中文输入法存在的地方完全废掉。

完美解决,只能是setxkbmap.

直接放步骤了(这已经是最简化的了):

1. 在/usr/share/X11/xkb下面新增option: swap_lalt_lctrl

cd /usr/share/X11/xkb/symbols/ 
sudo vim ctrl

在末尾添加如下代码:

// swap left alt and left ctrl  
partial modifier_keys  
xkb_symbols "swap_lalt_lctrl" {  
    key <LALT> { [ Control_L, Control_L ] };  
    key <LCTL> { [ Alt_L, Meta_L ] };  
    modifier_map Control { <LALT>, <RCTL> };  
    modifier_map Mod1 { <LCTL>, <RALT> };  
};

然后切换到目录 /usr/share/X11/xkb/rules/

sudo vim evdev

在ctrl下面添加:(在! option = symbols 下面)

ctrl:swap_lalt_lctrl    =   +ctrl(swap_lalt_lctrl)

同一目录

sudo vim evdev.lst

在ctrl下面添加:(在! option 下面)

ctrl:swap_lalt_lctrl   Swap left Ctrl and Alt

到此,一个新的ctrl键的option, swap_lalt_lctrl成功添加出来。

2. dconf-editor 调用此option

dconf-editor, 在org.gnome.desktop.inputsources下面,
xkboptions选项,添加如下:['ctrl:swap_lalt_lctrl'],OK.

若需立即生效,终端键入 setxkbmap -print即可。




PS: 我的显示:

xkb_keymap {
    xkb_keycodes    { include "evdev+aliases(qwerty)" };
    xkb_types       { include "complete" };
    xkb_compat      { include "complete" };
    xkb_symbols     { include "pc+us+inet(evdev)+capslock(swapescape)+ctrl(swap_lalt_lctrl)" };
    xkb_geometry    { include "pc(pc105)" };
};



改键位其实还有更简单的方法。

贴出来以供参考。无需新建ctrl键的option,而是修改原有的无用选项的值来实现。

[SOLVED]How to use 'gnome-tweak-tool' swap Control-R and Alt-R ?

First : Run Terminal
sudo gvim /usr/share/X11/xkb/symbols/ctrl

Sceond :
Move cursor to the 'line 7', and Replace Original Value.

// replace left control with Meta
partial modifier_keys
xkb_symbols "lctrl_meta" {
replace key <RALT> { symbols[Group1] = [ Control_R, Control_R ] };
modifier_map Control { <RALT>, Control_L };
// replace key <LCTL> { [ Meta_L ] };
};

Third: Run Tweak Tool, Switch to 'Typing' tab.

Look right interface, Find 'ctrl key position' optional, click it and choose
"left Ctrl as Meta".

That's All , Thx.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值