From b98f274082b333b3b11b4f6bd5a8b8a8aa922d43 Mon Sep 17 00:00:00 2001 From: Wojtek Kosior Date: Thu, 30 Jun 2022 10:39:10 +0200 Subject: initial commit --- .reuse/dep5 | 10 ++ LICENSES/CC0-1.0.txt | 121 ++++++++++++++++++ format.py | 59 +++++++++ saints.json | 338 +++++++++++++++++++++++++++++++++++++++++++++++++++ saints.json.license | 5 + 5 files changed, 533 insertions(+) create mode 100644 .reuse/dep5 create mode 100644 LICENSES/CC0-1.0.txt create mode 100755 format.py create mode 100644 saints.json create mode 100644 saints.json.license diff --git a/.reuse/dep5 b/.reuse/dep5 new file mode 100644 index 0000000..42a52a3 --- /dev/null +++ b/.reuse/dep5 @@ -0,0 +1,10 @@ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: Meet Kraków saints +Upstream-Contact: Wojtek Kosior +Source: https://git.koszko.org/meet-krakow-saints + +# Sample paragraph, commented out: +# +# Files: src/* +# Copyright: $YEAR $NAME <$CONTACT> +# License: ... diff --git a/LICENSES/CC0-1.0.txt b/LICENSES/CC0-1.0.txt new file mode 100644 index 0000000..0e259d4 --- /dev/null +++ b/LICENSES/CC0-1.0.txt @@ -0,0 +1,121 @@ +Creative Commons Legal Code + +CC0 1.0 Universal + + CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE + LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN + ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS + INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES + REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS + PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM + THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED + HEREUNDER. + +Statement of Purpose + +The laws of most jurisdictions throughout the world automatically confer +exclusive Copyright and Related Rights (defined below) upon the creator +and subsequent owner(s) (each and all, an "owner") of an original work of +authorship and/or a database (each, a "Work"). + +Certain owners wish to permanently relinquish those rights to a Work for +the purpose of contributing to a commons of creative, cultural and +scientific works ("Commons") that the public can reliably and without fear +of later claims of infringement build upon, modify, incorporate in other +works, reuse and redistribute as freely as possible in any form whatsoever +and for any purposes, including without limitation commercial purposes. +These owners may contribute to the Commons to promote the ideal of a free +culture and the further production of creative, cultural and scientific +works, or to gain reputation or greater distribution for their Work in +part through the use and efforts of others. + +For these and/or other purposes and motivations, and without any +expectation of additional consideration or compensation, the person +associating CC0 with a Work (the "Affirmer"), to the extent that he or she +is an owner of Copyright and Related Rights in the Work, voluntarily +elects to apply CC0 to the Work and publicly distribute the Work under its +terms, with knowledge of his or her Copyright and Related Rights in the +Work and the meaning and intended legal effect of CC0 on those rights. + +1. Copyright and Related Rights. A Work made available under CC0 may be +protected by copyright and related or neighboring rights ("Copyright and +Related Rights"). Copyright and Related Rights include, but are not +limited to, the following: + + i. the right to reproduce, adapt, distribute, perform, display, + communicate, and translate a Work; + ii. moral rights retained by the original author(s) and/or performer(s); +iii. publicity and privacy rights pertaining to a person's image or + likeness depicted in a Work; + iv. rights protecting against unfair competition in regards to a Work, + subject to the limitations in paragraph 4(a), below; + v. rights protecting the extraction, dissemination, use and reuse of data + in a Work; + vi. database rights (such as those arising under Directive 96/9/EC of the + European Parliament and of the Council of 11 March 1996 on the legal + protection of databases, and under any national implementation + thereof, including any amended or successor version of such + directive); and +vii. other similar, equivalent or corresponding rights throughout the + world based on applicable law or treaty, and any national + implementations thereof. + +2. Waiver. To the greatest extent permitted by, but not in contravention +of, applicable law, Affirmer hereby overtly, fully, permanently, +irrevocably and unconditionally waives, abandons, and surrenders all of +Affirmer's Copyright and Related Rights and associated claims and causes +of action, whether now known or unknown (including existing as well as +future claims and causes of action), in the Work (i) in all territories +worldwide, (ii) for the maximum duration provided by applicable law or +treaty (including future time extensions), (iii) in any current or future +medium and for any number of copies, and (iv) for any purpose whatsoever, +including without limitation commercial, advertising or promotional +purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each +member of the public at large and to the detriment of Affirmer's heirs and +successors, fully intending that such Waiver shall not be subject to +revocation, rescission, cancellation, termination, or any other legal or +equitable action to disrupt the quiet enjoyment of the Work by the public +as contemplated by Affirmer's express Statement of Purpose. + +3. Public License Fallback. Should any part of the Waiver for any reason +be judged legally invalid or ineffective under applicable law, then the +Waiver shall be preserved to the maximum extent permitted taking into +account Affirmer's express Statement of Purpose. In addition, to the +extent the Waiver is so judged Affirmer hereby grants to each affected +person a royalty-free, non transferable, non sublicensable, non exclusive, +irrevocable and unconditional license to exercise Affirmer's Copyright and +Related Rights in the Work (i) in all territories worldwide, (ii) for the +maximum duration provided by applicable law or treaty (including future +time extensions), (iii) in any current or future medium and for any number +of copies, and (iv) for any purpose whatsoever, including without +limitation commercial, advertising or promotional purposes (the +"License"). The License shall be deemed effective as of the date CC0 was +applied by Affirmer to the Work. Should any part of the License for any +reason be judged legally invalid or ineffective under applicable law, such +partial invalidity or ineffectiveness shall not invalidate the remainder +of the License, and in such case Affirmer hereby affirms that he or she +will not (i) exercise any of his or her remaining Copyright and Related +Rights in the Work or (ii) assert any associated claims and causes of +action with respect to the Work, in either case contrary to Affirmer's +express Statement of Purpose. + +4. Limitations and Disclaimers. + + a. No trademark or patent rights held by Affirmer are waived, abandoned, + surrendered, licensed or otherwise affected by this document. + b. Affirmer offers the Work as-is and makes no representations or + warranties of any kind concerning the Work, express, implied, + statutory or otherwise, including without limitation warranties of + title, merchantability, fitness for a particular purpose, non + infringement, or the absence of latent or other defects, accuracy, or + the present or absence of errors, whether or not discoverable, all to + the greatest extent permissible under applicable law. + c. Affirmer disclaims responsibility for clearing rights of other persons + that may apply to the Work or any use thereof, including without + limitation any person's Copyright and Related Rights in the Work. + Further, Affirmer disclaims responsibility for obtaining any necessary + consents, permissions or other rights required for any use of the + Work. + d. Affirmer understands and acknowledges that Creative Commons is not a + party to this document and has no duty or obligation with respect to + this CC0 or use of the Work. diff --git a/format.py b/format.py new file mode 100755 index 0000000..466d8d7 --- /dev/null +++ b/format.py @@ -0,0 +1,59 @@ +#!/usr/bin/env python3 + +# SPDX-License-Identifier: CC0-1.0 +# +# Copyright (C) 2022 Wojtek Kosior +# +# Available under the terms of Creative Commons Zero v1.0 Universal. + +import json +import random +import click +import sys +from pathlib import Path + +here = Path(__file__).resolve().parent + +trans = { + 'en': { + 'blessed_male': 'blessed', + 'blessed_female': 'blessed', + 'saint_female': 'saint', + 'saint_male': 'saint', + 'meet_krk_saints': 'Meet Kraków saints! ' + }, + 'pl': { + 'blessed_male': 'błogosławiony', + 'blessed_female': 'błogosławiona', + 'saint_female': 'święta', + 'saint_male': 'święty', + 'meet_krk_saints': 'Poznaj świętych krakowskich!' + } +} + +saints = json.loads((here / 'saints.json').read_text()) + +@click.command() +@click.option('-i', '--saint-id', default='-1', type=click.types.INT, + show_default=True, help='which saint to format (-1 for random)') +def main(saint_id): + if saint_id == -1: + [(saint_id, saint)] = random.sample([*saints.items()], 1) + else: + saint_id = str(saint_id) + saint = saints.get(saint_id) + + if saint is None: + print('No such saint!', file=sys.stderr) + return sys.exit(1) + + title_key = f'{saint["title"]}_{saint["gender"]}' + + for lang in ('en', 'pl'): + tr = trans[lang] + print(f'{tr["meet_krk_saints"]} #{saint_id}: {tr[title_key]} {saint["name"]}') + + print(f'https://pl.wikipedia.org/wiki/{saint["wikipedia_name"]}') + +if __name__ == '__main__': + main() diff --git a/saints.json b/saints.json new file mode 100644 index 0000000..189dd9a --- /dev/null +++ b/saints.json @@ -0,0 +1,338 @@ +{ + "0": { + "name": "Albert Chmielowski", + "gender": "male", + "wikipedia_name": "Adam_Chmielowski", + "title": "saint" + }, + "1": { + "name": "Alfons Mazurek", + "gender": "male", + "wikipedia_name": "Alfons_Mazurek", + "title": "blessed" + }, + "2": { + "name": "Aniela Salawa", + "gender": "female", + "wikipedia_name": "Aniela_Salawa", + "title": "blessed" + }, + "3": { + "name": "Bernardyna Maria Jabłońska", + "gender": "female", + "wikipedia_name": "Bernardyna_Maria_Jabłońska", + "title": "blessed" + }, + "4": { + "name": "Bronisław Markiewicz", + "gender": "male", + "wikipedia_name": "Bronisław_Markiewicz", + "title": "blessed" + }, + "5": { + "name": "Bronisława", + "gender": "female", + "wikipedia_name": "Błogosławiona_Bronisława", + "title": "blessed" + }, + "6": { + "name": "Brunon Zembol", + "gender": "male", + "wikipedia_name": "Brunon_Zembol", + "title": "blessed" + }, + "7": { + "name": "Czesław Odrowąż", + "gender": "male", + "wikipedia_name": "Czesław_Odrowąż", + "title": "blessed" + }, + "8": { + "name": "Fustyna Kowalska", + "gender": "female", + "wikipedia_name": "Faustyna_Kowalska", + "title": "saint" + }, + "9": { + "name": "Hanna Chrzanowska", + "gender": "female", + "wikipedia_name": "Hanna_Chrzanowska", + "title": "blessed" + }, + "10": { + "name": "Hilary Januszewski", + "gender": "male", + "wikipedia_name": "Hilary_Januszewski", + "title": "blessed" + }, + "11": { + "name": "Jacek Odrowąż", + "gender": "male", + "wikipedia_name": "Jacek_Odrowąż", + "title": "saint" + }, + "12": { + "name": "Jadwiga Andegaweńska", + "gender": "female", + "wikipedia_name": "Jadwiga_Andegaweńska", + "title": "saint" + }, + "13": { + "name": "Jan Beyzym", + "gender": "male", + "wikipedia_name": "Jan_Beyzym", + "title": "blessed" + }, + "14": { + "name": "Jan Kanty", + "gender": "male", + "wikipedia_name": "Jan_Kanty", + "title": "saint" + }, + "15": { + "name": "Jan Paweł II", + "gender": "male", + "wikipedia_name": "Jan_Paweł_II", + "title": "saint" + }, + "16": { + "name": "Jan z Dukli", + "gender": "male", + "wikipedia_name": "Jan_z_Dukli", + "title": "saint" + }, + "17": { + "name": "Jolenta Helena", + "gender": "female", + "wikipedia_name": "Jolenta_Helena", + "title": "blessed" + }, + "18": { + "name": "Józef Kowalski", + "gender": "male", + "wikipedia_name": "Józef_Kowalski_(duchowny)", + "title": "blessed" + }, + "19": { + "name": "Józef Bilczewski", + "gender": "male", + "wikipedia_name": "Józef_Bilczewski", + "title": "saint" + }, + "20": { + "name": "Józef Sebastian Pelczar", + "gender": "male", + "wikipedia_name": "Józef_Sebastian_Pelczar", + "title": "saint" + }, + "21": { + "name": "Kazimierz", + "gender": "male", + "wikipedia_name": "Święty_Kazimierz", + "title": "saint" + }, + "22": { + "name": "Kinga", + "gender": "female", + "wikipedia_name": "Święta_Kinga", + "title": "saint" + }, + "23": { + "name": "Klara Ludwika Szczęsna", + "gender": "female", + "wikipedia_name": "Klara_Ludwika_Szczęsna", + "title": "blessed" + }, + "24": { + "name": "Ludwik Pius Bartosik", + "gender": "male", + "wikipedia_name": "Ludwik_Pius_Bartosik", + "title": "blessed" + }, + "25": { + "name": "Maksymilian Binkiewicz", + "gender": "male", + "wikipedia_name": "Maksymilian_Binkiewicz", + "title": "blessed" + }, + "26": { + "name": "Maksymilian Maria Kolbe", + "gender": "male", + "wikipedia_name": "Maksymilian_Maria_Kolbe", + "title": "saint" + }, + "27": { + "name": "Maria Klemensa Staszewska", + "gender": "female", + "wikipedia_name": "Maria_Klemensa_Staszewska", + "title": "blessed" + }, + "28": { + "name": "Maria Angela Truszkowska", + "gender": "female", + "wikipedia_name": "Maria_Angela_Truszkowska", + "title": "blessed" + }, + "29": { + "name": "Marta Wiecka", + "gender": "female", + "wikipedia_name": "Marta_Wiecka", + "title": "blessed" + }, + "30": { + "name": "Michał Czartoryski", + "gender": "male", + "wikipedia_name": "Michał_Czartoryski_(dominikanin)", + "title": "blessed" + }, + "31": { + "name": "Michał_Giedroyć", + "gender": "male", + "wikipedia_name": "Michał_Giedroyć", + "title": "blessed" + }, + "32": { + "name": "Anastazy Pankiewicz", + "gender": "male", + "wikipedia_name": "Anastazy_Pankiewicz", + "title": "blessed" + }, + "33": { + "name": "Antonin Bajewski", + "gender": "male", + "wikipedia_name": "Antonin_Bajewski", + "title": "blessed" + }, + "34": { + "name": "Jan Macha", + "gender": "male", + "wikipedia_name": "Jan_Macha", + "title": "blessed" + }, + "35": { + "name": "Józef Innocenty Guz", + "gender": "male", + "wikipedia_name": "Józef_Innocenty_Guz", + "title": "blessed" + }, + "36": { + "name": "Achilles Puchała", + "gender": "male", + "wikipedia_name": "Achilles_Puchała", + "title": "blessed" + }, + "37": { + "name": "Michał Tomaszek", + "gender": "male", + "wikipedia_name": "Michał_Tomaszek", + "title": "blessed" + }, + "38": { + "name": "Zbigniew Strzałkowski", + "gender": "male", + "wikipedia_name": "Zbigniew_Strzałkowski", + "title": "blessed" + }, + "39": { + "name": "Narcyz Turchan", + "gender": "male", + "wikipedia_name": "Narcyz_Turchan", + "title": "blessed" + }, + "40": { + "name": "Natalia Tułasiewicz", + "gender": "female", + "wikipedia_name": "Natalia_Tułasiewicz", + "title": "blessed" + }, + "41": { + "name": "Piotr Dańkowski", + "gender": "male", + "wikipedia_name": "Piotr_Dańkowski", + "title": "blessed" + }, + "42": { + "name": "Rafał Chyliński", + "gender": "male", + "wikipedia_name": "Rafał_Chyliński", + "title": "blessed" + }, + "43": { + "name": "Rafał Kalinowski", + "gender": "male", + "wikipedia_name": "Rafał_Kalinowski", + "title": "saint" + }, + "44": { + "name": "Salomea", + "gender": "female", + "wikipedia_name": "Błogosławiona_Salomea", + "title": "blessed" + }, + "45": { + "name": "Stanisław Kazimierczyk", + "gender": "male", + "wikipedia_name": "Stanisław_Kazimierczyk", + "title": "saint" + }, + "46": { + "name": "Stanisław Papczyński", + "gender": "male", + "wikipedia_name": "Stanisław_Papczyński", + "title": "saint" + }, + "47": { + "name": "Stanisław ze Szczepanowa", + "gender": "male", + "wikipedia_name": "Stanisław_ze_Szczepanowa", + "title": "saint" + }, + "48": { + "name": "Szymon z Lipnicy", + "gender": "male", + "wikipedia_name": "Szymon_z_Lipnicy", + "title": "saint" + }, + "49": { + "name": "Urszula Ledóchowska", + "gender": "female", + "wikipedia_name": "Urszula_Ledóchowska", + "title": "saint" + }, + "50": { + "name": "Wincenty Kadłubek", + "gender": "male", + "wikipedia_name": "Wincenty_Kadłubek", + "title": "blessed" + }, + "51": { + "name": "Władysław Bukowiński", + "gender": "male", + "wikipedia_name": "Władysław_Bukowiński", + "title": "blessed" + }, + "52": { + "name": "Władysław z Gielniowa", + "gender": "male", + "wikipedia_name": "Władysław_z_Gielniowa", + "title": "blessed" + }, + "53": { + "name": "Władysław I", + "gender": "male", + "wikipedia_name": "Władysław_I", + "title": "saint" + }, + "54": { + "name": "Wojciech Nierychlewski", + "gender": "male", + "wikipedia_name": "Wojciech_Nierychlewski", + "title": "blessed" + }, + "55": { + "name": "Zofia_Czeska", + "gender": "female", + "wikipedia_name": "Zofia_Czeska", + "title": "blessed" + } +} diff --git a/saints.json.license b/saints.json.license new file mode 100644 index 0000000..f41d511 --- /dev/null +++ b/saints.json.license @@ -0,0 +1,5 @@ +SPDX-License-Identifier: CC0-1.0 + +Copyright (C) 2022 Wojtek Kosior + +Available under the terms of Creative Commons Zero v1.0 Universal. -- cgit v1.2.3