2013-02-16 102 views
1

我有~/.emacs下我的emacs配置文件只有一個聲明:的Emacs elisp的配置文件不承認默認目錄

(setq default-directory "/var/www/")

我想要做的是C-x C-f並直接轉到我的Apache目錄。但我試過使用C-x C-f,我的當前目錄是HOME

該文件被加載,因爲我使用了這個:(shell)並且shell被打開。任何人都知道我的錯誤在哪裏?我只想在htdocs中設置啓動目錄。

回答

0

解決了它,這是一個非常奇怪的問題。

每次我嘗試打開由默認的緩衝區(*GNU Emacs*)的文件它改變了默認目錄~/,但是當我嘗試從另一個緩衝區打開一個文件,它會打開到我在變量中指定的一個。

3

default-directory不符合你的想法。 C-H V 默認目錄

default-directory is a variable defined in `buffer.c'. 
Its value is "/" 
Local in buffer stackoverflow.com/questions/14914353; global value is nil 

    Automatically becomes buffer-local when set in any fashion. 
    This variable is safe as a file local variable if its value 
    satisfies the predicate `stringp'. 

Documentation: 
Name of default directory of current buffer. Should end with slash. 
To interactively change the default directory, use command `cd'. 

這是一個緩衝器本地(即緩衝區特定)變量,這取決於哪個緩衝器是當前活動的意思它的值是 不同。所以當你認爲你已經將它設置爲 「/ var/www」時,你只需訪問該目錄中已有的文件即可。

如果您想從「/ var/www」打開文件,您需要製作自己的命令 ,將「/ var/www」綁定到default-directory

+0

無關的問題:您是否從Emacs瀏覽器中的stackoverflow?有沒有一種模式?哪一個請? – 2013-02-17 13:34:10

+0

不,我編輯我的答案在Emacs中使用鑲嵌「Edit With Emacs」插件。 – 2013-02-17 15:37:02

1

以防萬一有人不知道如何做到這一點:

由於@Pacha說的話,Emacs啓動時,歡迎屏幕顯示出來,它會因此改變你的工作目錄到command-line-default-directory

,例如,如果您希望您的默認目錄爲「〜/」,請將其添加到您的.emacs中,並且您應該正常運行。

(setq command-line-default-directory "~/") 
(setq default-directory "~/")