2012-10-02 33 views
4

爲了將<S-dead-grave>命令與插入字符`(反引號)相關聯,我必須在我的.emacs文件中寫入什麼內容。在Emacs中將#關聯到<S-dead-grave>

我在Unix上運行GNU Emacs 23.1.1。

背景:我通過在Windows終端服務器上運行Java(Oracle SGD)的shell運行Unix。我在任一系統上都沒有管理員權限。我的鍵盤設置爲挪威語。 Java中顯然存在一些錯誤,導致它對「死」字(如挪威語鍵盤上的`)產生奇怪的影響,並且我還沒有成功讓我的管理員修復此問題。

當我在Emacs中點擊`後跟一個空格(就像插入該字符的方式),我收到錯誤信息<S-dead-grave> is undefined。因此,我相信如果我可以定義這一點,我將能夠解決這個錯誤。

在此設置中,我也很滿意替代解決方法。

+1

如果您在終端上輸入了'沒有emacs的字符,會發生什麼? –

+0

好問題。在shell中,以及在Stata的不太可用的內置編輯器中,似乎\'+空格被解釋爲\「。所以\'+ space = nothing,''+ space + space = \',''+ a =à,''+ space + a =à。在Emacs中情況並非如此,可能是因爲在發生其他事情之前攔截了空格。 –

回答

5

我不完全清楚你是在GUI模式下還是在文本模式下(在終端模擬器中)運行Emacs,但是根據你對Emacs行爲的描述,我猜它運行在GUI模式下(可能通過一些X服務器你的Windows機器?)。

奇怪的是,你會得到S-dead-grave事件,所以它可能是你的GUI環境(你的X服務器的配置?)中的一個錯誤。

但在任何情況下

(global-set-key [S-dead-grave] "`") 

可能讓你解決問題。

+0

謝謝!這就像一個魅力。是的,它在GUI模式下,SGD shell具有某種X服務器(我認爲它運行在Java中)。在另一臺可以用不同的X服務器登錄到同一個Unix系統的計算機上,我沒有這個問題(我沒有管理員權限來安裝在這個Windows系統中)。我可能會添加一個關於尋找一個「便攜式」X客戶端來安裝的新問題,這個問題有幾個小錯誤... –

2

我有同樣的問題和this bug report discussion報告的解決方案:

XMODIFIERS= emacs 

我沒有把它放到我的.bashrc測試,它的作品(含XMODIFIERS= emacs && emacs

這顯然是沒有必要使用Emacs 24.4後,但我使用emacs 24.3.1並仍然需要它。

+1

這適用於23.4.1。 –

相關問題