On Tue, 29 May 2012 12:48:04 +1000 Lex Trotman elextr@gmail.com wrote:
I also think that if we want to keep a mouse binding for "go to tag", we could choose something less common -- Ctrl+Alt, Super, whatever uncommon modifier. Do we want to keep one?
Maybe Alt+Click under *nix, and either Alt+ or Ctrl+ Click under Windows, depending on which modifier does rectangle selection. In my WM Alt+Click triggers move window, but after a short timeout.
As you say alt+click is used by window managers so thats not appropriate (even if it has a timeout, hesitation will cause different behavior).
IMHO no Geany function is *so* important that it should be exclusively bound to mouse clicks, potentially blocking something else, so I don't think we should keep such a binding.
Well, yes. BTW, I checked SciTE on Win~1: Alt+Click does rectangular selection, and Ctrl+Click - guess what? - multi-selection. And if you click only, not drag, that's "multi-cursors".
Finally, although it's probably obvious, the multi-select feature should have a keybinding.
Cursor movement clears at least the primary selection, and multicursors clears all selections on arrow. Since the keyboard navigation is problematic, I'm not sure how useful a keybinding will be.
The HIG defines ctrl-<cursor key> to move the cursor without modifying the selection, but unfortunately Scintilla binds these to move by word :( If that was fixed it would work ok.
Isn't there a special case for text editing? Any editors I've seen use Ctrl+Arrow (if available) for word movement, and if you invoke File -> Open, type "tess test test" in the Location field, and try Ctrl+Arrow, it clears the selection, if any, or does word left/right, if none.
IMO Replace and Toggle Case must be updated to work properly.
Just document them to only work on single selection would be ok.
Or block them for now if multiply selections exist? SCI_GETSELECTIONS.
Maybe, but then how do you tell the user? dialog? etc IMHO it gets too much code for too little return.
Simply block them, as Cut/Copy/etc. are blocked if no selection... but that's not worth, they should be fixed anyway.
"Rectangular selections are handled as multiple selections although the original rectangular range is remembered [...]
Doesn't say how its "remembered" though.
IIRC, the main (stream) and rectangular selections are stored as caret position + anchor position + caret virtual space + anchor virtual space, similar to ScintillaDoc.html#SelectionAndInformation api-s.
Maybe I'm having a bad day, but how does that tell us it is rectangular vs multiple?
Oh, I replied literally. :) SCI_GETSELECTIONMODE, SC_SEL_RECTANGLE or SC_SEL_THIN.