~Rami ₪ MANUALS
רמי
SUBJECT: Abook: Консольная адресная книга и ее интеграция с почтовым клиентом Mutt
AUTHOR: Rami Rosenfeld
DATE: 04/04/24; upd. 10/04/24; 27/04/24
TIME: 17.00
LANG: ru, en
LICENSE: GNU FDL 1.3
TAGS: gnu, gnome, software, opensource, linux, system, man, manual, bash, privacy, security, rhel, centos, mate, xfce, lxde, spin, de, systemd, systemctl, terminal, console, mail, mutt, abook
Abook: Консольная адресная книга и ее интеграция с почтовым клиентом Mutt
INTRO
Еще одно удобство работы с почтовым клиентом Mutt - интеграция с консольной адресной книгой Abook. Последняя также может использоваться в качестве отдельной программы. Как и любое другое схожее приложение, Abook руководствуется общепринятыми стандартами, имеет множество полей для заполнения персональными данными контактов, отлично работает с конвертированием баз данных (их импортом/экспортом).
NOTE
- Установка
dnf install abook
- Пример конфигурационного файла
Я не стал пояснять опции, указанные ниже, т.к. abookrc прост для понимания и работает "out-of-box". Предлагаю просто скопировать текст в указанную директорию.
nano ~/.abook/abookrc
# Declare a few custom fields
field pager = Pager
field address_lines = Address, list
field birthday = Birthday, date
# Define how fields should be displayed in tabs
view CONTACT = name, email
view ADDRESS = address_lines, city, state, zip, country
view PHONE = phone, workphone, pager, mobile, fax
view OTHER = url, birthday
# Preserve any unknown field while loading an abook database
set preserve_fields=all
# Automatically save database on exit
set autosave=true
# Format of entries lines in list
set index_format=" {name:22} {email:40} {phone:12|workphone|mobile}"
# Show all email addresses in list
set show_all_emails=true
# Command used to start mutt
set mutt_command=mutt
# Return all email addresses to a mutt query
set mutt_return_all_emails=true
# Command used to print
set print_command=lpr
# Command used to start the web browser
set www_command=lynx
# Address style [eu|us|uk]
set address_style=us
# Use ASCII characters only
set use_ascii_only=false
# Prevent double entry
set add_email_prevent_duplicates=false
# Field to be used with "sort by field" command
set sort_field=nick
# Show cursor in main display
set show_cursor=false
Примечание: После установки, настройки и создания личной базы данных адресов, в целях исключения доступа к каталогу и файлам обязательно исполните команду:
chmod 700 -R ~/.abook
Примечание: Для показа дополнительных полей в общем окне программы внесите изменения в строку (цифра = длина в символах):
set index_format=" {name:22} {email:40} {phone:12|workphone|mobile}"
Например (отображение дня рождения):
set index_format=" {name:22} {email:40} {phone:12|workphone|mobile} {birthday:14}"
Примечание: В поле "set www_command=lynx" при необходимости измените консольный браузер lynx на другой.
- Интеграция с Mutt
Внесите в конфигурационный файл Mutt следующие строки:
nano ~/.mutt/muttrc
# Abook settnigs set query_command="abook --mutt-query '%s'" macro index a "|abook --add-email\n" 'add sender to abook' macro pager a "|abook --add-email\n" 'add sender to abook'
- Взаимодействие Mutt и Abook
1) Подбор адреса из базы данных Abook
Находясь в основном окне Mutt, нажмите на "Q" (в верхнем регистре) и наберите в консоли никнейм пользователя, связанный с необходимым вам E-mail'ом. В следующем окне вам будет предложено совпадение из базы данных Abook. Далее нажмите "m" для создания сообщения.
2) Добавление E-mail'a отправителя письма в адресную книгу Abook
В режиме просмотра письма нажмите на "a", и Mutt автоматически предложит внести отправителя/адрес в базу данных Abook.
3) Выбор адреса и прямое отправление E-mail из Abook
Почтовые сообщения возможно отправлять напрямую из рабочего окна Abook. Для этого выберите адресата из списка (базы данных) и нажмите на "m".
- Общие команды управления
? help q quit Q quit without saving P quit and output selected item(s) to stderr ^L refresh screen arrows / j,k scroll list enter view/edit item a add item r/del remove selected items M merge selected items (into top one) D duplicate item U remove duplicates space select item + select all - unselect all * invert selection w write database to disk l read database from disk C clear whole database i import database e export database p print database o open database s sort database S "surname sort" F sort by field (defined in configuration file) / search \ search next occurrence A move current item up Z move current item down m send mail with mutt v view URL with web browser
- Управление в режиме редактирования контакта
arrows/h,l change tab q quit to main screen 1 - 5 A - Z edit fields k or < previous item j or > next item r roll e-mail addresses up ESC-r roll e-mail addresses down u undo m send mail with mutt v view url with web browser
- Импорт/экспорт данных
Еще одна замечательная возможность abook - способность конвертировать разные адресные базы данных.
ПРИМЕР:
abook --convert --informat vcard --infile ~/contacts.vcf --outformat abook --outfile ~/.abook/addressbook_1
ВАЖНО: Я неоднократно предупреждал в различных руководствах: пользуйтесь исключительно латиницей (алфавитом en_US) при создании каталогов, файлов; это же касается имен/фамилий/никнеймов контактов в адресных книгах. Это исключит многие проблемы при конвертировании, импорте/экспорте и дальнейшем отображении данных в прикладных программах.
В случае возникновения затруднений попробуйте внести в .bashrc следующую строку:
export LC_CTYPE=ru_RU.UTF.8
Доступные форматы:
INPUT:
- abook — abook native format
- ldif — ldif / Netscape addressbook
- mutt — mutt alias
- pine — pine addressbook
- csv — comma separated values
- palmcsv — Palm comma separated values
- vcard — VCard addressbook
OUTPUT:
- abook — abook native format
- ldif — ldif / Netscape addressbook (.4ld)
- mutt — mutt alias
- html — html document
- pine — pine addressbook
- vcard — VCard addressbook
- csv — comma separated values
- palmcsv — Palm comma separated values
- elm — elm alias
- text — plain text
- spruce — Spruce address book
- wl — Wanderlust address book
- bsdcal — BSD calendar
- custom — Custom output format, see below
Дополнительно см.: man abook abookrc muttrc
🄯 Rami Rosenfeld, 2024. GNU FDL 1.3.