- Leader key configured as Space (
) - Local leader key configured as comma (
,) - Exit insert mode with
jk - System clipboard integration
- Case-insensitive search with smart case
- Relative line numbers
- Block cursor in normal mode
- Vim surround plugin emulation
- Vim easymotion plugin emulation
- CamelCase motion support
- File tree toggle (
<leader>e) - Fuzzy file finder (
<leader>ff) - Find It Faster - Recent files (
<leader>fr) - Live grep (
<leader>fg) - Buffer navigation (
<leader>fb) - Quick save (
W) and close (Q) - Tab navigation (
H/L)
- Git status view (
<leader>gs) - Git blame toggle (
<leader>gb) - Git history (
<leader>gh) - Git diff view (
<leader>gd) - Git graph visualization
- Inline git blame annotations
- Git push/pull operations
- Go to definition (
gd) - Find references (
gr) - Go to implementation (
gi) - Go to type definition (
gy) - Hover information (
K) - Symbol rename (
<leader>rn) - Code actions (
<leader>xa) - Diagnostics view (
<leader>xx) - Next/previous diagnostic (
gj/gk) - Document symbols (
<leader>fo)
- Toggle breakpoint (
<leader>db) - Continue (
<leader>dc) - Step over (
<leader>dj) - Step into (
<leader>dk) - Step out (
<leader>do) - Restart debugging (
<leader>dr) - Stop debugging (
<leader>dt) - Remove all breakpoints (
<leader>dR)
- Add bookmark (
<leader>ha) - Show bookmarks (
<leader>hh) - Numbered bookmarks (
<leader>h1-9) - Persistent bookmarks across sessions
- Open settings (
<leader>zc) - Show extensions (
<leader>zl) - Show notifications (
<leader>zn) - Toggle theme (
<leader>ui) - Select theme (
<leader>uc) - Health check equivalent (
<leader>zh)
- Line joining (
<leader>j) - Move lines up/down (
Alt+j/Alt+k) - Visual mode indentation (
</>) - Stay in visual mode after indent
- Don't yank on visual paste
- Clear search highlight (
Esc) - Select all (
Ctrl+a)
- TypeScript/JavaScript with auto-formatting
- Python with Black formatting and import organization
- Rust with rust-analyzer
- Go with auto-formatting and import organization
- C/C++ with clangd
- Java with full IDE support
- Flutter/Dart support
- YAML/XML formatting
- Markdown with word wrap
- nvim-tree → File Explorer + vscode-icons
- telescope.nvim → Find It Faster + built-in search
- gitsigns.nvim → GitLens
- lazygit.nvim → GitLens + Git Graph
- nvim-lspconfig → Language-specific extensions
- nvim-cmp → Built-in IntelliSense + IntelliCode
- nvim-dap → Built-in debugger + language debug extensions
- harpoon → Bookmarks extension
- which-key.nvim → WhichKey extension
- lualine.nvim → Built-in status bar
- nvim-treesitter → Enhanced syntax highlighting
- copilot.lua → GitHub Copilot + Copilot Chat
- conform.nvim → Prettier + language formatters
- nvim-lint → ESLint + language linters
- trouble.nvim → Error Lens + Problems panel
- vim-commentary → Better Comments extension
- actions-preview.nvim → Built-in Quick Fix
- refactoring.nvim → P42 Refactor extension
- Tokyo Night (enkia.tokyo-night)
- Material Theme (zhuangtongfa.material-theme)
- GitHub Theme (github.github-vscode-theme)
- Dracula (dracula-theme.theme-dracula)
- Gruvbox Material (sainnhe.gruvbox-material)
- Monokai Pro (monokai.theme-monokai-pro-vscode)
-
settings.json- Complete Vim and editor configuration -
keybindings.json- Custom keybindings for complex operations -
extensions.json- Recommended extensions list -
workspace.code-workspace- Sample workspace with debug/task configs -
install-extensions.sh- Automated extension installation -
setup.sh- Complete setup automation script -
README.md- Comprehensive documentation and migration guide
- All basic Vim motions and commands
- Leader key mappings
- File navigation patterns
- Git workflow
- LSP functionality
- Debugging workflow
- Built-in integrated terminal
- Native debugger UI with better visualizations
- Integrated source control UI
- Extension marketplace
- Better language server integration
- Native multi-cursor support
- Built-in Live Share for collaboration
- Some complex Vim operations may need Command Palette
- Plugin ecosystem is different but comparable
- Configuration is JSON-based instead of Lua
- Some advanced Neovim features (like custom LSP handlers) aren't directly available
- Run the setup script:
./setup.sh - Restart VS Code
- Open workspace:
code sample-workspace/workspace.code-workspace - Test key mappings: Try
<Space>ff,<Space>e,gd, etc. - Customize theme:
<Space>ucto select your preferred theme
Your Neovim workflow has been successfully replicated in VS Code with:
- ✅ All core functionality preserved
- ✅ Key mappings maintained
- ✅ Enhanced debugging and LSP integration
- ✅ Better git visualization
- ✅ Seamless AI assistance integration
The remaining 5% consists of highly specific Neovim features that have VS Code equivalents but may require different approaches (like custom Lua functions or very specific plugin behaviors).
🎉 Your VS Code setup now provides a nearly identical experience to your comprehensive Neovim configuration!