SebastianMC / obsidian-custom-sort

Take full control over the order and sorting of folders and notes in File Explorer in Obsidian
GNU General Public License v3.0
301 stars 23 forks source link
:exclamation: Breaking changes in Obsidian - always use the newest version of the plugin
- Obsidian 1.7.2 - no fixes for Obsidian breaking changes available --> More details
- Obsidian 1.6.3 - update the plugin to 2.1.11 or newer --> More details
- Obsidian 1.6.0 - update the plugin to 2.1.9 or newer --> More details
- Obsidian 1.5.4 - update the plugin to 2.1.7 or newer --> More details

This is a simple version of README which highlights the basic scenario and most commonly used feature

The long and much more detailed advanced-README.md is here


Freely arrange notes and folders in File Explorer (https://obsidian.md plugin)

Take full control of the order of your notes and folders by:

The simplest usage scenario is to sort items via drag and drop:

Drag and drop ordering simplest example

Another typical scenario is to apply different sorting order per folder:

Idea of different sorting order per folder

For detailed instructions and videos go to wiki documentation

More advanced capabilities available through config-driven sorting:


Basic scenario 1: set the custom sorting order for a specific folder

Create a new note named sortspec in the folder for which you want to configure the sorting

In the top of the new note put the following YAML front matter text:

---
sorting-spec: |
  order-desc: a-z
---

Click the ribbon button (Inactive or Static icon on phone) to tell the plugin to read the sorting specification and apply it. The sorting should be applied to the folder. On desktops and tablets the ribbon icon should turn (Active)

!!! Done! !!!

You should see the files and sub-folders in your folder sorted in reverse alphabetical order, folders and files intermixed

An illustrative image which shows the reverse alphabetical order applied to the root folder of some vault:

Basic example


Remarks

Remarks:

  • your new sortspec note should look like this except for the syntax highlighting, which could differ
  • you will notice that the folders and files are treated equally and thus intermixed
    • the behavior depends on what files and subfolders you have in your folder
  • changing the sorting order via the standard Obsidian UI button won't affect your folder, unless...
    • ...unless you deactivate the custom sorting via clicking the ribbon button to make it Inactive
  • for clarity: the underlying file of the note sortspec is obviously sortspec.md
  • in case of troubles refer to the TL;DR section of advanced README.md
  • feel free to experiment! The plugin works in a non-destructive fashion, and it doesn't modify the content of your vault. It only changes the order in which the files and folders are displayed in File Explorer
  • indentation matters in YAML -> the two leading spaces in order-desc: a-z are intentional and required
  • this common example only touches the surface of the rich capabilities of this custom sorting plugin. For more details go to advanced version of README.md

Basic scenario 2: explicitly list folders and files in the order which you want

This comes from the suggestion by TheOneLight in this discussion

Take the instructions from the Basic scenario 1 above and replace the YAML content with:

---
sorting-spec: |
  My first folder name
  My second folder name
  My first file name
  My second file name
  // ... and continue so in the desired order
---

This will enforce the order as you listed inside the YAML


Editing multi-line properties in the new YAML properties editor (Obsidian 1.4 and newer)

The newly introduced YAML properties editor (Obsidian 1.4 and newer) can make editing the multi-line text properties tricky and confusing. There are short videos here How to create or edit a multi‐line property in Obsidian? which could be helpful:


Basic automatic sorting methods

The list of basic automatic sorting orders includes:

Remark: In the above list the -asc stems from Ascending and -desc stems from Descending

Manual sorting

The manual ordering of notes and folders is also done via the sorting configuration. Refer to the TL;DR section of advanced README.md for examples and instructions

Ribbon icon

Click the ribbon icon to toggle the plugin between enabled and suspended states.

States of the ribbon icon on large-screen devices (desktops, laptops and tablets like iPad):

On small-screen mobile devices (phones) the icon is static:

For more details on the icon states refer to Ribbon icon section of the advanced-README.md

Small screen mobile devices remarks

Installing the plugin

From the official Obsidian Community Plugins page

The plugin could and should be installed from the official Obsidian Community Plugins list at https://obsidian.md/plugins or directly in the Obsidian app itself. Search the plugin by its name 'CUSTOM FILE EXPLORER SORTING'

For other installation methods refer to Installing the plugin section of advanced-README.md

Credits

Thanks to Nothingislost for the monkey-patching ideas of File Explorer in obsidian-bartender

...and before you go, maybe you'd like the visual separators in File Explorer?

Do you want to have a nice-looking horizontal separators in File Explorer like this?

separators

If so, head on to Instruction and more context by @replete\ Quick & easy!

This feature is not dependent on the Custom Sorting plugin. At the same time I'm mentioning it here because it is a side effect of a discussion with @replete. We were considering a direct support of the Separators in the plugin. Eventually this boiled down to a very concise and smart CSS-snippet based solution, independent of the plugin. Go, see, copy to the CSS-snippets in Obsidian and enjoy the more grouped look