From 8d7a7b712f5a4ee49e3687de8fb00f76d7571368 Mon Sep 17 00:00:00 2001
From: Jacky Zhao <j.zhao2k19@gmail.com>
Date: Fri, 01 Jul 2022 18:03:04 +0000
Subject: [PATCH] fix: non-SPA fn defs (closes #154)

---
 content/notes/config.md |  158 ++++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 146 insertions(+), 12 deletions(-)

diff --git a/content/notes/config.md b/content/notes/config.md
index a5c194f..2c1e352 100644
--- a/content/notes/config.md
+++ b/content/notes/config.md
@@ -2,6 +2,7 @@
 title: "Configuration"
 tags:
 - setup
+weight: 0
 ---
 
 ## Configuration
@@ -10,33 +11,148 @@
 The majority of configuration can be be found under `data/config.yaml`. An annotated example configuration is shown below.
 
 ```yaml
-name: Your name here! # Shows in the footer
-enableToc: true # Whether to show a Table of Contents
-description: Page description to show to search engines
-page_title: Quartz Example Page # Default Page Title
+# The name to display in the footer
+name: Jacky Zhao
 
-links: # Links to show in footer
+# whether to globally show the table of contents on each page
+# this can be turned off on a per-page basis by adding this to the
+# front-matter of that note
+enableToc: true
+
+# whether to by-default open or close the table of contents on each page
+openToc: false
+
+# whether to display on-hover link preview cards
+enableLinkPreview: true
+
+# whether to try to process Latex
+enableLatex: true
+
+# whether to enable single-page-app style rendering
+# this prevents flahses of unstyled content and overall improves
+# smoothness of quartz. More info in issue #109 on GitHub
+enableSPA: true
+
+# whether to render a footer
+enableFooter: true
+
+# whether backlinks of pages should show the context in which
+# they were mentioned
+enableContextualBacklinks: true
+
+# whether to show a section of recent notes on the home page
+enableRecentNotes: false
+
+# page description used for SEO
+description:
+  Host your second brain and digital garden for free. Quartz features extremely fast full-text search,
+  Wikilink support, backlinks, local graph, tags, and link previews.
+
+# title of the home page (also for SEO)
+page_title:
+  "🪴 Quartz 3.2"
+
+# links to show in the footer
+links:
   - link_name: Twitter
     link: https://twitter.com/_jzhao
   - link_name: Github
     link: https://github.com/jackyzha0
 ```
 
+### HTML Favicons
+If you would like to customize the favicons of your quartz-based website, you 
+can add them to the `data/config.yaml` file. The **default** without any set 
+`favicon` key is:
+
+```html
+<link rel="shortcut icon" href="icon.png" type="image/png">
+```
+
+The default can be overridden by defining a value to the `favicon` key in your 
+`data/config.yaml` file. Here is a `List[Dictionary]` example format, which is
+equivalent to the default:
+
+```yaml
+favicon:
+  - { rel: "shortcut icon", href: "icon.png", type: "image/png" }
+#  - { ... } # Repeat for each additional favicon you want to add
+```
+
+In this format, the keys are identical to their HTML representations.
+
+If you plan to add multiple favicons generated by a website (see list below), it
+may be easier to define it as HTML. Here is an example which appends the 
+**Apple touch icon** to quartz's default favicon:
+
+```yaml
+favicon: |
+  <link rel="shortcut icon" href="icon.png" type="image/png">
+  <link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
+```
+
+This second favicon will now be used as a web page icon when someone adds your 
+webpage to the home screen of their Apple device. If you are interested in more 
+information about the current, and past, standards of favicons, you can read 
+[this article](https://www.emergeinteractive.com/insights/detail/the-essentials-of-favicons/).
+
+**Note** that all generated favicon paths, defined by the `href` 
+attribute, are relative to the `static/` directory.
+
 ### Graph View
 To customize the Interactive Graph view, you can poke around `data/graphConfig.yaml`.
 
 ```yaml
-enableLegend: false # automatically generate a legend
-enableDrag: true # allow dragging nodes in the graph
-enableZoom: true # allow zooming and panning the graph
-depth: -1 # how many neighbours of the current node to show (-1 is all nodes)
-paths: # colour specific nodes path off of their path
+# if true, a Global Graph will be shown on home page with full width, no backlink.
+# A different set of Local Graphs will be shown on sub pages.
+# if false, Local Graph will be default on every page as usual
+enableGlobalGraph: false
+
+### Local Graph ###
+localGraph:
+	# whether automatically generate a legend
+    enableLegend: false
+    
+    # whether to allow dragging nodes in the graph
+    enableDrag: true
+    
+    # whether to allow zooming and panning the graph
+    enableZoom: true
+    
+    # how many neighbours of the current node to show (-1 is all nodes)
+    depth: 1
+    
+    # initial zoom factor of the graph
+    scale: 1.2
+    
+    # how strongly nodes should repel each other
+    repelForce: 2
+
+	# how strongly should nodes be attracted to the center of gravity
+    centerForce: 1
+
+	# what the default link length should be
+    linkDistance: 1
+    
+    # how big the node labels should be
+    fontSize: 0.6
+    
+    # scale at which to start fading the labes on nodes
+    opacityScale: 3
+
+### Global Graph ###
+globalGraph:
+	# same settings as above
+
+### For all graphs ###
+# colour specific nodes path off of their path
+paths:
   - /moc: "#4388cc"
 ```
 
 
 ## Styling
-Want to go even more in-depth? You can add custom CSS styling and change existing colours through editing `assets/custom.scss`. If you'd like to target specific parts of the site, you can add ids and classes to the HTML partials in `/layouts/partials`. 
+Want to go even more in-depth? You can add custom CSS styling and change existing colours through editing `assets/styles/custom.scss`. If you'd like to target specific parts of the site, you can add ids and classes to the HTML partials in `/layouts/partials`. 
 
 ### Partials
 Partials are what dictate what actually gets rendered to the page. Want to change how pages are styled and structured? You can edit the appropriate layout in `/layouts`.
@@ -45,4 +161,22 @@
 
 More info about partials on [Hugo's website.](https://gohugo.io/templates/partials/)
 
-Still having problems? Checkout our [FAQ and Troubleshooting guide](notes/troubleshooting.md).
\ No newline at end of file
+Still having problems? Checkout our [FAQ and Troubleshooting guide](notes/troubleshooting.md).
+
+## Language Support
+[CJK + Latex Support (测试)](notes/CJK%20+%20Latex%20Support%20(测试).md) comes out of the box with Quartz.
+
+Want to support languages that read from right-to-left (like Arabic)? Hugo (and by proxy, Quartz) supports this natively.
+
+Follow the steps [Hugo provides here](https://gohugo.io/content-management/multilingual/#configure-languages) and modify your `config.toml`
+
+For example:
+
+```toml
+defaultContentLanguage = 'ar'
+[languages]
+  [languages.ar]
+    languagedirection = 'rtl'
+    title = 'مدونتي'
+    weight = 1
+```
\ No newline at end of file

--
Gitblit v1.10.0