Skip to content

DateTime python extensions to help create and consults a liturgical calendar

Notifications You must be signed in to change notification settings

MRNL-/LiturgicalCalendarUtils

Repository files navigation

LiturgicalCalendarUtils

DateTime python extensions to help create and consult a liturgical calendar
(C) Martin Raynal, 2015

Dependencies

This project references the following python modules:

References


== Most functional work is done, still need data feeding and some cleanup. ==
CatholicDateUtils.py :
	* Methods returning the date of various solemnities and feasts for a given year
	* Full-year calendar generation (heavily based on ROMCal implementation)
		- use: cl= computeCalendar(year, continent, country, diocese, verbose) returns an array containing all informations for given year,
		optionally with the addition of continental and national Propers celebrations
		- for printing the French calendar to csv:
			from CatholicDateUtils import *
			cl=computeCalendar(2017,'Europe','France',verbose=False)
			f1=open('./generated_2017.csv','w+')
			for day in cl:
				print >>f1, day.printAll_TR('fr-FR')
				
		TODO: provide a cleaner API to print and use this structure...
		
LiturgicalUtils.py :
	* 'LiturgicalDay'Class and Enums
		- the day class provides several ways of printing a specific day (raw, translated...). This will likely be expanded again.

Translation.py : 
	* Methods used to translate the keys found in the calendar structure.
	* Expects all localised files to be stored in './locale/[localeName]/' directory, except for default ('en-EN') ones that are at root.
	
TODO List
	* Options to generate specific fixed calendars for Continent/Country/Diocese and Orders
	* AP to pretty print the calendars
	
	* Explicits Queries: Fix calculations to ensure correct priorities are always taken into account
		- For now the date of a Feast will always be returned even when it is superseded by another solemnity or sunday (ex. St Matthias 2015)
	
	* The current calendar is the General Roman Calendar for the ordinary Rite (cf. Mysterii Paschalis, 1969). I may also implement the Tridentine calendar someday.
	* Test. Test and test again. This was really not tested enough, which is NOT GOOD(TM)
	* Maybe actually learn Python ? As this is my first project it is likely ridden with noob errors. Oh well...
	
In fine, I hope to use it for several applications - in particular, to feed the @Angelus_LT & @Angelus_FRA twitter accounts with daily hashtags,
or provide the results as a web service...

## Credits This was inspired by Jan Schreuder's article on CodeProject:
http://www.codeproject.com/Articles/10860/Calculating-Christian-Holidays
and the RomCal project:
http://www.romcal.net/
It also makes use of the DateUtil python library, especially (obviously?) the easter() function.
https://labix.org/python-dateutil

About

DateTime python extensions to help create and consults a liturgical calendar

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages