From df92f14e77cadabb1820a5937aa68b9be0f5bb66 Mon Sep 17 00:00:00 2001
From: Alexandre B A Villares <3694604+villares@users.noreply.github.com>
Date: Wed, 1 Jan 2025 13:18:03 -0300
Subject: [PATCH] Create add_year.py
---
admin_scripts/one_off/add_year.py | 43 +++++++++++++++++++++++++++++++
1 file changed, 43 insertions(+)
create mode 100644 admin_scripts/one_off/add_year.py
diff --git a/admin_scripts/one_off/add_year.py b/admin_scripts/one_off/add_year.py
new file mode 100644
index 00000000..03a96fd0
--- /dev/null
+++ b/admin_scripts/one_off/add_year.py
@@ -0,0 +1,43 @@
+from pathlib import Path
+
+base_path = Path('/home/villares/GitHub/sketch-a-day/docs/')
+
+template = (
+r"[2025](README.md) "
+r"\| [2024](2024.md) "
+r"\| [2023](2023.md) "
+r"\| [2022](2022.md) "
+r"\| [2021](2021.md) "
+r"\| [2020](2020.md) "
+r"\| [2019](2019.md) "
+r"\| [2018](2018.md) "
+)
+
+year_format = "[{0}]({0}.md)".format
+
+def index_line(line: str) -> bool:
+ return (r'\| [' in line and
+ '2018' in line and
+ '2019' in line)
+
+def main(n):
+ page = base_path / f'{n}.md'
+ if not page.is_file():
+ print(f'{page} not there.')
+ return
+ with open(page, 'rt') as readme:
+ readme_as_lines = readme.readlines()
+
+# with open(page, 'wt') as readme:
+ for line in readme_as_lines:
+ if index_line(line):
+ line = template.replace(year_format(n), str(n))
+ line = line.replace(f'[{n}](README.md)', str(n)) # current year case
+ print(line)
+# readme.write('### {}\n\n'.format(line[2:line.find(']')]))
+# readme.write(line)
+
+if __name__ == '__main__':
+ for y in range(2018, 2030):
+ main(y)
+