博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
映 射 ALT 键
阅读量:2177 次
发布时间:2019-05-01

本文共 1011 字,大约阅读时间需要 3 分钟。

GUI 上,Vim 自己处理 Alt 键,所以用 ALT 键的映射应该总没有问题。但在终端上,Vim 得到字节的序列,它必须自己判断是不是按了 ALT 键。Vim 缺省假设按下 ALT 键等于置位输入字符的第 8 位。多数正常的终端如此工作,包括xterm、aterm 和 rxvt。假如你的 
映射不能工作,可能的原因是你的终端用在字符前加上 ESC 前缀的方法。但是你本来也可能在字符前输入 ESC,这时 Vim 就不知道到底发生了什么 (只能检查字符间的延迟,但这并不可靠)。在此文写作时,有些主流的终端,如 gnome-terminal 和 konsole,使用 ESC 前缀。没有办法让它们用置位第 8 位来代替。Xterm 缺省应该没有问题。Aterm 和 rxvt 启动时如果使用 "--meta8" 参数也可以如此。你也可以修改资源来达到目的:"metaSendsEscape"、"eightBitInput" 和 "eightBitOutput"。Linux 控制台上,可以用 "setmetamode" 命令切换此行为。记住不使用 ESC 前缀可能和其它程序发生冲突。确保你的 bash 把 "convert-meta" 选项设为 "on",确保 Meta 键盘绑定仍然工作 (这是缺省的 readline 行为,除非你的系统配置专门作了改变)。为此,你需要加入这行: set convert-meta on到你的 ~/.inputrc 文件。如果你新建此文件,可能想把: $include /etc/inputrc放在第一行,如果此文件在你的系统中存在的话。这样可以保持全局的选项设置。不过,这可能会使 umlaut 这样的特殊字符的输入有问题。这时,输入字符前用 CTRL-V 前导。要知道有报告说 convert-meta 使得 UTF-8 locale 的使用有问题。在 xterm 这样的终端里,可以在 "Main Options" 菜单里随时切换 "metaSendsEscape" 资源,或者终端上按 Ctrl-LeftClick 也可以;如果你需要给 Vim 之外的其它应用程序发送 ESC,这是最后应急的方法。

====

http://vimcdoc.sourceforge.net/doc/map.html#:map-alt-keys

转载地址:http://nlbkb.baihongyu.com/

你可能感兴趣的文章
mybatis 根据 数据库表 自动生成 实体
查看>>
win10将IE11兼容ie10
查看>>
checkbox设置字体颜色
查看>>
第一篇 HelloWorld.java重新学起
查看>>
ORACLE表空间扩张
查看>>
orcal 循环执行sql
查看>>
web.xml配置监听器,加载数据库信息配置文件ServletContextListener
查看>>
结构型模式之桥接模式(Bridge)
查看>>
行为型模式之状态模式(State)
查看>>
行为型模式之策略模式(Strategy)
查看>>
行为型模式之模板方法模式(TemplateMethod)
查看>>
行为型模式之访问者模式(Visitor)
查看>>
大小端详解
查看>>
source insight使用方法简介
查看>>
<stdarg.h>头文件的使用
查看>>
C++/C 宏定义(define)中# ## 的含义 宏拼接
查看>>
Git安装配置
查看>>
linux中fork()函数详解
查看>>
C语言字符、字符串操作偏僻函数总结
查看>>
Git的Patch功能
查看>>