Zsh

Neomutt 執行命令以在宏按鍵上附加文件

  • September 30, 2020

我正在嘗試使用 ranger 將文件附加到 NeoMutt 中的郵件。到目前為止我所擁有的是

  1. 執行 ranger 以選擇要附加的文件並將其名稱保存/tmp/muttattach
ranger --choosefile=/tmp/muttattach
  1. 定義要讀取的宏muttattach
macro compose V "<attach-file>`cat /tmp/muttattach`<enter>"

問題是,宏只在啟動時執行。當我在撰寫螢幕中按下V時,它不會更新文件名。

我也嘗試過直接從 mutt 執行 ranger,<pipe-message>就像他們在這裡下載附件一樣,但沒有設法讓它在 zsh 上執行。

創建一個配置文件,例如**~/.neomutt/attach.macro**只包含宏定義:

macro compose W \
"<attach-file>`cat /tmp/muttattach`<enter>" \
"attach file"

定義另一個執行以下操作的宏:

  1. 獲取上面的配置文件**~/.neomutt/attach.macro**
  2. 執行命令push W(綁定到新定義的宏)
macro compose V \
"<enter-command>source ~/.neomutt/attach.macro<enter>\
<enter-command>push W<enter>" \
"redefine macro and attach"

因此,按下V將再次獲取配置文件,該文件使用 /tmp/muttattach 的新內容重新定義宏。並執行它。

引用自:https://unix.stackexchange.com/questions/612134