Linux终端鼠标报告 - 基本问题

时间:2013-10-28 17:39:57

标签: linux bash terminal mouse

我使用shell脚本制作了一个简单的,鼠标控制的任务栏。它工作得很好,并使用rxvt-unicode来制作“图形”。

不幸的是,我将这个脚本从我的上网本移到我的笔记本电脑上,当我改变终端窗口的大小并更新代码时,我发现我的鼠标报告在第95列之后停止工作(它总是返回!点击超过95)的地方。

我发现在第95列鼠标报告存在“限制”。我的程序现在需要123个列,在它发生之前适合95以下。

我查找了问题,并且只找到了一个对95列限制的引用。我发现的大多数实际上都提到了223列限制。如果我有223限制,我会完全没问题,但我不明白如何切换它。

基本上,我不太了解应用我在谷歌上阅读的内容的问题。通常我可以自己钓鱼,但这个问题让我感到高兴。

我正在使用本指南告诉我要使用的转义序列(我选择了X10,单击,报告或转义序列\ 033 [?9h]。 how to get MouseMove and MouseClick in bash?

我发现这提到了95列限制,但对它没有任何意义: Emacs, unicode, xterm mouse escape sequences, and wide terminals

我正在使用小代码片段,或多或少基于此: http://www.imbe.net/bizen?Linux/Mouse_In_A_Terminal

我发现其他没有减去223的其他人,而是255.我的代码似乎没有受到这种变化的影响。

1 个答案:

答案 0 :(得分:1)

我已经解决了我的问题。我从未理解的是,某些鼠标报告设置可以同时处于活动状态。当\ 033 [?1015h和\ 033 [?9h]合并时,我开始让鼠标报告超过95分。 1015适用于urxvt。我相信在xterm中使用1005h。