Небольшая CLI утилита которая преобразует email (RFC 5322) переданный в STDIN в формат YAML (RFC 9512).
|
|
||
|---|---|---|
| .forgejo/workflows | ||
| .golangci.yml | ||
| email.go | ||
| go.mod | ||
| go.sum | ||
| LICENSE | ||
| main.go | ||
| out.yaml | ||
| output.go | ||
| README.md | ||
| test.eml | ||
Email2YAML
Небольшая CLI утилита которая преобразует email (RFC 5322) переданный в STDIN в формат YAML (RFC 9512).
Выходные поля
from- email отправителяfrom_name- имя отправителя. Парсится из адреса. Если не передано, то берётся первая часть адреса (до @), разбивается по спецсимволам и каждое слово пишется с заглавной буквыfrom_hash- md5 от email. Может применяться для создания аватара с помощью Gravatarsubject- Тема письмаbody- Тело письма без подписиbody_signature- Подпись в письме если есть (отделяется от тела по\n-- \n)
Параметры
Usage of email2yaml:
-array
Is output YAML is array item.
-base_indent int
Base indenting of output YAML.
-indent int
Indenting of output YAML. (default 2)
-verify_sender
Compare From header and SENDER env.
array- если передан, то выходной YAML документ будет элементом массива (т.е. с-вначале и с отступом для остальных полей)base_indent- если передан, то в каждую строку будет добавлено столько пробелов, сколько указано в параметре (по умолчанию, 0)indent- количество пробелов для отступов внутри документа (по умолчанию, 2)verify_sender- если передано, то сравнивает отправителя из поляFromи переданной переменной окруженияSENDER(например, подставляемой MTA Exim4)
Пример использования
cat test.eml| SENDER=i@neonxp.ru email2yaml -array -verify_sender >> emails.yaml
cat emails.yaml
- from: i@neonxp.ru
from_name: Alexander NeonXP Kiryukhin
from_hash: 5fa017c21957fbbc9786758be021915f
subject: test subject
body: "Hello, world!\n-- \nSecond line"
body_signature: |-
Alexander NeonXP Kiryukhin
9E49 0BBE 2F1F 82C9 15F8 F440 96BF 11A6 7E3C 75F6
Лицензия
Этот проект лицензирован в соответствии с GNU General Public License версии 3 (GPLv3). Подробности смотрите в файле LICENSE.
GNU GENERAL PUBLIC LICENSE
Version 3, 29 June 2007
Copyright (C) 2026 Alexander NeonXP Kiryukhin <i@neonxp.ru>
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.