Jacky Zhao
d7d5d8253c
fix: clean up ofm code for video parsing
2024-01-17 09:45:05 -08:00
Matthew Bailin
f6299da182
feat: add ofm option to transform <img>
tags with video exts into <video>
( closes #463 ) ( #664 )
...
* enableVideoEmbed plugin
* enableVideoEmbed plugin
* enableVideoEmbed plugin
* enableVideoEmbed plugin
* enableVideoEmbed plugin
* cleaned up index validation, regex, conditional, no autoplay
* Update quartz/plugins/transformers/ofm.ts
Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com>
* Update quartz/plugins/transformers/ofm.ts
Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com>
* Update quartz/plugins/transformers/ofm.ts
Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com>
* Update ofm.ts
* Update ofm.ts
---------
Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com>
2024-01-17 09:32:02 -08:00
kabirgh
e17ff20244
fix: use joinSegments for contentIndex.json
file path ( #702 )
2024-01-16 08:24:01 -08:00
sean
fa7d139ce5
feat: External link icons ( #697 )
2024-01-15 23:55:32 -08:00
Jacky Zhao
f31cabbbf9
fix: dont use default callout title if theres additional title children left ( closes #693 )
2024-01-15 12:37:56 -08:00
Jacky Zhao
f36376503a
fix: allow transcludes of notes with dots ( closes #682 )
2024-01-13 14:47:39 -08:00
ikorihn
52e6c03730
fix: broken RSS item's link, which were set to https:/${base}
. ( #687 )
2024-01-13 09:08:21 -08:00
Nate Silva
707124cbd6
fix: allow publish property to be a string (ExplicitPublish) ( #667 )
...
* fix: allow publish property to be a string (ExplicitPublish)
Previously, the ExplicitPublish filter would publish if the `publish`
property was truthy.
The filter expects the `publish` property to be a boolean:
```
---
publish: true
---
```
However, Obsidian only shows the above if you are viewing a page in
“Source” mode.
If you are not in Source view, and you choose Three Dots Menu (...),
“Add file property”, you will get a string, not a boolean. It seems
likely that many users will do this and get:
```
publish: "true"
```
Notice that `"true"` is a string, not the boolean value `true`. If the
user changes this to `"false"`, the page will still be published:
```
publish: "false"
```
That is because the string value `"false"` is truthy.
This PR does the following:
- Allows the `publish` property to be either a boolean or a string.
- If it’s a string, it’s considered `true` if the string is `"true"`
(not case-sensitive; it will also work if it is `"True"`, `"TRUE"`,
etc.)
- Guarantees that the returned value from `shouldPublish` is a `boolean`
-- previously it could be any truthy value even though it was cast to
`boolean`
* style: use double-quotes everywhere
* style: format according to project style guide
2024-01-02 15:19:19 -08:00
jeff
88194ac348
feat: allow embedding youtube videos with the obsidian markdown syntax ( #665 )
...
* Add option to allow embedding YouTube videos with Obsidian Markdown syntax
* Update Obsidian compatability doc page
* Switch to converting YT links as an html plugin
2024-01-02 10:49:14 -08:00
Olivér Falvai
65d75b8bdc
feat: support modification date reading from parent git repo ( #661 )
...
* feat: support modification date reading from parent git repo
* Print warning
* Fix formatting
* Update quartz/plugins/transformers/lastmod.ts
Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com>
---------
Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com>
2024-01-02 09:23:28 -08:00
Mats Fangohr
6e34844114
feat: embed webp images ( #666 )
2024-01-02 08:03:05 -08:00
Jacky Zhao
e603d7396b
fix: parse emoji tags in body ( closes #659 )
2024-01-01 08:58:25 -08:00
Jacky Zhao
4b6c7aeffe
feat: lazyLoading specifier in link transformer
2023-12-28 13:56:20 -08:00
Jacky Zhao
e277ed5c30
fix: use joinSegment instead of joining via slash in sitemap ( closes #658 )
2023-12-28 08:54:09 -08:00
Olivér Falvai
68f53352e7
feat: Self-hosted Plausible support ( #656 )
...
* Self-hosted Plausible support
* Remove leftover import
2023-12-28 08:49:35 -08:00
Jacky Zhao
359484c139
fix: more robust tags parsing
2023-12-28 08:48:14 -08:00
Jacky Zhao
dafc9f318e
feat: minify js scripts ( closes #655 ) ( #657 )
2023-12-28 08:02:04 -08:00
Jacky Zhao
504b447162
fix: use slugs instead of title as basis for explorer ( #652 )
...
* use slugs instead of title as basis for explorer
* fix folder persist state, better default behaviour
* use relative path instead of full path as full path is affected by -d
* dont use title in breadcrumb if it's just index lol
2023-12-27 16:44:14 -08:00
Jacky Zhao
b44a79eeba
fix: wikilinks should allow external links ( closes #639 )
2023-12-19 11:40:59 -08:00
Jacky Zhao
9b9d86474b
fix: mermaid rendering fix from upstream
2023-12-19 11:01:55 -08:00
Jacky Zhao
984ab1c578
fix: change backtick to regular after making script loading less hacky
2023-12-18 23:13:37 -08:00
Jacky Zhao
443cd53a1a
fix: mermaid rendering broken after rehype-pretty-code bump ( closes #638 )
2023-12-18 23:09:49 -08:00
Jacky Zhao
ea6208c1f0
deps: bump everything ( closes #635 ) ( #636 )
...
* deps: bump ws
* deps: bump lightningcss
* deps: workerpool
* deps: various types
* deps: chalk
* deps: globby
* deps: preact
* deps: tsx
* deps: @floating-ui/dom
* deps: esbuild
* deps: types + prettier
* deps: rimraf, typescript
* deps: remark/rehype/unified ecosystem
* format
2023-12-18 09:48:40 -08:00
Jacky Zhao
d2be097b76
feat: include tag hierarchies in tag listing, sort tag listing
2023-12-17 15:09:51 -08:00
Jacky Zhao
d979331dc7
fix: remove whitespace unicode from tag regex
2023-12-17 12:54:52 -08:00
Jacky Zhao
972cf0a887
feat: support emoji tags ( closes #634 )
2023-12-17 12:28:28 -08:00
Jacky Zhao
c6546903f2
fix: reland string coercion in title
2023-12-10 06:19:29 -08:00
Jacky Zhao
2c69b0c97d
fix: frontmatter coercion (empty string is falsy)
2023-12-08 16:55:40 -08:00
Sam Stokes
a7e20804f5
feat: Support space-delimited tags in FrontMatter
transformer ( #620 )
2023-12-04 18:18:47 -08:00
Jimin Kim
f0ec6c9b92
fix: tag index page ( #616 )
2023-12-03 14:56:30 -08:00
Jacky Zhao
9c88d5967f
fix: don't show popovers on heading anchors
2023-12-03 09:22:16 -08:00
Jacky Zhao
82bd08d14a
fix: transcludes and relative paths
2023-12-02 16:51:03 -08:00
Jacky Zhao
6a05fa777c
fix: bad transform in wikilink pre-transform ( closes #598 )
2023-11-17 14:00:49 -08:00
Matt Vogel
727b9b5d72
feat: add class alias
to aliases ( #585 )
2023-11-17 10:23:39 -08:00
Zijing Zhang
50f0ba29a2
feat: cname emitter ( #590 )
...
* feat: cname emitter
* feat: impl cname.ts
* Update cname.ts
* Update index.ts
* Update cname.ts
* Update cname.ts
* Update cname.ts
* Update cname.ts
2023-11-16 15:31:20 -08:00
Jacky Zhao
a26eb59392
feat: scrub link formatting from toc entries
2023-11-15 20:13:28 -08:00
Jacky Zhao
06426c8f7e
feat: support repeated anchor tag ( closes #592 )
2023-11-15 19:27:54 -08:00
Jacky Zhao
8fc7b9f4c6
feat: deref symlinks when copying static assets ( closes #588 )
2023-11-15 09:43:30 -08:00
Jacky Zhao
2de48b267a
fix: set htmlAst after walking tree in ofm ( closes #589 )
2023-11-14 20:01:48 -08:00
Jacky Zhao
74777118a7
feat: header and full-page transcludes ( closes #557 )
2023-11-13 22:51:40 -08:00
Jacky Zhao
bc02791734
fix: .date.getTime() based sort
2023-11-11 20:28:26 -08:00
Jacky Zhao
bf603c49c2
fix: sort rss feed by date
2023-11-11 12:08:54 -08:00
Jacky Zhao
99e8f5944f
fix: trailing slash aliases ( closes #577 )
2023-11-11 09:56:30 -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
Jacky Zhao
1e357ef5ac
fix(style): prioritize base and custom scss over component css
2023-10-21 21:06:02 -07:00
Jacky Zhao
af9ddadc4d
fix(css): import base from custom instead of the other way around ( #536 )
2023-10-14 13:45:56 -07:00
bfahrenfort
ab5efac75f
Fix: RSS title escaping ( #521 )
...
* Fix title escaping
* npm run format
2023-10-01 09:47:22 -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
Jacky Zhao
a897cc1f53
feat: add warning for missing home page
2023-09-22 10:04:50 -07:00
Jacky Zhao
6a9e6352e8
Revert "feat: Making Quartz available offline by making it a PWA ( #465 )"
...
This reverts commit d6301fae90
.
2023-09-20 13:52:45 -07:00
Jacky Zhao
70e029d151
Revert "docs: wording changes for offline support"
...
This reverts commit 52a172d1a4
.
2023-09-20 13:52:29 -07:00
Jacky Zhao
52a172d1a4
docs: wording changes for offline support
2023-09-20 11:40:36 -07:00
Adam Brangenberg
d6301fae90
feat: Making Quartz available offline by making it a PWA ( #465 )
...
* Adding PWA and chaching for offline aviability
* renamed workbox config to fit Quartz' scheme
* Documenting new configuration
* Added missig umami documentation
* Fixed formatting so the build passes, thank you prettier :)
* specified caching strategies to improve performance
* formatting...
* fixing "404 manifest.json not found" on subdirectories by adding a / to manifestpath
* turning it into a plugin
* Removed Workbox-cli and updated @types/node
* Added Serviceworkercode to offline.ts
* formatting
* Removing workbox from docs
* applied suggestions
* Removed path.join for sw path
Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com>
* Removed path.join for manifest path
Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com>
* Removing path module import
* Added absolute path to manifests start_url and manifest "import" using baseUrl
* Adding protocol to baseurl
Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com>
* Adding protocol to start_url too then
* formatting...
* Adding fallback page
* Documenting offline plugin
* formatting...
* merge suggestion
Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com>
* merge suggestion
Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com>
* merge suggestion
Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com>
* merge suggestion
Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com>
* merge suggestion
Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com>
* merge suggestion
Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com>
* merge suggestion
Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com>
* merge suggestion
Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com>
* merge suggestion
Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com>
* merge suggestion
Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com>
* merge suggestion
Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com>
* merge suggestion
Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com>
* formatting...
* Fixing manifest path, all these nits hiding the actual issues .-.
* Offline fallback page through plugins, most things taken from 404 Plugin
* adding Offline Plugin to config
* formatting...
* Turned offline off as default and removed offline.md
---------
Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com>
2023-09-20 11:38:13 -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
Yuto Nagata
422ba5c365
fix: umami analytics date attribute ( #477 )
2023-09-15 19:17:20 -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
Jacky Zhao
e3b879741b
feat: rich html rss ( closes #460 )
2023-09-12 21:44:03 -07:00
Jacky Zhao
60a3c54339
fix: 404 page styling for nested pages ( closes #458 )
2023-09-12 21:29:57 -07:00
Jacky Zhao
71d81bde1d
feat: rss limit ( closes #459 )
2023-09-12 19:18:44 -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
ef1ead31dc
fix: encodeuri for slugs in rss
2023-09-06 21:31:01 -07:00
Jacky Zhao
8d6029b7b8
feat: 404 page emitter
2023-09-06 21:02:21 -07:00
Jacky Zhao
2d52eba413
fix: dont transform external links
2023-09-06 20:25:50 -07:00
Adam Brangenberg
e8a04efaf1
feat(analytics): Support for Umami ( #449 )
2023-09-03 21:28:57 -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
Jacky Zhao
5fa6fc9789
fix: aliasredirects not using full path, add permalink support
2023-08-29 10:37:00 -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
Jeremy Press
082fdf2e80
Fix typo :) ( #430 )
2023-08-27 20:57:19 -07:00
Jeremy Press
b6b1dabde0
feat: support configurable ws port and remote development ( #429 )
...
Co-authored-by: Jeremy Press <jeremy@replit.com>
Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com>
2023-08-27 17:39:42 -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
c36a9f3fb7
feat: add defaultDateType config
2023-08-24 08:56:40 -07:00
bfahrenfort
8200c8d040
Revert contentIndex to RSS 2.0 ( #407 )
2023-08-23 22:57:49 -07:00
Jacky Zhao
eed4472aee
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
36548d5986
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
bb677840fc
fixed broken CJK links ( #390 )
2023-08-22 09:16:55 -07:00
Jacky Zhao
952d6cb3dd
fix: nav event with spa off, anchor nav refresh page
2023-08-20 18:08:44 -07:00
Jacky Zhao
e262482921
fix: string for aliases being treated as array of chars
2023-08-19 21:59:01 -07:00
Jacky Zhao
7b8017413c
impl baseDir option for quartz build --serve for local testing
2023-08-19 18:04:17 -07:00
Jacky Zhao
6681f28af0
fix trailing slash causing folder listing to not fetch content correctly
2023-08-19 16:55:36 -07:00
Jacky Zhao
dd47be1bc6
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
0c199975f2
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
d6e73f221c
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