![Mutt/Neomutt:自定义命令/命名宏](https://linux22.com/image/1612387/Mutt%2FNeomutt%EF%BC%9A%E8%87%AA%E5%AE%9A%E4%B9%89%E5%91%BD%E4%BB%A4%2F%E5%91%BD%E5%90%8D%E5%AE%8F.png)
我知道 mutt 允许我定义自定义键盘宏。但是是否可以定义自定义函数(可以说是未绑定的宏)并通过 mutt 的命令行执行。例如“:custom_command”
希望有人可以帮忙。
答案1
您不能在 mutt/neomutt 中创建自定义命令。
但有一个修补David Champion (dgc) 为 mutt 调用了 unbind。我不记得它是否也支持 unmacro。Neomutt 原生支持 unbind 和 unmacro 命令,这在很大程度上受到了 dgc 补丁的启发。
要更改宏和绑定,我将创建不同的配置文件,并将其绑定到某些键。比如说 F11 和 F12。然后让它们获取这些配置文件。
F11 将解除与 F12 绑定的每个键和宏的绑定和取消宏。反之亦然。
答案2
这并非您想要的一切,但是...
您可以获取一个文件。该文件可以分配给一个变量。注意空格。
:source $my_custom_command
:source "$my_executable ARGS"|
注意:source EXECUTABLE|
导致 EXECUTABLE 的标准输出(或任何其他可由 sh 解释的命令)被 neomutt 解析,就像 rc 配置文件一样。
如果您知道当前目录,您可以直接输入文件名。
:source FILE_NAME
:source ./FILE_NAME|
:source "./FILE_NAME ARGS"|
注意:chmod +x FILE_NAME
如果您使用./FILE_NAME|
你可以做任何事。