Skip to main content

ical2orgpy

This script converts an ical calendar (for instance, as exported from google calendar) into an org-mode document. It is conceived as a replacement of the awk script located here:

http://orgmode.org/worg/org-tutorials/org-google-sync.html

The main difference is that ical2orgpy correctly manages recurring events of “yearly”, “daily” and “weekly” types. ical2orgpy duplicates all recurring events falling into a specified time-frame into the exported org-document.

Installation

The command ical2orgpy is provided by means of python package ical2orgpy.

You can install with pip (preferably into its own into virtualenv):

$ pip install ical2orgpy

Installation with pipx is recommended because this will manage the virtualenv for you.

Installing from source code

You can install the package directly from git source like this:

$ cd <to project folder>
$ pip install --user .

To use the script, just call:

$ ~/.local/bin/ical2orgpy

Usage

Simply use the ical2orgpy command:

$ ical2orgpy --help

or, if installed locally from the git repo:

$ ~/.local/bin/ical2orgpy --help

The script requires two files, the input ics and the output org document. Usually, ical2orgpy is called within a script that grabs the ical file from some source (i.e. Google Calendar), and generates the appropriate org document. Such an script would have the following shape:

#!/bin/bash

# customize these
WGET=<path to wget>
ICS2ORG=<path to ical2org>
ICSFILE=$(mktemp)
ORGFILE=<path to orgfile>
URL=<url to your private Google calendar>

# no customization needed below

$WGET -O $ICSFILE $URL
$ICS2ORG $ICSFILE $ORGFILE
rm -f $ICSFILE

See further instructions here:

http://orgmode.org/worg/org-tutorials/org-google-sync.html

Development

Clone the repository and cd into it.

Create a virtualenv and install dependencies:

$ pip install .
$ pip install -r test_requirements.txt

Run tests to check everything is working:

$ pytest

You can also use tox to create the virtualenv e.g.:

$ tox -e py39

Then activate the virtualenv:

$ source .tox/py39/bin/activate
(py39)$

And use the package.

Metadata

Release files for ical2orgpy 0.5

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

Source distribution (sdist)

Source distribution for ical2orgpy 0.5
File Size Uploaded Provenance Actions
ical2orgpy-0.5.tar.gz 26.9 kB Without provenance Details for ical2orgpy-0.5.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for ical2orgpy 0.5
File Interpreter ABI Platform Actions
ical2orgpy-0.5-py3-none-any.whl Python 3 none any Details for ical2orgpy-0.5-py3-none-any.whl

Total release size: 45.1 kB

Release files / ical2orgpy-0.5.tar.gz

Download URL ical2orgpy-0.5.tar.gz
Size 26.9 kB
Tags Source
SHA-256 checksum
How to use checksums
57cd27d0aa07ea475b47402e956d10a40c60aed3356ada820645d82fd1894a28
BLAKE2b-256 checksum
How to use checksums
d99d35b6c9fe4beb45ae558273871dc59f4d7cf460df58b0b1cf1c314f5bfad6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.11.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.5

Release files / ical2orgpy-0.5-py3-none-any.whl

Download URL ical2orgpy-0.5-py3-none-any.whl
Size 18.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
240b9b82920a73e2448c4e6512025803a8f0c2d52a4c3a1907362e464e02fe5a
BLAKE2b-256 checksum
How to use checksums
c3eea34106301f0a889a31c2ba3ea3b16091828084b8e558de9cb7ca997f9380
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.11.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.5

Security for ical2orgpy 0.5

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.

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