iwe
Added
formatconfig option (markdown|djot, defaultmarkdown) selects the document format, with a matching[djot]options table. Withformat = "djot",iwereads, normalizes, exports, and creates djot documents and works with.djfiles instead of.md.
iwes
Added
format = "djot"in the configuration makes the server read, format, and write djot documents and map file URIs using the.djextension (default remainsmarkdownwith.md).
Fixed
- The server no longer leaks memory as documents are edited and saved; each update used to retain the previous version's graph data, growing memory without bound over a long session.
iwec
Added
--hostflag sets the address the HTTP transport binds to (default127.0.0.1); pass--host 0.0.0.0to accept connections from other machines.format = "djot"in the configuration makes the server read, write, and watch djot.djdocuments (default remainsmarkdownwith.md).
Fixed
- The server no longer leaks memory while watching a folder; repeatedly saving documents used to grow memory without bound and could exhaust RAM and swap over a long session.
liwe
Added
FormatOptions(Markdown(MarkdownOptions)|Djot(DjotOptions)) bundles the document format with its formatting options; it is what the graph reads and writes through.Graph::new_with_options,from_state,from_path, andimportacceptimpl Into<FormatOptions>.DjotReader/DjotWriterparse and serialize djot documents so the graph round-trips a.djdocument back to djot, andConfigurationgains a top-levelformatselector, adjot: DjotOptionstable, andConfiguration::format_options().InlineandDocumentInlinegainSpan,Mark,Insert,Delete, andSymbolvariants, and aninline::Attributestype, so djot's bracketed attribute spans, highlight/insert/delete marks, and symbols round-trip losslessly through the graph.
Changed
NodeIter::to_text(parent, &FormatOptions)replaces the markdown-specificto_markdown, serializing to whichever format theFormatOptionscarries.Key::to_pathand thefsdiscovery and write helpers (walk_md_paths,new_for_path,write_file,write_store_at_path) now take aFormatso document files use the configured extension (.mdor.dj).
Fixed
- Updating or removing a document now reclaims the graph nodes, lines, and reference-index entries that belonged to its previous version, so a long-lived
Graphno longer grows without bound as the same documents are edited over and over.