diff --git a/assets/images/hzone/2026/05/20260507-135058-example-png-image.png b/assets/images/hzone/2026/05/20260507-135058-example-png-image.png
old mode 100644
new mode 100755
diff --git a/assets/images/hzone/2026/05/20260507-140053-example-png-image.png b/assets/images/hzone/2026/05/20260507-140053-example-png-image.png
new file mode 100644
index 0000000..d63b4a2
Binary files /dev/null and b/assets/images/hzone/2026/05/20260507-140053-example-png-image.png differ
diff --git a/assets/images/hzone/2026/05/20260507-140101-example-png-image.png b/assets/images/hzone/2026/05/20260507-140101-example-png-image.png
new file mode 100644
index 0000000..d63b4a2
Binary files /dev/null and b/assets/images/hzone/2026/05/20260507-140101-example-png-image.png differ
diff --git a/authoring_server.py b/authoring_server.py
index 51dd4b1..752b3af 100755
--- a/authoring_server.py
+++ b/authoring_server.py
@@ -271,7 +271,7 @@ def safe_target_path(path: str, slug: str, page_type: str) -> Path:
def markdown_title(content: str, fallback: str) -> str:
for line in content.splitlines():
- match = re.match(r"^#\s+(.+?)\s*$", line)
+ match = re.match(r"^#{1,6}\s+(.+?)\s*$", line)
if match:
return match.group(1).strip()
return fallback.replace("-", " ").replace("_", " ").title()
@@ -404,7 +404,23 @@ def render_markdown(data: dict[str, Any]) -> str:
title = str(data.get("title") or "").strip()
if not title:
raise ValueError("Title is required.")
+ content = re.sub(
+ r']*>\s*
]*\bsrc="([^"]+)"[^>]*\balt="([^"]*)"[^>]*>\s*',
+ lambda match: f"})",
+ content,
+ flags=re.IGNORECASE,
+ )
if content:
+ if re.search(r"^#{1,6}\s+.+?\s*$", content, flags=re.MULTILINE):
+ content = re.sub(
+ r"^#{1,6}\s+.+?\s*$",
+ f"# {title}",
+ content,
+ count=1,
+ flags=re.MULTILINE,
+ )
+ else:
+ content = f"# {title}\n\n{content}"
return content + "\n"
return f"# {title}\n"
@@ -533,7 +549,7 @@ def save_upload(filename: str, payload: bytes, page_path: str = "") -> dict[str,
if mime.startswith("video/") or ext in {".mp4", ".webm", ".mov"}:
markdown = f''
else:
- markdown = gallery_image_html(target.name, rel, page_path, payload, ext)
+ markdown = f""
return {
"url": absolute_url,
"relativeUrl": relative_url,
diff --git a/build-site.el b/build-site.el
index e999944..3742e37 100755
--- a/build-site.el
+++ b/build-site.el
@@ -32,6 +32,8 @@ redefine site-root themselves.")
;; Keep the old name around so any stray code still compiles.
(defvaralias 'site-root 'z/site-root)
+(setq create-lockfiles nil)
+
(defun site-path (path)
"Expand PATH relative to `z/site-root'."
(expand-file-name path z/site-root))
@@ -419,7 +421,7 @@ Created with %c on Arch \
(with-temp-buffer
(insert-file-contents filename nil 0 4096)
(goto-char (point-min))
- (if (re-search-forward "^# +\\(.+?\\)\\s-*$" nil t)
+ (if (re-search-forward "^#+ +\\(.+?\\)\\s-*$" nil t)
(match-string 1)
fallback)))
diff --git a/lima/index.md b/lima/index.md
index 98de6d2..9e9a981 100755
--- a/lima/index.md
+++ b/lima/index.md
@@ -1,5 +1,4 @@
-## Welcome to the new lima page!
-
+# Weeee
I made quite a few changes. It all started when I realised that not everyone knows how to use `.org` files and editing with them (they are quite niche). So I decided to make a very unique solution by having markdown files, which through a process of very complicated transformations result into the very page you’re looking at now :)
- You can edit files using this link in [nextcloud](https://nextcloud.zainezq.com/apps/files/files/18016?dir=/lima-website).
@@ -12,4 +11,4 @@ I made quite a few changes. It all started when I realised that not everyone kno
- One other thing, a more personal one: what do you think of all this? am i doing too much? am i doing too little? am i overengineering things? am i forcing you to do something you dont wanna do? these little trinkets work for me, but i’m not sure if it would work for someone else, so at any point if you have reservations, let me know okay?
-
+
diff --git a/posts/career/restful-api.org b/posts/career/restful-api.org
index 316dc22..2dc9f20 100755
--- a/posts/career/restful-api.org
+++ b/posts/career/restful-api.org
@@ -1,8 +1,7 @@
#+TITLE: Restful API
#+OPTIONS: num:nil
-#+DATE: <2026-02-15 Sun 23:00>
+#+DATE: <2026-02-15 Sun 23:00>
#+filetags: :learning:notes:
-#+WIP:
#+COMMENTS: t
#+SLUG: restful-api
diff --git a/posts/posts-list.org b/posts/posts-list.org
index 2176af5..4f7706e 100755
--- a/posts/posts-list.org
+++ b/posts/posts-list.org
@@ -4,7 +4,7 @@
See the categories: @@html:Categories@@
* Posts:
-- [[file:career/career-list.org][Career List]] @@html:07-05-2026 13:53@@
+- [[file:career/career-list.org][Career List]] @@html:07-05-2026 14:01@@
- [[file:posts-list.sync-conflict-20260417-233432-VT6366A.org][Posts List]] @@html:14-04-2026 16:36@@
- [[file:career/ha-dr.org][High Availability, Disaster Recovery and Business Continuity]] @@html:11-03-2026 17:18@@ @@html:learning@@ @@html:notes@@
- [[file:career/javascript.org][Understands the Javascript language]] @@html:11-03-2026 16:52@@ @@html:learning@@ @@html:notes@@
diff --git a/sitemap.org b/sitemap.org
index 3c0b6e7..46aa752 100755
--- a/sitemap.org
+++ b/sitemap.org
@@ -4,6 +4,21 @@
- [[file:recently-updated.sync-conflict-20260417-233430-VT6366A.org][Recently Updated]]
- [[file:wip.org][Work in progress]]
- [[file:recently-updated.org][Recently Updated]]
+- tags
+ - [[file:tags/review.sync-conflict-20260328-203248-VT6366A.org][Tag: review]]
+ - [[file:tags/life.sync-conflict-20260417-233423-VT6366A.org][Tag: life]]
+ - [[file:tags/introduction.org][Tag: introduction]]
+ - [[file:tags/learning.org][Tag: learning]]
+ - [[file:tags/notes.org][Tag: notes]]
+ - [[file:tags/review.org][Tag: review]]
+ - [[file:tags/website.org][Tag: website]]
+ - [[file:tags/update.org][Tag: update]]
+ - [[file:tags/life.org][Tag: life]]
+ - [[file:tags/education.org][Tag: education]]
+ - [[file:tags/insights.org][Tag: insights]]
+ - [[file:tags/reading.org][Tag: reading]]
+ - [[file:tags/emacs.org][Tag: emacs]]
+ - [[file:tags/maths.org][Tag: maths]]
- home
- [[file:home/countdown.org][Countdown]]
- [[file:home/contact.org][Contact]]
@@ -50,19 +65,4 @@
- clean-code
- [[file:books/clean-code/clean-code-notes.org][Clean Code Notes]]
- lima
- - [[file:lima/lima-list.org][Lima]]
-- tags
- - [[file:tags/review.sync-conflict-20260328-203248-VT6366A.org][Tag: review]]
- - [[file:tags/life.sync-conflict-20260417-233423-VT6366A.org][Tag: life]]
- - [[file:tags/introduction.org][Tag: introduction]]
- - [[file:tags/learning.org][Tag: learning]]
- - [[file:tags/notes.org][Tag: notes]]
- - [[file:tags/review.org][Tag: review]]
- - [[file:tags/website.org][Tag: website]]
- - [[file:tags/update.org][Tag: update]]
- - [[file:tags/life.org][Tag: life]]
- - [[file:tags/insights.org][Tag: insights]]
- - [[file:tags/emacs.org][Tag: emacs]]
- - [[file:tags/education.org][Tag: education]]
- - [[file:tags/reading.org][Tag: reading]]
- - [[file:tags/maths.org][Tag: maths]]
\ No newline at end of file
+ - [[file:lima/lima-list.org][Lima]]
\ No newline at end of file