Command palette¶
A fast, keyboard-driven way to find and run any command — core or plugin — without hunting through menus.
Using it¶
Open it with Ctrl+Shift+P, then start typing. The palette fuzzy-filters the
list of every available command as you type; press Enter to run the highlighted
one.
- Commands that have a keyboard shortcut show it in the list, so the palette doubles as a way to learn shortcuts.
- Every user-invocable action — core editing, plugin commands, view toggles — goes through the same command registry, so the palette reaches them all from one place.
One entry point
Because it covers every command, the palette is the single "go-to-anything"
surface: if you can't remember where a command lives in the menus, press
Ctrl+Shift+P and type a few letters of its name.
Go to File¶
Press Ctrl+P to jump to a file by name. The list is fuzzy-filtered as you type
and includes:
- Open tabs (shown with their tab label),
- the files in the open workspace folder — so you can open any project file without browsing for it first, and
- recently opened files.
Workspace files show the file name with their path relative to the folder as
sub-text. Common heavy or generated directories (.git, node_modules, build,
out, dist, obj, target, …) are skipped, and the index is bounded so it
stays fast on large projects. With no folder open, Ctrl+P lists open tabs and
recent files only.
Note
Type > at the start of the Ctrl+P query to switch to command search (the
same entries as Ctrl+Shift+P).
Go to Symbol¶
The palette also jumps to code symbols — functions, classes, methods, variables — using the same query-and-Enter flow. This needs a language server for the file's language.
Ctrl+Shift+O— symbols in the current file. Lists every symbol in the open document; type to fuzzy-filter,Enterjumps to it. Each row shows the symbol's kind (Class, Method, Function…) and its container.Ctrl+T— symbols across the workspace. Searches the whole project as you type (the language server matches the query);Enteropens the file at the symbol.
Long entries (qualified names, paths) get a horizontal scrollbar rather than being truncated. If no language server is available for the file, the symbol list is empty.