Установить значение конфигурации Mutt на основе выходных данных сценария?
Я нашел ошибку в Mutt, но хотел бы найти обходной путь, пока ее не исправят.
~
(mark-message
функция) должна назначить ярлык (т. е. макрос), чтобы пометить сообщение, чтобы вы могли перейти к нему позже. Например, если вы пометите сообщение с помощью ярлыка d
Mutt автоматически установит следующий макрос:
macro index "'d" "<search>~i '[Message-ID Header]'" "message hotkey"
так что вы можете ударить 'd
чтобы вернуться к сообщению, которое вы отметили.
Проблема в том, что заголовок Message-ID интерпретируется как регулярное выражение, и иногда заголовки сообщений, которые я получаю, содержат специальные символы регулярного выражения, например +
, (См. Пример ниже.)
<CAMMr2knNGWssaFdp-+e4u9pWfBQ4DCHNkH9FUrPoXqEXAN+sNg@mail.gmail.com>
Если это так, то Mutt не может найти сообщение, и поэтому макрос не работает, а просто выдает ошибку Not found.
,
Решением было бы убрать эти специальные символы с обратной косой черты, но я не верю, что есть способ сделать это изначально в дураках. То, что я хотел бы сделать, это в основном построить свою собственную замену mark-message
функция. Я думаю, мне нужно передать данное сообщение в сценарий, grep
а также cut
извлечь заголовок идентификатора сообщения, а затем sed
убирать любые специальные символы.
Проблема заключается в попытке передать эту строку в Mutt: я знаю, что вы можете использовать переменные окружения в muttrc
, но я считаю, что они оцениваются при назначении, а не при исполнении. Есть ли способ вернуть строку из скрипта bash обратно в конфигурацию mutt?