Bookmarks: the one area where Wing underwhelms

issues: * a bookmark is not anchored to a source code line, is anchored to a line number ... ie. is detached from the target source line, by additions or deletions to the source file* the bookmark tool window browser is without useful features* too many bookmarks cloud their purpose, so I often need to purge (useful) bookmarks, but just not useful (now)

Enhancement candidates:

Keep a bookmark attached to the source line, ie not affected by source line additions or deletions ... ie. just like a breakpoint

When I add a bookmark, have a alternate short cut key combination which pops a dialog box allowing me to assign:* bookmark colour (colour shown in the bookmark tool window)* have the cursor positioned in the dialog box where I can overide the name given to the bookmark* allow me to set a category for the bookmark, ie. use a category I have used before, or allow on-the-fly creation of a new category ... ie TODO, ProjectA, ProjectB, Investgate, AskSally, etc * also a text area where I can type a text note for the bookmark

Enable sorting & filtering options in the Bookmark tool window* filter to just current file* and|or filter by colour, or category* sort by name, line number, colour, category, file, or scope

Facility for a tooltip to display bookmark attributes if I hover over a bookmarked line in a source file, ie. hover over a line with a green underline

Facility to save or restore bookmarks ... maybe I am investigating a proposal and have setup some bookmarks ... and then I need to interupt for some immediate task ... it would be good if I could save my bookmarks, then clear for the immediate task, and restore when I return to the longterm task

They should move with source changes, usually also even if the changes happen outside of Wing because for Python code the bookmark is stored as a reference to the enclosing scope + offset. Are you seeing them move in cases where code between the nearest def or class above and the bookmark was changed outside of Wing (for example, due to pull/update from version control)?

To handle that case better, maybe we should store the text of the line and try to find it again when the mark drifts. Outside of that case, as far as I know, they should not move from their assigned line.

The rest sounds good. You seem to be using (or want to use) bookmarks much more intensive than I have. I've just used them to mark places I need to look at for a task I'm working on, but not gotten that sophisticated about it.

FYI, most of these are things are going into Wing 6.1 (not yet released), other than having different colors for different bookmarks. Instead, categories can be selected and the display and traversal is filtered to only showing bookmarks in that category. Or you can do the same sort of filtering with a text fragment instead.