首页 > 其他分享 >键盘快捷键映射方式总结

键盘快捷键映射方式总结

时间:2023-08-06 18:45:43浏览次数:49  
标签:映射 mkdir sudo share 快捷键 键盘 usr keyd

因为经常在电脑上打字,以及之前使用笔记本的历史原因,我喜欢使用 fn+left = home, fn+right = end, fn 挨着左边的 ctrl 键。这两个快捷键在编辑文字时非常方便跳转。ctrl+方向键逐个单词跳转,fn+方向键直接跳转到行首和行尾。
后来换成了标准配列的键盘,原来 fn 的位置为 win 键,为了舒适地码字,我研究了快捷键映射的方法。需要注意的是,排除了比较顶层的快捷键映射方案(例如使用 python 包 xkeysnail 等,响应速度无法满足编辑文字时快速打字的场景,并且由于不是从底层进行映射,会有奇怪的 bug)。

解决方法

Windows 用 Power Toy 进行这样的设定。

Linux 使用 keyd 进行配置,参考下一部分,把 meta+left=home, meta+right=end。(ps: Linux 下我找了很多快捷键映射的软件,最后只有这个速度快、支持"快捷键映射"而不是"键映射"、并且我还搞明白怎么用了 QAQ)

软件地址:https://github.com/rvaiya/keyd

Speed (a hand tuned input loop written in C that takes <<1ms)
Simplicity (a config format that is intuitive)
Consistency (modifiers that play nicely with layers by default)
Modularity (a UNIXy core extensible through the use of an IPC mechanism)

补充 keyd 的安装和使用

这个软件感觉比较冷门……只有官网的英文教程。不过这里需求比较简单,配置文件没有很复杂,大致过程如下:

安装

$ git clone https://github.com/rvaiya/keyd
正克隆到 'keyd'...
remote: Enumerating objects: 3121, done.
remote: Counting objects: 100% (1166/1166), done.
remote: Compressing objects: 100% (405/405), done.
remote: Total 3121 (delta 808), reused 1063 (delta 760), pack-reused 1955
接收对象中: 100% (3121/3121), 2.38 MiB | 3.70 MiB/s, 完成.
处理 delta 中: 100% (2081/2081), 完成.
$ cd keyd
$ make && sudo make install
mkdir bin
cp scripts/keyd-application-mapper bin/
cc -DVERSION=\"v2.4.2\ \(41bccee\)\" -I/usr/local/include -L/usr/local/lib -Wall -Wextra -Wno-unused -std=c11 -DSOCKET_PATH=\"/var/run/keyd.socket\" -DCONFIG_DIR=\"/etc/keyd\" -DDATA_DIR=\"/usr/share/keyd\" -D_FORTIFY_SOURCE=2 -D_DEFAULT_SOURCE -Werror=format-security  -O3  src/*.c src/vkbd/uinput.c -lpthread -o bin/keyd 
[sudo] thor 的密码: 
mkdir -p /etc/keyd
mkdir -p /usr/bin/
mkdir -p /usr/share/keyd/
mkdir -p /usr/share/keyd/layouts/
mkdir -p /usr/share/man/man1/
mkdir -p /usr/share/doc/keyd/
mkdir -p /usr/share/doc/keyd/examples/
groupadd keyd
install -m755 bin/* /usr/bin/
install -m644 docs/*.md /usr/share/doc/keyd/
install -m644 examples/* /usr/share/doc/keyd/examples/
install -m644 layouts/* /usr/share/keyd/layouts
install -m644 data/*.1.gz /usr/share/man/man1/
install -m644 data/keyd.compose /usr/share/keyd/
$ sudo systemctl enable keyd && sudo systemctl start keyd
Created symlink /etc/systemd/system/sysinit.target.wants/keyd.service → /lib/systemd/system/keyd.service.

配置

$ cd /etc/keyd
$ sudo touch default.conf
$ sudo gedit default.config # 编辑配置文件并保存
$ sudo keyd reload

配置文件如下(meta 代表了 win 键 / Super 键)

[ids]

*

[meta]
left = home
right = end

标签:映射,mkdir,sudo,share,快捷键,键盘,usr,keyd
From: https://www.cnblogs.com/zkmjolnir/p/17609705.html

相关文章

  • 开发工具快捷键(IDEA\Eclipse)
    ECLIPSECTRL+SHIFT+R:打开资源CTRL+O:快速OUTLINECTRL+E:快速转换编辑器CTRL+2,L:为本地变量赋值ALT+SHIFT+R:重命名ALT+方向键:回退上个页面CTRL+M:全屏CTRL+ALT+H:查询方法引用ALT+SHIFT+R:重命名方法名、属性或者变量名CTRL+SHIFT+X大......
  • Visual Studio 2022的快捷键速查
    1.VisualStudio2022的默认快捷键2.VisualStudio2022的快捷键修改......
  • java202304java学习笔记第六十六天-ssm-声明式控制-mybatis映射文件概述
    ......
  • 笔记本电脑小键盘数字键的光标作用
    我的笔记本平时要使用home,end功能时,由于键位太小不好找,且要结合fn+键位的按法,非常麻烦如图通过NumLock切换小键盘数字键实现光标功能......
  • python 鼠标键盘消息
    python操作鼠标键盘使用pyautogui或pynput1.禁用键盘鼠标(测试未禁用笔记本触摸区域)1fromctypesimport*2#禁用鼠标键盘3windll.user32.BlockInput(1)45#接禁鼠标键盘6windll.user32.BlockInput(0)2.发送键盘消息1importpyautogui2frompynput.keyb......
  • Java反射与自定义注解实现不同Bean属性映射的高效解决方案
    假设现有一个叫user的bean,里面有username、passsword、sex、createTime这四个属性,需要实现一个功能,把其它bean里的字段分别映射到user里的username、passsword、sex、createTime这几个属性上,然后可以根据其它的bean的实例自动转化为user的实例(填充对应属性值),下面是代码实现。Java......
  • application.yml文件中开启mybatis自动驼峰映射
    application.yml文件中开启mybatis自动驼峰映射configuration:#是否开启自动驼峰命名规则映射:从数据库列名到Java属性驼峰命名的类似映射map-underscore-to-camel-case:true如果不开启映射在使用BaseMapper和Iservice封装的方法时会报错如果在Mapper.xml文件中自......
  • 【SpringBoot学习】4、SpringBoot 配置本地资源映射路径已解决
    springboot配置本地资源映射路径需要配置一下映射资源位置,当时springboot1.x和spring波特2.x的配置方法不同,这里就分开记录一下配置过程。1、springboot1.x配置@ConfigurationpublicclassMyWebMvcConfigurerAdapterextendsWebMvcConfigurerAdapter{@Overri......
  • nginx 常用功能之map映射
    nginx常用功能之map映射(本文背景:获取url不用的查询参数返回对应的数据)环境需求:现有url访问地址https://www.xxxxxx.com/page?account=xxxxx获取account传参不同的参数需要返回不同的文件内容一、先上配置项map$arg_account$json_file{default/default_null.json;user......
  • win10 ctrl+space 快捷键冲突问题
    WindowsRegistryEditorVersion5.00[HKEY_USERS\.DEFAULT\ControlPanel\InputMethod\HotKeys\00000070]"KeyModifiers"=hex:00,c0,00,00"TargetIME"=hex:00,00,00,00"VirtualKey"=hex:ff,00,00,00[HKEY_USERS\.DEFAULT\......