-
Notifications
You must be signed in to change notification settings - Fork 205
docs: add keyboard shortcuts documentation and v3.12.x release notes #139
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
Merged
Merged
Changes from all commits
Commits
Show all changes
5 commits
Select commit
Hold shift + click to select a range
67275a2
docs: add keyboard shortcuts documentation and v3.12.x release notes
hannesrudolph 9481e45
docs: update v3.12.0 release notes with profile-specific diff setting…
hannesrudolph 5d208ce
docs: enhance v3.12 release notes with profile-specific diff settings…
hannesrudolph 031ea44
docs: remove outdated v3.12 release notes
hannesrudolph dfad28a
docs: update xAI provider link in v3.12.0 release notes
hannesrudolph File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,159 @@ | ||
| --- | ||
| sidebar_label: Keyboard Shortcuts | ||
| --- | ||
|
|
||
| # Keyboard Shortcuts | ||
|
|
||
| The Roo Code interface supports keyboard shortcuts to streamline your workflow and reduce dependence on mouse interactions. | ||
|
|
||
| ## Available Keyboard Commands | ||
|
|
||
| Roo Code offers keyboard commands to enhance your workflow. This page focuses on the `roo.acceptInput` command, but here's a quick reference to all keyboard commands: | ||
|
|
||
| | Command | Description | Default Shortcut | | ||
| |---------|-------------|-----------------| | ||
| | `roo.acceptInput` | Submit text or accept the primary suggestion | None (configurable) | | ||
| | `roo.focus` | Focus the Roo input box | None (configurable) | | ||
|
|
||
| ### Key Benefits of Keyboard Commands | ||
|
|
||
| * **Keyboard-Driven Interface**: Submit text or select the primary suggestion button without mouse interaction | ||
| * **Improved Accessibility**: Essential for users with mobility limitations or those who experience discomfort with mouse usage | ||
| * **Vim/Neovim Compatibility**: Supports seamless transitions for developers coming from keyboard-centric environments | ||
| * **Workflow Efficiency**: Reduces context switching between keyboard and mouse during development tasks | ||
|
|
||
| ## roo.acceptInput Command | ||
|
|
||
| The `roo.acceptInput` command lets you submit text or accept suggestions with keyboard shortcuts instead of clicking buttons or pressing Enter in the input area. | ||
|
|
||
| ### What It Does | ||
|
|
||
| The `roo.acceptInput` command is a general-purpose input submission command. When triggered, it: | ||
|
|
||
| - Submits your current text or image input when in the text input area (equivalent to pressing Enter) | ||
| - Clicks the primary (first) button when action buttons are visible (such as confirm/cancel buttons or any other action buttons) | ||
|
|
||
| ### Detailed Setup Guide | ||
|
|
||
| #### Method 1: Using the VS Code UI | ||
|
|
||
| 1. Open the Command Palette (`Ctrl+Shift+P` or `Cmd+Shift+P` on Mac) | ||
| 2. Type "Preferences: Open Keyboard Shortcuts" | ||
| 3. In the search box, type "roo.acceptInput" | ||
| 4. Locate "Roo: Accept Input/Suggestion" in the results | ||
| 5. Click the + icon to the left of the command | ||
| 6. Press your desired key combination (e.g., `Ctrl+Enter` or `Alt+Enter`) | ||
| 7. Press Enter to confirm | ||
|
|
||
|
|
||
| #### Method 2: Editing keybindings.json directly | ||
|
|
||
| 1. Open the Command Palette (`Ctrl+Shift+P` or `Cmd+Shift+P` on Mac) | ||
| 2. Type "Preferences: Open Keyboard Shortcuts (JSON)" | ||
| 3. Add the following entry to the JSON array: | ||
|
|
||
| ```json | ||
| { | ||
| "key": "ctrl+enter", // or your preferred key combination | ||
| "command": "roo.acceptInput", | ||
| "when": "rooViewFocused" // This is a context condition that ensures the command only works when Roo is focused | ||
| } | ||
| ``` | ||
|
|
||
| You can also use a more specific condition: | ||
| ```json | ||
| { | ||
| "key": "ctrl+enter", | ||
| "command": "roo.acceptInput", | ||
| "when": "webviewViewFocus && webviewViewId == 'roo-cline.SidebarProvider'" | ||
| } | ||
| ``` | ||
|
|
||
| #### Recommended Key Combinations | ||
|
|
||
| Choose a key combination that doesn't conflict with existing VS Code shortcuts: | ||
|
|
||
| - `Alt+Enter` - Easy to press while typing | ||
| - `Ctrl+Space` - Familiar for those who use autocomplete | ||
| - `Ctrl+Enter` - Intuitive for command execution | ||
| - `Alt+A` - Mnemonic for "Accept" | ||
|
|
||
| ### Practical Use Cases | ||
|
|
||
| #### Quick Development Workflows | ||
|
|
||
| - **Text Submission**: Send messages to Roo without moving your hands from the keyboard | ||
| - **Action Confirmations**: Accept operations like saving files, running commands, or applying diffs | ||
| - **Multi-Step Processes**: Move quickly through steps that require confirmation or input | ||
| - **Consecutive Tasks**: Chain multiple tasks together with minimal interruption | ||
|
|
||
| #### Keyboard-Centric Development | ||
|
|
||
| - **Vim/Neovim Workflows**: If you're coming from a Vim/Neovim background, maintain your keyboard-focused workflow | ||
| - **IDE Integration**: Use alongside other VS Code keyboard shortcuts for a seamless experience | ||
| - **Code Reviews**: Quickly accept suggestions when reviewing code with Roo | ||
| - **Documentation Writing**: Submit text and accept formatting suggestions when generating documentation | ||
|
|
||
| #### Accessibility Use Cases | ||
|
|
||
| - **Hand Mobility Limitations**: Essential for users who have difficulty using a mouse | ||
| - **Repetitive Strain Prevention**: Reduce mouse usage to prevent or manage repetitive strain injuries | ||
| - **Screen Reader Integration**: Works well with screen readers for visually impaired users | ||
| - **Voice Control Compatibility**: Can be triggered via voice commands when using voice control software | ||
|
|
||
| ### Accessibility Benefits | ||
|
|
||
| The `roo.acceptInput` command was designed with accessibility in mind: | ||
|
|
||
| - **Reduced Mouse Dependence**: Complete entire workflows without reaching for the mouse | ||
| - **Reduced Physical Strain**: Helps users who experience discomfort or pain from mouse usage | ||
| - **Alternative Input Method**: Supports users with mobility impairments who rely on keyboard navigation | ||
| - **Workflow Optimization**: Particularly valuable for users coming from keyboard-centric environments like Vim/Neovim | ||
|
|
||
| ### Keyboard-Centric Workflows | ||
|
|
||
| Here are some complete workflow examples showing how to effectively use keyboard shortcuts with Roo: | ||
|
|
||
| #### Development Workflow Example | ||
|
|
||
| 1. Open VS Code and navigate to your project | ||
| 2. Open Roo via the sidebar | ||
| 3. Type your request: "Create a REST API endpoint for user registration" | ||
| 4. When Roo asks for framework preferences, use your `roo.acceptInput` shortcut to select the first suggestion | ||
| 5. Continue using the shortcut to accept code generation suggestions | ||
| 6. When Roo offers to save the file, use the shortcut again to confirm | ||
| 7. Use VS Code's built-in shortcuts to navigate through the created files | ||
|
|
||
| #### Code Review Workflow | ||
|
|
||
| 1. Select code you want to review and use VS Code's "Copy" command | ||
| 2. Ask Roo to review it: "Review this code for security issues" | ||
| 3. As Roo asks clarifying questions about the code context, use your shortcut to accept suggestions | ||
| 4. When Roo provides improvement recommendations, use the shortcut again to accept implementation suggestions | ||
|
|
||
| ### Troubleshooting | ||
|
|
||
| | Issue | Solution | | ||
| |-------|----------| | ||
| | Shortcut doesn't work | Ensure Roo is focused (click in the Roo panel first) | | ||
| | Wrong suggestion selected | The command always selects the first (primary) button; use mouse if you need a different option | | ||
| | Conflicts with existing shortcuts | Try a different key combination in VS Code keyboard settings | | ||
| | No visual feedback when used | This is normal - the command silently activates the function without visual confirmation | | ||
| | Shortcut works inconsistently | Make sure the `when` clause is properly configured in your keybindings.json (either `rooViewFocused` or the webview-specific condition) | | ||
|
|
||
| ### Technical Implementation | ||
|
|
||
| The `roo.acceptInput` command is implemented as follows: | ||
|
|
||
| - Command registered as `roo.acceptInput` with display title "Roo: Accept Input/Suggestion" in the command palette | ||
| - When triggered, it sends an "acceptInput" message to the active Roo webview | ||
| - The webview determines the appropriate action based on the current UI state: | ||
| - Clicks the primary action button if action buttons are visible and enabled | ||
| - Sends the message if the text area is enabled and contains text/images | ||
| - No default key binding - users assign their preferred shortcut | ||
|
|
||
| ### Limitations | ||
|
|
||
| - Works only when the Roo interface is active | ||
| - Has no effect if no inputs or suggestions are currently available | ||
| - Prioritizes the primary (first) button when multiple options are shown |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,52 @@ | ||
| # Roo Code 3.12 Release Notes (2025-04-16) | ||
|
|
||
| This release introduces xAI provider support, improves diff editing, enhances UI with search capabilities, adds OpenAI model support, and includes various usability improvements and bug fixes. | ||
|
|
||
| ## Provider Updates | ||
|
|
||
| * Added [xAI provider](/providers/xai) and exposed reasoning effort options for Grok on OpenRouter. (thanks Cline!) | ||
| * Added support for OpenAI `o3` & `4o-mini` models. (thanks PeterDaveHello!) | ||
|
|
||
| ## Profile-Specific Diff Settings | ||
|
|
||
| * **Profile-Specific Settings**: Diff editing configuration now works on a per-profile basis, giving you greater control over how code edits work with different providers. Learn more about [API Configuration Profiles](/features/api-configuration-profiles). | ||
|
|
||
| ### How It Works | ||
|
|
||
| * **Multiple Profile Support**: Each profile stores its own diff editing preferences | ||
| * **Flexible Configuration**: Switch between profiles to instantly change how diffs are handled | ||
| * **Provider-Specific Control**: Use different diff strategies for different code providers | ||
| * **Isolated Settings**: Changes in one profile don't affect others | ||
|
|
||
| For example, you can create a profile for one provider with strict whitespace handling, and another profile with more relaxed rules. When you switch profiles, the system automatically applies the appropriate diff editing configuration. | ||
|
|
||
| ## Keyboard Shortcuts | ||
|
|
||
| ### Keyboard Shortcuts for Input Acceptance | ||
|
|
||
| Added the `roo.acceptInput` command to allow users to accept input or suggestions using keyboard shortcuts instead of mouse clicks. (thanks axkirillov!) This feature: | ||
|
|
||
| #### Key Benefits | ||
|
|
||
| * **Keyboard-Driven Interface**: Submit text or select the primary suggestion button without mouse interaction | ||
| * **Improved Accessibility**: Essential for users with mobility limitations or those who experience discomfort with mouse usage | ||
| * **Vim/Neovim Compatibility**: Supports transitions for developers coming from keyboard-centric environments | ||
| * **Workflow Efficiency**: Reduces context switching between keyboard and mouse during development tasks | ||
|
|
||
| For detailed setup and usage instructions, see our new [Keyboard Shortcuts](/features/keyboard-shortcuts) documentation page. | ||
|
|
||
|
|
||
| ## QOL Improvements | ||
|
|
||
| * Improved pre-diff string normalization for better editing reliability, especially with whitespace-sensitive languages. | ||
| * Made checkpoints faster and more reliable for smoother project state management. | ||
| * Added a search bar to mode and profile select dropdowns for easier navigation. (thanks samhvw8!) | ||
| * Improved file/folder context mention UI for better usability. (thanks elianiva!) | ||
| * Added telemetry for code action usage, prompt enhancement usage, and consecutive mistake errors to improve product stability. | ||
| * Enhanced diff error telemetry for better troubleshooting capabilities. | ||
| * Suppressed zero cost values in the task header for cleaner UI. (thanks do-it!) | ||
|
|
||
| ## Bug Fixes | ||
|
|
||
| * Fixed a bug affecting the Edit button visibility in the select dropdowns. | ||
| * Made JSON parsing safer to avoid crashing the webview on bad input. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,7 @@ | ||
| # Roo Code 3.12.1 Release Notes (2025-04-16) | ||
|
|
||
| This patch release addresses a UI visibility issue. | ||
|
|
||
| ## Bug Fixes | ||
|
|
||
| * Fixed a bug affecting the Edit button visibility in the select dropdowns. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,12 @@ | ||
| # Roo Code 3.12.2 Release Notes (2025-04-16) | ||
|
|
||
| This patch release adds OpenAI model support and improves UI and telemetry aspects. | ||
|
|
||
| ## Provider Updates | ||
|
|
||
| * Added support for OpenAI `o3` & `4o-mini` models. (thanks PeterDaveHello!) | ||
|
|
||
| ## Improvements | ||
|
|
||
| * Improved file/folder context mention UI for better usability. (thanks elianiva!) | ||
| * Enhanced diff error telemetry for better troubleshooting capabilities. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does this work?