如何在linux中模拟集成数字小键盘光标键

时间:2015-09-28 12:20:20

标签: linux numeric keypad emulation integrated

在许多较旧的笔记本电脑和一些紧凑型键盘上,主键盘区域有一个integrated numeric keypad。这个备用键盘由一个特殊的Fn'激活。左Ctrl键旁边的键。

作为一名程序员,我学会了使用光标移动键(箭头,PgUp,PgDn等),发现它大大提高了我的编程速度。而且,与专用快捷键的情况一样,好处并不仅限于单个应用程序。

在传统的PC键盘上,“Windows键”和“#9;可以用来模拟“Fn”和“Fn”。键和相应的集成数字键盘。当我以前使用MS Windows时,我发现Autohotkey能够使用a simple script映射密钥。

最近我了解了xkb及其如何用于map keystrokes at a very low level

什么是xkb键盘映射配置文件,它将使用Windows键作为fn键来模拟集成数字小键盘?

提示(?):我怀疑该文件看起来很像' / usr / share / X11 / xkb / symbols / keypad '在Debian衍生的Linux发行版上的文件。这个键盘'文件包含在' / usr / share / X11 / xkb / symbols / pc '的顶部。文件。

corresponding autohotkey script作为参考(#== WinKey):

#8::Up
#k::Down
#u::Left
#o::Right

#7::Home
#j::End
#9::PgUp
#l::PgDn

#m::Insert
#.::Delete

;(Scroll with the left-over keys)
#i::WheelUp
#,::WheelDown

请注意,所有这些键都需要使用 Ctrl,Alt,Shift 以及Windows键的任意组合。

1 个答案:

答案 0 :(得分:1)

在Linux / XKB的主键盘上安装类似数字小键盘的光标键的步骤...

  1. xkbcomp $ DISPLAY original.xkb (以防万一;)
  2. xkbcomp $ DISPLAY custom.xkb
  3. 修改custom.xkb
  4. 在部分末尾添加以下内容:xkb_types" ..." {

    org.eclipse.e4.core.services.log.Logger
  5. 在xkb_symbols" ..."部分的末尾添加以下内容: {

    type "WinKeyAsFnKey" {
      modifiers = Shift+Super;
      map[Shift] = level2;
      map[Super] = level3;
      map[Super+Shift] = level3;
      level_name[Level1] = "Base";
      level_name[Level2] = "Caps";
      level_name[Level3] = "Fn";
    };
    
  6. 保存custom.xkb

  7. xkbcomp custom.xkb $ DISPLAY
  8. 我还在使用' i'和','。

    修改: 上述解决方案与Google Chrome和基于Chrome的应用程序(如Slack)相得益彰。

    替代方法是使用可编程键盘。我使用after-market PCB for a CoolerMaster Masterkeys S keyboardEasy AVR布局为available online(虽然目前左侧的赢取键现在不能自行运行......我使用的是正确的。)