TagQt provides keyboard shortcuts for quick access to common operations and workflows.
Global Shortcuts
These shortcuts work throughout the application:
| Shortcut | Action | Description |
|---|
Ctrl+O | Open Folder | Open folder selection dialog |
Ctrl+S | Save Changes | Save metadata for current/selected files |
Ctrl+G | Global Edit | Enter global edit mode (select all visible) |
Ctrl+K | Command Palette | Open command palette |
Ctrl+Q | Quit | Exit application |
Escape | Exit Global Edit | Return to single file selection |
File Operations
Opening and Loading
Ctrl+O - Open folder dialog
Opens a folder selection dialog to load audio files from a directory.
Saving
Behavior depends on current mode:
- Single file mode: Saves changes to the current file
- Global edit mode: Applies modified fields to all selected files
Exit Application
Closes the application. Any running batch operations will be stopped.
Edit Mode Shortcuts
Global Edit Mode
Ctrl+G - Enter global edit mode
Selects all visible files and enters global edit mode. In this mode:
- Sidebar shows global edit interface
- Only modified fields will be applied when saving
- Empty fields keep original values
Exit Global Edit
Escape - Exit global edit mode
Returns to single file selection mode:
- Deselects all files except the first one
- Loads the first selected file
- Returns sidebar to single edit mode
Command Palette
Ctrl+K - Open command palette
The command palette provides quick access to all TagQt commands:
Available Commands
Commands accessible via palette (from main.py:255-269):
- Open Folder (
Ctrl+O)
- Save Changes (
Ctrl+S)
- Get Covers (All)
- Get Lyrics (All)
- Rename Files
- Auto-Tag (All)
- Re-encode FLAC
- Romanize Lyrics
- Resize Covers
- Toggle Theme
- Exit Global Edit (
Escape)
- Hints & Tips
- About TagQt
Type in the command palette to filter commands. You can type partial matches like “rename” to find “Rename Files”.
These shortcuts are defined in the menu bar:
| Shortcut | Action |
|---|
Ctrl+O | Open Folder |
Ctrl+Q | Exit |
| Shortcut | Action |
|---|
Ctrl+G | Global Edit (All Visible) |
File List Navigation
Standard QTreeWidget shortcuts:
| Shortcut | Action |
|---|
↑/↓ | Navigate files |
Ctrl+A | Select all |
Ctrl+Click | Add to selection |
Shift+Click | Range selection |
Enter | Load selected file |
Shortcuts by Context
Single File Editing
When editing a single file:
Ctrl+S → Save changes to current file
Ctrl+G → Enter global edit mode
Escape → (no effect in single file mode)
Global Edit Mode
When multiple files are selected:
Ctrl+S → Save modified fields to all selected
Escape → Exit global edit mode
Ctrl+K → Open command palette
Batch Operations
During batch operations:
Escape → (doesn't cancel batch)
Click progress bar → Show detailed status
Press the “Cancel” button next to the progress bar to stop batch operations. The Escape key does not cancel operations.
Shortcut Reference Table
Complete shortcut reference from source code:
Primary Shortcuts
# From main.py:247-251
QShortcut(QKeySequence("Ctrl+S"), self, self.save_metadata)
QShortcut(QKeySequence("Ctrl+O"), self, self.open_folder_dialog)
QShortcut(QKeySequence("Escape"), self, self.exit_global_mode)
QShortcut(QKeySequence("Ctrl+K"), self, self.show_command_palette)
# From main.py:369, 389, 397
open_folder_action.setShortcut("Ctrl+O") # File → Open Folder
exit_action.setShortcut("Ctrl+Q") # File → Exit
global_edit_action.setShortcut("Ctrl+G") # Edit → Global Edit
Workflow Shortcuts
Quick Edit Workflow
1. Ctrl+O → Open folder
2. Select file → Click or navigate with arrows
3. Edit metadata → Modify fields
4. Ctrl+S → Save
5. Next file → Down arrow
6. Repeat 3-5
Bulk Edit Workflow
1. Ctrl+O → Open folder
2. Ctrl+G → Enter global edit mode
3. Edit fields → Only change what you want to update
4. Ctrl+S → Save all
5. Escape → Exit global edit
Batch Operations Workflow
1. Ctrl+O → Open folder
2. Ctrl+K → Open command palette
3. Type command → e.g., "Get Covers"
4. Enter → Execute
5. Wait → Monitor progress bar
6. Click progress → View details
Customization
TagQt does not currently support custom keyboard shortcuts. Shortcuts are hardcoded in the application.
To modify shortcuts, you would need to edit the source code:
# In tagqt/ui/main.py:247-251
QShortcut(QKeySequence("Ctrl+S"), self, self.save_metadata)
# Change "Ctrl+S" to your preferred shortcut
Tips and Best Practices
Muscle Memory
The most commonly used shortcuts:
Ctrl+O - Always needed to start working
Ctrl+S - Save frequently
Ctrl+K - Quick access to any command
Escape - Quick exit from global mode
Efficient Workflow
Use Ctrl+K (command palette) for operations you don’t use often enough to remember their menu location.
Keyboard-first workflow:
- Minimize mouse usage: Use arrow keys for navigation
- Command palette:
Ctrl+K for quick command access
- Global edit:
Ctrl+G for bulk editing
- Quick save:
Ctrl+S after each edit
Context Awareness
Shortcuts behave differently based on context:
Ctrl+S in single mode → saves one file
Ctrl+S in global mode → saves all selected
Escape works only in global edit mode
Accessibility
All shortcuts are accessible via menus:
- Shortcuts are displayed next to menu items
- Menu items show the keyboard shortcut
- Alt+[letter] activates menu bar
Command Palette Alternative
For users who prefer keyboard navigation:
Ctrl+K opens searchable command list
- Type to filter commands
- Arrow keys to navigate
- Enter to execute
On macOS, shortcuts use Cmd instead of Ctrl:
Ctrl+S → Cmd+S
Ctrl+O → Cmd+O
- etc.
PySide6/Qt automatically handles platform-specific modifier keys.
Technical Details
Implementation
Shortcuts are implemented using PySide6’s QShortcut class:
from PySide6.QtGui import QShortcut, QKeySequence
# Create shortcut
QShortcut(QKeySequence("Ctrl+S"), parent_widget, callback_function)
Source Code Reference
- Primary shortcuts:
tagqt/ui/main.py:247-251 (setup_shortcuts method)
- Menu shortcuts: Throughout
main.py:362-523 (create_menu_bar method)
- Command palette:
tagqt/ui/palette.py (CommandPalette class)
Shortcut Registration
All shortcuts are registered during MainWindow initialization:
- setup_shortcuts() - Registers global shortcuts
- create_menu_bar() - Registers menu shortcuts
- CommandPalette - Registers palette commands with shortcuts
See Also