v3.0.0

Breaking changes

New features

Duplicate filenames now supported

Files are now addressed based on full path, instead of filename. This arised from new insights on how Obsidian filepath parsing works. Starting with this version it is thus possible to have, for example, a notes.md file in every folder.

This does require that you turn on Configuration Options#Allow Duplicate Filenames in Root.

Graph toggling

The user can now choose which grapher they want to use. The choice is persisted in localStorage. The custom grapher system has been rewritten to make use of javascript modules. Any custom grapher code will have to be rewritten.

Full collapsible directory tree in side pane

The dir tree in the left pane now shows the entire directory. It is now compiled in the python step, instead of via javascript, and the current page is highlighted + the necessary folders are opened on load to make the current page visible.

Collapsible side panes in documentation view

The whole of the left and right panes are collapsible to make more space for reading. The panes are folded open/closed based on screen width until a user toggles a pane, from that moment on the choice is persisted in localStorage and this choice is then used going forward.

Refactors / tweaks

Modularizing of javascript code

This is mostly to tidy up the code and keep us from polluting the global scope. Aside from that not yet really interesting in itself. This process is half completed. Code on the "sidelines" that are easy to modularize have been modularized, the rest still needs to be done.

Browsable without javascript enabled

At heart what the compiled website is, is a wiki, and for this we don't need any javascript. Some people want to have javascript disabled for security reasons, and the sites compiled by obsidianhtml should accommodate that when feasible. These changes are aimed at opening toggleable divs by default and then closing them with javascript, making sure that content is viewabe when javascript is disabled.

Dataview integration (alpha)

Starting with this version you can enable dataview integration. When enabled it will look in your vault for a folder called obs.html/export , which should contain html exports. These exports can be generated by installing and running the obs.html Obsidian plugin.

This feature is in early alpha. Look here for development notes/status or if you want to chime in: https://github.com/obsidian-html/obsidian-html/issues/271

Bugfixes

Css Layers causing Chrome to hang

Yes you read that right. CSS layers are removed for this reason.

"[TOC]" showing up in notes without an #h1

Minor bug, fixed now