Djot documents now format the way markdown always has: preserve_newlines and wrap_column apply to .dj files, and the two options finally work together — a paragraph with existing line breaks keeps them and wraps each line on its own instead of collapsing into one reflowed block. Wikilinks also resolve regardless of case, so [[target]] opens Target.md, and links carrying a URI scheme (tel:, ftp:, file:, …) are now treated as external rather than reported as broken document references.
iwe
Fixed
iwe statsno longer reports links with a URI scheme (tel:,ftp:,file:, …) as broken — they are external links, not document references[[target]]resolves toTarget.md, andiwe normalizerewrites and shortens such links to the document they point atiwe normalizekeeps existing line breaks whenwrap_columnandpreserve_newlinesare both set (the two options together used to collapse a paragraph into a single reflowed block)iwe normalizeappliespreserve_newlinesandwrap_columnto djot documents, which previously ignored bothiwe normalizeno longer turns an escaped block marker at the start of a djot paragraph (\-,\#,\>,1\.,\|) into a real list, heading, quote or table
iwes
Fixed
- Go-to-definition, hover and code actions skip links with a URI scheme (
tel:,ftp:,file:, …) instead of treating them as document references - Wikilinks resolve regardless of case, so
[[target]]opensTarget.md textDocument/formattingkeeps existing line breaks whenwrap_columnandpreserve_newlinesare both set (the two options together used to collapse a paragraph into a single reflowed block)textDocument/formattingappliespreserve_newlinesandwrap_columnto djot documents, which previously ignored bothtextDocument/formattingno longer turns an escaped block marker at the start of a djot paragraph (\-,\#,\>,1\.,\|) into a real list, heading, quote or table
Library crates (liwe, diwe)
liwe
Fixed
is_ref_urltreats any URL with a URI scheme (tel:,ftp:,file:,obsidian:,zotero:, …) as external instead of onlyhttp:,https:andmailto:, so those links no longer turn into document keys; a Windows drive letter such asC:/notes/file.mdstays a path- Wikilink lookup ignores case, so
[[target]]findsTarget.md; an exact-case match still wins, keys stay case-preserving, andiwe normalizekeeps the full path rather than shortening a link that two keys differing only by case would both answer to wrap_columnno longer discards preserved soft line breaks: withpreserve_newlineson, each line is wrapped on its own instead of the whole paragraph being reflowed into one block- Djot honors
preserve_newlines: soft line breaks in a.djparagraph are kept instead of always being joined into one line - Djot honors
wrap_column, wrapping paragraphs the same way markdown does — inline code, math and link URLs stay atomic, and list and blockquote indents are subtracted from the effective width [djot.formatting]values are range-checked on load like[markdown.formatting], so an out-of-rangewrap_columnfalls back to the default instead of being used as written- Djot keeps escaped block markers escaped when writing, so a paragraph starting with
\-,\#,\>,1\.or\|is not silently turned into a list, heading, quote or table on the next normalize