Commit Graph

267 Commits

Author SHA1 Message Date
Jacky Zhao
c9ddec07aa feat: 404 page emitter 2023-09-06 21:02:21 -07:00
Jacky Zhao
7e1be1d5b2 fix: dont transform external links 2023-09-06 20:25:50 -07:00
Adam Brangenberg
49d5d56bf4 feat(analytics): Support for Umami (#449) 2023-09-03 21:28:57 -07:00
Ben Schlegel
50da33ea4d feat(search): add arrow key navigation (#442)
* feat(search): add arrow navigation

* chore: format

* refactor: simplify arrow navigation

* chore: remove comment

* feat: rework arrow navigation to work without state

* feat: make pressing enter work with arrow navigation

* fix: remove unused css class

* chore: correct comment

* refactor(search): use optional chaining
2023-09-03 09:32:46 -07:00
Ben Schlegel
f257e2a948 fix: clipboard button visible in search (#445) 2023-09-03 09:06:05 -07:00
Jacky Zhao
c7cd941e5f feat: pluralize things in lists 2023-09-02 18:07:26 -07:00
Ben Schlegel
53dd86727b fix(search): matches getting highlighted in title (#440) 2023-09-01 14:12:32 -07:00
Ben Schlegel
fa0629716f feat: Implement search for tags (#436)
* Quartz sync: Aug 29, 2023, 10:17 PM

* style: add basic style to tags in search

* feat: add SearchType + tags to search preview

* feat: support multiple matches

* style(search): add style to matching tags

* feat(search): add content to preview for tag search

* fix: only display tags on tag search

* feat: support basic + tag search

* refactor: extract common `fillDocument`, format

* feat: add hotkey to search for tags

* chore: remove logs

* fix: dont render empty `<ul>` if tags not present

* fix(search-tag): make case insensitive

* refactor: clean `hideSearch` and `showSearch`

* feat: trim content similar to `description.ts`

* fix(search-tag): hotkey for windows

* perf: re-use main index for tag search
2023-09-01 10:09:58 -07:00
Ben Schlegel
f06440806f 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
67451fa0fd fix: aliasredirects not using full path, add permalink support 2023-08-29 10:37:00 -07:00
Jeffrey Fabian
683c40a0ac 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
Ben Schlegel
e815256517 fix: correct graph labels for index.md nodes (#431) 2023-08-28 10:00:49 -07:00
Jeremy Press
43eeb8f4e7 Fix typo :) (#430) 2023-08-27 20:57:19 -07:00
Jeremy Press
ef762f28cd 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
Ben Schlegel
78eb93eb85 cleanup: rework cli to allow invoking create and build outside of cli (#428)
* refactor: move `bootstrap-cli.mjs` tp cli

also update reference in docs

* refactor(cli): move build handler to `cli-functions`

* refactor(cli): move create to handler + helpers

* refactor(cli): extract arg definitions

* refactor: rename handlers and helpers

* refactor(cli): move update, await handlers

* refactor(cli): create constants, migrate to helpers

* refactor(cli): migrate `restore`

* refactor(cli): migrate `sync`

* format

* refactor(cli): remove old imports/functions

* refactor(cli): remove unused imports + format

* chore: remove old log statement

* fix: fix imports, clean duplicate code

* fix: relative import

* fix: simplified cacheFile path

* fix: update cacheFile import path

* refactor: move bootstrap-cli to quartz

* format

* revert: revert path to bootstrap-cli

* ci: re-run

* ci: fix  execution permission
2023-08-27 15:59:51 -07:00
Jacky Zhao
d4187034c2 fix: slugify tag on page before adding (closes #411) 2023-08-27 12:27:55 -07:00
Ben Schlegel
3233d5b08a Fix search bar after navigate (#424) 2023-08-26 17:19:45 -07:00
Ben Schlegel
0688a2415f feat: support CLI arguments for npx quartz create (#421)
* feat(cli): add new args for content + link resolve

* feat(cli): validate cmd args

* feat(cli): add chalk + error code to errors

* feat(cli): support for setup/link via args

* refactor(cli): use yargs choices instead of manual

Scrap manual check if arguments are valid, use yargs "choices" field instead.

* feat(cli): add in-dir argument+ handle errors

add new "in-directory" argument, used if "setup" is "copy" or "symlink" to determine source. add error handling for invalid permutations of arguments or non existent path

* feat(cli): dynamically use cli or provided args

use "in-directory" arg as `originalFolder` if available, otherwise get it from manual cli process

* run format

* fix: use process.exit instead of return

* refactor: split CommonArgv and CreateArgv

* refactor(cli): rename create args, use ${} syntax

* fix(cli): fix link resolution strategy arg

* format

* feat(consistency): allow partial cmd args
2023-08-26 13:21:44 -07:00
Jacky Zhao
29c4087dea style: fix mulitline callout styling 2023-08-26 10:48:34 -07:00
Hrishikesh Barman
1de352dc11 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
da64b9be3a 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
477922e5f0 format, ensure ci runs on prs 2023-08-24 12:31:15 -07:00
Ben Schlegel
818fa95f0f style: integrate tertiary color to text-select (#413) 2023-08-24 12:28:06 -07:00
Zero King
d75cf0b354 feat: reproducible build (#412)
for sitemap, RSS and contentIndex.json.
2023-08-24 11:41:20 -07:00
Jacky Zhao
9707aadf11 format 2023-08-24 10:03:14 -07:00
Jacky Zhao
9973f77c5b fix: ensure recentnotes uses proper date 2023-08-24 09:38:00 -07:00
Jacky Zhao
7e537a83cb fix: add better warning when defaultDateType is not set due to upgrade 2023-08-24 09:17:43 -07:00
Jacky Zhao
ca718fa3d7 feat: add defaultDateType config 2023-08-24 08:56:40 -07:00
Jacky Zhao
9ff82b4983 fix: lock to never read when site is building 2023-08-24 08:31:12 -07:00
bfahrenfort
ae729cc28b Revert contentIndex to RSS 2.0 (#407) 2023-08-23 22:57:49 -07:00
Jacky Zhao
ce8f150883 format 2023-08-23 15:16:04 -07:00
Zane Helton
2c38375975 docs: update hosting.md with Vercel hosting instructions (#406)
* Update hosting.md with Vercel hosting instructions

* Update docs/hosting.md

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

* Update docs/hosting.md

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

* Run npm run format

---------

Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com>
2023-08-23 15:14:23 -07:00
Jacky Zhao
2b4320332e fix: text wrap in popover 2023-08-23 13:10:23 -07:00
Jacky Zhao
da2e87d655 fix: use proper full base for links.ts 2023-08-23 12:18:50 -07:00
kanpov
39a290c48f Fix #403 by moving documentation to separate directory to avoid merge conflicts (#405) 2023-08-23 12:09:04 -07:00
Jacky Zhao
107c8d413a fix: builds should no accumulate on repeated changes (closes #404) 2023-08-23 11:36:34 -07:00
Jacky Zhao
2ecc650d42 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
709ad94180 fix: toc for cyrillic and other non-latin alphabets (closes #396) 2023-08-22 22:41:50 -07:00
Jacky Zhao
300aff4125 fix: properly lock across source and content refresh by sharing a mutex 2023-08-22 22:27:41 -07:00
Jacky Zhao
460879df31 fix: tag support for non-latin alphabets (fixes #398) 2023-08-22 22:14:16 -07:00
Jacky Zhao
a8272d4a9c fix: spa hijacks back button (closes #400) 2023-08-22 21:30:31 -07:00
a23f127c13 fixed broken CJK links (#390) 2023-08-22 09:16:55 -07:00
Ikko Eltociear Ashimine
fc58b10ab3 fix: typo in bootstrap-cli.mjs (#394) 2023-08-22 09:16:21 -07:00
Jacky Zhao
520ed4368d fix: server-handler crash from filename (closes #386) 2023-08-21 17:01:18 -07:00
Jacky Zhao
e0bcc8815e fix: async-mutex not exclusively locking correectly 2023-08-21 16:43:32 -07:00
Jacky Zhao
72963752b6 docs: use canonical quartz.jzhao.xyz, update bootstrap script to point to correct hosting link 2023-08-21 09:15:01 -07:00
Jacky Zhao
a920416db2 format, update default sidepanel width 2023-08-21 09:00:13 -07:00
dcaf09b658 fix: opts being overriden in graph option (#384) 2023-08-21 08:45:47 -07:00
Jacky Zhao
57e9297173 format 2023-08-20 20:48:35 -07:00
Jacky Zhao
61d67c9057 fix: ctrl + k breaking after page nav 2023-08-20 20:47:07 -07:00
Jacky Zhao
504e6f67ee move wss server start after http 2023-08-20 18:41:37 -07:00
Jacky Zhao
487e0c8473 fix: nav event with spa off, anchor nav refresh page 2023-08-20 18:08:44 -07:00
Jacky Zhao
95b9358c0d fix: jump to anchor on deployed site triggering spa refresh 2023-08-20 17:50:56 -07:00
Jacky Zhao
1d5d088c86 remove checkout step from instructions as v4 is the default branch 2023-08-20 16:59:25 -07:00
Jacky Zhao
3b9ed2ab7b fix: ensure code exists inside pre before adding clipboard 2023-08-20 15:38:37 -07:00
Jacky Zhao
3eba87a512 fix: dont show index page for folder in its own listing 2023-08-20 15:02:24 -07:00
Jacky Zhao
3ad0b250bb fix: add async-mutex to builds on large vaults 2023-08-20 14:27:44 -07:00
Jacky Zhao
efd0c1a443 recent notes css fixes 2023-08-20 14:05:37 -07:00
Jacky Zhao
987d72d67f css fixes, add recent notes, more robust quartz update 2023-08-20 12:46:37 -07:00
Jacky Zhao
76bc9f49b4 fix description not being used in folder and tag listings 2023-08-20 01:08:18 -07:00
Jacky Zhao
cacdb200b0 docs: update notes for tag and folder listings 2023-08-20 00:52:49 -07:00
Jacky Zhao
e39eef402b fix: put quotations around font 2023-08-19 22:04:29 -07:00
Jacky Zhao
6edcfc0a9c fix: string for aliases being treated as array of chars 2023-08-19 21:59:01 -07:00
Jacky Zhao
604fc3be04 css: fix scrollbars on windows 2023-08-19 21:55:09 -07:00
Jacky Zhao
34dbddbd61 impl baseDir option for quartz build --serve for local testing 2023-08-19 18:04:17 -07:00
Jacky Zhao
5d225f1206 fix trailing slash causing folder listing to not fetch content correctly 2023-08-19 16:55:36 -07:00
Jacky Zhao
9e2fbabc20 avoid 404 on icon for spa navigations with anchors 2023-08-19 16:40:02 -07:00
Jacky Zhao
f7c2fc36f3 improve path resolution stability 2023-08-19 16:28:44 -07:00
Jacky Zhao
303a867d60 base path refactor to better support subpath hosting 2023-08-19 15:52:25 -07:00
Jacky Zhao
a3703cbe0b v4-alpha -> v4 2023-08-18 18:24:09 -07:00
Jacky Zhao
0320da77d0 format 2023-08-17 21:54:42 -07:00
Jacky Zhao
f56c5c3939 ensure sync includes untracked files 2023-08-17 21:49:58 -07:00
Jacky Zhao
f88e15c719 ensure contentfolder is passed to popContentFolder 2023-08-17 21:24:41 -07:00
Jacky Zhao
3031c599b1 fix when symlink targ is calculated and added npx quartz restore 2023-08-17 21:20:15 -07:00
Jacky Zhao
94a45c6efe format 2023-08-17 21:08:26 -07:00
Jacky Zhao
3990894cfe deref symlink on quartz sync 2023-08-17 21:07:40 -07:00
Jacky Zhao
6ab90d093c fix rebuild debouncing 2023-08-17 01:58:11 -07:00
Jacky Zhao
a3cba52362 fix back button in spa not working between two pages that both have hash fragments 2023-08-17 01:34:50 -07:00
Jacky Zhao
c65451519e format 2023-08-17 00:55:52 -07:00
Jacky Zhao
cdaec963ed various path fixes for links to extensions, fix relative paths in links 2023-08-17 00:55:28 -07:00
Jacky Zhao
94dbdec8d0 fix import paths 2023-08-16 22:09:11 -07:00
Jacky Zhao
b5ab38cb7e fix relative path resolution in router and link crawling 2023-08-16 22:04:15 -07:00
Jacky Zhao
e0d63776cd fix: add trailing slash to local serving 2023-08-13 17:47:18 -07:00
Jacky Zhao
b6a3fa4f62 fix relative path resolution logic, add more path tests 2023-08-12 21:16:43 -07:00
Jacky Zhao
e5869624bd 404 page styling on local 2023-08-12 21:16:43 -07:00
Jacky Zhao
d256e359b8 fix nested callout folding 2023-08-12 21:16:43 -07:00
Jacky Zhao
cdc8a4b7fe fmt 2023-08-12 10:17:07 -07:00
Jacky Zhao
fc5c8b4a94 enable rich text in callout title 2023-08-12 10:16:55 -07:00
Jacky Zhao
7b9e986f2e include home page in search 2023-08-12 00:24:30 -07:00
Jacky Zhao
b62827a782 format, make search async 2023-08-12 00:03:11 -07:00
Jacky Zhao
5e7865d7e9 fix wikilinks to anchors in the same document 2023-08-11 23:55:17 -07:00
Jacky Zhao
85bb91d998 fix scanning for tags in content 2023-08-11 23:40:06 -07:00
Jacky Zhao
7d9d4becd7 fix broken tag listing links to tags 2023-08-11 23:27:59 -07:00
Jacky Zhao
6093c863a6 fix emit filepaths, tag emit being overriden by content 2023-08-11 23:25:44 -07:00
Jacky Zhao
41f7de75a9 more documentation 2023-08-11 00:31:44 -07:00
Jacky Zhao
5bd341a462 run prettier 2023-08-10 21:29:11 -07:00
Jacky Zhao
cf730e31fb docs on making plugins 2023-08-10 21:16:07 -07:00
Jacky Zhao
99ce8dcd72 format 2023-08-09 09:18:44 -07:00
Jacky Zhao
3918ad7a75 update npx quartz update script 2023-08-09 09:10:40 -07:00
Jacky Zhao
1b37945b13 profiling, better concurrency heuristics 2023-08-09 00:26:33 -07:00