New Features and Enhancements:
- Backward Compatibility: Ensures that previous versions of configurations remain functional and adaptable to new updates.
- Setting Tooltips: Added detailed tooltips for all plugin settings, enhancing user guidance and configuration clarity.
- Localization Support: Full localization functionality now available, with included localization files to support multi-language use across the entire plugin.
- Code Editor Functionality: Integrated a versatile code editor supporting all VS Code themes, customizable font settings, and ligature support, enabling a smooth coding experience within Obsidian.
- Documentation and Online Wiki: Complete documentation provided on GitBook/GitHub, offering a centralized knowledge base with detailed usage, configuration, and feature information.
- Registry Reload Feature: New registry reload options for plugin management:
- Standard Unload: Similar to previous versions, offering a light, quick reload.
- Heavy Unload: Full registry reset, recommended for significant plugin adjustments.
Bug Fixes:
- Error Spam Fix (#70): Resolved a recurring error message issue that caused message spam, improving stability and user experience.
- OLR Event Update: Fixed an issue in the "on-load registry" (OLR) where only the last registered extension was recognized due to a
last()
function in thecreate()
event withinmain.ts
. OLR now correctly registers all extensions listed after the first comma, ensuring complete extension support.
Unexpected Additions:
- Standard Extension and View Registry: Introduced native support for standard extensions and views, facilitating broader compatibility across different formats.
- Universal Plugin Compatibility: Achieved a "universal" plugin status, with mechanisms to adapt older and future configuration versions to unified formats. This allows updates to the plugin without altering local data.
- Case-Insensitive Extension Mode: Users can enable case-insensitive mode (e.g., TXT = txt = tXT), useful for Windows systems. Not recommended for UNIX systems due to case sensitivity.
- Separator Semantics Update: Input separator updated from
;
to>
, refining input parsing and improving consistency across functions. - Ignore Mode Enhancement: Enhanced ignore mode to handle raw data effectively, optimizing resource use.
Optimization:
-
Case-Insensitive Extension Generation Algorithm: Optimized the case-insensitive extension generation algorithm to maintain complexity at
$O(n*2^n)$ while reducing RAM usage. - Overall Codebase Quality Improvement: Refined and streamlined the codebase for better readability, maintainability, and performance.
3.0.0 (2024-11-03)
- fix!(compatibility): fix of data implementation in compatibility module; (020f3d4)
- fix!(styles): add styling for monaco-editor; (ba59d5b)
- feat!(common): add codeblock editor in plugin; (d2bc94a)
- feat!(common): add context editor for code editor in plugin; (9e0f2df)
- feat!(common): add code editor in the plugin; (473591f)
- feat!(settings): moving semantics towards
>
instead;
; (492802c) - feat!(settings): add toggle for case insensitive mode for extensions; (433c61b)
- fix!(codesmell): reduce common code smell, improve codebase quality; (2ed530e)
- feat!(optimization): optimization of main module of plugin, reduce RAM usage; ([8fba404])(https://github.com/mokkapps/changelog-generator-demo/commits/8fba404d1c52d88211e57f74f67b7311e931fd60)
- build!(build-ci): add CI build script for checking instance and state of plugin; (ad01a35)
- feat!(localization): now almost every UI element of plugin is localized …(except console); (7d4557f)
- feat!(wiki-button): add reference for wiki in plugin settings (99635a6)
- feat!(compatibility): add new compatibility module with older versions, feature fix of #63; (eb1786e)
- feat!(grouped-extensions): now grouped extensions split by '>', now support files with commas and empty strings; (99fc3f9)
- feat!(locales): add localisation support for every language in plugin; (1badbbb)
- feat!(error-silencing): add "Silence errors" function and add "Debug" toggle in the settings; (2a7ee5f)
- feat!(unloading): differentiate "Hard-delete" (past Unload) and new "Unload" function; (28166e3)
- feat!(unloading): now "Unload" button fully deletes extensions registry, not just plugin's settings; (d43ec6e)
- architecture: create architecture for code editor and other things (f37a46d)
- common: add button to "Reload" registries in soft way which saves default extensions (ec9c5cc)
- common: add support for default extensions and default views by default (a918488)
- compatibility: adapt compatibility module to new
>
semantics (47b5f80) - locale: implement localization for errors (b85563e)
- modals-locale: now modals are also localized (2a96a38)
- monaco-editor: implement monaco view in the main codebase (9f5ba74)
- monaco-editor: integrate workers from monaco to fix visuals of code view (dd15f31)
- settings: add block about code editor settings and implement them in code (3105825)
- settings: add some little graphics and additions to the settings tab (d24fc82)
- build-deps: include monaco-editor and terser as main dependencies (7091114)
- build-deps: remove PY command from environment of plugin (2d243da)
- build-env: add cloning script for debug in .SH variation (ea842ca)
- deps-dev: bump the npm_and_yarn group across 1 directory with 2 updates (286be59)
- deps: bump the npm_and_yarn group across 1 directory with 2 updates (5007fe8)
- licensing: update licensing information in every code (31ebca8)
- tracking: create script which allows to skip worktree of clone script and little refactoring of them (1b527af)
- wiki: create a page about case insenstivity mode in plugin (a7c66d3)
- wiki: create a page about extensions processing in plugin on wiki (958cc1e)
- wiki: create a page about hard-deleting registry by plugin (515495f)
- wiki: create a page about markdown overcharge of plugin on wiki (2b46b2f)
- wiki: create a page about mobile extensions config (0497f51)
- wiki: create a page about unloading registry by plugin (2e9f961)
- wiki: create a sidebar for wiki of project (b8a3bf0)
- wiki: create an introduction page (5c64d72)
- naming: now UNITADE's view names correspondingly to stack it uses (36144de)
- build: fix typescript shenanigans and implement clone .SH script for UNIX-systems (8bf5e0f)
- common: fix some localizations errors and common TS errors (30aa283)
- global: fix dependencies of codemirror and monaco from being externals (d9a0395)
- registry: fix OLR system reading only last, fix of #75 (03f70dd)
- settings: fix example in settings to new grouped extensions config (7a38b2c)