Читання пошти за допомогою Rmail – ЧАСТИНА 1

Rmail – це підсистема Emacs для читання і розміщення одержуваної вами пошти Rmail зберігає поштові повідомлення в файлах, званих Rmail-файлами Читання повідомлень в Rmail-файлі здійснюється в спеціальному основному режимі, режимі Rmail, який перевизначає більшість букв для запуску команд керування поштою Команда rmail-mode використовується для входу в режим Rmail, вона запускає пастку rmail-modehook, як звичайно але не виконуйте цю команду вручну, вона не може робити нічого суттєвого, якщо цей буфер не звертається до правильного Rmail-файлу

271  Основні поняття Rmail

При найпростішому використанні Rmail, у вас є один Rmail-файл ~ / RMAIL, в якому зберігається вся ваша пошта Цей файл називається первинним Rmail-файлом Команда Mx rmail зчитує ваш первинний Rmail-файл, вставляє в нього нову пошту з ваших вхідних файлів, відображає перший непрочитане повідомлення і дозволяє вам почати читання Мінлива rmail-file-name задає імя первинного Rmail-файла

Rmail використовує звуження, щоб приховати з Rmail-файла всі повідомлення, крім одного Показане повідомлення називається поточним Спеціальні команди режиму Rmail можуть здійснювати такі речі, як видалення поточного повідомлення, копіювання його в інший файл, посилка відповіді або переміщення до іншого повідомленням Ви також можете створити кілька Rmail-файлів і використовувати Rmail для обміну повідомленнями між ними

У межах Rmail-файла повідомлення розташовані послідовно в порядку надходження ви можете використовувати інші способи сортування Повідомленнями присвоюються послідовні цілі числа в якості їх номерів повідомлень Номер поточного повідомлення показується в рядку режиму Rmail, за ним йде загальне число повідомлень у файлі Ви можете перейти на повідомлення, задаючи його номер за допомогою ключа j (див Розділ 273 [Переміщення в Rmail], с 276)

Слідуючи звичайними правилами Emacs, зміни в Rmail-файлі стають постійними тільки після збереження цього файлу Ви можете здійснити це за допомогою команди s (rmail-save), яка також спершу викреслює видаляються повідомлення з файлу (див Розділ 274 [Видалення повідомлень], с 277) Для запису файлу без викреслювання слід використовувати Cx Cs Rmail також зберігає Rmail-файл при надходженні нової пошти з вхідного поштового файлу (див Розділ 275 [Вхідний поштовий файл], с 278)

Вийти з Rmail можна за допомогою q (rmail-quit), при цьому Rmail-файл очищається і зберігається, і відбувається перехід в інший буфер Але формально немає необхідності виходити. Якщо ви переключилися з Rmail до редагування в інших буферах і більше не поверталися назад, насправді ви вийшли (Команда Rmail b робить це для вас) Досить просто переконатися, що ви зберегли Rmail-файл (як і будь другий змінений вами файл) Досить зручний спосіб зробити це надає команда Cx s (див Розділ 143 [Збереження], с 108)

272  Прокрутка в повідомленні

Коли Rmail показує повідомлення, не поміщається на екрані, вам доведеться прокручувати це повідомлення, щоб прочитати решту Ви могли б зробити це за допомогою Cv, Mv і M-<, але в Rmail прокруткою доводиться користуватися настільки часто, що її команди заслуговують більш простого набору.

hSPCi              Прокручує вперед (scroll-up)

hDELi              Прокручує назад (scroll-down)

. Прокручує до початку повідомлення (rmail-beginning-of-message)

Так як під час читання повідомлення найбільш частою процедурою є прокрутка з цілого екрану, Rmail робить hSPCi  і hDELi  синонімами Cv (scroll-up) і Mv (scrolldown)

Команда (Rmail-begining-of-message) прокручує до початку вибраного повідомлення Це не зовсім те ж, що і M-<: по-перше, вона не залишає мітку, а по-друге, вона переустановлює кордону буфера до меж поточного повідомлення, якщо ви їх змінили.

273  Переміщення за повідомленнями

Саме основне, що ви можете зробити з повідомленням – прочитати його У Rmail ви можете прочитати повідомлення, зробивши його поточним Зазвичай при цьому послідовно переміщаються по файлу, оскільки повідомлення в ньому розташовані в порядку їх надходження При вході в Rmail ви потрапляєте на перше повідомлення, яке ніколи ще не було поточним (це перше повідомлення, що має атрибут unseen; див Розділ 279 [Атрибути повідомлень], с 281) Щоб побачити інші нові повідомлення, рухайтеся вперед, для повторного перегляду старих рухайтеся тому

n Перейти до наступного невидаленого повідомленням, пропускаючи все промежуточ-

ві видалені повідомлення (rmail-next-undeleted-message)

p Перейти до попереднього невидаленого повідомленням (rmail-previousundeleted-message)

Mn Перейти до наступного повідомлення, включаючи віддалені (rmail-next-message)

Mp Перейти до попереднього повідомлення, включаючи віддалені (rmail-previousmessage)

j Перейти до першого повідомленням З аргументом n – Перейти до повідомлення з номером n (rmail-show-message)

> Переглянути останнє повідомлення (rmail-last-message)

< Перейти до першого повідомленням (rmail-first-message).

M-s regexp hRETi

