代码之家  ›  专栏  ›  技术社区  ›  hyperpallium

在DECSET SGR 1006中,鼠标滚轮左/右的按钮代码是什么?

  •  0
  • hyperpallium  · 技术社区  · 6 年前

    DECSET 1006号

    当按钮为 按下,释放按钮时CSI<Cb;Cx;Cy m,其中:

    Each field is encoded as an ASCII integer.
    Cb is the button & keyboard modifiers.
    Cx is the column.
    Cy is the row.
    

    (来自 https://github.com/chromium/hterm/blob/master/doc/ControlSequences.md -我找了很多,但这是我最详细的描述。我可能找错了)

    什么是 Cb 左右滚轮的按钮修改器?

    上/下滚轮为64/65(即按钮1/2+64 xterm, wheel mice ),这些在vim中工作。滚轮左/右可能是66/67,但这在vim中不起作用。

    实际上,我并不需要正确的数字-只要那些 vim 接受。。。

    1 回复  |  直到 6 年前
        1
  •  1
  •   Thomas Dickey    6 年前

    滚轮 左/右 未被xterm检测到,因此未记录:没有预定义的 X事件 与此相对应(尽管可能对特定设备进行了一些创造性的使用)。如果你不确定, xev 对于显示事件很有用(尽管解释它们可能很困难)。

    关于 the link ,它似乎并不完整,除非您使用 hterm . 无论如何, it's moved .

    另一方面,xterm检测滚轮 上/下 按按钮4/5,使用 translations 资源(请参见 default key-bindings 在手册中)。名字 Btn4Up 等等,在X工具箱中被预先定义为与X事件相对应,并且(1987年在X11中引入)比它们用于鼠标轮编码的时间提前了大约10年。当它是 可能的 为了扩展这些事件,我还没有看到它已经完成(或者被vim使用过)。