2013-03-01 61 views
5

我是Emacs用戶,正在查看Sublime Text 2.我重新映射了默認的Emacs鍵綁定,並習慣於使用Alt + i,Alt + k ,Alt + j,Alt + l用於上,下,左和右。我沒有任何問題在Sublime Text中重新映射這些鍵。停止Alt鍵在Sublime Text 2中調出菜單

問題是,無論何時我使用這些鍵瀏覽菜單,即使我已將其隱藏在分散注意力模式下,也會彈出。我想停止按Alt鍵時出現的菜單。

如果可能,我想重新映射顯示菜單到其他東西(如Alt +空格)的鍵。否則,我想禁用與Alt鍵完全相同的菜單(並且使用熱鍵和控制檯來處理所有事情)。

我在Windows XP上運行Sublime Text。

+0

您是否考慮使用autohotkey? – 2013-03-01 21:05:32

+0

我用'LAlt :: return'嘗試了autohotkey,但是完全禁用了Alt鍵,這就停止了所有Alt鍵的工作。 – Omnimike 2013-03-02 05:10:31

回答

4

我遇到的問題是一個關鍵,我重新綁定衝突的菜單上的記憶。具體來說,我有Alt +我映射到某些東西,同時它也是Find的助記符。

要解決這個問題,我從菜單中刪除了助記符,這會停止顯示菜單。要做到這一點,前往首選項 - >瀏覽軟件包並打開默認/ Main.sublime菜單文件。在那裏,你可以刪除所有的「助記符」:「*」,行以擺脫助記符。

按alt鍵仍會彈出菜單。如果你想關閉這一點,你可以使用下面的腳本的AutoHotkey(感謝阿明):

SetTitleMatchMode RegEx 
#IfWinActive .*Sublime Text 2.* 
    LAlt & esc::return ;This can be any key, not just escape. It's needed to get AutoHotkey to treat Alt as a prefix key. 
    ~LAlt::return 
#IfWinActive 

這隻停止左Alt造就了菜單,右Alt仍然會照常工作。

+5

無論你有什麼想法,我們如何用Sublime Text 3做到這一點,這件血腥的事情讓我的生活變得很糟糕。任何幫助都會很棒。 – manoj2411 2015-08-18 12:18:03

+0

Sublime Text 3的窗口類名是«PX_WINDOW_CLASS»,但是在修改腳本時我無法使其工作。 – onirix 2016-07-29 11:14:47

1

如果您使用Autohotkey,則可以嘗試使用#IfWinActive,只有在某個窗口處於活動狀態時纔會應用熱鍵。 然後您的代碼會是這個樣子

#IfWinActive, Emacs ; the name of the window 
~LAlt::return ;this enables the LAlt + hotkey action but disables LAlt 
LAlt & space::tooltip,do stuff 
... 
#IfWinActive ;end