summaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
Diffstat (limited to 'scripts')
-rwxr-xr-xscripts/setup.sh32
1 files changed, 14 insertions, 18 deletions
diff --git a/scripts/setup.sh b/scripts/setup.sh
index a404eae..d77d23e 100755
--- a/scripts/setup.sh
+++ b/scripts/setup.sh
@@ -6,7 +6,7 @@
# bash setup-docsify.sh
#
# Downloads Docsify core, the search plugin, the Vue theme, the copy-to-clipboard
-# plugin, and Prism syntax highlighting (bash, yaml, javascript, python, r) — all
+# plugin, and extra Prism languages (bash, yaml, python, r) — all
# served locally, no external CDN dependencies at runtime.
#
# Re-running in an existing site is safe: it refreshes the assets and regenerates
@@ -82,15 +82,14 @@ fetch "${CDN}/docsify@${DOCSIFY_VERSION}/themes/vue.css" assets/css/
# Copy-to-clipboard plugin (injects its own CSS — no separate stylesheet needed)
fetch "${CDN}/docsify-copy-code@3/dist/docsify-copy-code.min.js" assets/js/docsify-copy-code.min.js
-# Prism syntax highlighting: core engine, then clike (required by javascript),
-# then the individual languages.
-fetch "${CDN}/prismjs@1/components/prism-core.min.js" assets/js/prism-core.min.js
-fetch "${CDN}/prismjs@1/components/prism-clike.min.js" assets/js/prism-clike.min.js
-fetch "${CDN}/prismjs@1/components/prism-javascript.min.js" assets/js/prism-javascript.min.js
-fetch "${CDN}/prismjs@1/components/prism-bash.min.js" assets/js/prism-bash.min.js
-fetch "${CDN}/prismjs@1/components/prism-yaml.min.js" assets/js/prism-yaml.min.js
-fetch "${CDN}/prismjs@1/components/prism-python.min.js" assets/js/prism-python.min.js
-fetch "${CDN}/prismjs@1/components/prism-r.min.js" assets/js/prism-r.min.js
+# Extra Prism languages. Docsify already bundles Prism core plus html/css/clike/
+# javascript, so we only add the languages it does NOT ship. Never download
+# prism-core here — a standalone core replaces Docsify's Prism and silently breaks
+# highlighting for every language loaded after it.
+fetch "${CDN}/prismjs@1/components/prism-bash.min.js" assets/js/prism-bash.min.js
+fetch "${CDN}/prismjs@1/components/prism-yaml.min.js" assets/js/prism-yaml.min.js
+fetch "${CDN}/prismjs@1/components/prism-python.min.js" assets/js/prism-python.min.js
+fetch "${CDN}/prismjs@1/components/prism-r.min.js" assets/js/prism-r.min.js
# ── Step 3: index.html ──────────────────────────────────────────────────────────
step "Step 3 — Creating index.html"
@@ -121,10 +120,7 @@ cat > index.html << 'HTML'
<script src="assets/js/search.min.js"></script>
<script src="assets/js/docsify-copy-code.min.js"></script>
- <!-- Prism: core engine first, then clike (required by javascript), then languages -->
- <script src="assets/js/prism-core.min.js"></script>
- <script src="assets/js/prism-clike.min.js"></script>
- <script src="assets/js/prism-javascript.min.js"></script>
+ <!-- Extra Prism languages — Docsify bundles Prism core + html/css/js. Load after docsify. -->
<script src="assets/js/prism-bash.min.js"></script>
<script src="assets/js/prism-yaml.min.js"></script>
<script src="assets/js/prism-python.min.js"></script>
@@ -200,7 +196,7 @@ echo ""
echo -e "${GREEN}${BOLD}Setup complete.${NC}"
echo -e "Open your site in a browser to verify."
echo ""
-echo -e "Syntax highlighting (Prism) is enabled for: bash, yaml, javascript, python, r."
-echo -e "To add more languages, download additional prism-*.min.js files into"
-echo -e "assets/js/ and add their <script> tags to index.html (after prism-core.min.js)."
-echo -e "Copy-to-clipboard buttons are enabled on all code blocks."
+echo -e "Syntax highlighting: html, css, and javascript are built into Docsify;"
+echo -e "this setup adds bash, yaml, python, and r. To add more languages, download"
+echo -e "additional prism-<lang>.min.js files into assets/js/ and add their <script>"
+echo -e "tags to index.html. Copy-to-clipboard buttons are enabled on all code blocks."