1<!doctype html>
2<html lang="en">
3<head>
4<meta charset="utf-8">
5<meta name="viewport" content="width=device-width, initial-scale=1">
6<meta name="color-scheme" content="light dark">
7<title>commits · long · example.test</title>
8<meta name="theme-color" media="(prefers-color-scheme: light)" content="#ffffff">
9<meta name="theme-color" media="(prefers-color-scheme: dark)" content="#0c0c0c">
10<meta name="apple-mobile-web-app-title" content="ermite">
11<link rel="icon" type="image/svg+xml" href="/-/static/img/icon.HASH.svg">
12<link rel="apple-touch-icon" href="/-/static/app/apple-touch-icon.HASH.png">
13<link rel="manifest" href="/-/static/app/manifest.HASH.webmanifest">
14<link rel="preload" href="/-/static/fonts/atkinson-next.HASH.woff2" as="font" type="font/woff2" crossorigin>
15<link rel="stylesheet" href="/-/static/css/ermite.HASH.css">
16<meta name="htmx-config" content='{"history":false,"includeIndicatorCSS":false,"extensions":"sse, hx-live"}'>
17<script src="/-/static/js/htmx.min.HASH.js" defer>
18</script>
19<script src="/-/static/js/hx-live.min.HASH.js" defer>
20</script>
21<script src="/-/static/js/hx-sse.min.HASH.js" defer>
22</script>
23<script src="/-/static/js/store.HASH.js">
24</script>
25<script src="/-/static/js/ermite.HASH.js" defer>
26</script>
27<script src="/-/static/js/files.HASH.js" defer>
28</script>
29<script src="/-/static/js/passkey.HASH.js" defer>
30</script>
31<script src="/-/static/js/log.HASH.js" defer>
32</script>
33</head>
34<body data-ref="main" data-sha="SHA40" data-sel="" data-nav="" data-paths="/long/paths/SHA40" data-blob="/long/blob/main">
35<a class="skip" href="#main">skip to content</a>
36<header class="hdr">
37<div class="hdr-top">
38<a class="brand" href="/" data-g="h" aria-label="home" title="home (g h)">
39<span class="brand-mark" aria-hidden="true">
40</span>
41</a>
42<nav class="crumbs" aria-label="Path">
43<ol>
44<li>
45<a href="/long">long</a>
46</li>
47<li>
48<a href="/long/commits/main">commits</a>
49</li>
50<li>
51<a href="/long/commits/main" aria-current="page">main</a>
52</li>
53</ol>
54</nav>
55<div class="hdr-acts">
56<a class="btn ref" href="/long/refs" data-fire="refs" aria-keyshortcuts="b" title="switch branch or tag (b)">
57<span class="ico i-branch" aria-hidden="true">
58</span>
59<span class="ref-name">main</span>
60<span class="sha">SHA7</span>
61</a>
62<button type="button" class="btn search" data-js aria-haspopup="dialog" aria-controls="panel-cmd" aria-keyshortcuts="Control+K :" title="go to a section, ref, file or repo (ctrl k or :)" data-fire="cmd">
63<span class="ico i-search" aria-hidden="true">
64</span>
65<span class="search-label">Go to…</span>
66<kbd aria-hidden="true">ctrl k</kbd>
67</button>
68</div>
69</div>
70<nav class="tabs" aria-label="Sections">
71<ul>
72<li>
73<a href="/long" data-key="g s">Summary <kbd aria-hidden="true">g s</kbd>
74</a>
75</li>
76<li>
77<a href="/long/tree/main" data-key="g f">Files <kbd aria-hidden="true">g f</kbd>
78</a>
79</li>
80<li>
81<a href="/long/commits/main" data-key="g c" aria-current="page">Commits <kbd aria-hidden="true">g c</kbd>
82</a>
83</li>
84<li>
85<a href="/long/refs" data-key="g b">Branches & tags <kbd aria-hidden="true">g b</kbd>
86</a>
87</li>
88<li>
89<a href="/long/merge-requests" data-key="g m">Merge requests <kbd aria-hidden="true">g m</kbd>
90</a>
91</li>
92<li>
93<a href="/long/releases" data-key="g r">Releases <kbd aria-hidden="true">g r</kbd>
94</a>
95</li>
96<li>
97<a href="/long/actions" data-key="g a">Actions <kbd aria-hidden="true">g a</kbd>
98</a>
99</li>
100</ul>
101</nav>
102</header>
103<div class="work has-rail">
104<main id="main" tabindex="-1">
105<div class="filter">
106<label for="commit-filter" class="sr">filter</label>
107<input id="commit-filter" type="search" data-filter=".days tr" data-groups=".days section" placeholder="Filter by subject, sha or author…" autocomplete="off" hx-on:input="ermite.filter(this)">
108</div>
109<div id="commits-head" class="live-slot" role="status" data-slot>
110</div>
111<div class="days">
112<section aria-label="2026-03-26">
113<h2 class="rule-h">
114<span>2026-03-26</span>
115</h2>
116<table class="list commits" aria-label="Commits">
117<tbody data-rows>
118<tr id="c-SHA7" data-cursor>
119<td class="c-sha mute">SHA7</td>
120<td class="c-subject">
121<a href="/long/commit/SHA40">commit number 51</a>
122<span class="pill">main</span>
123</td>
124<td class="c-ck">
125</td>
126<td class="c-who dim">T</td>
127<td class="c-when nowrap dim">
128<time datetime="STAMP" title="STAMP">AGO</time>
129</td>
130</tr>
131<tr id="c-SHA7">
132<td class="c-sha mute">SHA7</td>
133<td class="c-subject">
134<a href="/long/commit/SHA40">commit number 50</a>
135</td>
136<td class="c-ck">
137</td>
138<td class="c-who dim">T</td>
139<td class="c-when nowrap dim">
140<time datetime="STAMP" title="STAMP">AGO</time>
141</td>
142</tr>
143</tbody>
144</table>
145</section>
146<section aria-label="2026-03-25">
147<h2 class="rule-h">
148<span>2026-03-25</span>
149</h2>
150<table class="list commits" aria-label="Commits">
151<tbody data-rows>
152<tr id="c-SHA7">
153<td class="c-sha mute">SHA7</td>
154<td class="c-subject">
155<a href="/long/commit/SHA40">commit number 49</a>
156</td>
157<td class="c-ck">
158</td>
159<td class="c-who dim">T</td>
160<td class="c-when nowrap dim">
161<time datetime="STAMP" title="STAMP">AGO</time>
162</td>
163</tr>
164<tr id="c-SHA7">
165<td class="c-sha mute">SHA7</td>
166<td class="c-subject">
167<a href="/long/commit/SHA40">commit number 48</a>
168</td>
169<td class="c-ck">
170</td>
171<td class="c-who dim">T</td>
172<td class="c-when nowrap dim">
173<time datetime="STAMP" title="STAMP">AGO</time>
174</td>
175</tr>
176</tbody>
177</table>
178</section>
179<section aria-label="2026-03-24">
180<h2 class="rule-h">
181<span>2026-03-24</span>
182</h2>
183<table class="list commits" aria-label="Commits">
184<tbody data-rows>
185<tr id="c-SHA7">
186<td class="c-sha mute">SHA7</td>
187<td class="c-subject">
188<a href="/long/commit/SHA40">commit number 47</a>
189</td>
190<td class="c-ck">
191</td>
192<td class="c-who dim">T</td>
193<td class="c-when nowrap dim">
194<time datetime="STAMP" title="STAMP">AGO</time>
195</td>
196</tr>
197<tr id="c-SHA7">
198<td class="c-sha mute">SHA7</td>
199<td class="c-subject">
200<a href="/long/commit/SHA40">commit number 46</a>
201</td>
202<td class="c-ck">
203</td>
204<td class="c-who dim">T</td>
205<td class="c-when nowrap dim">
206<time datetime="STAMP" title="STAMP">AGO</time>
207</td>
208</tr>
209</tbody>
210</table>
211</section>
212<section aria-label="2026-03-23">
213<h2 class="rule-h">
214<span>2026-03-23</span>
215</h2>
216<table class="list commits" aria-label="Commits">
217<tbody data-rows>
218<tr id="c-SHA7">
219<td class="c-sha mute">SHA7</td>
220<td class="c-subject">
221<a href="/long/commit/SHA40">commit number 45</a>
222</td>
223<td class="c-ck">
224</td>
225<td class="c-who dim">T</td>
226<td class="c-when nowrap dim">
227<time datetime="STAMP" title="STAMP">AGO</time>
228</td>
229</tr>
230<tr id="c-SHA7">
231<td class="c-sha mute">SHA7</td>
232<td class="c-subject">
233<a href="/long/commit/SHA40">commit number 44</a>
234</td>
235<td class="c-ck">
236</td>
237<td class="c-who dim">T</td>
238<td class="c-when nowrap dim">
239<time datetime="STAMP" title="STAMP">AGO</time>
240</td>
241</tr>
242</tbody>
243</table>
244</section>
245<section aria-label="2026-03-22">
246<h2 class="rule-h">
247<span>2026-03-22</span>
248</h2>
249<table class="list commits" aria-label="Commits">
250<tbody data-rows>
251<tr id="c-SHA7">
252<td class="c-sha mute">SHA7</td>
253<td class="c-subject">
254<a href="/long/commit/SHA40">commit number 43</a>
255</td>
256<td class="c-ck">
257</td>
258<td class="c-who dim">T</td>
259<td class="c-when nowrap dim">
260<time datetime="STAMP" title="STAMP">AGO</time>
261</td>
262</tr>
263<tr id="c-SHA7">
264<td class="c-sha mute">SHA7</td>
265<td class="c-subject">
266<a href="/long/commit/SHA40">commit number 42</a>
267</td>
268<td class="c-ck">
269</td>
270<td class="c-who dim">T</td>
271<td class="c-when nowrap dim">
272<time datetime="STAMP" title="STAMP">AGO</time>
273</td>
274</tr>
275</tbody>
276</table>
277</section>
278<section aria-label="2026-03-21">
279<h2 class="rule-h">
280<span>2026-03-21</span>
281</h2>
282<table class="list commits" aria-label="Commits">
283<tbody data-rows>
284<tr id="c-SHA7">
285<td class="c-sha mute">SHA7</td>
286<td class="c-subject">
287<a href="/long/commit/SHA40">commit number 41</a>
288</td>
289<td class="c-ck">
290</td>
291<td class="c-who dim">T</td>
292<td class="c-when nowrap dim">
293<time datetime="STAMP" title="STAMP">AGO</time>
294</td>
295</tr>
296<tr id="c-SHA7">
297<td class="c-sha mute">SHA7</td>
298<td class="c-subject">
299<a href="/long/commit/SHA40">commit number 40</a>
300</td>
301<td class="c-ck">
302</td>
303<td class="c-who dim">T</td>
304<td class="c-when nowrap dim">
305<time datetime="STAMP" title="STAMP">AGO</time>
306</td>
307</tr>
308</tbody>
309</table>
310</section>
311<section aria-label="2026-03-20">
312<h2 class="rule-h">
313<span>2026-03-20</span>
314</h2>
315<table class="list commits" aria-label="Commits">
316<tbody data-rows>
317<tr id="c-SHA7">
318<td class="c-sha mute">SHA7</td>
319<td class="c-subject">
320<a href="/long/commit/SHA40">commit number 39</a>
321</td>
322<td class="c-ck">
323</td>
324<td class="c-who dim">T</td>
325<td class="c-when nowrap dim">
326<time datetime="STAMP" title="STAMP">AGO</time>
327</td>
328</tr>
329<tr id="c-SHA7">
330<td class="c-sha mute">SHA7</td>
331<td class="c-subject">
332<a href="/long/commit/SHA40">commit number 38</a>
333</td>
334<td class="c-ck">
335</td>
336<td class="c-who dim">T</td>
337<td class="c-when nowrap dim">
338<time datetime="STAMP" title="STAMP">AGO</time>
339</td>
340</tr>
341</tbody>
342</table>
343</section>
344<section aria-label="2026-03-19">
345<h2 class="rule-h">
346<span>2026-03-19</span>
347</h2>
348<table class="list commits" aria-label="Commits">
349<tbody data-rows>
350<tr id="c-SHA7">
351<td class="c-sha mute">SHA7</td>
352<td class="c-subject">
353<a href="/long/commit/SHA40">commit number 37</a>
354</td>
355<td class="c-ck">
356</td>
357<td class="c-who dim">T</td>
358<td class="c-when nowrap dim">
359<time datetime="STAMP" title="STAMP">AGO</time>
360</td>
361</tr>
362<tr id="c-SHA7">
363<td class="c-sha mute">SHA7</td>
364<td class="c-subject">
365<a href="/long/commit/SHA40">commit number 36</a>
366</td>
367<td class="c-ck">
368</td>
369<td class="c-who dim">T</td>
370<td class="c-when nowrap dim">
371<time datetime="STAMP" title="STAMP">AGO</time>
372</td>
373</tr>
374</tbody>
375</table>
376</section>
377<section aria-label="2026-03-18">
378<h2 class="rule-h">
379<span>2026-03-18</span>
380</h2>
381<table class="list commits" aria-label="Commits">
382<tbody data-rows>
383<tr id="c-SHA7">
384<td class="c-sha mute">SHA7</td>
385<td class="c-subject">
386<a href="/long/commit/SHA40">commit number 35</a>
387</td>
388<td class="c-ck">
389</td>
390<td class="c-who dim">T</td>
391<td class="c-when nowrap dim">
392<time datetime="STAMP" title="STAMP">AGO</time>
393</td>
394</tr>
395<tr id="c-SHA7">
396<td class="c-sha mute">SHA7</td>
397<td class="c-subject">
398<a href="/long/commit/SHA40">commit number 34</a>
399</td>
400<td class="c-ck">
401</td>
402<td class="c-who dim">T</td>
403<td class="c-when nowrap dim">
404<time datetime="STAMP" title="STAMP">AGO</time>
405</td>
406</tr>
407</tbody>
408</table>
409</section>
410<section aria-label="2026-03-17">
411<h2 class="rule-h">
412<span>2026-03-17</span>
413</h2>
414<table class="list commits" aria-label="Commits">
415<tbody data-rows>
416<tr id="c-SHA7">
417<td class="c-sha mute">SHA7</td>
418<td class="c-subject">
419<a href="/long/commit/SHA40">commit number 33</a>
420</td>
421<td class="c-ck">
422</td>
423<td class="c-who dim">T</td>
424<td class="c-when nowrap dim">
425<time datetime="STAMP" title="STAMP">AGO</time>
426</td>
427</tr>
428<tr id="c-SHA7">
429<td class="c-sha mute">SHA7</td>
430<td class="c-subject">
431<a href="/long/commit/SHA40">commit number 32</a>
432</td>
433<td class="c-ck">
434</td>
435<td class="c-who dim">T</td>
436<td class="c-when nowrap dim">
437<time datetime="STAMP" title="STAMP">AGO</time>
438</td>
439</tr>
440</tbody>
441</table>
442</section>
443<section aria-label="2026-03-16">
444<h2 class="rule-h">
445<span>2026-03-16</span>
446</h2>
447<table class="list commits" aria-label="Commits">
448<tbody data-rows>
449<tr id="c-SHA7">
450<td class="c-sha mute">SHA7</td>
451<td class="c-subject">
452<a href="/long/commit/SHA40">commit number 31</a>
453</td>
454<td class="c-ck">
455</td>
456<td class="c-who dim">T</td>
457<td class="c-when nowrap dim">
458<time datetime="STAMP" title="STAMP">AGO</time>
459</td>
460</tr>
461<tr id="c-SHA7">
462<td class="c-sha mute">SHA7</td>
463<td class="c-subject">
464<a href="/long/commit/SHA40">commit number 30</a>
465</td>
466<td class="c-ck">
467</td>
468<td class="c-who dim">T</td>
469<td class="c-when nowrap dim">
470<time datetime="STAMP" title="STAMP">AGO</time>
471</td>
472</tr>
473</tbody>
474</table>
475</section>
476<section aria-label="2026-03-15">
477<h2 class="rule-h">
478<span>2026-03-15</span>
479</h2>
480<table class="list commits" aria-label="Commits">
481<tbody data-rows>
482<tr id="c-SHA7">
483<td class="c-sha mute">SHA7</td>
484<td class="c-subject">
485<a href="/long/commit/SHA40">commit number 29</a>
486</td>
487<td class="c-ck">
488</td>
489<td class="c-who dim">T</td>
490<td class="c-when nowrap dim">
491<time datetime="STAMP" title="STAMP">AGO</time>
492</td>
493</tr>
494<tr id="c-SHA7">
495<td class="c-sha mute">SHA7</td>
496<td class="c-subject">
497<a href="/long/commit/SHA40">commit number 28</a>
498</td>
499<td class="c-ck">
500</td>
501<td class="c-who dim">T</td>
502<td class="c-when nowrap dim">
503<time datetime="STAMP" title="STAMP">AGO</time>
504</td>
505</tr>
506</tbody>
507</table>
508</section>
509<section aria-label="2026-03-14">
510<h2 class="rule-h">
511<span>2026-03-14</span>
512</h2>
513<table class="list commits" aria-label="Commits">
514<tbody data-rows>
515<tr id="c-SHA7">
516<td class="c-sha mute">SHA7</td>
517<td class="c-subject">
518<a href="/long/commit/SHA40">commit number 27</a>
519</td>
520<td class="c-ck">
521</td>
522<td class="c-who dim">T</td>
523<td class="c-when nowrap dim">
524<time datetime="STAMP" title="STAMP">AGO</time>
525</td>
526</tr>
527<tr id="c-SHA7">
528<td class="c-sha mute">SHA7</td>
529<td class="c-subject">
530<a href="/long/commit/SHA40">commit number 26</a>
531</td>
532<td class="c-ck">
533</td>
534<td class="c-who dim">T</td>
535<td class="c-when nowrap dim">
536<time datetime="STAMP" title="STAMP">AGO</time>
537</td>
538</tr>
539</tbody>
540</table>
541</section>
542<section aria-label="2026-03-13">
543<h2 class="rule-h">
544<span>2026-03-13</span>
545</h2>
546<table class="list commits" aria-label="Commits">
547<tbody data-rows>
548<tr id="c-SHA7">
549<td class="c-sha mute">SHA7</td>
550<td class="c-subject">
551<a href="/long/commit/SHA40">commit number 25</a>
552</td>
553<td class="c-ck">
554</td>
555<td class="c-who dim">T</td>
556<td class="c-when nowrap dim">
557<time datetime="STAMP" title="STAMP">AGO</time>
558</td>
559</tr>
560<tr id="c-SHA7">
561<td class="c-sha mute">SHA7</td>
562<td class="c-subject">
563<a href="/long/commit/SHA40">commit number 24</a>
564</td>
565<td class="c-ck">
566</td>
567<td class="c-who dim">T</td>
568<td class="c-when nowrap dim">
569<time datetime="STAMP" title="STAMP">AGO</time>
570</td>
571</tr>
572</tbody>
573</table>
574</section>
575<section aria-label="2026-03-12">
576<h2 class="rule-h">
577<span>2026-03-12</span>
578</h2>
579<table class="list commits" aria-label="Commits">
580<tbody data-rows>
581<tr id="c-SHA7">
582<td class="c-sha mute">SHA7</td>
583<td class="c-subject">
584<a href="/long/commit/SHA40">commit number 23</a>
585</td>
586<td class="c-ck">
587</td>
588<td class="c-who dim">T</td>
589<td class="c-when nowrap dim">
590<time datetime="STAMP" title="STAMP">AGO</time>
591</td>
592</tr>
593<tr id="c-SHA7">
594<td class="c-sha mute">SHA7</td>
595<td class="c-subject">
596<a href="/long/commit/SHA40">commit number 22</a>
597</td>
598<td class="c-ck">
599</td>
600<td class="c-who dim">T</td>
601<td class="c-when nowrap dim">
602<time datetime="STAMP" title="STAMP">AGO</time>
603</td>
604</tr>
605</tbody>
606</table>
607</section>
608<section aria-label="2026-03-11">
609<h2 class="rule-h">
610<span>2026-03-11</span>
611</h2>
612<table class="list commits" aria-label="Commits">
613<tbody data-rows>
614<tr id="c-SHA7">
615<td class="c-sha mute">SHA7</td>
616<td class="c-subject">
617<a href="/long/commit/SHA40">commit number 21</a>
618</td>
619<td class="c-ck">
620</td>
621<td class="c-who dim">T</td>
622<td class="c-when nowrap dim">
623<time datetime="STAMP" title="STAMP">AGO</time>
624</td>
625</tr>
626<tr id="c-SHA7">
627<td class="c-sha mute">SHA7</td>
628<td class="c-subject">
629<a href="/long/commit/SHA40">commit number 20</a>
630</td>
631<td class="c-ck">
632</td>
633<td class="c-who dim">T</td>
634<td class="c-when nowrap dim">
635<time datetime="STAMP" title="STAMP">AGO</time>
636</td>
637</tr>
638</tbody>
639</table>
640</section>
641<section aria-label="2026-03-10">
642<h2 class="rule-h">
643<span>2026-03-10</span>
644</h2>
645<table class="list commits" aria-label="Commits">
646<tbody data-rows>
647<tr id="c-SHA7">
648<td class="c-sha mute">SHA7</td>
649<td class="c-subject">
650<a href="/long/commit/SHA40">commit number 19</a>
651</td>
652<td class="c-ck">
653</td>
654<td class="c-who dim">T</td>
655<td class="c-when nowrap dim">
656<time datetime="STAMP" title="STAMP">AGO</time>
657</td>
658</tr>
659<tr id="c-SHA7">
660<td class="c-sha mute">SHA7</td>
661<td class="c-subject">
662<a href="/long/commit/SHA40">commit number 18</a>
663</td>
664<td class="c-ck">
665</td>
666<td class="c-who dim">T</td>
667<td class="c-when nowrap dim">
668<time datetime="STAMP" title="STAMP">AGO</time>
669</td>
670</tr>
671</tbody>
672</table>
673</section>
674<section aria-label="2026-03-09">
675<h2 class="rule-h">
676<span>2026-03-09</span>
677</h2>
678<table class="list commits" aria-label="Commits">
679<tbody data-rows>
680<tr id="c-SHA7">
681<td class="c-sha mute">SHA7</td>
682<td class="c-subject">
683<a href="/long/commit/SHA40">commit number 17</a>
684</td>
685<td class="c-ck">
686</td>
687<td class="c-who dim">T</td>
688<td class="c-when nowrap dim">
689<time datetime="STAMP" title="STAMP">AGO</time>
690</td>
691</tr>
692<tr id="c-SHA7">
693<td class="c-sha mute">SHA7</td>
694<td class="c-subject">
695<a href="/long/commit/SHA40">commit number 16</a>
696</td>
697<td class="c-ck">
698</td>
699<td class="c-who dim">T</td>
700<td class="c-when nowrap dim">
701<time datetime="STAMP" title="STAMP">AGO</time>
702</td>
703</tr>
704</tbody>
705</table>
706</section>
707<section aria-label="2026-03-08">
708<h2 class="rule-h">
709<span>2026-03-08</span>
710</h2>
711<table class="list commits" aria-label="Commits">
712<tbody data-rows>
713<tr id="c-SHA7">
714<td class="c-sha mute">SHA7</td>
715<td class="c-subject">
716<a href="/long/commit/SHA40">commit number 15</a>
717</td>
718<td class="c-ck">
719</td>
720<td class="c-who dim">T</td>
721<td class="c-when nowrap dim">
722<time datetime="STAMP" title="STAMP">AGO</time>
723</td>
724</tr>
725<tr id="c-SHA7">
726<td class="c-sha mute">SHA7</td>
727<td class="c-subject">
728<a href="/long/commit/SHA40">commit number 14</a>
729</td>
730<td class="c-ck">
731</td>
732<td class="c-who dim">T</td>
733<td class="c-when nowrap dim">
734<time datetime="STAMP" title="STAMP">AGO</time>
735</td>
736</tr>
737</tbody>
738</table>
739</section>
740<section aria-label="2026-03-07">
741<h2 class="rule-h">
742<span>2026-03-07</span>
743</h2>
744<table class="list commits" aria-label="Commits">
745<tbody data-rows>
746<tr id="c-SHA7">
747<td class="c-sha mute">SHA7</td>
748<td class="c-subject">
749<a href="/long/commit/SHA40">commit number 13</a>
750</td>
751<td class="c-ck">
752</td>
753<td class="c-who dim">T</td>
754<td class="c-when nowrap dim">
755<time datetime="STAMP" title="STAMP">AGO</time>
756</td>
757</tr>
758<tr id="c-SHA7">
759<td class="c-sha mute">SHA7</td>
760<td class="c-subject">
761<a href="/long/commit/SHA40">commit number 12</a>
762</td>
763<td class="c-ck">
764</td>
765<td class="c-who dim">T</td>
766<td class="c-when nowrap dim">
767<time datetime="STAMP" title="STAMP">AGO</time>
768</td>
769</tr>
770</tbody>
771</table>
772</section>
773<section aria-label="2026-03-06">
774<h2 class="rule-h">
775<span>2026-03-06</span>
776</h2>
777<table class="list commits" aria-label="Commits">
778<tbody data-rows>
779<tr id="c-SHA7">
780<td class="c-sha mute">SHA7</td>
781<td class="c-subject">
782<a href="/long/commit/SHA40">commit number 11</a>
783</td>
784<td class="c-ck">
785</td>
786<td class="c-who dim">T</td>
787<td class="c-when nowrap dim">
788<time datetime="STAMP" title="STAMP">AGO</time>
789</td>
790</tr>
791<tr id="c-SHA7">
792<td class="c-sha mute">SHA7</td>
793<td class="c-subject">
794<a href="/long/commit/SHA40">commit number 10</a>
795</td>
796<td class="c-ck">
797</td>
798<td class="c-who dim">T</td>
799<td class="c-when nowrap dim">
800<time datetime="STAMP" title="STAMP">AGO</time>
801</td>
802</tr>
803</tbody>
804</table>
805</section>
806<section aria-label="2026-03-05">
807<h2 class="rule-h">
808<span>2026-03-05</span>
809</h2>
810<table class="list commits" aria-label="Commits">
811<tbody data-rows>
812<tr id="c-SHA7">
813<td class="c-sha mute">SHA7</td>
814<td class="c-subject">
815<a href="/long/commit/SHA40">commit number 9</a>
816</td>
817<td class="c-ck">
818</td>
819<td class="c-who dim">T</td>
820<td class="c-when nowrap dim">
821<time datetime="STAMP" title="STAMP">AGO</time>
822</td>
823</tr>
824<tr id="c-SHA7">
825<td class="c-sha mute">SHA7</td>
826<td class="c-subject">
827<a href="/long/commit/SHA40">commit number 8</a>
828</td>
829<td class="c-ck">
830</td>
831<td class="c-who dim">T</td>
832<td class="c-when nowrap dim">
833<time datetime="STAMP" title="STAMP">AGO</time>
834</td>
835</tr>
836</tbody>
837</table>
838</section>
839<section aria-label="2026-03-04">
840<h2 class="rule-h">
841<span>2026-03-04</span>
842</h2>
843<table class="list commits" aria-label="Commits">
844<tbody data-rows>
845<tr id="c-SHA7">
846<td class="c-sha mute">SHA7</td>
847<td class="c-subject">
848<a href="/long/commit/SHA40">commit number 7</a>
849</td>
850<td class="c-ck">
851</td>
852<td class="c-who dim">T</td>
853<td class="c-when nowrap dim">
854<time datetime="STAMP" title="STAMP">AGO</time>
855</td>
856</tr>
857<tr id="c-SHA7">
858<td class="c-sha mute">SHA7</td>
859<td class="c-subject">
860<a href="/long/commit/SHA40">commit number 6</a>
861</td>
862<td class="c-ck">
863</td>
864<td class="c-who dim">T</td>
865<td class="c-when nowrap dim">
866<time datetime="STAMP" title="STAMP">AGO</time>
867</td>
868</tr>
869</tbody>
870</table>
871</section>
872<section aria-label="2026-03-03">
873<h2 class="rule-h">
874<span>2026-03-03</span>
875</h2>
876<table class="list commits" aria-label="Commits">
877<tbody data-rows>
878<tr id="c-SHA7">
879<td class="c-sha mute">SHA7</td>
880<td class="c-subject">
881<a href="/long/commit/SHA40">commit number 5</a>
882</td>
883<td class="c-ck">
884</td>
885<td class="c-who dim">T</td>
886<td class="c-when nowrap dim">
887<time datetime="STAMP" title="STAMP">AGO</time>
888</td>
889</tr>
890<tr id="c-SHA7">
891<td class="c-sha mute">SHA7</td>
892<td class="c-subject">
893<a href="/long/commit/SHA40">commit number 4</a>
894</td>
895<td class="c-ck">
896</td>
897<td class="c-who dim">T</td>
898<td class="c-when nowrap dim">
899<time datetime="STAMP" title="STAMP">AGO</time>
900</td>
901</tr>
902</tbody>
903</table>
904</section>
905<section aria-label="2026-03-02">
906<h2 class="rule-h">
907<span>2026-03-02</span>
908</h2>
909<table class="list commits" aria-label="Commits">
910<tbody data-rows>
911<tr id="c-SHA7">
912<td class="c-sha mute">SHA7</td>
913<td class="c-subject">
914<a href="/long/commit/SHA40">commit number 3</a>
915</td>
916<td class="c-ck">
917</td>
918<td class="c-who dim">T</td>
919<td class="c-when nowrap dim">
920<time datetime="STAMP" title="STAMP">AGO</time>
921</td>
922</tr>
923<tr id="c-SHA7">
924<td class="c-sha mute">SHA7</td>
925<td class="c-subject">
926<a href="/long/commit/SHA40">commit number 2</a>
927</td>
928<td class="c-ck">
929</td>
930<td class="c-who dim">T</td>
931<td class="c-when nowrap dim">
932<time datetime="STAMP" title="STAMP">AGO</time>
933</td>
934</tr>
935</tbody>
936</table>
937</section>
938</div>
939<nav class="pager" aria-label="Pages">
940<span class="btn" aria-disabled="true">← Newest</span>
941<a class="btn" href="/long/commits/main?page=YzE6MzMzZGFjMWY5YmY4MjIzMmQxOTAzNGVlZTliZmI2NzFmM2QxMWEzNDo1MDplM2IwYzQ0Mjk4ZmM" rel="next">Older →</a>
942</nav>
943</main>
944<aside class="rail" aria-label="Context">
945<section aria-labelledby="r-hist">
946<h2 id="r-hist">History</h2>
947<dl class="kv">
948<dt>ref</dt>
949<dd>main</dd>
950<dt>on page</dt>
951<dd>50</dd>
952</dl>
953</section>
954<section aria-labelledby="r-refs">
955<h2 id="r-refs">Refs on this page</h2>
956<nav class="outline" aria-label="Refs on this page">
957<a href="#c-SHA7">branch main</a>
958</nav>
959</section>
960</aside>
961</div>
962<footer class="foot">
963<span>ermite devel</span>
964<a href="http://example.test/ermite" rel="noopener" title="source of this version (AGPL-3.0-or-later)">source</a>
965<button type="button" class="foot-keys" data-js data-fire="help" aria-haspopup="dialog" aria-controls="panel-help" aria-keyshortcuts="?">
966<kbd aria-hidden="true">?</kbd> keyboard shortcuts</button>
967</footer>
968<div class="hint">
969<span aria-hidden="true" class="hint-nav" :text="document.body.dataset.nav || ''">
970</span>
971<span role="status" aria-live="polite">
972<span class="hint-sel" :text="document.body.dataset.sel ? document.body.dataset.sel + ' · y permalink' : ''">
973</span>
974<span class="hint-flash" :text="document.body.dataset.flash || ''">
975</span>
976</span>
977<span class="hint-live" role="status" data-state="connecting" hx-sse:connect="/-/events?topic=repo%3Along&view=commits&ref=main&head=SHA40" hx-swap="none" :text="data.state === 'offline' ? 'live updates paused' : ''" hx-on="htmx:sse:after:connection -> ermiteLive.back();
978 htmx:sse:close, htmx:sse:error -> ermiteLive.lost();
979 htmx:sse:error -> ermiteLive.error(event.detail.status);
980 htmx:sse:before:connection -> ermiteLive.gate(event);
981 home-list, repo-last-push, refs-list, commits-head, mr-notice, mr-mergeability, ci-run, ci-job, inbox -> ermiteLive.swap(event.detail.data);
982 mr-head -> ermiteMR.headChanged();
983 gap -> ermiteLive.reload()">
984</span>
985</div>
986<dialog id="panel-help" class="panel modal" aria-label="Keyboard shortcuts" hx-on:keydown="event.key === 'Escape' && (event.preventDefault(), this.close())" hx-on:click="event.target === this && this.close()">
987<div class="panel-head">
988<h2>Keyboard shortcuts</h2>
989<button type="button" class="panel-x" aria-label="Close (esc)" hx-on:click="closest('dialog').close()">
990<kbd>esc</kbd> close</button>
991</div>
992<div class="keys-pref">
993<label>
994<input type="checkbox" id="keys-off" aria-describedby="keys-note" hx-on:change="ermite.setKeysOff(this.checked)"> Turn off single-key shortcuts</label>
995<p id="keys-note" class="dim">Single-key shortcuts are on. ctrl k and esc work whatever this says.</p>
996</div>
997<dl class="keys">
998<div>
999<dt>
1000<kbd>ctrl k</kbd>
1001<kbd>:</kbd>
1002</dt>
1003<dd>go to a section, branch, tag, file or repository</dd>
1004</div>
1005<div>
1006<dt>
1007<kbd>?</kbd>
1008</dt>
1009<dd>this list</dd>
1010</div>
1011<div>
1012<dt>
1013<kbd>j</kbd>
1014<kbd>k</kbd>
1015</dt>
1016<dd>move the row cursor down / up</dd>
1017</div>
1018<div>
1019<dt>
1020<kbd>enter</kbd>
1021</dt>
1022<dd>open the row under the cursor; on Files, a directory opens or closes in place</dd>
1023</div>
1024<div>
1025<dt>
1026<kbd>↑</kbd>
1027<kbd>↓</kbd>
1028<kbd>←</kbd>
1029<kbd>→</kbd>
1030<kbd>home</kbd>
1031<kbd>end</kbd>
1032</dt>
1033<dd>in the file tree (focus on a row): previous / next row, close / open a directory or go to its parent / first entry, first / last row. They never open a file</dd>
1034</div>
1035<div>
1036<dt>
1037<kbd>l</kbd>
1038<kbd>h</kbd>
1039</dt>
1040<dd>on Files: open a directory or a file / close a directory or go up to its parent, then to the parent page. Elsewhere: into the side panel (on a merge request, its files) / back to the content; there j k move between its controls</dd>
1041</div>
1042<div>
1043<dt>
1044<kbd>g g</kbd>
1045<kbd>G</kbd>
1046</dt>
1047<dd>first / last row</dd>
1048</div>
1049<div>
1050<dt>
1051<kbd>/</kbd>
1052</dt>
1053<dd>filter the list; on Files, find a file anywhere in the repository (esc clears, enter opens the best match)</dd>
1054</div>
1055<div>
1056<dt>
1057<kbd>b</kbd>
1058</dt>
1059<dd>switch branch or tag</dd>
1060</div>
1061<div>
1062<dt>
1063<kbd>g s</kbd>
1064<kbd>g f</kbd>
1065<kbd>g c</kbd>
1066<kbd>g b</kbd>
1067<kbd>g m</kbd>
1068<kbd>g i</kbd>
1069<kbd>g r</kbd>
1070<kbd>g a</kbd>
1071</dt>
1072<dd>tabs: summary, files, commits, branches & tags, merge requests, issues, releases, actions (when available)</dd>
1073</div>
1074<div>
1075<dt>
1076<kbd>g h</kbd>
1077</dt>
1078<dd>home</dd>
1079</div>
1080<div>
1081<dt>
1082<kbd>w</kbd>
1083</dt>
1084<dd>wide mode: use the whole width of the screen, or not (remembered)</dd>
1085</div>
1086<div>
1087<dt>
1088<kbd>y</kbd>
1089</dt>
1090<dd>copy a permalink pinned to the commit</dd>
1091</div>
1092<div>
1093<dt>
1094<kbd>d</kbd>
1095<kbd>u</kbd>
1096<kbd>x</kbd>
1097</dt>
1098<dd>diff: split / unified / collapse or expand all</dd>
1099</div>
1100<div>
1101<dt>
1102<kbd>e</kbd>
1103<kbd>E</kbd>
1104</dt>
1105<dd>diff: the whole file in view / every file, with the lines the hunks hide</dd>
1106</div>
1107<div>
1108<dt>
1109<kbd>n</kbd>
1110</dt>
1111<dd>merge request: next note in the diff</dd>
1112</div>
1113<div>
1114<dt>
1115<kbd>esc</kbd>
1116</dt>
1117<dd>close a dialog, leave a field</dd>
1118</div>
1119</dl>
1120</dialog>
1121<dialog id="panel-refs" class="panel modal" aria-label="Switch ref" hx-on:keydown="event.key === 'Escape' && (event.preventDefault(), this.close())" hx-on:click="event.target === this && this.close()">
1122<div class="panel-head">
1123<label for="refs-filter" class="sr">filter branches and tags</label>
1124<input id="refs-filter" type="search" placeholder="Switch branch or tag…" autocomplete="off" data-pick="#panel-refs li" hx-on:input="ermite.filter(this)">
1125<button type="button" class="panel-x" aria-label="Close (esc)" hx-on:click="closest('dialog').close()">
1126<kbd>esc</kbd>
1127</button>
1128</div>
1129<div class="panel-cols" data-picklist>
1130<section aria-label="Branches">
1131<h2>Branches <span class="count">1</span>
1132</h2>
1133<ul>
1134<li>
1135<a href="/long/tree/main" aria-current="true">
1136<span class="mark" aria-hidden="true">●</span>main</a>
1137</li>
1138</ul>
1139</section>
1140<section aria-label="Tags">
1141<h2>Tags <span class="count">0</span>
1142</h2>
1143<ul>
1144</ul>
1145</section>
1146</div>
1147</dialog>
1148<dialog id="panel-cmd" class="panel modal" aria-label="Go to" hx-on:close="ermiteFinder.paletteClose()" hx-on:keydown="event.key === 'Escape' && (event.preventDefault(), this.close())" hx-on:click="event.target === this && this.close()">
1149<div class="panel-head">
1150<label for="cmd-q" class="sr">go to</label>
1151<input id="cmd-q" type="search" placeholder="Go to a section, branch, tag, file or repository…" autocomplete="off" spellcheck="false" role="combobox" aria-autocomplete="list" aria-expanded="true" aria-controls="cmd-list" aria-activedescendant="cmd-o0" hx-on:input="ermite.cmdFilter(this); ermiteFinder.palette(this)" hx-on:keydown="ermite.cmdKey(event)">
1152<button type="button" class="panel-x" aria-label="Close (esc)" hx-on:click="closest('dialog').close()">
1153<kbd>esc</kbd>
1154</button>
1155</div>
1156<ul id="cmd-list" class="cmd-list" role="listbox" aria-label="Targets">
1157<li id="cmd-o0" role="option" aria-selected="true" data-k="go home" data-cursor>
1158<a role="presentation" data-href="/">
1159<span class="lbl">home</span>
1160<span class="k">go</span>
1161</a>
1162</li>
1163<li id="cmd-o1" role="option" aria-selected="false" data-k="section summary (g s)">
1164<a role="presentation" data-href="/long">
1165<span class="lbl">summary (g s)</span>
1166<span class="k">section</span>
1167</a>
1168</li>
1169<li id="cmd-o2" role="option" aria-selected="false" data-k="section files (g f)">
1170<a role="presentation" data-href="/long/tree/main">
1171<span class="lbl">files (g f)</span>
1172<span class="k">section</span>
1173</a>
1174</li>
1175<li id="cmd-o3" role="option" aria-selected="false" data-k="section commits (g c)">
1176<a role="presentation" data-href="/long/commits/main">
1177<span class="lbl">commits (g c)</span>
1178<span class="k">section</span>
1179</a>
1180</li>
1181<li id="cmd-o4" role="option" aria-selected="false" data-k="section branches & tags (g b)">
1182<a role="presentation" data-href="/long/refs">
1183<span class="lbl">branches & tags (g b)</span>
1184<span class="k">section</span>
1185</a>
1186</li>
1187<li id="cmd-o5" role="option" aria-selected="false" data-k="section merge requests (g m)">
1188<a role="presentation" data-href="/long/merge-requests">
1189<span class="lbl">merge requests (g m)</span>
1190<span class="k">section</span>
1191</a>
1192</li>
1193<li id="cmd-o6" role="option" aria-selected="false" data-k="section releases (g r)">
1194<a role="presentation" data-href="/long/releases">
1195<span class="lbl">releases (g r)</span>
1196<span class="k">section</span>
1197</a>
1198</li>
1199<li id="cmd-o7" role="option" aria-selected="false" data-k="section actions (g a)">
1200<a role="presentation" data-href="/long/actions">
1201<span class="lbl">actions (g a)</span>
1202<span class="k">section</span>
1203</a>
1204</li>
1205<li id="cmd-o8" role="option" aria-selected="false" data-k="branch main">
1206<a role="presentation" data-href="/long/tree/main">
1207<span class="lbl">main</span>
1208<span class="k">branch</span>
1209</a>
1210</li>
1211<li id="cmd-o9" role="option" aria-selected="false" data-k="repo diffs">
1212<a role="presentation" data-href="/diffs">
1213<span class="lbl">diffs</span>
1214<span class="k">repo</span>
1215</a>
1216</li>
1217<li id="cmd-o10" role="option" aria-selected="false" data-k="action turn single-key shortcuts on off keyboard">
1218<a role="presentation" data-fire="keys">
1219<span class="lbl">turn single-key shortcuts off</span>
1220<span class="k">action</span>
1221</a>
1222</li>
1223</ul>
1224<p class="panel-foot">
1225<span>
1226<kbd>↑</kbd>
1227<kbd>↓</kbd> move</span>
1228<span>
1229<kbd>enter</kbd> open</span>
1230<span>
1231<kbd>esc</kbd> close</span>
1232</p>
1233</dialog>
1234<div id="keys" hidden hx-on="k-j from:body -> ermite.move(1);
1235 k-k from:body -> ermite.move(-1);
1236 k-top from:body -> ermite.edge(false);
1237 k-bottom from:body -> ermite.edge(true);
1238 k-open from:body -> ermite.open();
1239 k-right from:body -> ermite.rail(true);
1240 k-left from:body -> ermite.rail(false);
1241 k-esc from:body -> ermite.closeDialogs();
1242 k-help from:body -> ermite.dialog('panel-help');
1243 k-refs from:body -> ermite.dialog('panel-refs', 'refs-filter');
1244 k-cmd from:body -> ermite.dialog('panel-cmd', 'cmd-q'); ermiteFinder.load();
1245 k-filter from:body -> ermite.focusFilter();
1246 k-gh from:body -> ermite.go('.brand');
1247 k-s from:body -> ermite.tab('s');
1248 k-f from:body -> ermite.tab('f');
1249 k-b from:body -> ermite.tab('b');
1250 k-a from:body -> ermite.tab('a');
1251 k-c from:body -> ermite.tab('c');
1252 k-r from:body -> ermite.tab('r');
1253 k-m from:body -> ermite.tab('m');
1254 k-i from:body -> ermite.tab('i');
1255 k-inbox from:body -> ermite.go('[data-inbox]');
1256 k-next from:body -> ermite.nextNote();
1257 k-split from:body -> ermite.layout('split');
1258 k-unified from:body -> ermite.layout('unified');
1259 k-collapse from:body -> ermite.collapse();
1260 k-wide from:body -> window.ermiteWide.toggle();
1261 k-expand from:body -> ermite.expandFile();
1262 k-expandAll from:body -> ermite.expandAll();
1263 k-permalink from:body -> ermite.permalink();
1264 k-merge from:body -> window.ermiteMR?.openMerge();
1265 k-read from:body -> window.ermiteMR?.markRead();
1266 k-keys from:body -> ermite.toggleKeys()">
1267</div>
1268</body>
1269</html>