1{{define "page-styles"}}
 2  <link rel="stylesheet" href="/static/syntax.css?v=1">
 3{{end}}
 4
 5{{define "content"}}
 6<nav aria-label="breadcrumb">
 7  <ul>
 8    <li><a href="/{{.Repo.Name}}">{{.Repo.Name}}</a></li>
 9    <li><a href="/{{.Repo.Name}}/tree/{{.Ref}}">{{if .IsCommitHash}}{{.Ref | shortHash}}{{else}}{{.Ref}}{{end}}</a></li>
10    {{range $i, $part := splitPath .Path}}
11    <li{{if eq $i (dec (len (splitPath $.Path)))}} aria-current="page"{{end}}>
12      {{if eq $i (dec (len (splitPath $.Path)))}}
13        {{$part}}
14      {{else}}
15        <a href="/{{$.Repo.Name}}/tree/{{$.Ref}}/{{joinPath $i $}}">{{$part}}</a>
16      {{end}}
17    </li>
18    {{end}}
19  </ul>
20</nav>
21
22<section aria-labelledby="file-content-heading">
23  {{$parts := splitPath .Path}}
24  <h2 id="file-content-heading">{{index $parts (dec (len $parts))}}</h2>
25  
26  <nav aria-label="File actions">
27    <ul>
28      {{if .IsMarkdown}}
29        {{if .ShowSource}}
30      <li><a href="/{{.Repo.Name}}/blob/{{.Ref}}/{{.Path}}">View rendered Markdown</a></li>
31        {{else}}
32      <li><a href="/{{.Repo.Name}}/blob/{{.Ref}}/{{.Path}}?source=1">View source</a></li>
33        {{end}}
34      {{end}}
35      <li><a href="/{{.Repo.Name}}/blob/{{.Ref}}/{{.Path}}?raw=1">View raw</a></li>
36    </ul>
37  </nav>
38  
39  {{if .IsBinary}}
40  <p role="status" aria-live="polite">This is a binary file and cannot be displayed as text.</p>
41  {{else if .IsMarkdown}}
42    {{if .ShowSource}}
43  <div aria-label="Syntax highlighted code">
44    {{.RenderedHTML}}
45  </div>
46    {{else}}
47  <article aria-label="Markdown rendered content">
48    {{.RenderedHTML}}
49  </article>
50    {{end}}
51  {{else if .RenderedHTML}}
52  <div aria-label="Syntax highlighted code">
53    {{.RenderedHTML}}
54  </div>
55  {{else}}
56  <pre aria-label="File contents"><code>{{.Content}}</code></pre>
57  {{end}}
58</section>
59{{end}}