IDE style navigation (tab reuse on link opening, tab management, switch to already open note)

+1 for this feature

There are four plugins that provide something akin to this tab behavior, as far as I can tell:

  • No dupe leaves
  • Mononote
  • Obsidian Opener
  • Close similar tabs

Does anyone have a recommendation? Or will any one of the work as well as the others?

Itā€™s a bit confusing, because No Dupe Leaves points to Mononote in its Read-me, but No Dupe Leaves itself doesnā€™t seem to be abandoned:

:point_right: You should take a look at https://github.com/czottmann/obsidian-mononote :point_left:

Maybe you can clarify, @scambier?

2 Likes

@Feralflora No Dupe Leaves isnā€™t abandoned, but itā€™s not much more than a hack that works in specific conditions. Itā€™s enough for my needs, but Mononote looks like something much more robust - hence the recommendation.

5 Likes

Another compelling use case for reusing tabs is when using Obsidian URIs (sometime called ā€œdeep linksā€) with global keyboard shortcuts.

Whatever I am doing (whether Iā€™m in Obsidian or not), typing ā€œCmd-Ctrl-Opt-Aā€ opens my ā€œtasksā€ document in Obsidian. The way it works internally is by simply opening the obsidian://open?vault=myvault&file=tasks%2FTasks URI (as documented in Obsidian URI - Obsidian Help).

I do that ~100 times a day as itā€™s the fastest way for me to access my task list, and unfortunately I am forced to close the new tab manually every time although I already have the same document open and pinned in another tab.

Reusing open tabs would significantly improve that workflow and would be more intuitive in the general case, in my opinion :slight_smile:

3 Likes

+1

I have a note already open, I find it annoying to replace my current note with one that already had its own tab. If I middle mouse click it just opens a duplicate tab anyways. So I am not sure how can the current behavior be the default, whatā€™s the benefit?

3 Likes

I too would like to see this feature. Ideally, IMO, there would be a setting which allowed the user to choose what would happen when opening a link thatā€™s already open (options might be to switch to that tab, open a duplicate tab, possibly others).

I would also like to endorse the idea of modelling Obsidianā€™s UI/UX after an IDE in general. Iā€™m a programmer, so this would feel very natural to me personally. The other people I know who use Obsidian are also either programmers, or else people who are well-organized, intelligent, and interested in efficiency. This gives me the impression of Obsidian users as being a group that I feel overall would be pretty well-served by continuing to build on the already fairly IDE-inspired experience Obsidianā€™s UI offers. Thanks!

3 Likes

This is a source of frustration for me as well, please make it configurable!

1 Like

+1 to this. I use obsidian for studying notes as well and I find it useful to link to pdf material. But some PDFā€™s take a while to render when first opening them so rerendering them every time I want to jump to a piece of information is jarring.

1 Like

A lot of the plugins mentioned in this thread have stopped working recently, either partially or completely. Which makes this feel even more urgent to me

3 Likes

+1, the lack of this feature causes constant headaches with using obsidian effectively, should be a native option

I hope this plug-in to work in the Mobile environment. Especially in Android oneā€¦

+1 for this! Its very annoying to have multiple daily notes opened

2 Likes

+1 from me too, I find Obsidianā€™s current behavior very annoying, Iā€™m constantly manually closing and switching tabs after clicking links, because I already have the same note open, and donā€™t want copies.

The extensions seem to partially fix this, but not completely. I always have multiple panes open, each pane having a ā€œcategoryā€ of notes.

  • Mononote works well, but it only works within a single pane, not across panes
    • Mononote also breaks Advanced URI links with line numbers: if the file is already open, a new copy opens, Mononote immediately closes it, and the focus is left in the last tab in the pane where the linked file is open (so focus goes to a completely wrong file)
  • ā€œNo dupe leavesā€ opens the correct tab across all panes, but it always moves to the top of the file, so e.g. task links in Dataview queries donā€™t highlight the task

If Mononote would work across all panes and if that Advanced URI link bug could be fixed, it looks pretty promising.

3 Likes

+1, duplicate tabs are the plague of text editing. Itā€™s really common at least for me to go back and forth between two interlinked notes.
Duplicate tabs pollute the tab bar which makes it harder to navigate between tabs. If you donā€™t implement this feature then you might as well hide tabs altogether.
This feature may be more popular among power users, but as someone mentioned above that doesnā€™t mean other users wonā€™t benefit from it

1 Like

Another +1. The current tab handling of Obsidian is not intuitive, and I keep finding myself with many duplicates. The behaviour should be quite clear:

  1. Click on [[link]] - open link in the current tab, or switch to linkā€™s tab, if exists.
  2. Ctrl-click on [[link]] - open link in a new tab, or switch to linkā€™s tab, if exists.

Mononoteā€™s behaviour is a bit weird. In particular, it often closes your current tab without being able to click ā€œbackā€ to return to it.

4 Likes

I am very surprised that this is not the default behavior.

1 Like

I tried all the ones that were mentioned in the post and neither does it. Most donā€™t do anything (I think you have to be trying to open them in a new tab, not with a single click/ quick switcher?) and Mononote closes the tab which you were focusing on when you click on the file in the left panel.

@czottmann could you give the option to disable the closing of the previous focused tab? Thanks! Maybe itā€™s a bug, maybe a feature, idk.

1 Like

Mononote also breaks Advanced URI links with line numbers

Iā€™d love to fix that issue in Mononote but the thing about Mononote is that itā€™s purely reactive: it reacts to Obsidianā€™s lifecycle events, i.e. ā€œnew active tabā€ etc. The problem here is that the event is fired by Obsidian w/o any context ā€“ thereā€™s no way to tell where the event is coming from, i.e. who/what was the caller, were there cursor-related directions etc. I have an idea how to improve things a bit regarding line numbers but the fact of the matter is that the built-in events are not helpful when it comes to context. :man_shrugging:t2:

If Mononote would work across all panes

I consider making this a configurable setting.

1 Like

Mononote closes the tab which you were focusing on when you click on the file in the left panel.

It will always keep the oldest tab around (pinned tabs are left alone). It made sense to me to have a strict rule instead of dynamically deciding what to close, but Iā€™m open to suggestions and discussions :slight_smile:

2 Likes

+1 for this

1 Like