Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add code block syntax highlighting #50

Merged
merged 4 commits into from
Dec 19, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 3 additions & 2 deletions deps.edn
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,11 @@
com.bhauman/figwheel-main {:mvn/version "0.2.18"}
org.clojure/clojurescript {:mvn/version "1.11.121"}
reagent/reagent {:mvn/version "1.2.0"}
cljsjs/highlight {:mvn/version "11.7.0-0"}
cljsjs/react {:mvn/version "18.2.0-1"}
cljsjs/react-dom {:mvn/version "18.2.0-1"}
markdown-to-hiccup/markdown-to-hiccup {:mvn/version "0.6.2"}
re-frame/re-frame {:mvn/version "1.4.0"}
re-frame/re-frame {:mvn/version "1.4.2"}
day8.re-frame/test {:mvn/version "0.1.5"}}
:paths ["src" "resources" "target" "test"]
:aliases
Expand All @@ -29,7 +30,7 @@
;; build the optimised js bundle
:web/prod {:main-opts ["--main" "figwheel.main"
"--build-once" "prod"]}

;; Run the cljs tests
:web/test {:main-opts ["-m" "figwheel.main"
"-m" "loicb.client.test-runner"]}
Expand Down
273 changes: 273 additions & 0 deletions resources/public/css/highlight.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,273 @@
/*
Themes are obtained from the highlight.js repository at
https://github.com/highlightjs/highlight.js/tree/main/src/styles
*/

pre code.hljs {
display: block;
overflow-x: auto;
padding: 1rem;
border-style: groove;
border-width: 1px;
border-color: var(--border-primary-color);
}

code.hljs {
padding: 3px 5px;
}

/* ------------------------------------------------------------------------- */

/*!
Theme: GitHub
Description: Light theme as seen on github.com
Author: github.com
Maintainer: @Hirse
Updated: 2021-05-15

Outdated base version: https://github.com/primer/github-syntax-light
Current colors taken from GitHub's CSS
*/

.hljs {
color: #24292e;
background: #ffffff;
}

.hljs-doctag,
.hljs-keyword,
.hljs-meta .hljs-keyword,
.hljs-template-tag,
.hljs-template-variable,
.hljs-type,
.hljs-variable.language_ {
/* prettylights-syntax-keyword */
color: #d73a49;
}

.hljs-title,
.hljs-title.class_,
.hljs-title.class_.inherited__,
.hljs-title.function_ {
/* prettylights-syntax-entity */
color: #6f42c1;
}

.hljs-attr,
.hljs-attribute,
.hljs-literal,
.hljs-meta,
.hljs-number,
.hljs-operator,
.hljs-variable,
.hljs-selector-attr,
.hljs-selector-class,
.hljs-selector-id {
/* prettylights-syntax-constant */
color: #005cc5;
}

.hljs-regexp,
.hljs-string,
.hljs-meta .hljs-string {
/* prettylights-syntax-string */
color: #032f62;
}

.hljs-built_in,
.hljs-symbol {
/* prettylights-syntax-variable */
color: #e36209;
}

.hljs-comment,
.hljs-code,
.hljs-formula {
/* prettylights-syntax-comment */
color: #6a737d;
}

.hljs-name,
.hljs-quote,
.hljs-selector-tag,
.hljs-selector-pseudo {
/* prettylights-syntax-entity-tag */
color: #22863a;
}

.hljs-subst {
/* prettylights-syntax-storage-modifier-import */
color: #24292e;
}

.hljs-section {
/* prettylights-syntax-markup-heading */
color: #005cc5;
font-weight: bold;
}

.hljs-bullet {
/* prettylights-syntax-markup-list */
color: #735c0f;
}

.hljs-emphasis {
/* prettylights-syntax-markup-italic */
color: #24292e;
font-style: italic;
}

.hljs-strong {
/* prettylights-syntax-markup-bold */
color: #24292e;
font-weight: bold;
}

.hljs-addition {
/* prettylights-syntax-markup-inserted */
color: #22863a;
background-color: #f0fff4;
}

