feat(ofm): Allow for dashes in custom callout label (#1493)
* [OFM] Allow for dashes in custom callout label
For compatibility with Obsidian's behavior, a custom callout like
[!see-also] is possible. Previously, this was parsed by Quartz as a
callout “see” with metadata “-also”. Instead, this is should be a
callout “see-also” with title “See also” (capitalization + replace
dashes by spaces).
* prettier
| | |
| | | const highlightRegex = new RegExp(/==([^=]+)==/g) |
| | | const commentRegex = new RegExp(/%%[\s\S]*?%%/g) |
| | | // from https://github.com/escwxyz/remark-obsidian-callout/blob/main/src/index.ts |
| | | const calloutRegex = new RegExp(/^\[\!(\w+)\|?(.+?)?\]([+-]?)/) |
| | | const calloutRegex = new RegExp(/^\[\!([\w-]+)\|?(.+?)?\]([+-]?)/) |
| | | const calloutLineRegex = new RegExp(/^> *\[\!\w+\|?.*?\][+-]?.*$/gm) |
| | | // (?:^| ) -> non-capturing group, tag should start be separated by a space or be the start of the line |
| | | // #(...) -> capturing group, tag itself must start with # |
| | |
| | | children: [ |
| | | { |
| | | type: "text", |
| | | value: useDefaultTitle ? capitalize(typeString) : titleContent + " ", |
| | | value: useDefaultTitle |
| | | ? capitalize(typeString).replace(/-/g, " ") |
| | | : titleContent + " ", |
| | | }, |
| | | ...restOfTitle, |
| | | ], |