sidebery icon indicating copy to clipboard operation
sidebery copied to clipboard

[v5] [Feature Request] Tab Notes

Open megamorphg opened this issue 3 years ago • 23 comments

Description

Frequently I have some action-item based on a tab or a "next step" and I have to record that externally somehow (notebook, bookmark organization, to-do list, etc.)... or forget. Sadly it is the latter with most "low priority" tabs.

It would be awesome to have the ability to add text-only notes similar to Tabs Outliner but better.

I know this is requesting a whole new feature but it seems like this would best be integrated into the Sidebery system. My current workaround: using "OurStickys", literally the only Firefox page notes extension.

Suggested Implementation (only first 3 are necessary for a beta release):

  • tab context menu: create/edit note
  • simple text editor pop-up
  • note indicator (yellow dot) on tab visible if there is a note tied to the tab
  • shortcut: create/edit note by holding middle click over a tab
  • if mouse hovers over a tab with a note, shows text on tooltip (append to current tooltip)
  • notes panel which lists all current notes and allows editing and jumping to tab. This serves as a "to-do" list of sorts.
  • snapshots contain any notes corresponding to a tab
  • notes for closed tabs are also not lost and kept somewhere in snapshots

megamorphg avatar Jun 17 '22 03:06 megamorphg

My first thought was that it would be too much work to implement. But then I figured out it could be added in easy way, by defining some "note" type of tab, which could be added via context menu, and store the note content in it's url.

After some work and testing, I managed to implement experimental support for such tab notes in my fork. Notes can be created both from context menu entry, or by dragging some text from page on a tab (as shown in your video). Note tabs persist as long as their associated tabs exist, and can be moved in tabs tree as any other tab. However, this implementation is slightly different from your request, as the notes do not get strongly associated with the tabs, their association is achieved via tabs tree structure.

Nice bonus is, notes support some rich text formatting (visible only on the note page). Also I found it better looking to dim opacity for notes tabs just a little bit with this CSS rule in Sidebery settings: .Tab[title*="/page.note/note.html"] { opacity: 0.75; } which ends up looking like this:

tab notes

The feature is currently quite raw, and more of a proof-of-concept. Here are some remaining tasks to polish it, which I haven't figured out yet how to do:

  • ~~Add config for behavior on dragging text on tab (search or create note) – currently it's overwritten to always create a note~~ ✓
  • Probably will be needed to update notes urls on addon update, as the extension ids in urls may become invalid
  • Maybe apply more styling to the note editor to make it better fit in Sidebery style

You can test the feature by going to about:debug and installing the attached archive (or build it yourself from my fork): sidebery-5.0.0b25-with-notes.zip

Maybe @mbnuqw you could be interested in finishing it? Or I can try to finish it later after some more investigation. After some testing I found this feature quite fun, and maybe worth further development.

emvaized avatar Sep 05 '22 01:09 emvaized

Strongly against adding these into the tree like the above screenshot. Would really clutter the tab tree imo. Usability-wise, I think it would be much better to add an icon to the tab, like audio events do. Hovering over that icon would then show the tab note in a tooltip.

jathek avatar Sep 16 '22 13:09 jathek

Note that OP asked for a note indicator, too.

note indicator (yellow dot) on tab visible if there is a note tied to the tab

@emvaized Maybe you could use your experience to solve tab renaming (https://github.com/mbnuqw/sidebery/issues/185)? This could be a "quick win" for those wanting to have notes.

koppor avatar Jan 04 '23 10:01 koppor

solve tab renaming

I would have done it already if I could, as it's the feature I want to see in Sidebary the most! However, it looks like Max is preparing something awesome for us

emvaized avatar Jan 12 '23 06:01 emvaized

Seconding overall idea. I've been using Sideberry extensively in recent times, and the ability to add notes to tabs and tab groups is the very one thing I've felt a really strong need for all the time.

Use case: using tabs as short-term bookmarks. Being able to quickly jot down on the tab itself why I'm keeping it around. Or adding a short summary. For example, I open multiple tabs for different failing builds of a program. I skim them quickly, observe the errors, and I'd then like to be able to write - directly on a tab - what the issue is, so that an hour or a day later, I come back to a tree of tabs with labels like "missing include", "test XYZ crash", "spurious failure", "timeout", instead of just the page titles, that all just say "blah blah build name #1234 Console [Jenkins]|, which is completely useless to me.

In my mind, this notes would ideally be plaintext, and would be rendered in the tree view as a tab subtitle, under the actual title, in a smaller font, truncated to panel width like the tab title, etc. Hovering could reveal the whole note in a tooltip (even a system/browser default one), but it's important to me to be able to see at least some of the tab notes in the tree view, without interaction. The ability to rename tabs (like you can rename groups) would work in a pinch.

TeMPOraL avatar Jan 13 '23 00:01 TeMPOraL

Are there any updates on the progress regarding this feature? This would be a significant addition for me as well, as I use tabs as short-term bookmarks corresponding to various projects or tasks. The priority of these projects often changes, requiring me to switch between them every few days (or even weeks). Not sure if it is possible, but i was thinking a dot indicating that a note is attached to a tab and then being able to view the note when hovering. Or perhaps as @TeMPOraL mentioned with a rendered subtile. In Groups panel, someone could view the list with the tabs along with their attached notes. That way we could avoid clutter the tree.

I also have opened a discussion thread here.

ConstantinosM avatar Sep 24 '23 21:09 ConstantinosM

NEW-TAB in context-menu (https://github.com/mbnuqw/sidebery/issues/1503#issuecomment-2015700864):

sometimes one just wants to open child tabs on far away tabs as a reminder/TODO to research something related to that tab, and since Sidebery allows changing the Title of New Tabs, makes for an epic usecase. For a far-away (our-of-focus) tab "Lemon Juice recipe", you could create a new child tab "Is citric acid toxic?", all without losing focus from the current tab "Work you're supposed to do instead of procrastinating on it by thinking about lemon juice".

If one wishes to avoid cluttering the tree so bad, one could group such New-Tabs-with-edited-titles-doubling-as-notes, under a New Tab with the title "NOTES".

--- Work Tab ------ More work ------ Even more work

--- Lemon Juice Recipe ------ NOTES --------- Is citric acid toxic? --------- Google the best fruits... --------- How to stop procrastinating lol.

--- Older work tab ------ Frequently needed still ------ That's why not closed yet

Then, you could even collapse all the new/empty tabs under the "NOTES" new-tab.

For actual serious note taking, I think the best note-taking extension already exists: WebStickies (https://addons.mozilla.org/en-US/firefox/addon/webstickies/); also my most favourite and most used extension. It's such a simple and minimalist and low-cost (stores everything on the device, unless you sign-up for sync, but then, it's not end-to-end-encrypted) extension that it's a shame that it's the only one of its kind. Annotations are lame and bound to malfunction (unless for PDFs, for which it's understandable).

One could create a new tab, load Google/Bing, and keep all of one's random notes on a Sticky Note there, and pin that tab! Not as great as option 1 though, which already works!

the-a-man-006 avatar Mar 23 '24 13:03 the-a-man-006