Перейти до наступного повідомлення, що містить збіг з регулярним ви-

раженіем regexp (rmail-search)

M-s regexp hRETi

Перейти до попереднього повідомлення, що містить збіг з regexp

n and p – це звичайний спосіб переміщення за повідомленнями в Rmail Вони переміщують за повідомленнями послідовно, але пропускають видалені повідомлення, що зазвичай ви і хотіли б робити Ці команди називаються rmail-next-undeleted-message і rmail-previous-undeleted-message Якщо ви не хочете пропускати видалені повідомлення, наприклад, якщо ви хочете переміститися до повідомлення, щоб скасувати його видалення, використовуйте варіанти Mn і Mp (rmail-next-message і rmail-previous-message) Числовий аргумент на будь-який з цих команд використовується як лічильник повторів

У Rmail ви можете задати числовий аргумент, набравши тільки цифру При цьому не потрібно спочатку набирати Cu

Команда Ms (rmail-search) – це версія пошуку для Rmail Звичайна команда наращиваемого пошуку Cs працює в Rmail, але вона здійснює пошук тільки в межах поточного повідомлення Мета команди M-s – пошук іншого повідомлення Вона зчитує регулярний вираз (див Розділ 125 [Регулярні вирази], с 91) без нарощування і потім здійснює пошук збіги, починаючи з початку наступного повідомлення Потім вона вибирає повідомлення, що містить збіг Якщо regexp пусто, Ms використовує регулярний вираз, задане при попередньому пошуку

Щоб знайти у файлі інше повідомлення в зворотному напрямку, задайте команді Ms

негативний аргумент У Rmail це можна зробити як Ms

Також можливий пошук повідомлення за мітці Див Розділ 278 [Мітки повідомлень], с 281

Для пересування до повідомлення, що задається абсолютним номером, використовуйте команду j (rmail-show-message) з номером повідомлення як аргумент Без аргументу, команда j вибирає перше повідомлення < (Rmail-first-message) також вибирає перше повідомлення. Команда> (Rmail-last-message) вибирає останнє

274  Видалення повідомлень

Коли вам більше не потрібно зберігати якесь повідомлення, його можна видалити При цьому видаляють повідомлення метится як можливо игнорируемое і деякі команди Rmail не помічатимуть його присутності, але тим Проте воно продовжує існувати в Rmailфайле і зберігає свій номер

Викреслення в Rmail-файлі (або його очищення) дійсно знищує видалені повідомлення Решта повідомлення послідовно перенумеровуються Викреслення

– Це єдина дія, крім розбору дайджесту (див Розділ 2715 [Дайджест повідомлень], с 287), яке змінює номери повідомлень

d Видалити поточне повідомлення і перейти до наступного невидаленого (rmaildelete-forward)

Cd Видалити поточне повідомлення і перейти до попереднього невидаленого (rmaildelete-backward)

u Відмінити видалення поточного повідомлення або перейти назад до віддаленого со-

спілкуванню і скасувати його видалення (rmail-undelete-previous-message)

x Очистити Rmail-файл (rmail-expunge)

Існують дві команди Rmail для видалення повідомлень Обидві вони видаляють поточне повідомлення і вибирають іншого Команда d (rmail-delete-forward) переходить до наступного повідомлення, пропускаючи вже віддалені, в той час як Cd (rmail-delete-backward) пересуває до попереднього невидаленого повідомленням Якщо ж ні невидаленого повідомлення, до якого можна перейти у вказаному напрямку, то поточним залишається повідомлення, яке було щойно видалено Числовий аргумент змінює напрямок руху після видалення

Всякий раз, коли Rmail видаляє повідомлення, він викликає функції, перераховані в rmail-delete-message-hook Коли викликаються функції цієї пастки, повідомлення вже позначено як вилучене, але все ще є поточним в цьому буфері Rmail

Для того щоб всі видалені повідомлення остаточно зникли з Rmail-файла, треба набрати x (rmail-expunge) Поки це не зроблено, є можливість скасувати видалення повідомлень Команда скасувати видалення, u (Rmail-undelete-previous-message), призначена для скасування дії команди d в більшості випадків Вона скасовує видалення поточного повідомлення, якщо воно було видалено В іншому випадку вона рухається до попереднього повідомлення доти, поки не буде знайдено видалене повідомлення, і виробляє скасування видалення цього повідомлення

Зазвичай ви можете скасувати дію d за допомогою команди u, так як u пересуває назад і скасовує видалення повідомлення, вироблене командою d Але це не працює, коли d пропускає кілька вже видалених повідомлень, які слідують за видаляється повідомленням в цьому випадку команда u скасовуватиме видалення останнього повідомлення з тих, що були пропущені Не існує досконалого способу обійти цю проблему Однак, повторюючи команду u, можна зрештою повернутися до повідомлення, для якого ви збиралися скасувати видалення Можна також добратися до цього повідомлення за допомогою команди Mp і потім набрати u

Віддалене повідомлення має атрибут deleted, і як результат при видаленні поточного повідомлення в рядку режиму зявляється слово deleted. Насправді, видалення або скасування видалення повідомлення – це не більше ніж додавання або знищення цього атрибута Див Розділ 279 [Атрибути повідомлень], с 281

Джерело: Річард Столмен, Керівництво по GNU Emacs

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*