Zathura现有按键绑定重映射求助:将Synctex反向搜索改至<C-s>
解决Zathura Synctex反向搜索按键重映射问题
我之前折腾Zathura按键绑定的时候也踩过类似的坑,其实问题大多出在语法细节或者动作名称的拼写错误上。你要把Synctex反向搜索从<C-Button1>(Ctrl+鼠标左键)改成<C-s>(Ctrl+s),按照下面的步骤来就能搞定:
1. 确认正确的动作名称
Zathura里Synctex反向搜索的官方动作名称是**synctex_reverse**,这是最容易写错的地方——别拼成synctex-reverse或者其他变体,必须用下划线分隔。
2. 编写正确的配置代码
打开你的Zathura配置文件~/.config/zathura/zathurarc,根据你的需求添加以下内容:
需求A:保留原有鼠标绑定,新增Ctrl+s快捷键
如果只是想多一个键盘快捷键,不用移除鼠标绑定,直接加这一行:
map <C-s> synctex_reverse
需求B:替换原有鼠标绑定,只保留Ctrl+s快捷键
如果想彻底替换掉鼠标触发的方式,先解除原有绑定,再添加新的:
# 解除Ctrl+鼠标左键的Synctex反向搜索绑定 unmap <C-Button1> # 将Synctex反向搜索绑定到Ctrl+s map <C-s> synctex_reverse
3. 关键注意事项
- 重启Zathura生效:修改配置文件后一定要完全关闭再重新打开Zathura,不然新的绑定不会生效。
- 模式指定(可选):默认情况下
map命令是针对normal模式的(也就是你平时阅读文档的模式),如果需要在其他模式(比如insert模式)使用,要加上模式参数,比如:map insert <C-s> synctex_reverse - 排查错误:如果配置后还是报错,打开终端启动Zathura,终端里会显示具体的错误提示——比如动作名称写错会提示
unknown command: synctex_reverse,按键序列写错会提示invalid key sequence,根据提示修正就行。
验证绑定是否生效
打开Zathura后,输入:bindings命令(按冒号进入命令模式,输入bindings回车),就能看到所有当前生效的按键绑定,确认<C-s>已经关联到synctex_reverse就大功告成了。
内容的提问来源于stack exchange,提问作者PlasmaBinturong
相关产品推荐
相关产品推荐

