ical2orgpy


Nameical2orgpy JSON
Version 0.5 PyPI version JSON
download
home_pagehttps://github.com/ical2org-py/ical2org.py
SummaryConvert ICAL/ICS files into Emacs org-mode format.
upload_time2023-02-09 11:05:37
maintainer
docs_urlNone
authorAitor Soroa
requires_python
licenseGPLv3
keywords calendar ical org emacs
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            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 <https://github.com/pypa/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.



            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/ical2org-py/ical2org.py",
    "name": "ical2orgpy",
    "maintainer": "",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "",
    "keywords": "calendar,ical,org,emacs",
    "author": "Aitor Soroa",
    "author_email": "a.soroa@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/d9/9d/35b6c9fe4beb45ae558273871dc59f4d7cf460df58b0b1cf1c314f5bfad6/ical2orgpy-0.5.tar.gz",
    "platform": null,
    "description": "ical2orgpy\n==========\n\nThis script converts an ical calendar (for instance, as exported from google\ncalendar) into an org-mode document. It is conceived as a replacement of the\nawk script located here:\n\nhttp://orgmode.org/worg/org-tutorials/org-google-sync.html\n\nThe main difference is that ical2orgpy correctly manages recurring events\nof \"yearly\", \"daily\" and \"weekly\" types. ical2orgpy duplicates all\nrecurring events falling into a specified time-frame into the exported\norg-document.\n\nInstallation\n============\n\nThe command ``ical2orgpy`` is provided by means of python package ``ical2orgpy``.\n\nYou can install with ``pip`` (preferably into its own into virtualenv)::\n\n    $ pip install ical2orgpy\n\nInstallation with `pipx <https://github.com/pypa/pipx>`_ is recommended because\nthis will manage the virtualenv for you.\n\n\nInstalling from source code\n===========================\n\nYou can install the package directly from git source like this::\n\n    $ cd <to project folder>\n    $ pip install --user .\n\nTo use the script, just call::\n\n  $ ~/.local/bin/ical2orgpy\n\n\n\nUsage\n=====\nSimply use the ``ical2orgpy`` command::\n\n    $ ical2orgpy --help\n\nor, if installed locally from the git repo::\n\n    $ ~/.local/bin/ical2orgpy --help\n\nThe script requires two files, the input ics and the output org\ndocument. Usually, ``ical2orgpy`` is called within a script that grabs the\nical file from some source (i.e. Google Calendar), and generates the\nappropriate org document. Such an script would have the following shape::\n\n    #!/bin/bash\n\n    # customize these\n    WGET=<path to wget>\n    ICS2ORG=<path to ical2org>\n    ICSFILE=$(mktemp)\n    ORGFILE=<path to orgfile>\n    URL=<url to your private Google calendar>\n\n    # no customization needed below\n\n    $WGET -O $ICSFILE $URL\n    $ICS2ORG $ICSFILE $ORGFILE\n    rm -f $ICSFILE\n\nSee further instructions here:\n\nhttp://orgmode.org/worg/org-tutorials/org-google-sync.html\n\nDevelopment\n===========\n\nClone the repository and cd into it.\n\nCreate a virtualenv and install dependencies::\n\n    $ pip install .\n    $ pip install -r test_requirements.txt\n\nRun tests to check everything is working::\n\n    $ pytest\n\nYou can also use tox to create the virtualenv e.g.::\n\n    $ tox -e py39\n\nThen activate the virtualenv::\n\n    $ source .tox/py39/bin/activate\n    (py39)$\n\nAnd use the package.\n\n\n",
    "bugtrack_url": null,
    "license": "GPLv3",
    "summary": "Convert ICAL/ICS files into Emacs org-mode format.",
    "version": "0.5",
    "split_keywords": [
        "calendar",
        "ical",
        "org",
        "emacs"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c3eea34106301f0a889a31c2ba3ea3b16091828084b8e558de9cb7ca997f9380",
                "md5": "b0dd9802eabdde1b19a7a60b5512c3aa",
                "sha256": "240b9b82920a73e2448c4e6512025803a8f0c2d52a4c3a1907362e464e02fe5a"
            },
            "downloads": -1,
            "filename": "ical2orgpy-0.5-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "b0dd9802eabdde1b19a7a60b5512c3aa",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 18169,
            "upload_time": "2023-02-09T11:05:35",
            "upload_time_iso_8601": "2023-02-09T11:05:35.350852Z",
            "url": "https://files.pythonhosted.org/packages/c3/ee/a34106301f0a889a31c2ba3ea3b16091828084b8e558de9cb7ca997f9380/ical2orgpy-0.5-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "d99d35b6c9fe4beb45ae558273871dc59f4d7cf460df58b0b1cf1c314f5bfad6",
                "md5": "9c743d9be06ba0257c83b212d57101bb",
                "sha256": "57cd27d0aa07ea475b47402e956d10a40c60aed3356ada820645d82fd1894a28"
            },
            "downloads": -1,
            "filename": "ical2orgpy-0.5.tar.gz",
            "has_sig": false,
            "md5_digest": "9c743d9be06ba0257c83b212d57101bb",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 26883,
            "upload_time": "2023-02-09T11:05:37",
            "upload_time_iso_8601": "2023-02-09T11:05:37.564841Z",
            "url": "https://files.pythonhosted.org/packages/d9/9d/35b6c9fe4beb45ae558273871dc59f4d7cf460df58b0b1cf1c314f5bfad6/ical2orgpy-0.5.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-02-09 11:05:37",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "github_user": "ical2org-py",
    "github_project": "ical2org.py",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "requirements": [],
    "test_requirements": [],
    "tox": true,
    "lcname": "ical2orgpy"
}
        
Elapsed time: 0.04665s