{{ define "main" -}} <main itemprop="mainEntity" class="h-feed hfeed" itemscope="" itemtype="https://schema.org/DataFeed"> <h1 id="bookmarks" class="p-name" itemprop="name headline">My book­marks</h1> {{ partial "processed-content.html" . }} <p role="doc-tip"> Timestamp format: <code>YYYY-MM-DD HH:MM</code>, as per <cite><a href="https://www.ietf.org/rfc/rfc3339.txt">RFC 3339</a></cite> </p> <ul> {{ $bookmarks := getJSON "https://seirdy.one/data/bookmarks.json" -}} {{ range sort $bookmarks "tags" "desc" -}} {{ $bookmark := . -}} {{- $tags := split $bookmark.tags "," -}} {{- $firstTag := index $tags 0 }} {{- $timestamp := dateFormat "2006-01-02 15:04:05-0700" $firstTag }} <li itemprop="dataFeedElement" itemscope="" itemtype="https://schema.org/DataFeedItem"> <meta itemprop="dateCreated" content="{{ $timestamp }}" /><!--Just because we can't have one timestap refer to two items--> <article class="h-entry hentry" itemprop="item" itemscope="" itemtype="https://schema.org/SocialMediaPosting"> <meta itemprop="headline" content="{{ $bookmark.title }}" /><!--Just because we can't have one headline refer to two items--> <h2 itemprop="sharedContent" itemscope="" itemtype="https://schema.org/WebPage" class="p-name"> <a itemprop="url" href="{{ $bookmark.uri }}" class="u-bookmark-of h-cite"> <span itemprop="headline">{{ $bookmark.title | replaceRE `Defunctionalisation` `Defunction­alisation` | safeHTML }}</span> </a> </h2> <p> Bookmarked on: <time class="dt-published published" itemprop="datePublished" datetime="{{ dateFormat "2006-01-02 15:04:05Z07:00" $timestamp }}">{{ dateFormat "2006-01-02 15:04" $timestamp }}</time> <br />Tags: <span itemprop="keywords"> {{- $start := 2 -}} {{- $firstTag := (index $tags 1) -}} {{- if (eq $firstTag "public") -}} {{- $firstTag = (index $tags 2) -}} {{- $start = 3 -}} {{- end -}} {{- printf "<span class=\"p-category\">%s</span>" $firstTag | safeHTML -}} {{- range after $start $tags -}} {{- $tag := . -}} {{- if (ne $tag "public") -}} {{- printf ", <span class=\"p-category\">%s</span>" $tag | safeHTML -}} {{ end -}} {{- end }} </span> </p> <p class="e-summary entry-summary" itemprop="description">{{ $bookmark.description | markdownify | replaceRE `\’` `’` | replaceRE `\ ` `\ ` | replaceRE `\“` `“` | replaceRE `\”` `”` | replaceRE `\…` `—` | replaceRE `\—` `—` | replaceRE `\­` `\­` | replaceRE `‘` `‘` | safeHTML }}</p> </article> </li> {{- end }} </ul> </main> {{ end }}