Tidy up keyboard shortcuts (e.g. Ctrl+Shift+F for file search)
Open, NormalPublic

Description

1) Ctrl+Shift+F for file search
Most text editors and IDEs (QtCreator, Visual Studio) have Ctrl+Shift+F to activate "Search in files".
Tasks:

  • Remove current binding for Ctrl+Shift+F (Fullscreen)
  • Bind Ctrl+Shift+F to "Search in files"
  • Maybe bind Ctrl+Alt+F (currently "Search in files") to Fullscreen

2) Goal: Make F keys unbound by default (F7 and up)

3) Free F5?
Maybe also free F5 and replace by a Ctrl+... shortcut? (todo)
F5 is often used to "Start debugging" which is probably used more often than Reload file.
Possible new Shortcut Ctrl+Shift+R is currently used by "Close current view"
Possible new Shortcut 'Ctrl+Alt+R' in Application Plasma for action Manually Invoke Action on Current Clipboard (question: is this global shortcut there needed?)
Alt+Shift+R is free but seems considerable harder to remember. Other ideas?

4) Introduce extended shortcuts
Ctrl+E,Ctrl+... - E could stand for "Editor" and it is could accessible with one hand (Visual Studio uses Ctrl+D,..., which could stand for document and is slightly better reachable but in Kate this used for "Toogle Comment)
Ctrl+E,Ctrl+W: toggle WordWarp (Side Note: Name this "Word Wrap at Window" instead of "Dynamic Word Wrap")
Maybe: CtrlShift+E,CtrlShift+W: toggle new Word Warp (the one that breaks at 80 chars, todo: Phabriator link)

5) Split Views
"Add Ctrl+Shift+P for "Previous Split View" to be consistent with the other Ctrl+Shift shortcuts of the split view feature" (https://phabricator.kde.org/D17443). The current default F8 key can be freed.

6) Introduce F6, Shift+F6, Ctrl+F6 for experimental "Next item" feature"
Idea: each module which creates a list which can be stepped through registeres itself as "Result List Provider" (better name? "Code location item List?", ...). This way these lists can be handled by the same sets of shortcuts (maybe later even with F3 which would make F6 free again)

Which modules?

  • Find in file (should be merged into Search&Replace plugin)
  • Search&Replace plugin
  • Code analysis output
    • cppcheck,
    • clang-tidy
    • Kate's 'XML Checker plugin' output which currently has its own view could be merged to the Projects Code Analysis tab (as soon as individual file processing works)
  • Code navigation/ctags output (find usages)
  • Compiler output (jump to next error)
    • (SIDENOTE: the Build Plugin already defines shortcuts (Ctrl+Alt+Left / Right for next and previous error) and an Output Pane)
  • Maybe output from custom tools from the revived External Tools plugin (e.g. the search tool rg)

F6 = Next item
Shift+F6 = Previous item
Ctrl+F6 = Select last used Result List Provider (step through the list of providers like Ctrl+Tab with popup window)

gregormi created this task.Jan 6 2019, 11:25 PM
gregormi updated the task description. (Show Details)
gregormi updated the task description. (Show Details)Jan 6 2019, 11:43 PM
gregormi updated the task description. (Show Details)
gregormi assigned this task to dhaumann.Jan 6 2019, 11:50 PM
gregormi moved this task from Multi-Cursor to Backlog on the KTextEditor board.
gregormi moved this task from Backlog to In Progress on the KTextEditor board.Jan 6 2019, 11:53 PM
gregormi removed dhaumann as the assignee of this task.Jan 7 2019, 12:08 AM
gregormi added a subscriber: dhaumann.
gregormi updated the task description. (Show Details)Jan 10 2019, 8:44 PM
gregormi triaged this task as Normal priority.Jan 13 2019, 12:58 AM
gregormi updated the task description. (Show Details)

Um, can't find here a hint that this is try to follow some "defined standard", like CUA. https://en.wikipedia.org/wiki/IBM_Common_User_Access

"...all major Unix GUI environments/toolkits, whether or not based on the X 
Window System, have featured varying levels of CUA compatibility.." 
"The current major environments, GNOME and KDE, also feature extensive CUA 
compatibility..."

Web-search list some KDE docs for Krusader or Gwenview but so far no "master page".

Particularly I ask me why the S&R plugin should use own shortcuts when there is F3/Shift-F3 already defined (at least here and there listed as Standard) I would prefer that the default short cuts always works, independent what was the initial search tool.

But probably I once again misunderstood something :-)

Please read the section "Introduce F6, Shift+F6, Ctrl+F6 for experimental "Next item" feature"". F6 is a potentially temporary solution to have something in place until everything is merged to F3. But currently, we have both, the "in file search and replace" feature which uses F3 and the Search&Replace plugin. Until this is fixed it is easier to use F6 as additional shortcut. What do you think of the described idea to have a universal "next match" feature and shortcut?

What do you think of the described idea to have a universal "next match" feature and shortcut?

Ah, sounds good! But most of the noted tools I didn't use :-)

But I'm not sure if "navigate up/down/left/right" in some list should be done by a shortcut where you jump "free" in some text like in Kate or a Web-Browser.

But I'm not sure if "navigate up/down/left/right" in some list should be done by a shortcut where you jump "free" in some text like in Kate or a Web-Browser.

Hmm. I don't understand. To what point are you referring?
The "Next match" will be based on the parsed output of a tool run where filename and line number are extracted. (If the output is presented as plain text or list view should be up to the user). "Next match" will jump to the next position in the output or list and ALSO open the corresponding file and jump to the correct line.

Your perception is clear, we have always some result to navigate in, make sense.

My is a little bit differend, but can't explain it much better. And maybe will I like it, once your suggestions become reality. :-)

gregormi updated the task description. (Show Details)Jan 13 2019, 8:23 PM