Commit graph

170 commits

Author SHA1 Message Date
Alex Nordstrom
9ff4626d25
fix: change callout metadata regex to include non-letter characters ()
* fix: change callout metadata regex to include non-letter characters

* fix: make metadata regex non-greedy

This allows for users to have callouts such as
> [!NOTE|left foo-bar 123] a ]+ title with square brackets [s] a
> Contents
2024-05-29 12:48:39 -07:00
Alex Nordstrom
77d6d9623f
feat: add callout metadata parsing () 2024-05-28 15:23:28 -07:00
Emile Bangma
5ec61468d5
fix(wikilinks): proper escaping of pipe character in wikilinks inside tables () 2024-03-31 09:44:50 -07:00
Emile Bangma
7e22c38f8e
fix(wikilinks): handle wikilinks inside tables seperately from other wikilinks ()
* fix(wikilinks): handle wikilinks inside tables seperately from other wikilinks

* Prettier

* Cleaned up duplicate code

* Remove test logging

* Refactored and fixed for non-aliased wikilinks inside table

* Updated naming and comments

* Updated comment of wikilink regex

* Updated regex to match previous formatting

* Match table even if EOF is immediately after the table.

* Update quartz/plugins/transformers/ofm.ts

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

* Change table escape replace to non-regex version

* Prettier

* Prettier

---------

Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com>
2024-03-17 18:16:04 -07:00
Emile Bangma
4691369abf
fix(wikilinks): only escape alias in wikilinks inside tables () 2024-03-16 09:23:08 -04:00
Aaron Pham
7164857f6e
chore(ofm): remove unused ()
Signed-off-by: Aaron <29749331+aarnphm@users.noreply.github.com>
2024-03-15 18:17:42 -07:00
catcodeme
8be51a0504
fix: wikiLink in table ()
* fix: wikiLink in table

- update regexp to make '\' to group in alias
- handle alias using block_id

* style: format with prettier

* style: add comment for block_ref(without alias) in table

---------

Co-authored-by: hulinjiang <hulinjiang@58.com>
2024-03-14 23:25:01 -07:00
Linus Sehn
92cc23dc45
feat(plugin): citations ()
* feat: add rehype-citations

* feat: add citations transformer plugin

* feat: add rehype-rewrite

* feat: add csl option and add no-popover to citation links

* revert: add rehype-rewrite

04b2692 'feat: add rehype-rewrite'

* feat: use existing package for html manipulation

* fix: remove `console.log()`
2024-03-13 03:59:37 -04:00
Emile Bangma
2e9a0c21db
fix(description): first sentence no longer repeats until max length () 2024-03-09 08:43:40 -08:00
Aaron Pham
b30a200bd4
fix(i18n): make sure to use correct fileData for manual localization ()
Signed-off-by: Aaron <29749331+aarnphm@users.noreply.github.com>
2024-03-08 09:14:22 -08:00
Emile Bangma
6d59aa8201
fix(description): counts characters instead of words ()
* fix(description): make sure description counts characters instead of words

* ref: removed duplicate ternary
2024-03-08 04:04:44 -05:00
Aaron Pham
141dd3b51f
fix(description): make sure to we join space correctly ()
Signed-off-by: Aaron <29749331+aarnphm@users.noreply.github.com>
2024-03-06 19:45:02 -08:00
Matt Vogel
001c166825
fix(tag): move hash to sass styling only () 2024-03-06 20:25:39 -05:00
Emile Bangma
e13cafe070
feat: support youtube playlist iframe ()
* feat: support youtube playlist iframe

* chore: updated Youtube embed documentation to include playlists
2024-03-06 09:45:31 -08:00
Emile Bangma
bcb5b2df09
feat(frontmatter): configure max length for description ()
* Sentence length check

* Replace external links with domain name.

* Updated documentation.

* Updated replacement values.

* Updated Regex based on feedback.

* Check description for undefined

* Updated external url transform regex.

* Updated formatting
2024-03-04 09:52:28 -08:00
Jacky Zhao
2a7e61ae2a feat: support transcluding codeblocks and blockquotes (closes ) 2024-03-03 12:31:55 -08:00
Jacky Zhao
421718958f fix(callouts): use user provided title instead of canonical for default title 2024-02-23 11:20:35 -08:00
Eiko Wagenknecht
1c3f3d03e1
fix(toc): correct type for minEntries param () 2024-02-20 09:06:53 -08:00
Eiko Wagenknecht
b6cf3df84f
fix: correctly parse falsy js as title () 2024-02-19 13:49:07 -08:00
Eiko Wagenknecht
efd46f84de
fix(frontmatter): delimiters parameter was not passed ()
* fix: delimiters parameter was not passed

Signed-off-by: Eiko Wagenknecht <git@eiko-wagenknecht.de>

* fix: remove unneeded undefined

---------

