2014-03-01 55 views
1

在我的配置中,我有兩個在線IMAP帳戶,分別爲AB。 我的簡化的配置文件看起來像這樣:IMAP帳戶切換後郵箱目錄未更改

## Account A settings 
source ~/.mutt/a/config 
folder-hook 'a.com' 'source ~/.mutt/a/config' 

## Account B settings 
folder-hook 'b.com' 'source ~/.mutt/b/config' 

macro index <f2> '<sync-mailbox><enter-command>source ~/.mutt/a/config<enter><change-folder>!<enter>' 
macro index <f3> '<sync-mailbox><enter-command>source ~/.mutt/b/config<enter><change-folder>!<enter>' 

兩個帳戶的配置文件是類似的,看起來像這樣:

set imap_user = usera 
set imap_pass = userasecret 
unset folder 
set folder = "imaps://mail.a.com/" 
set spoolfile = "+INBOX" 
mailboxes "+INBOX" 

set imap_user = userb 
set imap_pass = userbsecret 
unset folder 
set folder = "imaps://mail.b.com/" 
set spoolfile = "+INBOX" 
mailboxes "+INBOX" 

我可以用F2帳戶之間進行切換nad F3鍵,但問題是當我嘗試更改郵箱時。在開始時(即在使用F-key之前),按c?會給我提供可用IMAP文件夾的列表。但是,當我切換到第二個帳戶時 - 通過按F3 - 然後嘗試列出IMAP文件夾時出現錯誤。 Mutt嘗試從第一臺服務器獲取文件夾:imaps://mail.a.com,並由於憑據錯誤而失敗(因爲imap_user已設置爲userb)。我必須等待一會兒,然後再次按c並將目錄名稱更改爲當前的folder變量值。完成此操作後,我可以再次列出文件夾。直到下一個開關...

爲什麼在更改文件夾後mutt會與舊的目錄路徑粘在一起,以及如何更改此行爲?

回答

3

我不知道,如果你還在乎,但我發現這個解決方案:

使用上述快捷鍵(或側邊欄),你會發現,改變文件夾(在默認情況下C)不上下文,即它不會列出當前郵箱的文件夾,而是上次更改文件夾時使用的那個文件夾的文件夾。爲了使行爲更加上下文,訣竅是對當前郵箱按=或+。你可以用下面的宏自動完成:

macro index 'c' '<change-folder>?<change-dir><home>^K=<enter>' 

請參閱網站:https://wiki.archlinux.org/index.php/Mutt