为什么中间按钮映射到粘贴?

我爱上了Ubuntu,但我真的很讨厌这个function。 我是一名程序员,我多次介绍过一个bug,因为我无意中粘贴了一些不属于那里的代码。 调试时我仍然做恶梦。

我甚至无法在“鼠标和触摸板”窗口中将其关闭。

我认为这是一个奇怪的设计决定。 大多数人都希望鼠标中键可以映射到滚动。 这个决定背后的理由是什么?

鼠标中键被映射以粘贴当前的X选择,这通常是选择的任何文本。 发生这种情况是因为在gui的早期阶段,对于复制/粘贴应该如何工作存在分歧。 有些人希望有一个明确的命令将某些内容移动到复制缓冲区中,其他人则希望自动选择要移动的内容。 X11的制造商(当这些分歧在1980年代仍然很强劲的时候回来)决定实施两者并让双方都满意,将鼠标3粘贴到当前选择和ctrl-c / ctrl-v进行复制和粘贴今天更常见。

至于如何阻止它,不幸的事实是你不能没有修补X或一起禁用鼠标中键(这可以通过运行完成

xmodmap -e "pointer = 1 25 3 4 5 6 7 8 9" 

或者将行pointer = 1 25 3 4 5 6 7 8 9放在~/.xmodmap文件中。

我的建议是坚持下去。 X选择复制function在很多地方实际上非常有用,它是你很快就习惯使用的东西之一。

它早于Ubuntu和Debian,据我所知,这些操作系统中的设计决策缺乏相反的设计来改变历史X-Windows行为。

我知道我正在回答一个老问题,但我说的是80年代和90年代,所以我觉得这很合适。

另见Jeff Atwood在Codinghorror.com上的post。 (2008年,sheesh!昨天实际上。)

特别相关:

在UNIX和X Windows世界中,中间按钮也意味着粘贴自20世纪80年代以来的方式。 但是,我无法在Windows或Mac上找到任何此类行为的证据。 粘贴到文本区域不一定会与选项卡行为发生冲突,但是连接到单个按钮是一种奇怪的大杂烩行为。

实际上,我用我古老且仍在运行的PS / 2三键鼠标(没有滚轮;一个真正的三键鼠标)粘贴了这个块引用。

我最近订购了一款新型的老式3键鼠标。 这个是光学的并且具有USB连接器。 哇。 它大概是20美元,可以从许多在线供应商处获得。

看哪,HP DY651A:

3键鼠标的图片,大约2014年

我现在说买一个,所以你可以在它消失之前享受真正的X-Windows * nix体验。