Creator links, improved author listings

This commit is contained in:
Madison Rye Progress
2026-03-12 18:20:15 -07:00
parent af0c10fe5d
commit 59038f7562
4 changed files with 60 additions and 18 deletions

3
data/creators.yml Normal file
View File

@ -0,0 +1,3 @@
Madison Rye Progress: https://wiki.post-self.ink/wiki/Madison_Rye_Progress
Samantha Yule Fireheart: https://wiki.post-self.ink/wiki/Samantha_Yule_Fireheart
"Krzysztof \"Tomash\" Drewniak": https://wiki.post-self.ink/wiki/User:Tomash

View File

@ -27,7 +27,7 @@
- title: Coffee Leak - title: Coffee Leak
url: /stories/coffee-leak url: /stories/coffee-leak
authors: authors:
- Krzystof "Tomash" Drewniak - Krzysztof "Tomash" Drewniak
type: short story type: short story
years: years:
- 2299 - 2299
@ -340,6 +340,7 @@
- 23462355 - 23462355
characters: characters:
- The Bălan clade - The Bălan clade
description: Selected correspondences of the Bălan clade systime 222232.
############## ##############
# Motes Played # Motes Played
@ -434,8 +435,9 @@
collection: hashichzur collection: hashichzur
authors: authors:
- Madison Rye Progress - Madison Rye Progress
- Samantha Yule Fireheart (contributor) contributors:
- Krzysztof "Tomash" Drewniak (contributor) - Samantha Yule Fireheart
- Krzysztof "Tomash" Drewniak
type: novel type: novel
years: years:
- 2403 - 2403
@ -476,7 +478,8 @@
collection: hashichzur collection: hashichzur
authors: authors:
- Madison Rye Progress - Madison Rye Progress
- Samantha Yule Fireheart (contributor) contributors:
- Samantha Yule Fireheart
type: novel type: novel
years: years:
- 2401 - 2401
@ -572,7 +575,7 @@
- 2401 - 2401
characters: characters:
- Scout At The Party V - Scout At The Party V
decription: It may stumble, but nothing stops The Party. description: It may stumble, but nothing stops The Party.
- title: A Well-Trained Eye - title: A Well-Trained Eye
url: https://marsh.post-self.ink/stories/a-well-trained-eye/ url: https://marsh.post-self.ink/stories/a-well-trained-eye/

View File

