簡體   English   中英

Windows上的GNU Emacs:無法應用初始化文件更改和鍵入波浪號

[英]GNU Emacs on Windows: unable to apply init file changes and to type tilde symbol

問題1

我正在嘗試使用init文件來自定義我的Emacs。

我找到了初始化文件的正確位置,並嘗試在其中寫入一些代碼來更改Emacs的行為。

在文檔示例之后,我編寫了以下代碼行

(setq fill-column 20)

然后保存文件。 但是當我啟動Emacs時,fill-column變量仍默認設置為70。 如果我即時修改該變量,Emacs會照常接受新值。

我想知道我是否缺少有關初始化文件的信息。 我應該明確告訴Emacs加載它​​嗎? 我是否應該包括其他代碼語句以使其能夠應用更改?

問題2

要在Emacs中引用您的HOME目錄,您必須在路徑的開頭使用波浪號,例如,當您想通過Emacs查找初始化文件的位置時,就像這樣

~/.emacs.d/init.el

但是,如果我的鍵盤上不存在該字符並且ALT代碼不起作用(因為ALT后跟數字被視為命令輸入),怎么可能鍵入呢?

(1)您的初始化文件是否實際執行? 查找方法如下:將語法錯誤的內容放入其中。 如果emacs抱怨啟​​動,則表明它正在執行文件-否則問題是您和emacs在主目錄的位置上存在分歧。

(2)我知道的每個Windows鍵盤布局都具有〜的綁定-它可能在AltGr組合上,在死鍵上等等,但是始終存在。 Windows系統控制面板可以幫助您驗證和選擇鍵盤布局。 但是,如果您確實沒有〜的綁定,則可以隨時輸入

<C-q> 1 7 6 / . e m a c s 

而是在emacs中使用(176是126的八進制,〜的ASCII碼)。

正如fill-column的文檔中明確指出的那樣,它通常是局部於緩沖區的,即在創建新緩沖區時將其設置為特定於緩沖區的值。 您正在設置緩沖區的填充列,該緩沖區在執行.emacs時處於活動狀態,但這是一個臨時緩沖區,在您對其進行檢查之前,該緩沖區已不存在。

為了實現您想要的(我認為),您可以使用(setq-default fill-column 20) ...盡管在一般情況下我不建議這樣做。 (可能只希望為一組特定的模式提供非常狹窄的定義;您可以使用相應的模式鈎子或使用advice工具為這些緩沖區設置此變量。)

您的其他問題已經得到回答,因此我將不予理that。 請不要在同一主題中發布多個問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM