Emacs. Почта. Mu4e
2020-12-24
·
5 мин. для прочтения
Mu4e — режим для чтения почты в Emacs.
Содержание
1 Установка
- Клиент mu4e является интерфейсом к программе индексирования почты mu (URL: https://www.djcbsoftware.nl/code/mu/).
- Поэтому вначале нужно установить эту программу.
1.1 Gentoo
USE="emacs" emerge -v mu
2 Структура каталогов
Почтовые ящики будут находиться в каталоге ~/Maildir.
3 Получение почты
Для почты mu поддерживает формат maildir1. Для скачивания почты можно использовать разные программы.
- Для внешнего сервера IMAP или POP можно использовать такие инструменты, как getmail, fetchmail, offlineimap, isync, чтобы загрузить свои сообщения в формате maildir.
- При использовании локального почтового сервера (postfix, qmail) настраивается сохранение сообщений в формате maildir.
3.1 Синхронизация mbsync
- Для синхронизации будем использовать программу mbsync (см. Почта. Синхронизация. mbsync).
3.2 Инициализация
- Перед использованием необходимо инициализировать базу данных писем:
mu init --maildir=~/Maildir \ --my-address=account1@domain1 \ --my-address=account2@domain2 - Можно это выполнить скриптом:
#!/bin/sh list_imap=$(grep -e "^IMAPAccount" ~/.config/isyncrc | cut -d" " -f2 | xargs -I {} -n 1 echo "--personal-address="{}) mu init --maildir=~/Maildir $list_imap - Я использую скрипт, поскольку у меня кэш находится на временной файловой системе, и не сохраняется при перезагрузке.
3.3 Индексирование почты
- После загрузки писем необходимо инициализировать базу данных
muи про индексировать электрические письма:mu index
4 Сочетания клавиш
4.1 Передвижение по сообщениям
- Работают, когда Вы находитесь в режиме просмотра сообщения.
| Клавиши | Описание |
|---|---|
n, p | просмотреть следующее, предыдущее сообщение |
], [ | перейти к следующему, предыдущему непрочитанному сообщению |
y | переключиться на список заголовков (и обратно) |
RET | прокрутить вниз |
M-RET | открыть URL или вложение (в точке курсора) |
SPC | прокрутить вниз, если конец сообщения, то перейти к следующему |
S-SPC | прокрутить вверх |
4.2 Поиск
| Клавиши | Описание |
|---|---|
s | поиск |
S | редактировать последний запрос |
/ | сузить поиск |
b | поиск по закладке |
B | редактировать закладку перед поиском |
j | перейти в конкретный почтовый каталог |
M-left | предыдущий запрос |
M-right | следующий запрос |
4.3 Маркировка сообщений
| Клавиши | Описание |
|---|---|
d | отметка для отправки в корзину |
= | отметка для снятия отметки об отправке в корзину |
DEL, D | отметка для полного удаления |
m | отметка для отправки в другую почтовую папку |
r | отметка для архивирования |
+, - | отметка для установки/снятия флага |
u | снять отметку с сообщения |
U | снять отметку со всех сообщений |
% | отметка на основе регулярного выражения |
T, t | отметить всю ветку/подветку |
<insert>, * | отметить для отложенного действия |
# | выполнить с отметкой для отложенного действия |
x | выполнить действие для отмеченных сообщений |
4.4 Создание сообщения
| Клавиши | Описание |
|---|---|
R, F, C | ответить/переслать/написать |
E | редактировать (для черновиков сообщений) |
4.5 Действия
| Клавиши | Описание |
|---|---|
g | перейти к пронумерованному URL (используя browse-url) |
<mouse-1> на URL | перейти к пронумерованному URL (используя browse-url) |
M-RET на URL | перейти к пронумерованному URL (используя browse-url) |
C-u g | посещение нескольких URL-адресов |
f | загрузить пронумерованный URL |
C-u f | загрузить несколько URL-адресов |
k | сохранить пронумерованный URL-адрес в буфер |
C-u k | сохранить несколько URL-адресов |
e | сохранить одно или несколько вложений (запрашивается номер) |
<mouse-2> на вложении | сохранить одно или несколько вложений (запрашивается номер) |
S-RET на вложении | сохранить одно или несколько вложений (запрашивается номер) |
C-u e | выбрать вложения из списка для сохранения |
С-SPC | пометить вложение в списке |
a | выполнить действие над сообщением |
A | выполнить действие над MIME-частями сообщения |
4.6 Разное
| Клавиши | Описание |
|---|---|
; | переключить контекст |
. | показать исходный вид сообщения. q — отключить исходный вид сообщения |
C-+, C-- | увеличить/уменьшить количество отображаемых заголовков |
H | подсказка (help) |
C-S-u | обновить почту и переиндексировать |
q | покунуть просмотр сообщений |
5 Интеграция
5.1 Создание сообщений
5.2 Интеграция с org-mode
5.2.1 Предварительная настройка
Подключаем библиотеку для связи с org:
(require 'mu4e-org)Следует активировать генерацию ссылок на почтовые сообщения:
(setq mu4e-support-org t)- Это значение задано по умолчанию.
Можно захватывать ссылки для того, чтобы добавить сообщения электронной почты в свой список дел.
Для захвата ссылок используется функция
mu4e-org-store-and-capture.
5.2.2 Шаблон для захвата
Можно добавить специальный шаблон захвата.
Для шаблонов захвата доступны следующие значения для mu4e:
Шаблон Описание %:date,%:date-timestamp,%d:date-timestamp-inactiveдата, отметки времени %:from,%:fromname,%:fromaddressотправитель, имя, адрес %:to,%:toname,%:toaddressполучатель, имя, адрес %:maildirпочтовый каталог для сообщения %:message-idидентификатор сообщения %:pathпуть в файловой системе %:subjectтема сообщения Примерный вид шаблона для захвата:
(add-to-list 'org-capture-templates '("M" "TODO from mail" entry (file org-default-notes-file) "* TODO %:fromname: %:subject %?\nDEADLINE: %(org-insert-time-stamp (org-read-date nil t \"+2d\"))\n%a\n\n%i"))- Сообщение добавляется в список дел и устанавливается крайний срок для его обработки в течение двух дней.
- Шаблон
%aдобавляет ссылку на письмо в mu4e. - Шаблон
%iдобавляет выделенный фрагмент письма.
5.2.3 Захват сообщения
- Можно задать комбинации клавиш для захвата:
(define-key mu4e-headers-mode-map (kbd "C-c c") 'mu4e-org-store-and-capture) (define-key mu4e-view-mode-map (kbd "C-c c") 'mu4e-org-store-and-capture) - Теперь при нажатии комбинации
C-c cпри просмотре сообщения или при просмотре списка сообщений запрашивается шаблон захвата и ссылка на письмо захватывается.
5.2.4 Копирование ссылки на сообщение
- В режиме просмотра сообщений (Message view) можно сохранить ссылку на конкретное сообщение:
M-x org-store-link. - В режиме просмотра списка сообщений (Headers view) выполнение
M-x org-store-link:- создаёт ссылку на запрос, если
mu4e-org-link-query-in-headers-modeне равенnil; - создаёт ссылку на конкретное сообщение, если
mu4e-org-link-query-in-headers-modeравенnil(по умолчанию). - Команда обычно привязана к
C-c l.
- создаёт ссылку на запрос, если
- Ссылку можно вставить командой
M-x org-insert-link(сочетание клавишC-c C-l).
5.2.5 Переход на письмо
- В режиме org вы можете перейти к сообщению, на которое указывает ссылка:
- с помощью
M-x org-scheme-open-linkв буфере повестки дня (agenda); - с помощью
M-x org-open-at-pointв другом месте.
- с помощью
- Оба действия обычно привязаны к
C-c C-o.
6 Дополнительные пакеты
6.1 Чтение писем
6.1.1 mu4e-views
- Пакет позволяет пользователю выбирать вариант просмотра электронных писем.
- Основной вариант использования — просмотр электронные письма с использованием окна
xwidgets.
Общая информация
- Репозиторий: https://github.com/lordpretzel/mu4e-views
- Пакет: https://melpa.org/#/mu4e-views