X11
如何刪除特定的預設 xterm X11 翻譯?
我正在使用帶有一組預設翻譯的 xterm,如手冊頁中所列舉的那樣。我編輯文件的至
#augment
或翻譯;這按預期工作。#override``$XAPPLRESDIR/XTerm
但是,我找不到刪除特定預設翻譯的方法(並將事件傳遞給在 xterm 中執行的應用程序)。
具體來說,我希望將
Meta <Btn2Down>
事件傳遞給應用程序。xterm 預設翻譯將此綁定到clear-saved-lines()
操作預設鍵綁定
$$ … $$
元 <Btn2Down>:clear-saved-lines() \n\
我需要做什麼才能讓應用程序接收 Meta-Btn2Down 事件?
據我了解,X Toolkit 中沒有可以刪除翻譯的功能。您可以覆蓋或擴充,但不能選擇性地刪除轉換錶的一部分。
這就是在更新檔 #269中添加omitTranslation資源的原因之一。在該版本中,翻譯表被分解成更易於管理的部分,從而允許更好的定制:
在啟動時有選擇地省略 xterm 的預設翻譯的一個或多個部分。資源值是一個逗號分隔的關鍵字列表,可以縮寫為: “fullscreen”、“scroll-lock”、“shift-fonts”或“wheel-mouse”。Xterm 也可以辨識*“default”*,但忽略它會使程序無法使用,除非您在資源設置中提供類似的定義。
然而,同意 StéphaneChazelas 的觀點,目前尚不清楚如何有效地使用提議的更改,因為傳遞給應用程序的轉義序列是在 xterm 內部基於按鈕事件建構的。也許您可以使用字元串操作進行特殊翻譯。