Skip to content
IDE Shortcuts Comparison — VS Code, IntelliJ, Vim, Emacs, Sublime Text Side-by-Side

IDE Shortcuts Comparison — VS Code, IntelliJ, Vim, Emacs, Sublime Text Side-by-Side

DodaTech Updated Jun 20, 2026 10 min read

Keyboard shortcuts are the foundation of editor efficiency. This comprehensive comparison maps the most important operations across five major editors — VS Code, IntelliJ IDEA, Vim, Emacs, and Sublime Text — so you can switch between them or find the fastest way to accomplish any task.

What You’ll Learn

You’ll find the correct shortcut for any common operation in each editor, understand the design philosophy behind each editor’s keyboard model, and be able to transfer your muscle memory when switching editors. DodaTech developers regularly work in multiple editors, and this reference saves hours of “how do I do X in Y?”

Why Shortcuts Matter

Every second spent reaching for the mouse is a second of interrupted flow. Professional developers aim for 200+ keystrokes per minute with zero mouse usage. Learning the right shortcuts for your primary editor doubles your editing speed. Knowing shortcuts across editors makes you adaptable in any environment.

Learning Path

    flowchart LR
  A[Choose Your Editor] --> B[Master Core Shortcuts]
  B --> C[Learn Editor-Specific Features]
  C --> D[Cross-Editor Proficiency<br/>You are here]
  style D fill:#f90,color:#fff
  

File Operations

OperationVS CodeIntelliJ IDEAVimEmacsSublime Text
Open fileCtrl+PCtrl+Shift+N:e fileC-x C-fCtrl+P
Open recentCtrl+RCtrl+E:browse oldC-x C-rCtrl+Alt+P
SaveCtrl+SCtrl+S:wC-x C-sCtrl+S
Save allCtrl+K SCtrl+Shift+S:waC-x s
Close fileCtrl+WCtrl+F4:qC-x kCtrl+W
New fileCtrl+NAlt+Insert:e newfileC-x C-f (new name)Ctrl+N

Cursor Movement

