Fix styles

This commit is contained in:
Jan-Lukas Else 2021-11-16 10:37:30 +01:00
parent 19bb3e62ed
commit aabdde7d39
7 changed files with 66 additions and 27 deletions

4
go.mod
View File

@ -18,7 +18,7 @@ require (
github.com/elnormous/contenttype v1.0.0 github.com/elnormous/contenttype v1.0.0
github.com/emersion/go-sasl v0.0.0-20211008083017-0b9dcfb154ac github.com/emersion/go-sasl v0.0.0-20211008083017-0b9dcfb154ac
github.com/emersion/go-smtp v0.15.0 github.com/emersion/go-smtp v0.15.0
github.com/go-chi/chi/v5 v5.0.5 github.com/go-chi/chi/v5 v5.0.6
github.com/go-fed/httpsig v1.1.0 github.com/go-fed/httpsig v1.1.0
github.com/gorilla/handlers v1.5.1 github.com/gorilla/handlers v1.5.1
github.com/gorilla/securecookie v1.1.1 github.com/gorilla/securecookie v1.1.1
@ -50,7 +50,7 @@ require (
// master // master
github.com/yuin/goldmark-emoji v1.0.2-0.20210607094911-0487583eca38 github.com/yuin/goldmark-emoji v1.0.2-0.20210607094911-0487583eca38
github.com/yuin/goldmark-highlighting v0.0.0-20210516132338-9216f9c5aa01 github.com/yuin/goldmark-highlighting v0.0.0-20210516132338-9216f9c5aa01
golang.org/x/crypto v0.0.0-20211108221036-ceb1ce70b4fa golang.org/x/crypto v0.0.0-20211115234514-b4de73f9ece8
golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2 golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2
golang.org/x/sync v0.0.0-20210220032951-036812b2e83c golang.org/x/sync v0.0.0-20210220032951-036812b2e83c
golang.org/x/text v0.3.7 golang.org/x/text v0.3.7

8
go.sum
View File

@ -148,8 +148,8 @@ github.com/fsnotify/fsnotify v1.5.1/go.mod h1:T3375wBYaZdLLcVNkcVbzGHY7f1l/uK5T5
github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04=
github.com/github/fakeca v0.1.0 h1:Km/MVOFvclqxPM9dZBC4+QE564nU4gz4iZ0D9pMw28I= github.com/github/fakeca v0.1.0 h1:Km/MVOFvclqxPM9dZBC4+QE564nU4gz4iZ0D9pMw28I=
github.com/github/fakeca v0.1.0/go.mod h1:+bormgoGMMuamOscx7N91aOuUST7wdaJ2rNjeohylyo= github.com/github/fakeca v0.1.0/go.mod h1:+bormgoGMMuamOscx7N91aOuUST7wdaJ2rNjeohylyo=
github.com/go-chi/chi/v5 v5.0.5 h1:l3RJ8T8TAqLsXFfah+RA6N4pydMbPwSdvNM+AFWvLUM= github.com/go-chi/chi/v5 v5.0.6 h1:CHIMAkr36TRf/zYvOqNKklMDxEm9HuqdiK+syK+tYtw=
github.com/go-chi/chi/v5 v5.0.5/go.mod h1:DslCQbL2OYiznFReuXYUmQ2hGd1aDpCnlMNITLSKoi8= github.com/go-chi/chi/v5 v5.0.6/go.mod h1:DslCQbL2OYiznFReuXYUmQ2hGd1aDpCnlMNITLSKoi8=
github.com/go-fed/httpsig v1.1.0 h1:9M+hb0jkEICD8/cAiNqEB66R87tTINszBRTjwjQzWcI= github.com/go-fed/httpsig v1.1.0 h1:9M+hb0jkEICD8/cAiNqEB66R87tTINszBRTjwjQzWcI=
github.com/go-fed/httpsig v1.1.0/go.mod h1:RCMrTZvN1bJYtofsG4rd5NaO5obxQ5xBkdiS7xsT7bM= github.com/go-fed/httpsig v1.1.0/go.mod h1:RCMrTZvN1bJYtofsG4rd5NaO5obxQ5xBkdiS7xsT7bM=
github.com/go-gl/glfw v0.0.0-20190409004039-e6da0acd62b1/go.mod h1:vR7hzQXu2zJy9AVAgeJqvqgH9Q5CA+iKCZ2gyEVpxRU= github.com/go-gl/glfw v0.0.0-20190409004039-e6da0acd62b1/go.mod h1:vR7hzQXu2zJy9AVAgeJqvqgH9Q5CA+iKCZ2gyEVpxRU=
@ -512,8 +512,8 @@ golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPh
golang.org/x/crypto v0.0.0-20210220033148-5ea612d1eb83/go.mod h1:jdWPYTVW3xRLrWPugEBEK3UY2ZEsg3UU495nc5E+M+I= golang.org/x/crypto v0.0.0-20210220033148-5ea612d1eb83/go.mod h1:jdWPYTVW3xRLrWPugEBEK3UY2ZEsg3UU495nc5E+M+I=
golang.org/x/crypto v0.0.0-20210513164829-c07d793c2f9a/go.mod h1:P+XmwS30IXTQdn5tA2iutPOUgjI07+tq3H3K9MVA1s8= golang.org/x/crypto v0.0.0-20210513164829-c07d793c2f9a/go.mod h1:P+XmwS30IXTQdn5tA2iutPOUgjI07+tq3H3K9MVA1s8=
golang.org/x/crypto v0.0.0-20210817164053-32db794688a5/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20210817164053-32db794688a5/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
golang.org/x/crypto v0.0.0-20211108221036-ceb1ce70b4fa h1:idItI2DDfCokpg0N51B2VtiLdJ4vAuXC9fnCb2gACo4= golang.org/x/crypto v0.0.0-20211115234514-b4de73f9ece8 h1:5QRxNnVsaJP6NAse0UdkRgL3zHMvCRRkrDVLNdNpdy4=
golang.org/x/crypto v0.0.0-20211108221036-ceb1ce70b4fa/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20211115234514-b4de73f9ece8/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8= golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8=

37
highlighting.go Normal file
View File

@ -0,0 +1,37 @@
package main
import (
"github.com/alecthomas/chroma"
"github.com/alecthomas/chroma/styles"
)
var chromaGoBlogStyle = styles.Register(chroma.MustNewStyle("goblog", chroma.StyleEntries{
// Monokai
chroma.Text: "#f8f8f2",
chroma.Error: "#960050 bg:#1e0010",
chroma.Comment: "#75715e",
chroma.Keyword: "#66d9ef",
chroma.KeywordNamespace: "#f92672",
chroma.Operator: "#f92672",
chroma.Punctuation: "#f8f8f2",
chroma.Name: "#f8f8f2",
chroma.NameAttribute: "#a6e22e",
chroma.NameClass: "#a6e22e",
chroma.NameConstant: "#66d9ef",
chroma.NameDecorator: "#a6e22e",
chroma.NameException: "#a6e22e",
chroma.NameFunction: "#a6e22e",
chroma.NameOther: "#a6e22e",
chroma.NameTag: "#f92672",
chroma.LiteralNumber: "#ae81ff",
chroma.Literal: "#ae81ff",
chroma.LiteralDate: "#e6db74",
chroma.LiteralString: "#e6db74",
chroma.LiteralStringEscape: "#ae81ff",
chroma.GenericDeleted: "#f92672",
chroma.GenericEmph: "italic",
chroma.GenericInserted: "#a6e22e",
chroma.GenericStrong: "bold",
chroma.GenericSubheading: "#75715e",
chroma.Background: "bg:#272822",
}))

View File

@ -38,7 +38,7 @@ func (a *goBlog) initMarkdown() {
marktag.Mark, marktag.Mark,
emoji.Emoji, emoji.Emoji,
highlighting.NewHighlighting( highlighting.NewHighlighting(
highlighting.WithStyle("monokai"), highlighting.WithCustomStyle(chromaGoBlogStyle),
highlighting.WithFormatOptions( highlighting.WithFormatOptions(
chromahtml.ClassPrefix("c-"), chromahtml.ClassPrefix("c-"),
chromahtml.WithClasses(true), chromahtml.WithClasses(true),

View File

@ -46,25 +46,26 @@ html {
body { body {
@extend .sans-serif; @extend .sans-serif;
@include color(background, background); @include color(background, background);
@include color(color, primary);
line-height: 1.5; line-height: 1.5;
margin: 0 auto; margin: 0 auto;
max-width: 700px; max-width: 700px;
padding: 10px; padding: 10px;
word-break: break-word; word-break: break-word;
overflow-wrap: break-word; overflow-wrap: break-word;
* { * {
@include color(color, primary);
max-width: 100%; max-width: 100%;
} }
[class*='c-'] { }
// monokai is dark, so we need to use light color for text
color: #{map-get($colors, primary-dark)}; a, hr {
} @include color(color, primary);
*::selection { }
@include color(color, background);
@include color(background, primary); *::selection {
} @include color(color, background);
@include color(background, primary);
} }
header { header {

View File

@ -11,7 +11,6 @@ import (
"strings" "strings"
chromahtml "github.com/alecthomas/chroma/formatters/html" chromahtml "github.com/alecthomas/chroma/formatters/html"
"github.com/alecthomas/chroma/styles"
"go.goblog.app/app/pkgs/contenttype" "go.goblog.app/app/pkgs/contenttype"
) )
@ -121,7 +120,7 @@ func (a *goBlog) initChromaCSS() error {
return nil return nil
} }
// Initialize the style // Initialize the style
chromaStyleBuilder := styles.Get("monokai").Builder() chromaStyleBuilder := chromaGoBlogStyle.Builder()
chromaStyle, err := chromaStyleBuilder.Build() chromaStyle, err := chromaStyleBuilder.Build()
if err != nil { if err != nil {
return err return err
@ -135,6 +134,7 @@ func (a *goBlog) initChromaCSS() error {
// Write the CSS to the file // Write the CSS to the file
chromahtml.New( chromahtml.New(
chromahtml.ClassPrefix("c-"), chromahtml.ClassPrefix("c-"),
chromahtml.WithAllClasses(true),
).WriteCSS(chromaTempFile, chromaStyle) ).WriteCSS(chromaTempFile, chromaStyle)
// Close the file // Close the file
_ = chromaTempFile.Close() _ = chromaTempFile.Close()
@ -144,8 +144,6 @@ func (a *goBlog) initChromaCSS() error {
if err != nil { if err != nil {
return err return err
} }
if compiled != "" { a.assetFileNames["css/chroma.css"] = compiled
a.assetFileNames["css/chroma.css"] = compiled
}
return nil return nil
} }

View File

@ -23,6 +23,8 @@ html {
body { body {
background: #fff; background: #fff;
background: var(--background, #fff); background: var(--background, #fff);
color: #000;
color: var(--primary, #000);
line-height: 1.5; line-height: 1.5;
margin: 0 auto; margin: 0 auto;
max-width: 700px; max-width: 700px;
@ -31,14 +33,15 @@ body {
overflow-wrap: break-word; overflow-wrap: break-word;
} }
body * { body * {
color: #000;
color: var(--primary, #000);
max-width: 100%; max-width: 100%;
} }
body [class*=c-] {
color: #fff; a, hr {
color: #000;
color: var(--primary, #000);
} }
body *::selection {
*::selection {
color: #fff; color: #fff;
color: var(--background, #fff); color: var(--background, #fff);
background: #000; background: #000;