Hey all,
I would like to put forward what would be from my perspective and experience a proper tab system.
The entire system rests on two main pillars, organization and flexibility. Tabs should be easy to layout in any desired form and should be groupable as desired to keep things clean. On the layout front, I think obsidian already does a fantastic job. Panes can be laid out basically to anyone’s heart’s content, which is more than enough. what is lacking is organization.
Two other programs which get tabs partially right (in my opinion) are Pycharm (python editor by IntelliJ) and Vivaldi (chromium-based browser). They will be used as a reference.
Pycharm
First looking at Pycharm. It offers almost the same flexibility as obsidian when it comes to laying out panes, with one major difference that each new pane “area” becomes a proper tab dock, which can be used to store any arbitrary amount of tabs. The image below should clarify things.
This presents the major advantage of switching from “assigning notes to zones”, to “creating arbitrary zones in which any note can then be added”. This in turn allows for putting all notes of similar nature in one “logical” area for example.
Vivaldi
Vivaldi gets another aspect of tabs right. It offer two key features, which are tab staking, and tab tilling.
Tab staking allows for grouping tabs together, which are then represented as a single tab in the top level, and broken down individually on a second level.
This presents a number of major advantages. First, from an organizational perspective, this allows for grouping tabs by concepts/topic/session etc… This proves incredibly effective in avoiding the rampant problem of having a lot of tabs open, making them useless. It also allows for easy manipulation of groups of tabs. As the entire tab group is effectively represented as a single tab on the top level, moving this group around zones becomes very straight forward.
Finally, Vivaldi offers tabs tilling. This might seem redundant as it would overlap with the already existing tilling capabilities of obsidian, however it addresses a different aspect of tab handling. This effectively allows for creating “linked” zones or areas. In Vivaldi when tilled, tabs remain independent while their relative placement is effectively fixed.
Note: I would argue that in this specific setup it might be desirable to actually group tilled tabs together to avoid the confusion of figuring out which note displayed in which zone is really listed in which tab zone.
Including group tilling would allow to further control the display of various note, and ensure certain pairs are easy handled and maintained (and example use would be having a pane in source mode and one in preview for users preferring that over WYSIWYG)
Closing remarks
Finally, I should mention that I am aware of the existing tabs pluggin, however I believe it gets one thing wrong which greatly hinder its usability. That is the lack of tabs location permance. (Last time I tried it at least) tabs location and order would change as they were toggled. This breaks one of the major advantages of tabs, which is the spatial organisation model a user builds as they open and navigates tabs.
Combining all the elements described above would I think allow for a great synergy.
So that’s my take on what the ideal tab management system would look like and perform (for me at least). I believe this sort of system, either implemented as a core feature or made available as a plugin would prove extremely effective is navigating and managing a lot of notes, especially for users like me who tend to have many open in parallel.
I look forward to hearing your thoughts!