@guy038 said:
OR the options :
Clear all marks, then mark all text and EOLs of the bookmarked lines
Clear all marks, then mark all text of the bookmarked lines, excluding EOLs
From my suggested Synchronize marks and bookmarks sub-menu !
Previously you suggested:
So, most of the time, taking the line-breaks in account is not necessary ! However, adding the line-breaks characters is useful as it also includes the true empty lines !
Thus, this would simplify the Synchronize marks and bookmarks sub-menu to the following one :
Bookmark only lines containing marked text
Clear all bookmarks, then bookmark only lines containing marked text
Bookmark visible lines
Mark all text and EOLs of the bookmarked lines
Clear all marks, then mark all text and EOLs of the bookmarked lines
But then, just a moment ago, you wrote:
Personally, after an Invert bookmarks action, I would expect a Mark only text in bookmarked lines action OR a Mark only text in bookmarked lines, excluding line endings action,as I explained in my last post !
so it sounds like you have changed your mind (unless I misunderstood your first suggestion) and believe users do need the ability to control whether line endings are included.
The ideas at the front of my mind now are:
Make Invert marked text a single command (no Invert sub-menu) which does only and exactly that one thing: mark every unmarked character and unmark every marked character. No bookmark changes, and no special treatment for line ending characters.
Eliminate the “Bookmark first line of marked text” options. If you’re manipulating bookmarks based on marked text, trying to keep track of what is the “first line” is probably useless, confusing or both. (I still might remove that whole section of the Configure bookmarks dialog, too.)
For the commands which Bookmark lines containing marked text, apply these rules:
Lines containing only a line ending (empty lines) are bookmarked if the line ending is marked.
Lines containing characters other than the line ending character(s) are bookmarked if any character other than the line ending character(s) is marked; the line ending is ignored.
That third point is clumsy to explain (and certainly won’t fit in a menu item), but I think it makes synchronizing bookmarks to marks behave sensibly without introducing variants in either Invert marked text or [Clear bookmarks and] Bookmark lines containing marked text.
I’m curious if you can think of situations where that would not behave as a user would expect.
So, back to the situation where it’s the bookmarks that are primary, and you want update marks to follow bookmarks. I gather you do think it’s important to give the user control of whether line endings are included or not.
Do you have specific cases or workflows in mind where each of these is useful? (I know, I’m the one that included the distinction in the first place, and now I’m trying to get rid of it if I can.)
And/or perhaps there should be a separate option to expand marks to full lines (that is, if there is any marked text on a line, mark the entire line), with a choice to include or exclude line endings.
There is also the possibility of turning Synchronize into a dialog instead of a sub-menu. That would allow for more options that could work separately or together without a huge menu of hard-to-read items, at the expense of slowing users’ workflow a bit more than a sub-menu.
I’m still undecided; all observations and ideas are welcome.