Skip to main content
File added late

1 file was added to this release more than 14 days after its initial publication. Inspect the release files before installing.

ical2org

ical2org is a command line tool for exporting data from the Mac OS X application iCal so it can be used with the emacs tool org-mode. Data transfer is one-way only (from iCal to emacs), and is intended to be used to show alarms and scheduled events managed by iCal within org’s agenda view.

Installation

ical2org is distributed as a set of Python source files, and requires that Python already be installed. The source distribution is created using Distribute, which will be installed with ical2org.

Quick Install

Use normal Python application steps to install ical2org:

$ pip install ical2org

or:

$ easy_install ical2org

The other dependencies (pytz and vobject) will be installed automatically.

From Source

  1. Download and install the dependencies.

  2. Download the latest release tarball from the project home page.

  3. Unpack the files:

    $ tar zxvf ical2org-VERSION.tar.gz
  4. Run the installation script:

    $ cd ical2org-VERSION
    $ python setup.py install

Generating org-mode Files

While ical2org supports multiple output formats, the default is an org-mode outline. Each calendar entry includes the summary, location, date and time, and complete description (useful for searching).

For example, to extract the entries from a calendar called “Meetup: Python”, you would run:

$ ical2org "Meetup: Python"
Starting 14 days ago at 2010-01-03 00:00:00-05:00
Ending 30 days from now at 2010-02-17 00:00:00-05:00
Processing: Meetup: Python
  Python Atlanta February Meetup
# -*- coding: utf-8 -*-
* Meetup: Python    :clubs:
  :CATEGORY: Personal
** Python Atlanta February Meetup
   <2010-02-11 Thu 19:30-21:30>
   - PyAtl: Atlanta Python Programmers

     After an optional 6pm dinner at Figo Pasta at the corner of
     Howell Mill Road and Huff Road, we will meet as usual in the
     spacious and comfortable auditorium of the GTRI Food
     Processing Building at 7:30pm for our monthly meeting.

     Topics for this meeting:

     Brandon Rhodes will give his PyCon talk: "Learning Hosting
     Best-Practices From WebFaction"

     Atlanta, GA  30318 - USA

     Thursday, February 11 at 7:30 PM

     Photo: http://photos2.meetupstatic.com/photos/event/4/7/3/5/event_5238229.jpeg

     Attending: 3

     Details: http://www.meetup.com/python-atlanta/calendar/12325308/

Output is encoded as UTF-8, which may not work with Unix pipes and shell redirection. To save the output to a file instead of having it printed to standard output, use the -o option.

By default, ical2org processes all of the calendars which are displayed in iCal. Hidden calendars are ignored unless you give their name on the command line.

Generating Diary Files

The default output format uses org’s outline structure. If you would rather use emacs’ diary-mode, use -f diary to switch modes. The diary entries do not include the full text of the event.

Recurring Events

Recurring events in iCal are “exploded” to create separate entries in the output. This makes it easy to refile an event when you add notes, without having the notes from one meeting occurance appear on the wrong date.

Command Line Options

-h

show this help message and exit

-c CONFIG_FILENAME, --config=CONFIG_FILENAME

Configuration file name. Defaults to ~/.ical2org

-b DAYS_AGO, --begin=DAYS_AGO, --days-ago=DAYS_AGO

Number of days back in time to search. Defaults to 14.

-e DAYS_AHEAD, --end=DAYS_AHEAD, --days-ahead=DAYS_AHEAD

Number of days forward in time to search. Defaults to 30.

-v, --verbose

Increase verbose level

-q, --quiet

Turn off verbose output

-o OUTPUT_FILE_NAME, --output-file=OUTPUT_FILE_NAME

Write the output to the named file instead of stdout

--all

Include all calendars, not just active.

--input-directory=INPUT_DIRECTORY

Directory containing calendars. Defaults to ~/Library/Calendars.

-f FORMAT, --format=FORMAT

Output format. One of [‘org’, ‘diary’]. Defaults to “diary”.

--opt=OPT, --formatter-option=OPT

Formatter-specific option name=value

--help

Verbose help

History

1.2

  • Fix bug with event spans due to mis-interpretation of iCalendar standard.

1.1

  • Fix DST handling for recurring events.

1.0.3

  • Patches from KANEUCHI Tetsuya to fix problems with unicode console output and empty descriptions

1.0.2

  • Updated installation instructions.

1.0.1

  • Fixed some installation annoyances.

1.0

  • First public release.

Metadata

Release files for ical2org 1.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

File added late

1 file was uploaded more than 14 days after the first file in this release.

While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.

We recommend inspecting the release files before installing.

Source distribution (sdist)

Source distribution for ical2org 1.2
File Size Uploaded Provenance Actions
ical2org-1.2.tar.gz 14.8 kB File added late: Without provenance Details for ical2org-1.2.tar.gz

Release files / ical2org-1.2.tar.gz

File added late

This file was uploaded more than 14 days after the first file in this release.

While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.

We recommend inspecting the release file before installing.

Download URL ical2org-1.2.tar.gz
Size 14.8 kB
Tags Source
SHA-256 checksum
How to use checksums
71e17de1283b8d163bc05ad7ac41a90d7d032832e7f837d1462e07815e396976
BLAKE2b-256 checksum
How to use checksums
6ee6147e920ebbefd0c0ecc9be32201ccdb254ce0ac19d80f17aeb64682807bb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Security for ical2org 1.2

Upload timing

File added late

1 file was uploaded more than 14 days after the first file in this release.

While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.


Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

1.2 This release

1 release file No provenance

1.0.3

1.0.2

1.0.1

1.0

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page