@ -4,7 +4,16 @@
<dl> <dl>
{{- range $work := sort (where (where $works "collection" nil) "parent" nil) "title" "asc" }} {{- range $work := sort (where (where $works "collection" nil) "parent" nil) "title" "asc" }}
<dt><a href="{{ $work.url }}">{{ $work.title }}</a> <span class="author">by {{ delimit $work.authors ", " }}</span></dt> <dt><a href="{{ $work.url }}">{{ $work.title }}</a> <span class="author">by
{{ range $k, $author := $work.authors }}
{{- if index hugo.Data.creators $author }}<a href="{{ index hugo.Data.creators $author }}" target="_blank">{{ $author | markdownify }}</a>{{ else }}{{ $author | markdownify }}{{ end }}
{{- if ne (add $k 1) ($work.authors | len) }}, {{ end }}
{{- end }}
{{- range $contributor := $work.contributors }},
{{ if index hugo.Data.creators $contributor }}<a href="{{ index hugo.Data.creators $contributor }}" target="_blank">{{ $contributor | markdownify }}</a>{{ else }}{{ $contributor | markdownify }}{{ end }}
<small>(contributor)</small>
{{- end }}
</span></dt>
<dd> <dd>
{{ $work.description | markdownify }} {{ $work.description | markdownify }}
<ul class="meta"> <ul class="meta">
@ -22,7 +31,16 @@
<h3>Associated works</h3> <h3>Associated works</h3>
<dl> <dl>
{{- range $subwork := where $works "parent" "eq" $work.title }} {{- range $subwork := where $works "parent" "eq" $work.title }}
<dt><a href="{{ $subwork.url }}">{{ $subwork.title }}</a> <span class="author">by {{ delimit $subwork.authors ", " }}</span></dt> <dt><a href="{{ $subwork.url }}">{{ $subwork.title }}</a> <span class="author">by
{{ range $k, $author := $subwork.authors }}
{{- if index hugo.Data.creators $author }}<a href="{{ index hugo.Data.creators $author }}" target="_blank">{{ $author | markdownify }}</a>{{ else }}{{ $author | markdownify }}{{ end }}
{{- if ne (add $k 1) ($work.authors | len) }}, {{ end }}
{{- end }}
{{- range $contributor := $subwork.contributors }},
{{ if index hugo.Data.creators $contributor }}<a href="{{ index hugo.Data.creators $contributor }}" target="_blank">{{ $contributor | markdownify }}</a>{{ else }}{{ $contributor | markdownify }}{{ end }}
<small>(contributor)</small>
{{- end }}
</span></dt>
<dd> <dd>
{{ $subwork.description | markdownify }} {{ $subwork.description | markdownify }}
<ul class="meta"> <ul class="meta">
@ -48,16 +66,25 @@
<dl> <dl>
{{- range $work := where $works "collection" $collection.id }} {{- range $work := where $works "collection" $collection.id }}
<dt><a href="{{ $work.url }}">{{ $work.title }}</a> <span class="author">by {{ delimit $work.authors ", " }}</span></dt> <dt><a href="{{ $work.url }}">{{ $work.title }}</a> <span class="author">by
{{ range $k, $author := $work.authors }}
{{- if index hugo.Data.creators $author }}<a href="{{ index hugo.Data.creators $author }}" target="_blank">{{ $author | markdownify }}</a>{{ else }}{{ $author | markdownify }}{{ end }}
{{- if ne (add $k 1) ($work.authors | len) }}, {{ end }}
{{- end }}
{{- range $contributor := $work.contributors }},
{{ if index hugo.Data.creators $contributor }}<a href="{{ index hugo.Data.creators $contributor }}" target="_blank">{{ $contributor | markdownify }}</a>{{ else }}{{ $contributor | markdownify }}{{ end }}
<small>(contributor)</small>
{{- end }}
</span></dt>
<dd> <dd>
{{ $work.description | markdownify }} {{ $work.description | markdownify }}
<ul class="meta"> <ul class="meta">
<li><em>Type:</em> {{ $work.type }}</li> <li><em>Type:</em> {{ $work.type }}</li>
<li><em>Characters and dates:</em> <ul> <li><em>Characters and dates:</em>
{{- range $k, $v := $work.years }} {{- range $k, $v := $work.years }}
<li>{{ index $work.characters $k }} — {{ $v }}</li> {{ index $work.characters $k }} — {{ $v }}
{{- end }} {{- if ne (add $k 1) ($work.years | len) }}, {{- end }}
</ul></li> {{- end }}</li>
{{- if $work.cw }}<li><em>CWs:</em> {{ $work.cw }}</li>{{- end }} {{- if $work.cw }}<li><em>CWs:</em> {{ $work.cw }}</li>{{- end }}
{{- if $work.spoilers }}<li><em>Spoilers:</em> {{ $work.spoilers | markdownify }}</li>{{- end }} {{- if $work.spoilers }}<li><em>Spoilers:</em> {{ $work.spoilers | markdownify }}</li>{{- end }}
</ul> </ul>
@ -66,7 +93,16 @@
<h3>Associated works</h3> <h3>Associated works</h3>
<dl> <dl>
{{- range $subwork := where $works "parent" "eq" $work.title }} {{- range $subwork := where $works "parent" "eq" $work.title }}
<dt><a href="{{ $subwork.url }}">{{ $subwork.title }}</a> <span class="author">by {{ delimit $subwork.authors ", " }}</span></dt> <dt><a href="{{ $subwork.url }}">{{ $subwork.title }}</a> <span class="author">by
{{ range $k, $author := $subwork.authors }}
{{- if index hugo.Data.creators $author }}<a href="{{ index hugo.Data.creators $author }}" target="_blank">{{ $author | markdownify }}</a>{{ else }}{{ $author | markdownify }}{{ end }}
{{- if ne (add $k 1) ($work.authors | len) }}, {{ end }}
{{- end }}
{{- range $contributor := $subwork.contributors }},
{{ if index hugo.Data.creators $contributor }}<a href="{{ index hugo.Data.creators $contributor }}" target="_blank">{{ $contributor | markdownify }}</a>{{ else }}{{ $contributor | markdownify }}{{ end }}
<small>(contributor)</small>
{{- end }}
</span></dt>
<dd> <dd>
{{ $subwork.description | markdownify }} {{ $subwork.description | markdownify }}
<ul class="meta"> <ul class="meta">
@ -90,6 +126,3 @@
</section> </section>
{{- end }} {{- end }}
<style>
</style>

View File

@ -200,6 +200,9 @@ main.story .author, main.story .character, main.story h3 {
margin-left: 1.5rem; margin-left: 1.5rem;
} }
.works {
text-align: left;
}
.works dt { .works dt {
background: rgba(127, 127, 127, 0.2); background: rgba(127, 127, 127, 0.2);
background: linear-gradient(135deg, transparent 0.5rem, rgba(127, 127, 127, 0.2) 0) top left; background: linear-gradient(135deg, transparent 0.5rem, rgba(127, 127, 127, 0.2) 0) top left;
@ -211,13 +214,13 @@ main.story .author, main.story .character, main.story h3 {
.works .author { .works .author {
font-size: 14pt; font-size: 14pt;
font-style: italic; font-style: italic;
opacity: 0.75;
} }
.works dd { .works dd {
background-color: rgba(127, 127, 127, 0.1); background-color: rgba(127, 127, 127, 0.1);
background: linear-gradient(315deg, transparent 0.5rem, rgba(127, 127, 127, 0.1) 0) bottom right; background: linear-gradient(315deg, transparent 0.5rem, rgba(127, 127, 127, 0.1) 0) bottom right;
margin: 0 0 2rem 0; margin: 0 0 2rem 0;
padding: 0.25rem 1rem 0.25rem 2rem; padding: 0.25rem 1rem 0.25rem 2rem;
text-align: left;
font-size: 16pt; font-size: 16pt;
} }
.works h2 { .works h2 {