Signed-off-by: Eiko Wagenknecht <git@eiko-wagenknecht.de>
2024-02-19 00:08:36 -08:00
s-crypt
739c2e2cc8
perf(cdn): CDNJS instead of JSDelivr () 2024-02-18 20:26:04 -08:00
Silviu Lorenț
fa2ea2896f
feat: add user-defined config for syntax highlighting plugin ()
* feat: add user-defined options to syntax highlighting plugin

* feat: add default syntax highlighting config to `quartz.config.ts`

* chore: refactor according to @aarnphm's review

Co-authored-by: Aaron Pham <29749331+aarnphm@users.noreply.github.com>

* chore: run Prettier on `quartz/plugins/transformers/syntax.ts`

* Update quartz/plugins/transformers/syntax.ts

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

* Update syntax.ts

---------

Co-authored-by: Aaron Pham <29749331+aarnphm@users.noreply.github.com>
Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com>
2024-02-17 10:23:45 -08:00
Jacky Zhao
b87a701ff7 fix: base.com not being resolved properly with joinSegments 2024-02-13 01:27:27 -08:00
Lin
880a9511b6
fix: incorrect link resolution for transclusion in root index file ()
Co-authored-by: Lauréline Nevin <laureline.nevin@unicaen.fr>
2024-02-13 03:11:16 -05:00
Jacky Zhao
389f2e8bee fix(ofm): allow diacretic marks in tag regex (closes ) 2024-02-11 12:12:01 -08:00
Jacky Zhao
ab0e20b4d0 chore: refactor out and export endsWith 2024-02-11 10:57:24 -08:00
Aaron Pham
ab80eba794
chore(callouts): remove unnecessary whitespaces after class name ()
Though we should have a plugins that just strip whitespace in all node
class.

Signed-off-by: Aaron <29749331+aarnphm@users.noreply.github.com>
2024-02-10 17:19:17 -05:00
Aaron Pham
db5e701810
feat(i18n): support parsing callouts ()
* feat(i18n): support parsing callouts

Signed-off-by: Aaron <29749331+aarnphm@users.noreply.github.com>

* chore: move callout into components

Signed-off-by: Aaron <29749331+aarnphm@users.noreply.github.com>

* chore: update arabic translation

Signed-off-by: Aaron <29749331+aarnphm@users.noreply.github.com>

* fix: make sure to use correct items

Signed-off-by: Aaron <29749331+aarnphm@users.noreply.github.com>

---------

Signed-off-by: Aaron <29749331+aarnphm@users.noreply.github.com>
2024-02-10 17:09:57 -05:00
Aaron Pham
d2fb50b83c
fix(links): show backdrop on links highlighted in headers alias ()
* fix: assign specific classes based on parent node

Signed-off-by: Aaron <29749331+aarnphm@users.noreply.github.com>

* fix: use custom role for anchor icone

Signed-off-by: Aaron <29749331+aarnphm@users.noreply.github.com>

* fix: allow color on links 😄

Signed-off-by: Aaron <29749331+aarnphm@users.noreply.github.com>

* chore: unify search inner container

Signed-off-by: Aaron <29749331+aarnphm@users.noreply.github.com>

---------

Signed-off-by: Aaron <29749331+aarnphm@users.noreply.github.com>
2024-02-06 02:06:19 -05:00
Aaron Pham
52ef6d1b6f
fix(search): set background-color for icon within preview panel ()
Signed-off-by: Aaron <29749331+aarnphm@users.noreply.github.com>
2024-02-06 01:12:31 -05:00
Jacky Zhao
34334eabed perf: don't load mermaid if its not on the page 2024-02-05 20:36:31 -08:00
Aaron Pham
e58c217de1
feat: support checkbox (closes ) ()
* feat: support checkbox

Signed-off-by: Aaron <29749331+aarnphm@users.noreply.github.com>

* chore: apply review from jacky

---------

Signed-off-by: Aaron <29749331+aarnphm@users.noreply.github.com>
2024-02-04 22:19:25 -08:00
Jacky Zhao
36e4cc41a9
chore(i18n): refactor and cleanup ()
* checkpoint

* finish

* docs
2024-02-04 20:57:10 -08:00
Aaron Pham
5b90fbd0d0
feat(ofm): parsing all type of arrow ()
* feat(ofm): parsing all type of arrow

Signed-off-by: Aaron <29749331+aarnphm@users.noreply.github.com>

* fix: use html value instead of decimal

Signed-off-by: Aaron <29749331+aarnphm@users.noreply.github.com>

* fix: skip parsing arrow if it is not a valid supported mapping

Signed-off-by: Aaron <29749331+aarnphm@users.noreply.github.com>

---------

