rub*_*o77 11 vim keyboard-layout shortcut-keys
我不需要 CapsLock,而是希望在那里轻松访问 AltGr Key
vim-like位置所以我可以轻松地浏览我的代码,而无需将手从 10-Finger-Position 移开(就像在vim编辑器中一样)
我找到了这个答案:如何将大写锁定键重新映射到退格键?
建议使用
xmodmap -e "keycode [code] = [new key]"
Run Code Online (Sandbox Code Playgroud)
见:http : //wiki.linuxquestions.org/wiki/List_of_Keysyms_Recognised_by_Xmodmap
但我无法弄清楚,如何将其添加到例如 AltGr+J 的组合中
另一个开始是将“替代字符键”设置为unity-control-center->Keyboard->Shortcuts->Typing asCaps Lock
更新:
我找到了一些解决方案(见下文),但并非所有解决方案都适用于所有应用程序,我猜这是一些应用程序使用的名为“XFree 4”的全局设置。
1. 我如何为 XFree 4 设置键绑定?
2. 如何进行更改升级-保存?
sudo vi /usr/share/X11/xkb/symbols/altgr_vim
Run Code Online (Sandbox Code Playgroud)
有了这个内容:
partial keypad_keys
xkb_symbols "altgr-vim" {
# replace Caps with AltGr
key <CAPS> { [ ISO_Level3_Shift ] };
# Add vim cursor keys to be accessed with AltGr
key <AB02> { [ x, X, Delete, Delete ] };
key <AC02> { [ s, S, KP_Enter, KP_Enter ] };
key <AC03> { [ d, D, Next, Next ] };
key <AC04> { [ f, F, BackSpace, BackSpace ] };
key <AC06> { [ h, H , Left, Left ] };
key <AC07> { [ j, J, Down, Down ] };
key <AC08> { [ k, K, Up, Up ] };
key <AC09> { [ l, L, Right, Right ] };
key <AD07> { [ u, U, Prior, Prior ] };
key <AE03> { [ 3, section, Home, Home ] };
key <AE04> { [ 4, dollar, End, End ] };
};
Run Code Online (Sandbox Code Playgroud)
例如对于德语,它是/usr/share/X11/xkb/symbols/de(/de您的语言在哪里)在第一个块(xkb_symbols "basic")中添加:
include "altgr_vim(altgr-vim)"
Run Code Online (Sandbox Code Playgroud)
注意:每次发行版更新后都必须重复此部分
按 ALT+F2,输入“r”以重新加载 gnome 会话或退出并重新登录。现在将提供新的关键乐曲
某些应用程序不接受这些设置,例如:sublime可以替换为atom.
一些应用程序需要额外的设置,例如yakuake将键绑定设置为“XFree 4”,如果您将它们设置为“Linux”或“Solaris”,那么 XKB 设置也可以在那里工作:
为了获得AltGr+ h、j、k、l或任何其他键而不需要像Autokey这样的应用程序来执行,\xe2\x86\x90\xe2\x86\x93\xe2\x86\x91\xe2\x86\x92您可以自定义/usr/share/X11/xkb/symbols/中的键盘布局。\n目前我使用德语布局“de ”。所以首先我会:
\n\n1-复制标准布局
\n\ncp /usr/share/X11/xkb/symbols/de /usr/share/X11/xkb/symbols/de.bak\nRun Code Online (Sandbox Code Playgroud)\n\n2-使用您喜欢的文本编辑器打开您的布局(此处:gedit)
\n\nsudo gedit /usr/share/X11/xkb/symbols/de \nRun Code Online (Sandbox Code Playgroud)\n\n在那里你会看到类似的东西:
\n\nkey <AD03> { [ e, E, EuroSign, EuroSign ] };\nkey <AD06> { [ z, Z, leftarrow, yen ] };\nkey <AD11> { [udiaeresis, Udiaeresis, dead_diaeresis, dead_abovering ] };\n....\n....\nkey <AD12> { [ plus, asterisk, dead_tilde, macron ] };\nkey <AC02> { [ s, S, ssharp, U017F ] }; \nkey <AC06> { [ h, H, Left, Left ] }; \nkey <AC07> { [ j, J, Down, Down ] }; \nkey <AC08> { [ k, K, Up, Up ] }; \nkey <AC09> { [ l, L, Right, Right ] }; \n....\n....\nkey <AB10> { [ minus, underscore, endash, emdash ] };\nkey <LSGT> { [ less, greater, bar, NoSymbol ] };\nRun Code Online (Sandbox Code Playgroud)\n\n如您所见,AB、AC、AD、AE 代表行,数字代表其在键盘上的位置(有一些特殊的键,例如小于/大于键,也可以重新映射到其他键。
\n\n在那里您不会找到所有键盘,只能找到与键盘所基于的布局不同的键盘。德语版本基于“latin(type4)”,正如您在文件开头看到的那样:
\n\ninclude "latin(type4)"\nRun Code Online (Sandbox Code Playgroud)\n\n然后你只需要根据你的需要进行更改即可。它的工作原理如下:
\n\n键 { [ key, key+ shift, key+ AltGr, key+ Shift+ AltGr ] };
\n\n(也可以添加 5 级修饰符或更多)
\n\n如果您想在不重新启动的情况下检查更改;(更改您的布局的“de”...这是可能的布局列表 )
\n\n setxkbmap -layout de\nRun Code Online (Sandbox Code Playgroud)\n\n正如预期的那样,箭头的标签就像“左、右、下、上”。这是可能值的一个很好的列表。
\n\n这是我的自定义布局的示例。(但目前未使用)
\n\n然后,您需要重新映射 Capslock 和 AltGr,或者它是否已经按照您发布的问题工作了?
\n\n如果您还想保留“正常”德语布局,则可以更改您通常不使用的另一个布局(或者更改“德语无死键”,您可以在同一个“de”文件中进一步找到它。 ..)
\n\n来源:链接到 xbk 和自定义布局的非常全面的解释。
\n链接到具有良好答案的类似问题。
要将 CapsLock 重新映射到 AltGr,请使用
xmodmap -e "keycode 66 = ISO_Level3_Shift"
Run Code Online (Sandbox Code Playgroud)
(来源: https: //superuser.com/a/138757/160420)
要将箭头键映射到 AltGr + h、j、k 和 l,请使用xmodmap -pke查找正确的设置:
xmodmap -pke|egrep "f F|j J|k K|h H|l L|o O|u U|d D|dollar|BackSpace"
Run Code Online (Sandbox Code Playgroud)
并将第五个值更改为新键并将其全部添加到 bash 脚本中:
# xrandr needs the desktop to be fully loaded. add a delay, to be able to add it to Startup Applications:
sleep 15
# change BackSpace into AltGr
xmodmap -e "keycode 66 = ISO_Level3_Shift"
# set BackSpace on AltGr + F
xmodmap -e "keycode 41 = f F f F BackSpace BackSpace dstroke ordfeminine f F dstroke ordfeminine"
# create arrow keys at h,j,k,l
xmodmap -e "keycode 43 = h H h H Left Left"
xmodmap -e "keycode 44 = j J j J Down Down"
xmodmap -e "keycode 45 = k K k K Up Up"
xmodmap -e "keycode 46 = l L l L Right Right"
xmodmap -e "keycode 30 = u U u U Prior Prior"
xmodmap -e "keycode 40 = d D d D Next Next"
xmodmap -e "keycode 12 = 3 section 3 numbersign Home Home"
xmodmap -e "keycode 13 = 4 dollar 4 dollar End End"
xmodmap -e "keycode 53 = x X x X Delete Delete"
Run Code Online (Sandbox Code Playgroud)
(来源: https: //askubuntu.com/a/466315/34298)
将该 bash 脚本放入启动应用程序中(选择Dash > 启动应用程序 > 添加,然后添加命令。)
注意:奇怪的是gnome-terminal,这工作正常,但它yakuake适用于 AltGr+F 上的 BackSpace,但它将 AltGr+h、j、k 和 l 设置为 D、B、A 和 C,除非您将键绑定设置为“Linux”而不是“(默认)XFree 4”,并且根本sublime-text不起作用
| 归档时间: |
|
| 查看次数: |
6167 次 |
| 最近记录: |