壹、需求與情境
最近正在建立 Blogger 作為筆記資源存放位置,然作為一名工程師,Blogger
的預設 css
風格缺乏了對展示程式碼的必要設定。我期待程式碼區塊能自動進行配色,讓撰文時能專注於內容而非格式。
要達成這個目的,其中最簡單的手段是使用前人已經設定的既有配色風格,而
highlight.js
便是集合各種程式碼風格於一身的專案。
在本文中,您可以選擇自己喜歡的 highlight.js
風格,並藉由在自己網站引用相關檔案的 CDN 路徑來為自己網站的程式碼上色。
貳、選擇 highlight.js 風格
選擇一個喜愛的風格。如果覺得不知從何選起,可以使用過濾關鍵字來留下。例如:
「dark」、「light」等明暗風格
「sublime」、「atom」等編輯器風格
「stackoverflow」等網頁服務風格
Select a Theme:
a11y-dark
a11y-light
agate
an-old-hope
androidstudio
arduino-light
arta
ascetic
atom-one-dark-reasonable
atom-one-light
brown-paper
codepen-embed
color-brewer
dark
default
devibeans
docco
far
felipec
foundation
github-dark-dimmed
github-dark
github
gml
googlecode
gradient-dark
gradient-light
grayscale
hybrid
idea
intellij-light
ir-black
isbl-editor-dark
isbl-editor-light
kimbie-dark
kimbie-light
lightfair
lioshi
magula
mono-blue
monokai-sublime
monokai
night-owl
nnfx-dark
nnfx-light
nord
obsidian
panda-syntax-dark
panda-syntax-light
paraiso-dark
paraiso-light
pojoaque
purebasic
qtcreator-dark
qtcreator-light
rainbow
routeros
school-book
shades-of-purple
srcery
stackoverflow-dark
stackoverflow-light
sunburst
tokyo-night-dark
tokyo-night-light
tomorrow-night-blue
tomorrow-night-bright
vs
vs2015
xcode
xt256
base16/3024
base16/apathy
base16/apprentice
base16/ashes
base16/atelier-cave-light
base16/atelier-cave
base16/atelier-dune-light
base16/atelier-dune
base16/atelier-estuary-light
base16/atelier-estuary
base16/atelier-forest-light
base16/atelier-forest
base16/atelier-heath-light
base16/atelier-heath
base16/atelier-lakeside-light
base16/atelier-lakeside
base16/atelier-plateau-light
base16/atelier-plateau
base16/atelier-savanna-light
base16/atelier-savanna
base16/atelier-seaside-light
base16/atelier-seaside
base16/atelier-sulphurpool-light
base16/atelier-sulphurpool
base16/atlas
base16/bespin
base16/black-metal-bathory
base16/black-metal-burzum
base16/black-metal-dark-funeral
base16/black-metal-gorgoroth
base16/black-metal-immortal
base16/black-metal-khold
base16/black-metal-marduk
base16/black-metal-mayhem
base16/black-metal-nile
base16/black-metal-venom
base16/black-metal
base16/brewer
base16/bright
base16/brogrammer
base16/brush-trees-dark
base16/brush-trees
base16/chalk
base16/circus
base16/classic-dark
base16/classic-light
base16/codeschool
base16/colors
base16/cupcake
base16/cupertino
base16/danqing
base16/darcula
base16/dark-violet
base16/darkmoss
base16/darktooth
base16/decaf
base16/default-dark
base16/default-light
base16/dirtysea
base16/dracula
base16/edge-dark
base16/edge-light
base16/eighties
base16/embers
base16/equilibrium-dark
base16/equilibrium-gray-dark
base16/equilibrium-gray-light
base16/equilibrium-light
base16/espresso
base16/eva-dim
base16/eva
base16/flat
base16/framer
base16/fruit-soda
base16/gigavolt
base16/github
base16/google-dark
base16/google-light
base16/grayscale-dark
base16/grayscale-light
base16/green-screen
base16/gruvbox-dark-hard
base16/gruvbox-dark-medium
base16/gruvbox-dark-pale
base16/gruvbox-dark-soft
base16/gruvbox-light-hard
base16/gruvbox-light-medium
base16/gruvbox-light-soft
base16/hardcore
base16/harmonic16-dark
base16/harmonic16-light
base16/heetch-dark
base16/heetch-light
base16/helios
base16/hopscotch
base16/horizon-dark
base16/horizon-light
base16/humanoid-dark
base16/humanoid-light
base16/ia-dark
base16/ia-light
base16/icy-dark
base16/ir-black
base16/isotope
base16/kimber
base16/london-tube
base16/macintosh
base16/marrakesh
base16/materia
base16/material-darker
base16/material-lighter
base16/material-palenight
base16/material-vivid
base16/material
base16/mellow-purple
base16/mexico-light
base16/mocha
base16/monokai
base16/nebula
base16/nord
base16/nova
base16/ocean
base16/oceanicnext
base16/one-light
base16/onedark
base16/outrun-dark
base16/papercolor-dark
base16/papercolor-light
base16/paraiso
base16/pasque
base16/phd
base16/pico
base16/pop
base16/porple
base16/qualia
base16/railscasts
base16/rebecca
base16/ros-pine-dawn
base16/ros-pine-moon
base16/ros-pine
base16/sagelight
base16/sandcastle
base16/seti-ui
base16/shapeshifter
base16/silk-dark
base16/silk-light
base16/snazzy
base16/solar-flare-light
base16/solar-flare
base16/solarized-dark
base16/solarized-light
base16/spacemacs
base16/summercamp
base16/summerfruit-dark
base16/summerfruit-light
base16/synth-midnight-terminal-dark
base16/synth-midnight-terminal-light
base16/tango
base16/tender
base16/tomorrow-night
base16/tomorrow
base16/twilight
base16/unikitty-dark
base16/unikitty-light
base16/vulcan
base16/windows-10-light
base16/windows-10
base16/windows-95-light
base16/windows-95
base16/windows-high-contrast-light
base16/windows-high-contrast
base16/windows-nt-light
base16/windows-nt
base16/woodland
base16/xcode-dusk
base16/zenburn
Filter Keyword:
class PythonClass:
def funct(int a, int b):
return a + b
if __name__ == "__main__":
f = PythonClass()
print(f.funct(15, 25))
public class JavaClass {
public static int funct(int a, int b) {
return a + b;
}
public static void main(String[] args) {
System.out.println(funct(15, 25));
}
}
type GoClass struct{}
func (p *GoClass) funct(a, b int) int {
return a + b
}
func main() {
f := GoClass{}
fmt.Println(f.funct(15, 25))
}
class JavaScriptClass {
funct(a, b) {
return a + b;
}
}
if (name === "main") {
const f = new JavaScriptClass();
console.log(f.funct(15, 25));
}
class PHPClass {
public function funct(int $a, int $b) {
return $a + $b;
}
public static function main() {
$php_class = new PHPClass();
echo $php_class->funct(15, 25);
}
}
PHPClass::main();
#!/bin/bash
function funct() {
local a=$1
local b=$2
echo $(($a + $b))
}
if [[ "$0" == "${BASH_SOURCE[0]}" ]]; then
funct 15 25
fi
參、將風格套用在自己的 Blog / Blogger 上(以CDN實作)
複製以下程式碼 (已自動生成你選擇的風格所需之程式碼)
將程式碼貼在 Blogger 的主題 HTML 中
建立一份貼文測試 程式碼必須被包在「pre」、「code」Tag 中,可以選擇自動檢查或手動指定程式碼語言,如下圖 (請取代中括號): 支援語言列表如連結
<pre>
<code>
[你的程式碼...]
</code>
</pre>
<pre>
<code class="language-[指定語言]">
[你的程式碼...]
</code>
</pre>
完成
肆、參考資料
留言
張貼留言