Browsed by
分类:vim

将HHKB的左Alt改为Control

将HHKB的左Alt改为Control

HHKB 到手, 经过简单的通过跳线开关修改键位配置之后, 发现 Control的位置很是反! 人! 类! (没错我就是说给Emacs党听的233)  作为一个长期用terminator Control是很常用的按键, 因此决定对键盘按键映射进行修改

首先 我先把 左Alt->Fn的这个跳线开关关闭了, 不然 keyscan的时候读不出来(Fn没有键盘码不知道为什么, 也许是因为我在X 下键盘码被转义了) 然后 , 运行 xev 这个程序 , xev可以给出按键对应的键盘码, 查看了一下HHKB左Alt的键盘码, 得到如下信息

使用 xmodmap对键位映射进行修改 先使用了这个指令 :

xmodmap -e “keycode 102 = Control_L” 再次查看 xev 发现果然修改了, 信息变为了这样

不过当我press 修改后的Alt_L之后, 发现和我按Control的结果是不一样的 , 没法用Control C 没法 Control Tab , 说明修改keysym是不够的 因而转而修改 key modifier, 首先查看了已有的modifiers

xmodmap -pm 发现 Control_L 这个按键在 control这个modifier 组里,  因此将 Muhenkan(keycode 102, keysym 0xff22) 加入到 control 这个modifier组里

xmodmap -e “add control = 0xff22”

再次尝试, 这次成功了

为了保证以后使用不用每次输入这个指令 , 在HOME下新建.Xmodmap文件,将expression填进去

add control = 0xff22

再去配置一下 ~/.xinitrc 设置 xmodmap开启Xserver就会启动 即可~

配置vim使其拥有自动添加程序文件头功能

配置vim使其拥有自动添加程序文件头功能

在Coding的时候 (for example C++) 大家肯定希望能够编辑器直接自动完成所有程序都需要的部分代码 比如 这一部分

甚至还想要把程序的创建时间和创建人以及文件名的注释头也自动完成 ,vim的话可以轻松的实现这个功能

 

vim这个文本编辑器支持很多强大的功能及插件 ,我们可以通过修改.vimrc文件来实现很多我们想要的功能

vimrc可以配置在多个地方,可以配置在你自己home的目录下 ,也可以配置在 /etc/目录下 前者的配置是局部配置 ,仅对你一人有效, 后者的配置是全局配置 ,对使用这个电脑的所有人有效,不过要注意的是,如果你在自己的home下配置了.vimrc那么你的vim的配置就是你home目录下的.vimrc而不是全局的,只有当home下没有的时候 才会去找全局的 即/etc/下的.vimrc这个功能也很合理 ,自己可以对自己使用的vim进行个性化配置

下面说明如何配置自动添加如上所示的头:

先上配置文件

这段配置文件其实很好理解 只要熟悉一点vim的人都能明白

这一句的作用是 如果用户新建了后缀名为 cpp c h java sh 的文档 ,那么就调用SetTitle函数

然后接下来是SetTitle函数主体:

一个判断结构判断是什么类型的文件 如果是sh的话 执行这一段

不是sh的话 执行下面一段

由于本人现在还不用java 写java页不准备用 vim,就摸人else就代表文件类型为C或Cpp了 因此我添加了这样的注释

这段注释中 call append是调用append函数  首先是添加的行号,line(“.”)+0  1 2 3 … 然后是添加的字符串 这里有两个地方用了自动的完成  ,一个是 filename  我使用

就可以获取文件名
建立时间也是同理

然后 下面那一段就是自动添加的一些宏和代码了 和上面是同样的道理  如下:

只要注意一下append函数调用的时候行号要修改就好了 其它的自己想自动添加什么就写什么

然后最后 把光标移到当前文件的末尾

这样就可以了 实际上就和我们在vim的normal模式下 点击G是一个效果,直观上代码也是这样的

 

把这个文件写好后 ,保存为.vimrc保存在 ~/目录下 (即你自己的家目录) 下次再启动vim时 如果输入这样的指令:

vim aaa.cpp

就会生成一个类似上面的头出来了~

就这么简单~