Skip to content

v0.23.1

Latest

Choose a tag to compare

@gimalay gimalay released this 06 Sep 09:27

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 stats no longer reports links with a URI scheme (tel:, ftp:, file:, …) as broken — they are external links, not document references
  • [[target]] resolves to Target.md, and iwe normalize rewrites and shortens such links to the document they point at
  • iwe normalize keeps existing line breaks when wrap_column and preserve_newlines are both set (the two options together used to collapse a paragraph into a single reflowed block)
  • iwe normalize applies preserve_newlines and wrap_column to djot documents, which previously ignored both
  • iwe normalize no 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]] opens Target.md
  • textDocument/formatting keeps existing line breaks when wrap_column and preserve_newlines are both set (the two options together used to collapse a paragraph into a single reflowed block)
  • textDocument/formatting applies preserve_newlines and wrap_column to djot documents, which previously ignored both
  • textDocument/formatting no 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_url treats any URL with a URI scheme (tel:, ftp:, file:, obsidian:, zotero:, …) as external instead of only http:, https: and mailto:, so those links no longer turn into document keys; a Windows drive letter such as C:/notes/file.md stays a path
  • Wikilink lookup ignores case, so [[target]] finds Target.md; an exact-case match still wins, keys stay case-preserving, and iwe normalize keeps the full path rather than shortening a link that two keys differing only by case would both answer to
  • wrap_column no longer discards preserved soft line breaks: with preserve_newlines on, 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 .dj paragraph 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-range wrap_column falls 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