2009-05-21 72 views
1

讓我們來看看,如果我能在計算器達到EmacsW32用戶。EmacsW32重命名緩衝器與舊的Windows縮短文件名

我剛從http://ourcomments.org/Emacs/EmacsW32.html

安裝EmacsW32的補丁版本,我覺得很高興,txt文件關聯問心無愧Emacs的,所以,當你點擊一個,emacsclient打開它的運行實例Emacs的。

問題是,由於某種原因,緩衝區重命名爲短文件名舊式的,因此,舉例來說,使用文件「的活動,2008.txt」緩衝區被更名爲「ACTIV〜1.TXT」 ,我不喜歡。

我怎麼EmacsW32不重命名緩衝區,並使用整個文件名作爲緩衝區名呢?

+1

我是EmacsW32用戶,我無法重現這一點,我得到緩衝區的整個文件名。我的版本是LENNART-69DE564(補丁)的2007-05-23的GNU Emacs 22.0.990.1(i386-mingw-nt5.1.2600),EmacsW32版本是1.54。也許你的.emacs中的某些東西導致了這種情況? – 2009-05-21 14:43:25

回答

1

解決。

問題不在於emacs,而在於Windows在文件類型與註冊表關聯時運行程序的方式。

在我的註冊表,我不得不爲txt文件與Emacs的關聯的密鑰將此值:

C:\emacs-23.0.91.1\Emacs\bin\emacsclientw.exe -n "%1" 

的問題是1%,這是一個短文件名替換。

根據該消息http://lists.gnu.org/archive/html/help-emacs-windows/2009-05/msg00022.html

%L is long file names. 

%1 is long file names IF 
* Explorer can find the exe file (it does not look very hard) 
AND 
* The file header says it is Win 95 aware Win16 exe, or 
* It is a 32 bit program 

Else %1 will be a short name. 

的解決方案是在發生在REG鍵使用的%1%L

1

伊克,吸住。

爲什麼不直接使用自帶的標準Windows emacs distribution的emacsclientw?

它確實有點問題,如果Emacs還沒有運行,你會得到一個惱人的「無錯誤」錯誤框,但任何真正的emacs用戶無論如何都會首先啓動emacs。 :-)