Skip to content
A python class for reading and writing orgmode files
Python
Latest commit 5b828d1 Aug 1, 2015 @bjonnh Add Seamus Tuohy to authors
Failed to load latest commit information.
PyOrgMode Correct date problems, all tests passes now May 11, 2015
build/lib/PyOrgMode Merge pull request from whacked May 11, 2015
.gitignore
AUTHORS Add Seamus Tuohy to authors Aug 1, 2015
ChangeLog Merge pull request from whacked May 11, 2015
LICENSE
PyOrgMode_test.py Merge pull request from whacked May 11, 2015
README.org
TODO Merge pull request from whacked May 11, 2015
output.org
setup.py

README.org

PyOrgMode

PyOrgMode is a small python library able to do simple tasks with your org files. It allows you to generate org files or treat them in an automated fashion.

This project is not my top priority, but I’m more than happy to receive pull requests. Don’t worry, even if it takes some time, I go through all of them ;)

I’d like to thank all the people that contributes (see AUTHORS file).

Quick Start

Installation

Download the git repo and then install the package.

git clone https://github.com/bjonnh/PyOrgMode.git
cd PyOrgMode/
sudo python setup.py install

Import an Org-Mode file

Import PyOrgMode

from PyOrgMode import PyOrgMode

Create an Org data structure to hold the org-mode file.

base = PyOrgMode.OrgDataStructure()

Load the org-mode file.

base.load_from_file("test.org")

Create an org-mode file

Create an Org data structure to hold the org-mode file.

base = PyOrgMode.OrgDataStructure()

Create a new TODO item

new_todo = PyOrgMode.OrgNode.Element()
new_todo.heading = "I am a new todo item"
new_todo.tags=["things", "important"]
new_todo.level = 1
new_todo.todo = "TODO"

Add a scheduled item and a deadline to the item.

_sched = PyOrgMode.OrgSchedule()
_sched._append(new_todo, _sched.Element(scheduled="<2015-08-01 Sat 12:00-13:00>"))
_sched._append(new_todo, _sched.Element(deadline="<2015-08-01 Sat 12:00-13:00>"))

Create a logbook drawer

_props = PyOrgMode.OrgDrawer.Element("LOGBOOK")
# Add a properties drawer
_props.append(PyOrgMode.OrgDrawer.Element("- State \"SOMEDAY\"    from \"TODO\"     [2015-07-01 Wed 09:45]"))
# Append the properties to the new todo item
new_todo.append_clean(_props)

Create a properties drawer

_props = PyOrgMode.OrgDrawer.Element("PROPERTIES")
# Add a properties drawer
_props.append(PyOrgMode.OrgDrawer.Property("FRUITS", "pineapples"))
_props.append(PyOrgMode.OrgDrawer.Property("NAMES", "bob, sally"))
# Append the properties to the new todo item
new_todo.append_clean(_props)

Append the todo item to the base object

base.root.append_clean(new_todo)

Save the org object to a file

base.save_to_file("output.org")

Tools

Tangle (Export the files)

Documentation

Authors

Jonathan BISSON <firstname.lastname at bjonnh.net> : initiator of the project
Antti KAIHOLA <akaihol plus orgmode at ambitone dot com>
m3wolf (github)
bordercore (github)
wroberts (github)
gonvaled (github)
10nin (github)
CodeMonk (github)
midraal (github)
whacked (github)
Something went wrong with that request. Please try again.