Skip to main content

No project description provided

Project description

mutt-ical

This is a collection of scripts that make it easier to work with iCalendar files in mutt. (Note that this is for calendar information in the iCalendar file format. It has nothing to do with the OSX calendar program.)

Installation

  1. Install Poetry
  2. Run poetry build
  3. Install the .whl file in the dist directory

viewical

viewical takes an iCalendar file on standard input and prints out a more human-friendly rendering of the data in the file. It's intended to be used as a display filter in mutt.

Usage

This is easiest if you maintain a mutt-specific mailcap, e.g. having this in your ~/.muttrc:

set mailcap_path="${HOME}/.mutt/mailcap:/etc/mailcap"

In your mailcap, add entries for the appropriate MIME types:

text/calendar; viewical; copiousoutput
application/ics; viewical; copiousoutput

In your .muttrc, tell mutt to automatically display calendar data:

auto_view text/calendar
auto_view application/ics

Finally, you need to add (or modify) the alternative_order setting in your .muttrc to prefer iCalendar attachments over their HTML or text alternatives, for messages sent with such alternatives:

alternative_order text/calendar text/plain text/html

Output

Most of the script's output should be self-explanatory. Most fields are optional, so it'll only print information (from event end times to locations to event descriptions) if they're present in the original data.

One thing to note is the encoding of attendees (or, in iCalendar terminology, "participants"). They're presented in a list with a checkbox of sorts next to them, something like this:

[ ] Barb Example <barb@example.com>

People will get different boxes depending on the role defined for them in the iCalendar data. The boxes are as follows:

  • { } - Event chairperson.
  • [ ] - Attendee, participation required. (Most programs use this as the default role.)
  • < > - Attendee, participation optional.
  • ( ) - Non-participant. (The author of these scripts has never seen this in actual use.)
  • _ _ - No role defined in the data.
  • ? ? - Unknown role.

The script places text in the box to indicate the status of the person. The statuses are as follows:

  • blank - Unknown. (Officially, this is "needs action", i.e. "waiting for a response".)
  • Y - Attending.
  • - - Not attending.
  • ~ - Maybe attending.
  • ? - Status not recognized by script.

(In the event that the iCalendar data does not define a status, the box will be empty, not just blank. This is "status unknown to organizer": [ ]. This is "status not present in data": []. That's not a huge difference, but every file the script's author has observed has had some status defined for every person attached to an event.)

Example

Here's an event with a chairperson, two required attendees, and two non-required attendees. The chairperson and one required attendee have responded that they will attend. The other required attendee has not yet responded. One of the non-required attendees will not attend and the other is tentative.

Organizer: Admin Aid <admin@example.com>
Event:     Example Event
Date:      Thursday, August 4, 2016
Starts:    9:00 am
Ends:      10:00 am
Location:  Meeting Room 7
Attendees: {Y} Important Executive <exec@example.com>
           [Y] Relevant Manager <mgr@example.com>
           [ ] Relevant Subordinate <worker@example.com>
           <-> Affiliated Manager <aff@example.com>
           <~> Irrelevant Manager <irr@example.com>

ical-reply

ical-reply is intended to facilitate responses to iCalendar emails. It's not ready for use yet.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mutt_ical-2.0.0.tar.gz (19.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mutt_ical-2.0.0-py3-none-any.whl (19.7 kB view details)

Uploaded Python 3

File details

Details for the file mutt_ical-2.0.0.tar.gz.

File metadata

  • Download URL: mutt_ical-2.0.0.tar.gz
  • Upload date:
  • Size: 19.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.3.2 CPython/3.11.2 Linux/6.1.75-1.qubes.fc32.x86_64

File hashes

Hashes for mutt_ical-2.0.0.tar.gz
Algorithm Hash digest
SHA256 f093924d59ec63cd72993c3f843438de9f9f938b105b3d65e8edcf36ca1e6713
MD5 45e9c927ecf94d5094d19eb39c1bb88b
BLAKE2b-256 9633806651ec6ce761c5df844941fb2478274824ca5153a48de0ee09d50439f1

See more details on using hashes here.

File details

Details for the file mutt_ical-2.0.0-py3-none-any.whl.

File metadata

  • Download URL: mutt_ical-2.0.0-py3-none-any.whl
  • Upload date:
  • Size: 19.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.3.2 CPython/3.11.2 Linux/6.1.75-1.qubes.fc32.x86_64

File hashes

Hashes for mutt_ical-2.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1abf7a0d4e0376a8fa6d5a12141ca44ecc81a227e5b34ad749392e677094916f
MD5 18dd6e1b1d7b39792936650b074cf80f
BLAKE2b-256 59e0a82138b38aba5fb22a17ad07f15cba5a12c872a6c39dbf6799543eb04021

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page