-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Command Palette for Che Editor #4993
Comments
GoalThe ultimate goal of this issue is to allow the user to perform any kind of action within the IDE without having to move hands from the keyboard. This allows developers to be more efficient, go faster and feel more comfortable when using their tools. The goal of this issue is to provide a unified command palette which will combine all the different palettes we already have for:
This way, user will have a single keyboard shortcut to remember - and from that keyboard shortcut, the user will be able to invoke any kind of actions in the IDE. Notes on designsThe mockups attached in the issue are not final and opened to discussion. There are various parts in the styles and the layout that are not yet finalized (and part of a bigger UI work that we are targeting). DetailsKeyboard shortcutWe define the following keyboard shortcut for calling the command palette:
Focus in command paletteWhen the user is calling the command palette, the input text at the top is taking the focus automatically, so that the user can start to input for what he is looking for very quick. Items in the listThe list is built from multiple sources:
We will display categories, so that the user is able to understand from which category an item is from. User can navigate with down and up arrows into the list of result. He can enter Filtering the listWe allow the user to search only into a certain category of results. For that, the user has to input the category filter first.
By default, the placeholder is showing: Empty stateWhen there are nothing input by the user, we display the recently opened files from the workspace. If there are no recently opened files we display the help (see next section) Getting help on the command paletteThe user can get help on the command palette.
When the user select one of the item, it adds the filter into the input box. |
Nice work @slemeur - a few comments:
|
yes, nice catch @bmicklea we need think about pagination. |
I think this also means we can retire Assistant >Find Action and Assistant > Navigate to File and Assistant > Find Project Symbol menu items and the stuff behind those. Which leaves the Assistant top level menu item with 3 items out of one is the infamous generate effective POM. Should we think about retiring this top level menu completely? |
here's a bit of a suggestion @bmicklea for this type of implementation: After project is pulled, do a async task that builds an index then the command pallette would go through that index. Whenever there's a filechange or a project change, we only do a update from where the changes took place. this prevents bottlenecks at large projects |
@slemeur the Palette could use a bit more margin on the sides since its too close on the edge IMHO |
Will add to the next sprint for analyzing in case we not ready to start developing this feature |
@vparfonov In your use case, you are describing an advanced search capability. It's a great idea. Do you think we could handle regular expression when searching for files and classes? |
Beware that |
instead of using CTRL+P, why not CTRL+SHIFT+P? |
@vparfonov Monaco editor comes with a command palette, so consider on your analysis whether resolving #5330 before this one makes sense? |
@gorkem however the Monaco Pallette is F1 ( if I remember) to trigger it you need to call it programmatically if you want to set it to CTRL+SHIFT+P or CTRL+P respectively |
Closing as will be fixed with the switch to Theia IDE |
Create a new command palette that can invoke command, actions, file navigation, symbol navigation, switch to terminal(s). This is basically a combination of Find Action, Navigate to File and command palette.
@slemeur is working on a more detailed and visually attractive definition of the feature.
The text was updated successfully, but these errors were encountered: