You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardexpand all lines: CODE_OF_CONDUCT.md
+19-22
Original file line number
Diff line number
Diff line change
@@ -20,28 +20,28 @@ If you see someone who is making an extra effort to ensure our community is welc
20
20
21
21
The following behaviors are expected and requested of all community members:
22
22
23
-
* Participate in an authentic and active way. In doing so, you contribute to the health and longevity of this community.
24
-
* Exercise consideration and respect in your speech and actions.
25
-
* Attempt collaboration before conflict.
26
-
* Refrain from demeaning, discriminatory, or harassing behavior and speech.
27
-
* Be mindful of your surroundings and of your fellow participants. Alert community leaders if you notice a dangerous situation, someone in distress, or violations of this Code of Conduct, even if they seem inconsequential.
28
-
* Remember that community event venues may be shared with members of the public; please be respectful to all patrons of these locations.
23
+
- Participate in an authentic and active way. In doing so, you contribute to the health and longevity of this community.
24
+
- Exercise consideration and respect in your speech and actions.
25
+
- Attempt collaboration before conflict.
26
+
- Refrain from demeaning, discriminatory, or harassing behavior and speech.
27
+
- Be mindful of your surroundings and of your fellow participants. Alert community leaders if you notice a dangerous situation, someone in distress, or violations of this Code of Conduct, even if they seem inconsequential.
28
+
- Remember that community event venues may be shared with members of the public; please be respectful to all patrons of these locations.
29
29
30
30
## 4. Unacceptable Behavior
31
31
32
32
The following behaviors are considered harassment and are unacceptable within our community:
33
33
34
-
* Violence, threats of violence or violent language directed against another person.
35
-
* Sexist, racist, homophobic, transphobic, ableist or otherwise discriminatory jokes and language.
36
-
* Posting or displaying sexually explicit or violent material.
37
-
* Posting or threatening to post other people's personally identifying information ("doxing").
38
-
* Personal insults, particularly those related to gender, sexual orientation, race, religion, or disability.
39
-
* Inappropriate photography or recording.
40
-
* Inappropriate physical contact. You should have someone's consent before touching them.
41
-
* Unwelcome sexual attention. This includes, sexualized comments or jokes; inappropriate touching, groping, and unwelcomed sexual advances.
42
-
* Deliberate intimidation, stalking or following (online or in person).
43
-
* Advocating for, or encouraging, any of the above behavior.
44
-
* Sustained disruption of community events, including talks and presentations.
34
+
- Violence, threats of violence or violent language directed against another person.
35
+
- Sexist, racist, homophobic, transphobic, ableist or otherwise discriminatory jokes and language.
36
+
- Posting or displaying sexually explicit or violent material.
37
+
- Posting or threatening to post other people's personally identifying information ("doxing").
38
+
- Personal insults, particularly those related to gender, sexual orientation, race, religion, or disability.
39
+
- Inappropriate photography or recording.
40
+
- Inappropriate physical contact. You should have someone's consent before touching them.
41
+
- Unwelcome sexual attention. This includes, sexualized comments or jokes; inappropriate touching, groping, and unwelcomed sexual advances.
42
+
- Deliberate intimidation, stalking or following (online or in person).
43
+
- Advocating for, or encouraging, any of the above behavior.
44
+
- Sustained disruption of community events, including talks and presentations.
45
45
46
46
## 5. Weapons Policy
47
47
@@ -59,14 +59,11 @@ If a community member engages in unacceptable behavior, the community organizers
59
59
60
60
If you are subject to or witness unacceptable behavior, or have any other concerns, please notify a community organizer as soon as possible. [email protected].
61
61
62
-
63
-
64
62
Additionally, community organizers are available to help community members engage with local law enforcement or to otherwise help those experiencing unacceptable behavior feel safe. In the context of in-person events, organizers will also provide escorts as desired by the person experiencing distress.
65
63
66
64
## 8. Addressing Grievances
67
65
68
-
If you feel you have been falsely or unfairly accused of violating this Code of Conduct, you should notify @jackyzha0 with a concise description of your grievance. Your grievance will be handled in accordance with our existing governing policies.
69
-
66
+
If you feel you have been falsely or unfairly accused of violating this Code of Conduct, you should notify @jackyzha0 with a concise description of your grievance. Your grievance will be handled in accordance with our existing governing policies.
The Citizen Code of Conduct is distributed by [Stumptown Syndicate](http://stumptownsyndicate.org) under a [Creative Commons Attribution-ShareAlike license](http://creativecommons.org/licenses/by-sa/3.0/).
80
+
The Citizen Code of Conduct is distributed by [Stumptown Syndicate](http://stumptownsyndicate.org) under a [Creative Commons Attribution-ShareAlike license](http://creativecommons.org/licenses/by-sa/3.0/).
84
81
85
82
Portions of text derived from the [Django Code of Conduct](https://www.djangoproject.com/conduct/) and the [Geek Feminism Anti-Harassment Policy](http://geekfeminism.wikia.com/wiki/Conference_anti-harassment/Policy).
Copy file name to clipboardexpand all lines: content/advanced/making plugins.md
+2-1
Original file line number
Diff line number
Diff line change
@@ -5,6 +5,7 @@ title: Making your own plugins
5
5
This part of the documentation will assume you have some basic coding knowledge and will include code snippets that describe the interface of what Quartz plugins should look like.
6
6
7
7
## Transformers
8
+
8
9
```ts
9
10
exporttypeQuartzTransformerPluginInstance= {
10
11
name:string
@@ -17,4 +18,4 @@ export type QuartzTransformerPluginInstance = {
Copy file name to clipboardexpand all lines: content/configuration.md
+27-24
Original file line number
Diff line number
Diff line change
@@ -2,7 +2,7 @@
2
2
title: Configuration
3
3
---
4
4
5
-
Quartz is meant to be extremely configurable, even if you don't know any coding. Most of the configuration you should need can be done by just editing `quartz.config.ts`.
5
+
Quartz is meant to be extremely configurable, even if you don't know any coding. Most of the configuration you should need can be done by just editing `quartz.config.ts`.
6
6
7
7
If you edit this file using a text-editor that has TypeScript language support like VSCode, it will warn you when you you've made an error in your configuration.
This part of the configuration concerns anything that can affect the whole site. The following is a list breaking down all the things you can configure:
20
21
21
22
-`pageTitle`: used as an anchor to return to the home page. This is also used when generating the [[RSS Feed]] for your site.
22
23
-`enableSPA`: whether to enable [[SPA Routing]] on your site.
23
24
-`enablePopovers`: whether to enable [[popover previews]] on your site.
24
-
-`analytics`: what to use for analytics on your site. Values can be
25
-
- `null`: don't use analytics;
26
-
- `{ provider: 'plausible' }`: use [Plausible](https://plausible.io/), a privacy-friendly alternative to Google Analytics; or
27
-
- `{ provider: 'google', tagId: <your-google-tag> }`: use Google Analytics
28
-
-`caononicalUrl`: sometimes called `baseURL` in other site generators. This is used for sitemaps and RSS feeds that require an absolute URL to know where the canonical 'home' of your site lives. This is normally the deployed URL of your site (e.g. `https://quartz.jzhao.xyz/` for this site). Note that Quartz 4 will avoid using this as much as possible and use relative URLs whenever it can to make sure your site works no matter *where* you end up actually deploying it.
29
-
-`ignorePatterns`: a list of [glob](https://en.wikipedia.org/wiki/Glob_(programming)) patterns that Quartz should ignore and not search through when looking for files inside the `content` folder.
25
+
-`analytics`: what to use for analytics on your site. Values can be
26
+
-`null`: don't use analytics;
27
+
-`{ provider: 'plausible' }`: use [Plausible](https://plausible.io/), a privacy-friendly alternative to Google Analytics; or
28
+
-`{ provider: 'google', tagId: <your-google-tag> }`: use Google Analytics
29
+
-`caononicalUrl`: sometimes called `baseURL` in other site generators. This is used for sitemaps and RSS feeds that require an absolute URL to know where the canonical 'home' of your site lives. This is normally the deployed URL of your site (e.g. `https://quartz.jzhao.xyz/` for this site). Note that Quartz 4 will avoid using this as much as possible and use relative URLs whenever it can to make sure your site works no matter _where_ you end up actually deploying it.
30
+
-`ignorePatterns`: a list of [glob](<https://en.wikipedia.org/wiki/Glob_(programming)>) patterns that Quartz should ignore and not search through when looking for files inside the `content` folder.
30
31
-`theme`: configure how the site looks.
31
-
- `typography`: what fonts to use. Any font available on [Google Fonts](https://fonts.google.com/) works here.
32
-
- `header`: Font to use for headers
33
-
- `code`: Font for inline and block quotes.
34
-
- `body`: Font for everything
35
-
- `colors`: controls the theming of the site.
36
-
- `light`: page background
37
-
- `lightgray`: borders
38
-
- `gray`: graph links, heavier borders
39
-
- `darkgray`: body text
40
-
- `dark`: header text and icons
41
-
- `secondary`: link colour, current [[graph view|graph]] node
42
-
- `tertiary`: hover states and visited [[graph view|graph]] nodes
43
-
- `highlight`: internal link background, highlighted text, [[syntax highlighting|highlighted lines of code]]
32
+
-`typography`: what fonts to use. Any font available on [Google Fonts](https://fonts.google.com/) works here.
33
+
-`header`: Font to use for headers
34
+
-`code`: Font for inline and block quotes.
35
+
-`body`: Font for everything
36
+
-`colors`: controls the theming of the site.
37
+
-`light`: page background
38
+
-`lightgray`: borders
39
+
-`gray`: graph links, heavier borders
40
+
-`darkgray`: body text
41
+
-`dark`: header text and icons
42
+
-`secondary`: link colour, current [[graph view|graph]] node
43
+
-`tertiary`: hover states and visited [[graph view|graph]] nodes
44
+
-`highlight`: internal link background, highlighted text, [[syntax highlighting|highlighted lines of code]]
44
45
45
46
## Plugins
47
+
46
48
You can think of Quartz plugins as a series of transformations over content.
47
49
48
50
![[quartz-transform-pipeline.png]]
@@ -62,18 +64,19 @@ plugins: {
62
64
By adding, removing, and reordering plugins from the `tranformers`, `filters`, and `emitters` fields, you can customize the behaviour of Quartz.
63
65
64
66
> [!note]
65
-
> Each node is modified by every transformer *in order*. Some transformers are position-sensitive so you may need to take special note of whether it needs come before or after any other particular plugins.
67
+
> Each node is modified by every transformer _in order_. Some transformers are position-sensitive so you may need to take special note of whether it needs come before or after any other particular plugins.
66
68
67
69
Additionally, plugins may also have their own configuration settings that you can pass in. For example, the [[Latex]] plugin allows you to pass in a field specifying the `renderEngine` to choose between Katex and MathJax.
68
70
69
71
```ts
70
72
transformers: [
71
-
Plugin.FrontMatter(),// uses default options
72
-
Plugin.Latex({ renderEngine: 'katex' }) // specify some options
73
+
Plugin.FrontMatter(), // uses default options
74
+
Plugin.Latex({ renderEngine: "katex" }),// specify some options
73
75
]
74
76
```
75
77
76
78
### Layout
77
-
Certain emitters may also output [HTML](https://developer.mozilla.org/en-US/docs/Web/HTML) files. To make sure that
79
+
80
+
Certain emitters may also output [HTML](https://developer.mozilla.org/en-US/docs/Web/HTML) files. To make sure that
Copy file name to clipboardexpand all lines: content/features/Latex.md
+8-2
Original file line number
Diff line number
Diff line change
@@ -3,6 +3,7 @@ Quartz uses [Katex](https://katex.org/) by default to typeset both inline and bl
3
3
## Formatting
4
4
5
5
### Block Math
6
+
6
7
Block math can be rendered by delimiting math expression with `$$`.
7
8
8
9
```
@@ -20,20 +21,25 @@ f(x) = \int_{-\infty}^\infty
20
21
$$
21
22
22
23
### Inline Math
24
+
23
25
Similarly, inline math can be rendered by delimiting math expression with a single `$`. For example, `$e^{i\pi} = -1$` produces $e^{i\pi} = -1$
24
26
25
27
### Escaping symbols
26
-
There will be cases where you may have more than one `$` in a paragraph at once which may accidentally trigger MathJax/Katex.
28
+
29
+
There will be cases where you may have more than one `$` in a paragraph at once which may accidentally trigger MathJax/Katex.
27
30
28
31
To get around this, you can escape the dollar sign by doing `\$` instead.
29
32
30
33
For example:
34
+
31
35
- Incorrect: `I have $1 and you have $2` produces I have $1 and you have $2
32
36
- Correct: `I have \$1 and you have \$2` produces I have \$1 and you have \$2
33
37
34
38
## MathJax
39
+
35
40
In `quartz.config.ts`, you can configure Quartz to use [MathJax SVG rendering](https://docs.mathjax.org/en/latest/output/svg.html) by replacing `Plugin.Latex({ renderEngine: 'katex' })` with `Plugin.Latex({ renderEngine: 'mathjax' })`
36
41
37
42
## Customization
43
+
38
44
- Removing Latex support: remove all instances of `Plugin.Latex()` from `quartz.config.ts`.
Copy file name to clipboardexpand all lines: content/features/Mermaid diagrams.md
+1-1
Original file line number
Diff line number
Diff line change
@@ -1,5 +1,5 @@
1
1
> [!warning]
2
-
> Wondering why Mermaid diagrams may not be showing up even if you have them enabled? You may need to reorder your plugins so that `Plugin.ObsidianFlavoredMarkdown()` is *after*`Plugin.SyntaxHighlighting()`.
2
+
> Wondering why Mermaid diagrams may not be showing up even if you have them enabled? You may need to reorder your plugins so that `Plugin.ObsidianFlavoredMarkdown()` is _after_`Plugin.SyntaxHighlighting()`.
A backlink for a note is a link from another note to that note. Links in the backlink pane also feature rich [[popover previews]] if you have that feature enabled.
8
8
9
9
## Customization
10
+
10
11
- Removing backlinks: delete all usages of `Component.Backlinks()` from `quartz.config.ts`.
Copy file name to clipboardexpand all lines: content/features/callouts.md
+11-10
Original file line number
Diff line number
Diff line change
@@ -3,15 +3,16 @@ title: Callouts
3
3
---
4
4
5
5
> [!warning]
6
-
> Wondering why callouts may not be showing up even if you have them enabled? You may need to reorder your plugins so that `Plugin.ObsidianFlavoredMarkdown()` is *after*`Plugin.SyntaxHighlighting()`.
7
-
6
+
> Wondering why callouts may not be showing up even if you have them enabled? You may need to reorder your plugins so that `Plugin.ObsidianFlavoredMarkdown()` is _after_`Plugin.SyntaxHighlighting()`.
8
7
9
8
> [!info]
10
9
> Default title
11
10
12
11
> [!question]+ Can callouts be nested?
12
+
>
13
13
> > [!todo]- Yes!, they can.
14
-
> > > [!example] You can even use multiple layers of nesting.
14
+
> >
15
+
> > > [!example] You can even use multiple layers of nesting.
Full-text search in Quartz is powered by [Flexsearch](https://github.com/nextapps-de/flexsearch). It's fast enough to return search results in under 10ms for Quartzs as large as half a million words.
8
8
9
-
It can be opened by either clicking on the search bar or pressing ⌘+K. The top 5 search results are shown on each query. Matching subterms are highlighted and the most relevant 30 words are excerpted. Clicking on a search result will navigate to that page.
9
+
It can be opened by either clicking on the search bar or pressing ⌘+K. The top 5 search results are shown on each query. Matching subterms are highlighted and the most relevant 30 words are excerpted. Clicking on a search result will navigate to that page.
10
10
11
11
This component is also keyboard accessible: Tab and Shift+Tab will cycle forward and backward through search results and Enter will navigate to the highlighted result (first result by default).
12
12
13
13
> [!info]
14
14
> Search requires the `ContentIndex` emitter plugin to be present in the [[configuration]].
15
15
16
16
### Indexing Behaviour
17
+
17
18
By default, it indexes every page on the site with **Markdown syntax removed**. This means link URLs for instance are not indexed.
18
19
19
20
It properly tokenizes Chinese, Korean, and Japenese characters and constructs separate indexes for the title and content, weighing title matches above content matches.
20
21
21
22
## Customization
23
+
22
24
- Removing search: delete all usages of `Component.Search()` from `quartz.config.ts`.
0 commit comments