Commit Graph

157 Commits

Author SHA1 Message Date
08ac0c3f8c bump to v4 2024-01-05 17:29:34 +09:00
ae602f72e4 Merge commit '76f2664277e07a7d1b011fac236840c6e8e69fdd' into v4 2023-11-27 18:01:51 +09:00
Jacky Zhao
74777118a7 feat: header and full-page transcludes (closes #557) 2023-11-13 22:51:40 -08:00
Jacky Zhao
101e9946bd feat: add collapseByDefault option to TableOfContents (closes #566) 2023-11-04 12:11:42 -07:00
Jacky Zhao
7c01e8dde0 feat: openLinksInNewTab option for link transformer 2023-10-22 09:54:12 -07:00
Hrishikesh Barman
2f99339dcf
feat: add transformations for latex in oxhugofm (#510)
ox-hugo currently supports the following syntax for latex equations:
- https://orgmode.org/manual/LaTeX-fragments.html
- https://ox-hugo.scripter.co/doc/equations

This syntax is supported by mathjax as is mentioned in the ox-hugo documentation.

But quartz uses remark-math which has some issues with the \( \) syntax.
See https://github.com/remarkjs/remark-math/issues/39

This change adds few more transformations to the OxHugoFlavouredMarkdown
plugin, which makes a best effort conversion of this syntax into what
the Quartz Latex transformer plugin supports.

With these changes, the generated files show latex formatting with
default quartz configuration.

Sidenote on `\_` escape by ox-hugo:

ox-hugo escapes, _ using \_, we match against it after we transform
equations into what quartz supports($$ and $).

This could be achieved using lookaround like regex as follows
```js
(?<=(\$|\$\$)[\s\S]*) -> Positive lookbehind for $ or $$
\\_ -> Matches \_
(?=[\s\S]*(?:\1)) Positive lookahead for $ or $$ if matched
const escapedUnderscoreRegex = new RegExp(/(?<=(\$|\$\$)[\s\S]*)\\_(?=[\s\S]*(?:\1))/, "g")
````

But since lookahead/behind can slow things down on large files, we just
look up all equations with $ and $$ delimiters and then try replacing \_
2023-09-29 11:35:26 -07:00
Ben Schlegel
0b61f6fbfd
feat: implement breadcrumb component (#508)
* feat: implement breadcrumbs

* style: fix styling, move breadcrumbs to top

* refactor: move `capitalize to `lang.ts``

* refactor: clean breadcrumb generation

* feat: add options to breadcrumbs

* feat: implement `resolveFrontmatterTitle`

* feat: add `hideOnRoot` option

* feat(consistency): capitalize every crumb

* style: add `flex-wrap` to parent container

* refactor: clean `Breadcrumbs.tsx`

* feat(accessibility): use `nav`, add aria label

* style: improve look in popovers by adding margin

* docs: write docs for breadcrumb component

* refactor: collapse `if` condition for hideOnRoot

* chore: add todo for perf optimization

* docs: update introduction
2023-09-29 10:26:15 +02:00
Jacky Zhao
d22c3c107a fix: coerce title to string 2023-09-25 18:15:55 -07:00
Jacky Zhao
697bffdb8b fix: treat the 0 time as invalid too 2023-09-24 14:47:30 -07:00
Jacky Zhao
13c8673226 feat: add warning for invalid date format 2023-09-22 10:04:50 -07:00
rwutscher
27a6087dd5
fix: tag regex no longer includes purely numerical 'tags' (#485)
* fix: tag regex no longer includes purely numerical 'tags'

* fix: formatting

* fix: use guard in findAndReplace() instead of expanding the regex
2023-09-19 12:26:30 -07:00
Jacky Zhao
cce389c81d
feat: note transclusion (#475)
* basic transclude

* feat: note transclusion
2023-09-13 11:28:53 -07:00
Jacky Zhao
4461748a85 fix dont show html in search when rssFullHtml is true (closes #474) 2023-09-13 09:43:30 -07:00
Jacky Zhao
6ecdcb5e24 feat: resolve block references in obsidian markdown 2023-09-12 22:55:50 -07:00
hcplantern
a19df64be8
fix: callout parsing (#469) 2023-09-11 23:00:21 -07:00
Oskar Manhart
4e23e67244
feat: plugin for remark-breaks (#467)
* feat: plugin for remark-breaks

* fix: update package-lock.json

* fix: styling

Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com>

* Update linebreaks.ts

* Update index.ts

---------

Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com>
2023-09-10 23:11:42 -07:00
Jacky Zhao
53f1c88738 fix: more lenient date parsing for templates 2023-09-08 09:29:57 -07:00
Jacky Zhao
2525bfbab5 fix: links to index not showing in graph (closes #450) 2023-09-06 22:24:15 -07:00
Jacky Zhao
828aa71fe3 fix: escape encoding for titles in rss 2023-09-06 21:47:59 -07:00
Jacky Zhao
2d52eba413 fix: dont transform external links 2023-09-06 20:25:50 -07:00
Ben Schlegel
b213ba45e2
fix: regex for matching highlights (closes #437) (#438)
* fix:  regex for matching highlights

* fix: regex for empty highlights
2023-08-31 11:55:04 -07:00
Jeffrey Fabian
1cc09ef76d
feat: support kebab-case and nested tags in Obsidian-flavored Markdown tag-in-content parsing (#425)
* enhancement: support kebab-case and nested tags in ofm transformer

* update regex/capture groups to allow for (arbitrarily) nested values and tags of only -/_

* Update quartz/plugins/transformers/ofm.ts

---------

Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com>
2023-08-29 10:14:54 -07:00
Jacky Zhao
52ca312f41 fix: slugify tag on page before adding (closes #411) 2023-08-27 12:27:55 -07:00
Hrishikesh Barman
bc543f81d9
feat(plugins): add OxHugoFlavouredMarkdown (#419)
* feat(plugins): add OxHugoFlavouredMarkdown

ox-hugo is an org exporter backend that exports org files to
hugo-compatible markdown in an opinionated way. This plugin adds some
tweaks to the generated markdown to make it compatible with quartz but
the list of changes applied it is not extensive.

In the future however, we could leapfrog ox-hugo altogether and
create a quartz site directly out of org-roam files. That way we won't
have to do all the ritual dancing that this plugin has to perform.
See https://github.com/k2052/org-to-markdown

* fix: add toml to remarkFrontmatter configuration

* docs: add docs for OxHugoFlavouredMarkdown

* fixup! docs: add docs for OxHugoFlavouredMarkdown
2023-08-25 22:52:23 -07:00
Hrishikesh Barman
5c6d1e27ba
feat(plugins): add toml support for frontmatter (#418)
* feat(plugins): add toml support for frontmatter

Currently frontmatter is expected to be yaml, with delimiter set to
"---". This might not always be the case, for example ox-hugo(a hugo
exporter for org-mode files) exports in toml format with the delimiter
set to "+++" by default.

With this change, the users will be able use frontmatter plugin to
support this toml frontmatter format.

Example usage: `Plugin.FrontMatter({delims: "+++", language: 'toml'})`

- [0] https://ox-hugo.scripter.co/doc/org-meta-data-to-hugo-front-matter/

* fixup! feat(plugins): add toml support for frontmatter
2023-08-25 10:25:46 -07:00
Jacky Zhao
eed4472aee fix: use proper full base for links.ts 2023-08-23 12:18:50 -07:00
Jacky Zhao
db9f51d2c1 fix: use proper full base for links.ts 2023-08-23 12:18:50 -07:00
Jacky Zhao
b444c5c13b fix: percent-encoding for files with %, contentIndex for non-latin chars (closes #397, closes #399) 2023-08-22 23:34:28 -07:00
Jacky Zhao
664afb2375 fix: percent-encoding for files with %, contentIndex for non-latin chars (closes #397, closes #399) 2023-08-22 23:34:28 -07:00
Jacky Zhao
36548d5986 fix: toc for cyrillic and other non-latin alphabets (closes #396) 2023-08-22 22:41:50 -07:00
Jacky Zhao
67e5f13ba4 fix: toc for cyrillic and other non-latin alphabets (closes #396) 2023-08-22 22:41:50 -07:00
Jacky Zhao
8b63ff882a fix: tag support for non-latin alphabets (fixes #398) 2023-08-22 22:14:16 -07:00
Jacky Zhao
a205549bb8 fix: tag support for non-latin alphabets (fixes #398) 2023-08-22 22:14:16 -07:00
bb677840fc
fixed broken CJK links (#390) 2023-08-22 09:16:55 -07:00
c6f05d56a4 fixed broken CJK links (#390) 2023-08-22 09:16:55 -07:00
Jacky Zhao
dd47be1bc6 improve path resolution stability 2023-08-19 16:28:44 -07:00
Jacky Zhao
c990edfac3 improve path resolution stability 2023-08-19 16:28:44 -07:00
Jacky Zhao
c874e7e937 base path refactor to better support subpath hosting 2023-08-19 15:52:25 -07:00
Jacky Zhao
fd174f45a5 base path refactor to better support subpath hosting 2023-08-19 15:52:25 -07:00
Jacky Zhao
0c199975f2 various path fixes for links to extensions, fix relative paths in links 2023-08-17 00:55:28 -07:00
Jacky Zhao
9d58a8f238 various path fixes for links to extensions, fix relative paths in links 2023-08-17 00:55:28 -07:00
Jacky Zhao
2f6747b166 fix relative path resolution in router and link crawling 2023-08-16 22:04:15 -07:00
Jacky Zhao
f0eaeb1772 fix relative path resolution in router and link crawling 2023-08-16 22:04:15 -07:00
Jacky Zhao
d6e73f221c fix relative path resolution logic, add more path tests 2023-08-12 21:16:43 -07:00
Jacky Zhao
eb3981d514 fix relative path resolution logic, add more path tests 2023-08-12 21:16:43 -07:00
Jacky Zhao
aed3f5fccb fmt 2023-08-12 10:17:07 -07:00
Jacky Zhao
138033622e fmt 2023-08-12 10:17:07 -07:00
Jacky Zhao
c55d54f068 enable rich text in callout title 2023-08-12 10:16:55 -07:00
Jacky Zhao
736871ad78 enable rich text in callout title 2023-08-12 10:16:55 -07:00
Jacky Zhao
827dd91847 format, make search async 2023-08-12 00:03:11 -07:00