OperationVS CodeIntelliJ IDEAVimEmacsSublime Text
Character left/rightArrowsArrowsh / lC-b / C-fArrows
Word left/rightCtrl+Left/RightCtrl+Left/Rightb / wM-b / M-fAlt+Left/Right
Line start/endHome/EndHome/End0 / $C-a / C-eHome/End
File start/endCtrl+Home/EndCtrl+Home/Endgg / GM-< / M->Ctrl+Home/End
Go to lineCtrl+GCtrl+G:42M-g gCtrl+G
Go to symbolCtrl+Shift+OCtrl+F12gd (definition)M-.Ctrl+R
Go to definitionF12Ctrl+BgdM-.
Go backAlt+LeftCtrl+Alt+LeftCtrl+OC-x `

Editing

OperationVS CodeIntelliJ IDEAVimEmacsSublime Text
Cut lineCtrl+XCtrl+YddC-a C-kCtrl+X
Copy lineCtrl+CCtrl+DyyM-wCtrl+C
PasteCtrl+VCtrl+VpC-yCtrl+V
Delete lineCtrl+Shift+KCtrl+YddC-a C-kCtrl+Shift+K
Duplicate lineAlt+Shift+DownCtrl+DyypC-a C-k C-y C-yCtrl+Shift+D
Move line up/downAlt+Up/DownCtrl+Shift+Up/Down:m +1 / :m -2C-x C-tCtrl+Shift+Up/Down
Indent / outdentTab / Shift+TabTab / Shift+Tab>> / <<C-M-\\ / C-M-{Tab / Shift+Tab
Comment toggleCtrl+/Ctrl+/gc (vim-commentary)M-;Ctrl+/
Block commentShift+Alt+ACtrl+Shift+/C-M-;Ctrl+Shift+/

Selection

OperationVS CodeIntelliJ IDEAVimEmacsSublime Text
Select allCtrl+ACtrl+AggVGC-x hCtrl+A
Select lineCtrl+LVC-a C-SPC C-eCtrl+L
Select wordCtrl+DCtrl+WviwM-f M-bCtrl+D
Column selectShift+Alt+DragAlt+Shift+InsertCtrl+VC-x r kShift+Right-click
Expand selectionShift+Alt+RightCtrl+WCtrl+Shift+Space
Multi-cursorAlt+ClickAlt+Shift+GCtrl+Click
Select all occurrencesCtrl+Shift+LCtrl+Alt+Shift+JAlt+F3

Search and Replace

OperationVS CodeIntelliJ IDEAVimEmacsSublime Text
FindCtrl+FCtrl+F/patternC-sCtrl+F
Find in filesCtrl+Shift+FCtrl+Shift+F:vimgrepM-x rgrepCtrl+Shift+F
Find and replaceCtrl+HCtrl+R:%s/old/new/gM-x replace-stringCtrl+H
Find next / prevF3 / Shift+F3F3 / Shift+F3n / NC-s / C-rF3 / Shift+F3
Go to fileCtrl+PCtrl+Shift+N:eC-x C-fCtrl+P
Go to definitionF12Ctrl+BgdM-.

Window and Tab Management

OperationVS CodeIntelliJ IDEAVimEmacsSublime Text
Split editorCtrl+\Ctrl+Shift+A:sp / :vspC-x 2 / C-x 3Alt+Shift+2
Close splitCtrl+WCtrl+Shift+F4Ctrl+W qC-x 0Ctrl+W
Switch splitCtrl+1/2/3Alt+1/2/3Ctrl+W wC-x oCtrl+1/2/3
Maximize splitCtrl+K ZCtrl+Shift+QuoteCtrl+W _C-x 1F11
New tabCtrl+T:tabnewCtrl+N
Switch tabCtrl+TabAlt+Right/Leftgt / gTC-x <left>Ctrl+Tab
Close tabCtrl+WCtrl+F4:tabcloseC-x kCtrl+W

Debugging

OperationVS CodeIntelliJ IDEAVimEmacsSublime Text
Start debugF5Shift+F9M-x gdb
Stop debugShift+F5Ctrl+F2q
Add breakpointF9Ctrl+F8C-x SPC
Step overF10F8n
Step intoF11F7s
Step outShift+F11Shift+F8fin
ContinueF5F9c
EvaluateCtrl+Shift+YAlt+F8p

Terminal Integration

OperationVS CodeIntelliJ IDEAVimEmacsSublime Text
Open terminal`Ctrl+``Alt+F12:termM-x termCtrl+Shift+P → Terminus
Switch to terminal`Ctrl+``Alt+F12Ctrl+W NC-x o
Run commandCtrl+Shift+PCtrl+Shift+A:M-xCtrl+Shift+P

Navigation and Refactoring

OperationVS CodeIntelliJ IDEAVimEmacsSublime Text
RenameF2Shift+F6:%s/old/new/gcM-x query-replaceCtrl+F2
Extract methodCtrl+Alt+M
Extract variableCtrl+Alt+V
Format codeShift+Alt+FCtrl+Alt+L==C-M-\\Ctrl+Shift+R
Go to file memberCtrl+Shift+OCtrl+F12M-x imenuCtrl+R
Find usagesShift+F12Alt+F7:grepM-x tags-search

Customization

OperationVS CodeIntelliJ IDEAVimEmacsSublime Text
Open settingsCtrl+,Ctrl+Alt+S~/.vimrc~/.emacs.d/init.elCtrl+,
Open keybindingsCtrl+K Ctrl+SCtrl+Alt+S → Keymap~/.vimrc~/.emacs.d/init.elCtrl+K Ctrl+S
Command paletteCtrl+Shift+PCtrl+Shift+AM-xCtrl+Shift+P
Install extensionsCtrl+Shift+XCtrl+Alt+S → PluginsPlugin managerM-x package-installCtrl+Shift+P → Install

Editor Design Philosophies

Understanding the philosophy helps predict shortcuts you haven’t memorized:

VS Code — Command Palette First

  • Philosophy: All features accessible through Ctrl+Shift+P
  • Pattern: Start with the palette, learn the shortcut later
  • Memory aid: Ctrl+ for most operations, Shift adds behavior, Alt for per-line operations

IntelliJ IDEA — Context-Sensitive Actions

  • Philosophy: Everything is an action with a shortcut
  • Pattern: Alt+Enter shows all available actions at cursor position
  • Memory aid: Ctrl+ for file operations, Shift+ for structural, Alt+ for navigation

Vim — Modal with Mnemonic Operators

  • Philosophy: Operators + motions = actions (d + w = delete word)
  • Pattern: Verbs (d, y, c) + nouns (w, b, G) + modifiers (i, a)
  • Memory aid: Every command is a sentence with verb + object

Emacs — Modifier Chord Based

  • Philosophy: Everything is a keyboard chord
  • Pattern: C- for basic operations, M- for advanced, C-x for file commands
  • Memory aid: Mnemonic: C-f = forward, C-b = backward, C-n = next line, C-p = previous

Sublime Text — Mouse-Friendly but Keyboard-Powered

  • Philosophy: Minimal UI with powerful keyboard shortcuts
  • Pattern: Goto Anything (Ctrl+P) is the central command
  • Memory aid: Ctrl+ for basics, Ctrl+Shift+ for expansions, Ctrl+Alt+ for editor-specific

Common Cross-Editor Mistakes

1. Using Editor-Specific Shortcuts in the Wrong Editor

Ctrl+D in VS Code selects next occurrence. In IntelliJ, it duplicates a line. In Sublime, it selects the current word. When switching editors, these muscle memory conflicts cause the most frustration.

2. Not Learning Modal Editing Enough

Many editors support Vim keybindings natively (VS Code, IntelliJ, Sublime with Vintage mode). Learning basic Vim navigation (hjkl, w/b, i, dd, yy, p) works across all editors with Vim emulation.

3. Ignoring the Command Palette

Every modern editor has a command palette. When you forget a shortcut, open the palette and search. VS Code: Ctrl+Shift+P, IntelliJ: Ctrl+Shift+A, Sublime: Ctrl+Shift+P, Emacs: M-x.

4. Not Customizing Keybindings

Default shortcuts may not suit your workflow. Every editor allows rebinding. VS Code and IntelliJ: keybindings.json. Vim: :map commands. Start by changing 3-5 shortcuts that conflict with your muscle memory.

5. Learning All Shortcuts at Once

Learn shortcuts incrementally. Pick 5 operations you do most frequently, learn their shortcuts in your editor, and practice until they’re automatic. Repeat weekly. Trying to learn 50 shortcuts in one day results in remembering none.

6. Using the Mouse for Common Operations

Every mouse click is a speed tax. Identify what you click most (opening files, switching between files, running code) and learn those shortcuts first. Install a key promoter plugin (VS Code) or Key Promoter X (IntelliJ) to get told when you click something that has a shortcut.

7. Not Using Editor-Specific Superpowers

Each editor has unique capabilities:

  • VS Code: Multi-cursor, IntelliSense, integrated terminal
  • IntelliJ: Structural search, extensive refactoring, profiling
  • Vim: . repeat, macros, :normal command
  • Emacs: Org-mode, TRAMP for remote editing, Dired
  • Sublime: Goto Anything, minimap, distraction-free mode

Practice Questions

1. What’s the universal shortcut for open/command palette across editors? VS Code: Ctrl+Shift+P, IntelliJ: Ctrl+Shift+A, Sublime: Ctrl+Shift+P, Emacs: M-x. All serve the same purpose — find and run any command.

2. How do you duplicate a line in each editor? VS Code: Alt+Shift+Down, IntelliJ: Ctrl+D, Vim: yyp, Emacs: C-a C-k C-y C-y, Sublime: Ctrl+Shift+D.

3. Which editor has the most efficient approach to multi-cursor editing? Sublime Text conceptually pioneered multi-cursor and still has the most polished implementation (Ctrl+Click, Alt+F3 for all occurrences). VS Code’s implementation is nearly as good with Alt+Click and Ctrl+Shift+L.

4. What is the core editing philosophy difference between Vim and Emacs? Vim is modal — separate modes for inserting text, navigating, and selecting. Emacs is modeless — every key is a command, using modifiers (Ctrl, Meta) for all operations. Vim favors mnemonics, Emacs favors consistency.

5. Challenge: You need to edit 100 configuration files, changing timeout = 30 to timeout = 60 in each. Which editor and method is fastest? Answer: Vim with :args *.conf then :argdo %s/timeout = 30/timeout = 60/ge | update. Or VS Code with Ctrl+Shift+F to find all occurrences, then Ctrl+Shift+L to select all and edit simultaneously.

Mini Project: Create a Personal Shortcuts Reference

Create a custom cheat sheet for your primary and secondary editors:

# My Personal Shortcuts — VS Code (Primary) + Vim (Secondary)

## Top 5 Most Used (Must Know)
| Operation | VS Code | Vim |
|-----------|---------|-----|
| Open file | Ctrl+P | :e file |
| Save | Ctrl+S | :w |
| Find | Ctrl+F | /pattern |
| Multi-cursor | Alt+Click | — |
| Command palette | Ctrl+Shift+P | — |

## Top 5 Editing Operations
| Operation | VS Code | Vim |
|-----------|---------|-----|
| Duplicate line | Alt+Shift+Down | yyp |
| Delete line | Ctrl+Shift+K | dd |
| Comment | Ctrl+/ | gc |
| Format | Shift+Alt+F | == |
| Indent | Tab/Shift+Tab | >>/<< |

## Top 5 Navigation
| Operation | VS Code | Vim |
|-----------|---------|-----|
| Go to line | Ctrl+G | :42 |
| Go to symbol | Ctrl+Shift+O | gd |
| Split | Ctrl+\ | :vsp |
| Switch file | Ctrl+Tab | Ctrl+^ |
| Back | Alt+Left | Ctrl+O |

Print this and keep it next to your monitor for the first week. Delete it once the shortcuts are muscle memory.

FAQ

Which editor has the fastest learning curve?
Sublime Text and VS Code have the gentlest learning curves — familiar keybindings, mouse-friendly, minimal modes. Vim and Emacs have steep initial curves but provide long-term speed advantages.
Which editor is best for beginners?
VS Code — it works out of the box, has the largest community, supports every language via extensions, and has a visual debugger. Start with VS Code, then explore other editors as your needs evolve.
Can I use Vim keybindings in other editors?
Yes — VS Code has Vim extension, IntelliJ has IdeaVim, Sublime has Vintage mode, and Emacs has Evil mode. These provide most Vim functionality within the editor’s ecosystem.
How many shortcuts should I learn per week?
Learn 5 shortcuts per week. Practice them deliberately until they become automatic. Within 3 months, you’ll know 60 shortcuts — more than enough for professional efficiency.
Do I need to learn all five editors?
No — specialize in one editor, know enough to be functional in a second. The comparison is for reference when you need to work in a different environment.
What’s the best way to practice shortcuts?
Remove the mouse from your desk. Use keyboard-only for a week. Install a key shortcut display plugin that shows what you could have pressed instead of clicking.

What’s Next

Built by the developers of Doda Browser, DodaZIP, and Durga Antivirus Pro. Updated 2026-06-20.

Built by the developers of DodaTech

Doda Browser, DodaZIP & Durga Antivirus Pro