如何在 Zathura 中重新映射现有的键绑定

如何在 Zathura 中重新映射现有的键绑定

阅读了 for the map 命令后man zathurarc,我仍然不知道如何重新映射现有的键绑定。我所说的“重新映射”是指替换给定操作的当前键映射。

问题:

<C-Button1>(Control + 单击) 当前映射到同步纺织zathurarc向后搜索,在我的配置文件中进行以下设置:

set dbus-service true # Already the default
set synctex true      # Already the default
set synctex-editor-command "gvim --servername GVIMTEX --remote +%{line} %{input}"

但是,我不喜欢使用鼠标,所以我想将synctex动作映射到,比如说<C-s>

试炼

我在我的 zathurarc 中尝试了以下行:

map <C-s> feedkeys "<C-Button1>"

它不起作用并open n1>在输入栏中显示“”。

另类想法

我还可以映射<C-s>到synctex的shortcut_function,只要我知道它是什么......

投诉

我发现zathura文档中的信息太少了。例如我想知道:

  1. 如何列出全部当前的键绑定(这将有助于不覆盖当前的映射......)
  2. 如何使用该feedkeys函数,因为它在我的文档中找不到,而且我不知道它是从哪个版本可用的(我有 Ubuntu 16.04 和 zathura 0.3.5)。
  3. 用于synctex的shortcut_function是什么?有吗?

谁能告诉我如何使用<C-s>而不是<C-Button1>

答案1

参加聚会有点晚了,但是使用 xdotool 进行 ctrl 单击对我来说完成了这项工作。我写了这个简短的 bash 脚本(也可以在这里找到zathura_backward_search.sh):

#!/bin/bash

ACTIVEWINDOW=$(xdotool getactivewindow)
eval $(xdotool getwindowgeometry --shell $ACTIVEWINDOW)

HALF_WIDTH="$(($WIDTH / 2 + 10))"
HALF_HEIGHT="$(($HEIGHT / 2))"

xdotool mousemove --window $ACTIVEWINDOW $HALF_WIDTH $HALF_HEIGHT keydown ctrl click 1 keyup ctrl

将其放在您的路径上,chmod +x然后使用在 zathura 中执行它:exec zathura_backward_search.sh。或者,您可以<C-s>map <C-s> exec ctrl_click_center_window.sh您的zathurarc.它有点慢(并且可能可以变得更快),但仍然有效。

相关内容