all: go-import, clone url
Anirudh Oppiliappan x@icyphox.sh
Sun, 18 Dec 2022 20:00:19 +0530
7 files changed,
54 insertions(+),
9 deletions(-)
M
config.yaml
→
config.yaml
@@ -14,6 +14,10 @@ static: ./static
meta: title: git good description: i think it's a skill issue +misc: + goImport: + prettyURL: icyphox.sh server: + fqdn: git.icyphox.sh host: 127.0.0.1 port: 5555
M
config/config.go
→
config/config.go
@@ -21,7 +21,13 @@ Meta struct {
Title string `yaml:"title"` Description string `yaml:"description"` } `yaml:"meta"` + Misc struct { + GoImport struct { + PrettyURL string `yaml:"string"` + } `yaml:"goImport"` + } `yaml:"misc"` Server struct { + FQDN string `yaml:"fqdn,omitempty"` Host string `yaml:"host"` Port int `yaml:"port"` } `yaml:"server"`
M
routes/routes.go
→
routes/routes.go
@@ -1,6 +1,7 @@
package routes import ( + "fmt" "html/template" "log" "net/http"@@ -112,6 +113,15 @@ log.Println(err)
return } + cloneURL := fmt.Sprintf("https://%s/%s", d.c.Server.FQDN, name) + + if d.c.Misc.GoImport.PrettyURL == "" { + d.c.Misc.GoImport.PrettyURL = cloneURL + } + + goImport := fmt.Sprintf(`<meta name="go-import" content="%s git %s">`, + d.c.Misc.GoImport.PrettyURL, cloneURL) + tpath := filepath.Join(d.c.Dirs.Templates, "*") t := template.Must(template.ParseGlob(tpath))@@ -125,6 +135,8 @@ data["ref"] = mainBranch
data["readme"] = readmeContent data["commits"] = commits data["desc"] = getDescription(path) + data["clone"] = cloneURL + data["goimport"] = template.HTML(goImport) if err := t.ExecuteTemplate(w, "repo", data); err != nil { log.Println(err)
M
static/style.css
→
static/style.css
@@ -111,6 +111,14 @@ padding-top: 1.2em;
min-width: 0; } +.clone-url { + padding-top: 2rem; +} + +.clone-url pre { + color: var(--dark); +} + .desc { color: var(--gray); font-style: italic;@@ -146,6 +154,11 @@ .readme pre {
white-space: pre-wrap; } +.readme { + padding-bottom: 2rem; + border-bottom: 1.5px solid var(--medium-gray); +} + .diff { margin: 1rem 0 1rem 0; padding: 1rem 0 1rem 0;@@ -158,10 +171,6 @@ }
.diff-stat { padding: 1rem 0 1rem 0; -} - -.commit-email { - color: var(--gray); } .commit-email:before {@@ -230,7 +239,7 @@ }
.commit-info { color: var(--gray); - font-size: 14px; + padding-bottom: 1.5rem; } @media (max-width: 600px) {
M
templates/commit.html
→
templates/commit.html
@@ -10,8 +10,11 @@ <section class="commit">
<pre> {{- .commit.Message -}} </pre> - <p>{{ .commit.Author.When.Format "Mon, 02 Jan 2006 15:04:05 -0700" }}</p> - <p>{{ .commit.Author.Name }} <span class="commit-email">{{ .commit.Author.Email}}</span></p> + <div class="commit-info"> + {{ .commit.Author.Name }} <span class="commit-email">{{ .commit.Author.Email}}</span> + <div>{{ .commit.Author.When.Format "Mon, 02 Jan 2006 15:04:05 -0700" }}</div> + </div> + <p>commit: <a href="/{{ .name }}/commit/{{ .commit.This }}"> {{ .commit.This }} </a>
M
templates/head.html
→
templates/head.html
@@ -4,6 +4,9 @@ <meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" href="/static/style.css" type="text/css"> <link rel="stylesheet" href="https://cdn.icyphox.sh/fonts/inter.css" type="text/css"> + {{ if .goimport }} + {{ .goimport }} + {{ end }} <!-- other meta tags here --> </head> {{ end }}
M
templates/repo.html
→
templates/repo.html
@@ -25,12 +25,20 @@ <div>{{ .Author.When.Format "Mon, 02 Jan 2006 15:04:05 -0700" }}</div>
</div> {{ end }} </div> - +{{- if .readme }} <article class="readme"> <pre> - {{- if .readme }}{{ .readme }}{{- end -}} + {{- .readme -}} </pre> </article> +{{- end -}} + + <div class="clone-url"> + <strong>clone</strong> + <pre> +git clone {{ .clone -}} + </pre> + </div> </main> </body> </html>