Compare commits

..

No commits in common. "bafe70ed3728682af41597e908b7b5ad97ef496b" and "c6dd2785af8b7b68b50cb6e9f245b660e3258e99" have entirely different histories.

5 changed files with 16 additions and 27 deletions

4
.kakrc
View file

@ -15,10 +15,6 @@ define-command readme %{
root-edit README.md
}
define-command kakrc %{
root-edit .kakrc
}
# change working directory to the package
hook global -once BufCreate .* %{
change-directory %exp{%opt{project_root}/src/zona}

View file

@ -99,8 +99,6 @@ class ZonaBuilder:
def _build(self):
assert self.items
# sort according to date
# descending order
post_list: list[Item] = sorted(
[item for item in self.items if item.post],
key=lambda item: item.metadata.date
@ -108,16 +106,12 @@ class ZonaBuilder:
else date.min,
reverse=True,
)
# number of posts
posts = len(post_list)
# link post chronology
for i, item in enumerate(post_list):
# prev: older post
older = post_list[i + 1] if i + 1 < posts else None
# next: newer post
newer = post_list[i - 1] if i > 0 else None
item.older = older
item.newer = newer
prev = post_list[i - 1] if i > 0 else None
next = post_list[i + 1] if i < posts - 2 else None
item.previous = prev
item.next = next
templater = Templater(
config=self.config,

View file

@ -1,11 +1,9 @@
<div class="post-nav">
<center>
<span class="symbol">&lt;</span>{% if newer %}<a href="{{ newer }}">newr</a>{%
else %}<span class="placeholder">null</span>{% endif %}<span
class="symbol"
><span class="bar"></span></span>{% if older %}<a href="{{ older }}"
>oldr</a>{% else %}<span class="placeholder">null</span>{% endif %}<span
class="symbol"
>&gt;</span>
<span class="symbol">&lt;</span>{% if previous %}<a
href="{{ previous }}"
>prev</a>{% endif %}{% if previous and next %}<span class="symbol"
>|</span>{% endif %}{% if next %}<a href="{{ next }}">next</a>{% endif
%}<span class="symbol">&gt;</span>
</center>
</div>

View file

@ -23,8 +23,8 @@ class Item:
type: ItemType | None = None
copy: bool = True
post: bool = False
newer: Item | None = None
older: Item | None = None
next: Item | None = None
previous: Item | None = None
# @dataclass

View file

@ -27,6 +27,7 @@ def get_footer(template_dir: Path) -> str | None:
return html_footer.read_text()
# TODO: add next/prev post button logic to posts
# TODO: add a recent posts element that can be included elsewhere?
class Templater:
def __init__(
@ -78,11 +79,11 @@ class Templater:
header=header,
footer=footer,
is_post=item.post,
newer=util.normalize_url(item.newer.url)
if item.newer
next=util.normalize_url(item.next.url)
if item.next
else None,
older=util.normalize_url(item.older.url)
if item.older
previous=util.normalize_url(item.previous.url)
if item.previous
else None,
post_list=self.post_list,
)