Signed-off-by: Aaron <29749331+aarnphm@users.noreply.github.com>
2024-02-04 00:51:55 -05:00
Jacky Zhao
3fb3930df8 fix: calculate heading after latex (closes ) 2024-02-03 19:44:24 -08:00
Luis Michaelis
bece8fcab6
fix: properly handle absolute paths in CreatedModifiedDate ()
When providing an absolute path to the content directory (e.g. when using an Obsidian Vault in another directory), the build step would fail with

    Failed to process `/absolute/path/to/file.md`: ENOENT: no such file or directory, stat '/current/working/directory/absolute/path/'

This problem originated in the `CreatedModifiedDate` transformer which tries to construct a native filesystem path to the file to call `fs.stat` on. It did not however, account for the original file path contained in the received `VFile` being an absolute path and so, just concatenated the current working directory with the absolute path producing a nonexistent one.

This patch adds a simple fix for this issue by checking if the original file path is already absolute before concatenating with the current working directory.
2024-02-02 09:51:34 -08:00
Jacky Zhao
bfd877133b fix: regression in formatted callout titles 2024-01-31 12:09:04 -08:00
Jacky Zhao
7cb1c291c8 fix: allow formatting in callout titles 2024-01-31 11:41:27 -08:00
Aaron Pham
fee3ef9b3a
chore(deps): bump katex to 0.16.9 ()
Signed-off-by: Aaron <29749331+aarnphm@users.noreply.github.com>
2024-01-31 09:25:16 -08:00
Jacky Zhao
4e5643fb49 fix: properly parse tags in body 2024-01-30 23:51:21 -08:00
LUCASTUCIOUS
072ee64127
feat: Feature/custom callout icon ()
* Add icons as masks

To handle a simple way to add custom icons, i made it pure css. Icon are now a mask for the callout-icon div, so they always follow the --color form the current callout.

Now to add a custom icon, you simply add

```css
.callout {
  &[data-callout="custom"] {
    --color: #customcolor;
    --border: #custombordercolor;
    --bg: #custombg;
    --callout-icon: url('data:image/svg+xml; utf8, <custom formatted svg>');

  }
```

to custom.scss

* remove now unused code

* Make callouts an enum

* docs: update instructions for custom callouts

* Prettier & run format

* dynamic matching

For maintainability, make dynamic mathching. If we or Obsidian want to support more callouts, we simply add it to the enum

* callout mapping const

Getting ride of the enum entierly as it's not worth here?

* fix callout icon styling

* Add forgotten icons

* Rebase

* harmonize callout icon and fold icon

* fix docs + prettier

* Update docs/features/callouts.md

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

* Update quartz/plugins/transformers/ofm.ts

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

* Suggestions fix

* remove unecessary rules

* comment is always nice

* Update docs/features/callouts.md

---------

Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com>
2024-01-30 22:10:13 -08:00
Jacky Zhao
ebf429a9c6 fix: fmt 2024-01-29 09:38:14 -08:00
Jacky Zhao
2d727443b3 fix: implement regex fix for alt in image wikilinks (closes ) 2024-01-29 09:36:36 -08:00
Aaron Pham
f68872c09f
feat(icon): update content for gfm links ()
* feat(icon): update content for gfm links

Signed-off-by: Aaron <29749331+aarnphm@users.noreply.github.com>

* chore: remove unused var

Signed-off-by: Aaron <29749331+aarnphm@users.noreply.github.com>

* fix: inherit display to remove additional spacing

Signed-off-by: Aaron <29749331+aarnphm@users.noreply.github.com>

* revert: remove redundant svg attribute

Signed-off-by: Aaron <29749331+aarnphm@users.noreply.github.com>

---------

Signed-off-by: Aaron <29749331+aarnphm@users.noreply.github.com>
2024-01-28 23:38:59 -08:00
Mara-Li
603c181ad2
feat: allow to config a translation for date ()
* fix: alt error mix with height/width

More granular detection of alt and resize in image

* fix: format

* feat: allow to translate the date displayed

* style: format

* fix: rename to fusion dateLocale with locale (i18n support)

* Update quartz/components/PageList.tsx

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

* remove default key as it was already set

* add docstring for locale

---------

Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com>
2024-01-28 22:13:59 -08:00
Jacky Zhao
85f05ea99b fix: revert parsing dates in frontmatter 2024-01-28 21:27:16 -08:00
Jacky Zhao
211f95c527 fix: allow alt to be defined in wikilinks alongside dims 2024-01-27 22:49:57 -08:00
Jacky Zhao
42ee069c1c fix: generalize frontmatter parsing and coercing 2024-01-27 21:39:16 -08:00
LUCASTUCIOUS
d5b40279bd
feat: Enable custom callout ()
* Enable custom callout

make a callout custom defaulted to a note one.

* Add a comment

* remove comment from 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>

---------

Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com>
2024-01-24 23:54:24 -08:00
Jacky Zhao
2c8d0f8ab6 fix: more robust ofm comment handling 2024-01-22 10:29:57 -08:00