.hljs-deletion {
/* prettylights-syntax-markup-deleted */
color: #b31d28;
background-color: #ffeef0;
}

.hljs-char.escape_,
.hljs-link,
.hljs-params,
.hljs-property,
.hljs-punctuation,
.hljs-tag {
/* purposely ignored */
}

/* ------------------------------------------------------------------------- */

/*!
Theme: GitHub Dark
Description: Dark theme as seen on github.com
Author: github.com
Maintainer: @Hirse
Updated: 2021-05-15

Outdated base version: https://github.com/primer/github-syntax-dark
Current colors taken from GitHub's CSS
*/

.dark .hljs {
color: #c9d1d9;
background: #0d1117;
}

.dark .hljs-doctag,
.dark .hljs-keyword,
.dark .hljs-meta .hljs-keyword,
.dark .hljs-template-tag,
.dark .hljs-template-variable,
.dark .hljs-type,
.dark .hljs-variable.language_ {
/* prettylights-syntax-keyword */
color: #ff7b72;
}

.dark .hljs-title,
.dark .hljs-title.class_,
.dark .hljs-title.class_.inherited__,
.dark .hljs-title.function_ {
/* prettylights-syntax-entity */
color: #d2a8ff;
}

.dark .hljs-attr,
.dark .hljs-attribute,
.dark .hljs-literal,
.dark .hljs-meta,
.dark .hljs-number,
.dark .hljs-operator,
.dark .hljs-variable,
.dark .hljs-selector-attr,
.dark .hljs-selector-class,
.dark .hljs-selector-id {
/* prettylights-syntax-constant */
color: #79c0ff;
}

.dark .hljs-regexp,
.dark .hljs-string,
.dark .hljs-meta .hljs-string {
/* prettylights-syntax-string */
color: #a5d6ff;
}

.dark .hljs-built_in,
.dark .hljs-symbol {
/* prettylights-syntax-variable */
color: #ffa657;
}

.dark .hljs-comment,
.dark .hljs-code,
.dark .hljs-formula {
/* prettylights-syntax-comment */
color: #8b949e;
}

.dark .hljs-name,
.dark .hljs-quote,
.dark .hljs-selector-tag,
.dark .hljs-selector-pseudo {
/* prettylights-syntax-entity-tag */
color: #7ee787;
}

.dark .hljs-subst {
/* prettylights-syntax-storage-modifier-import */
color: #c9d1d9;
}

.dark .hljs-section {
/* prettylights-syntax-markup-heading */
color: #1f6feb;
font-weight: bold;
}

.dark .hljs-bullet {
/* prettylights-syntax-markup-list */
color: #f2cc60;
}

.dark .hljs-emphasis {
/* prettylights-syntax-markup-italic */
color: #c9d1d9;
font-style: italic;
}

.dark .hljs-strong {
/* prettylights-syntax-markup-bold */
color: #c9d1d9;
font-weight: bold;
}

.dark .hljs-addition {
/* prettylights-syntax-markup-inserted */
color: #aff5b4;
background-color: #033a16;
}

.dark .hljs-deletion {
/* prettylights-syntax-markup-deleted */
color: #ffdcd7;
background-color: #67060c;
}

.dark .hljs-char.escape_,
.dark .hljs-link,
.dark .hljs-params,
.dark .hljs-property,
.dark .hljs-punctuation,
.dark .hljs-tag {
/* purposely ignored */
}
22 changes: 9 additions & 13 deletions resources/public/css/style.css
Original file line number Diff line number Diff line change
Expand Up @@ -145,22 +145,18 @@ p {
margin: 1rem 0rem;
}

pre {
overflow-x: scroll;
white-space-collapse: preserve;
text-wrap: nowrap;
font-size: 1rem;
margin: 1rem 0rem;
padding: 1rem;
background-color: var(--bg-secondary-color);
border-style: solid;
border-width: 1px;
border-color: var(--border-primary-color);
code {
color: var(--text-primary-color);
}

code {
pre code {
font-size: 1rem;
color: var(--text-primary-color);
}

@media (max-width: 1024px) {
pre code {
font-size: 0.8rem;
}
}

a {
Expand Down
Loading