2009-07-24 64 views
10

當您按住「shift」並在Mac上用鼠標滾動時,它會將垂直滾動動作解釋爲水平滾動動作。這是我在linux上工作時最遺漏的功能,我很樂意把它帶到linux上(因爲我已經徹底查看了,而且沒有人似乎這樣做了)。我從哪裏開始製作Linux輸入黑客?

我希望這可以用某種運行時插件來完成,或者至少不需要我重新編譯我的其他所有應用程序,以利用它們的功能。我的問題是:那裏有哪些庫允許編寫這樣的插件?編寫某種腳本會很好,因爲它看起來不像那些複雜的功能,但如果需要的話,我可以用C和C++編寫代碼。

我已經研究過X解決方案,如XEvIE(已停產)和XTrap(同樣被放棄,似乎)。我現在很樂意僅限於GTK/GNOME,至少作爲一個概念證明。

如果這不能作爲一個插件來完成,那麼我應該怎樣處理這個開源項目(Xfree86?GNOME?別人?)來試圖獲得這個功能?

- 更新(有一個解決方案!):

安裝包 「xbindkeys」 和 「xautomation」。然後寫在你的〜/ .xbindkeysrc.scm文件中的以下內容:

 
; bind shift + vertical scroll to horizontal scroll events 
(xbindkey '(shift "b:4") "xte 'mouseclick 6'") 
(xbindkey '(shift "b:5") "xte 'mouseclick 7'") 

然後只需運行xbindkeys

回答

1

我不知道,但可以了evdev做這樣的事情。例如,當按下鼠標按鈕(向上/向下滾動也是按鈕)時,它可以模擬鍵盤按下。它可能會做水平滾動(可能與鍵盤左/右箭頭?)。

+0

謝謝!雖然不完全是解決方案,但搜索「evdev修飾符」讓我驚人地迅速找到了工作解決方案。 我結束了使用xbindkeys(從相同的包)和xte(從xautomation包)。我所需要的只是以下〜/ .xbindkeysrc.scm文件: ;綁定Shift +垂直滾動到水平滾動事件 (xbindkey'(shift「b:4」)「xte'mouseclick 6'」) (xbindkey'(shift「b:5」)「xte'mouseclick 7'」) 運行xbindkeys,並bob的你橫向滾動舅舅! 乾杯:D – gfxmonk 2009-07-24 03:35:45

0

僅供參考(至少在我的Kubuntu 12.4 LTS盒子上),它適用於KDE應用程序開箱即用的ALT +鼠標滾輪。

這也有道理,因爲ALT鍵修改所有的鼠標鍵(左鍵抓取窗口的任何地方,右邊的按鈕來調整邊界附近等)