- the meaning of CustomSortOrder.standardObsidian changes from a fixed one to what is actually selected in Obsidian UI
- the CustomSortOrder.standardObsidian can be applied at a folder level (as the default for folder) and at a group level (this is a major addition)
- added a mapping of Obsidian UI sorting methods onto internal plugin sorting methods, plus addition of the Obsidian UI logic to push folders to the top unconditionally
- !!! NO NEW UNIT TESTS FOR THIS FEATURE - must add later
- not tested manually, as the commits extraction and pushing is done as part of #88 github issue
* #79 - parent-folder-name variable support
- introductions of simplistic macros / templating support
- initially only one macro supported: {:%parent-folder-name%:}
- macro expanded only for plain-text matching rules, ignored for regexp-based rules
- for children of the root folder the macro is ignored
- unit tests for the new macros.ts
- unit tests for the testable part of updated custom-sort.ts
- new keyword added to support items starred with Obsidian core plugin 'Starred'
- the keyword is `starred:`
- detection and more user friendly handling of the general error condition when the File Explorer is not available
- new ribbon status icon shape to indicate the general error plus detailed error logged to the console
#32 - Implementation completed with rich unit tests coverage.
- manual.md contains a simple example of the new feature
- support for undocumented `\[0-3]` for the requester of the feature ;-)
- full unit tests coverage of the new functionality
- refactor of the parser to allow more flexible syntax and be able to detect more errors
- introduced many new errors recognized by the parser
- Implementation with full coverage of unit tests
- Documentation update with details about priorities (as an advanced feature, only in manual.md, not in README.md)
* #23 - support for sorting by metadata
- added support for grouping items by the presence of specified metadata
- new keyword `with-metadata:` introduced for that purpose in lexer
- if metadata field name is omitted, the default `sort-index-value` is used
- added support for sorting items by notes and folders metadata
- new keyword 'by-metadata:' introduced for that purpose
- if metadata field name is omitted, the default `sort-index-value` is used (or metadata name inheritance is used)
- unit tests of sorting spec processor extended accordingly
- documentation and code example in README.md
- extended to also support true alphabetical on metadata fields
- release unnecessary references after sorting completed