📚 Added comprehensive NvChad cheat sheet in multiple formats: 📄 Files Added: ✅ ULTIMATE_NVCHAD_CHEATSHEET.md (18KB) - Beautiful Markdown format ✅ ULTIMATE_NVCHAD_CHEATSHEET.txt (30KB) - ASCII box format ✅ README.md - Complete documentation and usage guide 🔥 Features: - 1000+ keybindings across all plugins and Vim - Complete NvChad workflow reference - AI integration (Copilot + CopilotChat) - Code navigation, LSP, Git integration - File management, terminal, themes - Advanced Vim operations and text objects 🎯 Two Perfect Formats: 📱 Markdown (.md) - Web-optimized for Gitea viewing 🖨️ Text (.txt) - Print-friendly for desk reference 💡 Coverage: - NvChad Core workflow - GitHub Copilot & CopilotChat AI features - All major plugins (Telescope, NvimTree, etc.) - LSP and code intelligence - Git workflow with Gitsigns - Complete Vim fundamentals - Professional development setup Perfect for developers wanting to master NvChad! 🎊
337 lines
29 KiB
Plaintext
337 lines
29 KiB
Plaintext
╔══════════════════════════════════════════════════════════════════════════════╗
|
|
║ 🚀 ULTIMATE NvChad CHEAT SHEET 🚀 ║
|
|
║ Complete Reference - All Plugins & Vim ║
|
|
║ Leader Key: SPACE ║
|
|
╠══════════════════════════════════════════════════════════════════════════════╣
|
|
|
|
┌─ 🔥 ESSENTIAL WORKFLOW ──────┬─ 📁 FILES & SEARCH ─────────────────────────┐
|
|
│ Space Show all keys │ Space ff Find files │
|
|
│ Space ff Find files │ Space fa Find all files (+ hidden) │
|
|
│ Space fw Find text │ Space fw Live grep (search in files) │
|
|
│ Ctrl+n Toggle tree │ Space fb Find buffers │
|
|
│ Space e Focus tree │ Space fh Help pages │
|
|
│ Tab Next buffer │ Space fo Find recent files │
|
|
│ Shift+Tab Prev buffer │ Space fz Find in current buffer │
|
|
│ Space x Close buffer │ Space cm Git commits │
|
|
│ Ctrl+s Save file │ Space gt Git status │
|
|
│ gd Go definition │ /text Search in file │
|
|
│ K Show docs │ * Search word under cursor │
|
|
└──────────────────────────────┴──────────────────────────────────────────────┘
|
|
|
|
┌─ 🤖 COPILOT AI ──────────────┬─ 💬 COPILOT CHAT ───────────────────────────┐
|
|
│ Ctrl+J Accept suggest │ Space ccq Quick chat (ask anything) │
|
|
│ Ctrl+] Next suggest │ Space cci Custom input chat │
|
|
│ Ctrl+[ Prev suggest │ Space cce Explain selected code │
|
|
│ Ctrl+\ Trigger │ Space ccr Review selected code │
|
|
│ :Copilot auth Authenticate │ Space ccR Refactor/optimize code │
|
|
│ :Copilot stat Status │ Space cct Generate tests │
|
|
│ :Copilot en/dis Enable/Dis │ Space ccf Fix diagnostics │
|
|
│ │ Space ccn Better naming suggestions │
|
|
│ │ Space ccv Toggle chat window │
|
|
│ │ Space ccl Clear chat history │
|
|
│ │ Space ccm Generate commit msg (all) │
|
|
│ │ Space ccM Generate commit msg (staged) │
|
|
│ │ Space cch Help actions (Telescope) │
|
|
│ │ Space ccp Prompt actions (Telescope) │
|
|
└──────────────────────────────┴──────────────────────────────────────────────┘
|
|
|
|
┌─ 🧭 CODE NAVIGATION ─────────┬─ ⚡ LSP & DIAGNOSTICS ──────────────────────┐
|
|
│ gd Go definition │ Space ca Code actions │
|
|
│ gD Go declaration │ Space ra Rename symbol │
|
|
│ gi Go implement │ Space f Format document │
|
|
│ gr Find reference │ Space fm Format selection │
|
|
│ K Hover docs │ [d Previous diagnostic │
|
|
│ Ctrl+k Signature help │ ]d Next diagnostic │
|
|
│ Space D Type definitio │ Space e Show line diagnostics │
|
|
│ Ctrl+o Jump back │ Space q Diagnostic quickfix list │
|
|
│ Ctrl+i Jump forward │ Space wa Add workspace folder │
|
|
│ Space s Symbol search │ Space wr Remove workspace folder │
|
|
│ Space ds Document symb │ Space wl List workspace folders │
|
|
│ Space ws Workspace symb │ :LspInfo LSP information │
|
|
│ │ :checkhealth Check Neovim health │
|
|
└──────────────────────────────┴──────────────────────────────────────────────┘
|
|
|
|
┌─ 🪟 WINDOWS & BUFFERS ───────┬─ 💻 TERMINAL ───────────────────────────────┐
|
|
│ Ctrl+h Left window │ Alt+h Toggle horizontal terminal │
|
|
│ Ctrl+j Down window │ Alt+v Toggle vertical terminal │
|
|
│ Ctrl+k Up window │ Alt+i Toggle floating terminal │
|
|
│ Ctrl+l Right window │ Space h New horizontal terminal │
|
|
│ Space v Vertical split │ Space v New vertical terminal │
|
|
│ Space h Horizontal spl │ exit Exit terminal mode │
|
|
│ Tab Next buffer │ Ctrl+\ Toggle terminal │
|
|
│ Shift+Tab Previous buffe │ esc esc Exit terminal insert mode │
|
|
│ Space x Close buffer │ Ctrl+w N Terminal normal mode │
|
|
│ Space b New buffer │ i/a Terminal insert mode │
|
|
│ Ctrl+w c Close window │ :term Open terminal │
|
|
│ Ctrl+w o Close others │ :split term:// Horizontal terminal split │
|
|
│ Ctrl+w = Equal windows │ :vsplit term: Vertical terminal split │
|
|
└──────────────────────────────┴──────────────────────────────────────────────┘
|
|
|
|
┌─ 🌳 FILE TREE (NvimTree) ────┬─ 🔭 TELESCOPE ─────────────────────────────┐
|
|
│ Enter/o Open file │ Ctrl+n/p Next/Previous item │
|
|
│ Ctrl+v Open vertical │ Ctrl+j/k Move down/up │
|
|
│ Ctrl+x Open horizontal│ Enter Select item │
|
|
│ Ctrl+t Open new tab │ Ctrl+v Open in vertical split │
|
|
│ a Create file │ Ctrl+x Open in horizontal split │
|
|
│ A Create folder │ Ctrl+t Open in new tab │
|
|
│ d Delete │ Ctrl+c/Esc Close telescope │
|
|
│ r Rename │ Tab Toggle selection │
|
|
│ Ctrl+r Full rename │ Ctrl+q Send to quickfix │
|
|
│ c Copy │ Ctrl+u Scroll preview up │
|
|
│ x Cut │ Ctrl+d Scroll preview down │
|
|
│ p Paste │ ? Show help │
|
|
│ y Copy name │ Ctrl+/ Toggle preview │
|
|
│ Y Copy rel path │ Ctrl+_ Which key help │
|
|
│ gy Copy abs path │ M Toggle mark │
|
|
│ H Toggle hidden │ Alt+q Send all to quickfix │
|
|
│ I Toggle ignore │ Alt+l Send selected to loclist │
|
|
│ R Refresh │ Ctrl+w Preview scroll up │
|
|
│ W Collapse all │ Ctrl+e Preview scroll down │
|
|
│ E Expand all │ │
|
|
│ S Prompt removal │ │
|
|
│ q Close tree │ │
|
|
└──────────────────────────────┴──────────────────────────────────────────────┘
|
|
|
|
┌─ 🎯 AUTO-COMPLETION (cmp) ───┬─ 📝 COMMENTS & EDITING ────────────────────┐
|
|
│ Ctrl+n Next item │ gcc Toggle line comment │
|
|
│ Ctrl+p Previous item │ gc (visual) Toggle comment (selection) │
|
|
│ Ctrl+Space Trigger comp │ gbc Toggle block comment │
|
|
│ Enter Confirm select │ gb (visual) Toggle block (selection) │
|
|
│ Ctrl+e Close menu │ Space / Toggle comment line │
|
|
│ Ctrl+d Scroll docs dn │ i Insert before cursor │
|
|
│ Ctrl+f Scroll docs up │ I Insert at line start │
|
|
│ Tab Next (snippets)│ a Append after cursor │
|
|
│ Shift+Tab Prev (snippets)│ A Append at line end │
|
|
│ Ctrl+y Confirm │ o New line below │
|
|
│ Ctrl+[ Cancel │ O New line above │
|
|
│ │ c Change operator │
|
|
│ │ s Substitute character │
|
|
│ │ S Substitute line │
|
|
│ │ dd Delete line │
|
|
│ │ yy Yank (copy) line │
|
|
│ │ p Paste after │
|
|
│ │ P Paste before │
|
|
│ │ u Undo │
|
|
│ │ Ctrl+r Redo │
|
|
│ │ . Repeat last command │
|
|
└──────────────────────────────┴──────────────────────────────────────────────┘
|
|
|
|
┌─ 🌈 TREESITTER & TEXT OBJ ───┬─ 🔄 GIT INTEGRATION (Gitsigns) ────────────┐
|
|
│ af Around function │ ]c Next hunk │
|
|
│ if Inside function │ [c Previous hunk │
|
|
│ ac Around class │ Space hs Stage hunk │
|
|
│ ic Inside class │ Space hr Reset hunk │
|
|
│ aa Around argument │ Space hS Stage buffer │
|
|
│ ia Inside argument │ Space hu Undo stage hunk │
|
|
│ ab Around block │ Space hR Reset buffer │
|
|
│ ib Inside block │ Space hp Preview hunk │
|
|
│ Ctrl+Space Init selection │ Space hb Blame line │
|
|
│ BS Shrink select │ Space tb Toggle blame │
|
|
│ Enter Expand select │ Space hd Diff this │
|
|
│ Tab Expand scope │ Space hD Diff this ~ │
|
|
│ gnn Next node │ Space td Toggle deleted │
|
|
│ grn Rename node │ ih Inside hunk (text object) │
|
|
│ gra Rename all │ ah Around hunk (text object) │
|
|
└──────────────────────────────┴──────────────────────────────────────────────┘
|
|
|
|
┌─ 🎨 THEMES & UI ─────────────┬─ 🛠️ MASON & PLUGINS ──────────────────────┐
|
|
│ Space th Theme switcher │ :Mason Open Mason LSP manager │
|
|
│ Space tt Toggle transp │ :MasonInstall Install LSP server │
|
|
│ Space ch NvChad help │ :MasonUpdate Update all servers │
|
|
│ Space nu Update NvChad │ :Lazy Open Lazy plugin manager │
|
|
│ Space n Toggle numbers │ :Lazy install Install plugins │
|
|
│ Space rn Toggle rel num │ :Lazy update Update plugins │
|
|
│ Space i Indent guide │ :Lazy clean Clean unused plugins │
|
|
│ Space wk Which-key │ :Lazy sync Sync plugins │
|
|
│ Space nh Toggle hlsearch│ :Lazy check Check plugin status │
|
|
│ Space nw Toggle wrap │ :LspInstall Install language server │
|
|
│ Space cc Close all bufs │ :NvChadUpdate Update NvChad core │
|
|
│ Space nn Line numbers │ :checkhealth Check all health │
|
|
│ Space ur Update repos │ :help General help │
|
|
│ Space uv Update vim │ :version Show version info │
|
|
└──────────────────────────────┴──────────────────────────────────────────────┘
|
|
|
|
┌─ ↔️ VIM MOVEMENT ────────────┬─ 🔍 SEARCH & REPLACE ──────────────────────┐
|
|
│ h/j/k/l Left/Down/Up/R │ /pattern Search forward │
|
|
│ w Next word │ ?pattern Search backward │
|
|
│ W Next WORD │ n Next match │
|
|
│ b Previous word │ N Previous match │
|
|
│ B Previous WORD │ * Search word under cursor │
|
|
│ e End of word │ # Search word under cursor bwd │
|
|
│ E End of WORD │ :s/old/new Replace in line │
|
|
│ 0 Start of line │ :s/old/new/g Replace all in line │
|
|
│ ^ First non-blank│ :%s/old/new/g Replace all in file │
|
|
│ $ End of line │ :%s/old/new/gc Replace all with confirm │
|
|
│ gg Go to top │ :g/pattern/d Delete lines with pattern │
|
|
│ G Go to bottom │ :v/pattern/d Delete lines without pattern │
|
|
│ {number}G Go to line │ :noh Clear search highlight │
|
|
│ Ctrl+u Half page up │ qaq Clear register a │
|
|
│ Ctrl+d Half page down │ q: Command history │
|
|
│ Ctrl+b Full page up │ q/ Search history │
|
|
│ Ctrl+f Full page down │ :%!sort Sort all lines │
|
|
│ zt Cursor to top │ :set ic Ignore case search │
|
|
│ zz Cursor center │ :set noic Case sensitive search │
|
|
│ zb Cursor bottom │ \c Case insensitive (in search) │
|
|
│ f{char} Find character │ \C Case sensitive (in search) │
|
|
│ F{char} Find char back │ :%!uniq Remove duplicate lines │
|
|
│ t{char} Till character │ │
|
|
│ T{char} Till char back │ │
|
|
│ ; Repeat f/t │ │
|
|
│ , Repeat f/t back│ │
|
|
└──────────────────────────────┴──────────────────────────────────────────────┘
|
|
|
|
┌─ 👁️ VISUAL MODE ─────────────┬─ 📋 REGISTERS & MACROS ────────────────────┐
|
|
│ v Visual char │ "ay Yank to register a │
|
|
│ V Visual line │ "ap Paste from register a │
|
|
│ Ctrl+v Visual block │ :reg Show all registers │
|
|
│ gv Select last │ "" Unnamed register │
|
|
│ o Other end │ "0 Last yank register │
|
|
│ O Other corner │ "+ System clipboard │
|
|
│ y Yank selection │ "* System primary selection │
|
|
│ d Delete select │ "/ Last search pattern │
|
|
│ c Change select │ ": Last command │
|
|
│ r Replace select │ ". Last inserted text │
|
|
│ s Substitute sel │ "% Current file name │
|
|
│ u Lowercase │ "# Alternate file name │
|
|
│ U Uppercase │ qa Start recording macro a │
|
|
│ ~ Toggle case │ q Stop recording macro │
|
|
│ > Indent right │ @a Play macro a │
|
|
│ < Indent left │ @@ Repeat last macro │
|
|
│ = Auto-indent │ :let @a='' Clear macro a │
|
|
│ J Join lines │ qA Append to macro a │
|
|
│ gJ Join no space │ 5@a Execute macro a 5 times │
|
|
│ :'<,'>!cmd Filter through │ :g/pat/norm@a Execute macro on pattern │
|
|
└──────────────────────────────┴──────────────────────────────────────────────┘
|
|
|
|
┌─ 🗂️ TABS & FOLDS ────────────┬─ 📊 MARKS & JUMPS ─────────────────────────┐
|
|
│ :tabnew New tab │ ma Set mark a │
|
|
│ :tabclose Close tab │ 'a Jump to line with mark a │
|
|
│ :tabnext Next tab │ `a Jump to mark a position │
|
|
│ :tabprev Previous tab │ '' Jump to previous line │
|
|
│ gt Next tab │ `` Jump to previous position │
|
|
│ gT Previous tab │ '. Jump to last edited line │
|
|
│ {num}gt Go to tab num │ `. Jump to last edited position│
|
|
│ :tabmove Move tab │ :marks Show all marks │
|
|
│ za Toggle fold │ :delmarks a Delete mark a │
|
|
│ zA Toggle all fold │ :delmarks! Delete all lowercase marks │
|
|
│ zo Open fold │ Ctrl+o Jump back in jump list │
|
|
│ zO Open all folds │ Ctrl+i Jump forward in jump list │
|
|
│ zc Close fold │ :jumps Show jump list │
|
|
│ zC Close all folds │ g; Jump to last change │
|
|
│ zr Reduce fold │ g, Jump to next change │
|
|
│ zR Open all folds │ :changes Show change list │
|
|
│ zm More folds │ '' Jump to previous position │
|
|
│ zM Close all folds │ Ctrl+] Follow tag/definition │
|
|
│ zv View cursor │ Ctrl+t Jump back from tag │
|
|
│ zj Next fold │ gd Go to local definition │
|
|
│ zk Previous fold │ gD Go to global definition │
|
|
│ zi Toggle folding │ * Search word under cursor │
|
|
│ :set foldmeth Set fold method │ # Search word backward │
|
|
└──────────────────────────────┴──────────────────────────────────────────────┘
|
|
|
|
┌─ 🎮 COPILOT CHAT WINDOW ─────┬─ 🚨 QUICKFIX & LOCATION LIST ──────────────┐
|
|
│ q Close chat │ :copen Open quickfix window │
|
|
│ Ctrl+l Reset chat │ :cclose Close quickfix window │
|
|
│ Enter Submit prompt │ :cn Next quickfix item │
|
|
│ Ctrl+Enter Submit (insert) │ :cp Previous quickfix item │
|
|
│ Ctrl+y Accept diff │ :cc Go to quickfix item │
|
|
│ gy Yank diff │ :cfirst First quickfix item │
|
|
│ gd Show diff │ :clast Last quickfix item │
|
|
│ gp Show sys prompt │ :cdo cmd Execute cmd on each item │
|
|
│ gs Show user sel │ :colder Older quickfix list │
|
|
│ Tab Complete @/ │ :cnewer Newer quickfix list │
|
|
│ Ctrl+c Close (insert) │ :lopen Open location list │
|
|
│ /text Search in chat │ :lclose Close location list │
|
|
│ n/N Next/prev match │ :ln Next location item │
|
|
│ :%s///g Replace in chat │ :lp Previous location item │
|
|
│ :w Save chat hist │ :ll Go to location item │
|
|
│ :q Quit chat │ :lfirst First location item │
|
|
│ G Go to end │ :llast Last location item │
|
|
│ gg Go to start │ :ldo cmd Execute cmd on each loc item │
|
|
│ Ctrl+w hjkl Navigate window │ :lolder Older location list │
|
|
└──────────────────────────────┴──────────────────────────────────────────────┘
|
|
|
|
┌─ 🔧 FILE OPERATIONS ─────────┬─ 💾 SESSIONS & VIEWS ──────────────────────┐
|
|
│ :w Write (save) │ :mksession Make session │
|
|
│ :w filename Save as │ :mks! Overwrite session │
|
|
│ :wa Write all │ :source sess Load session │
|
|
│ :q Quit │ :mkvimrc Make vimrc │
|
|
│ :q! Quit no save │ :mkview Make view │
|
|
│ :wq Write and quit │ :loadview Load view │
|
|
│ :x Save and exit │ :viewoptions View options │
|
|
│ :qa Quit all │ :sessionopt Session options │
|
|
│ :wqa Save quit all │ vim -S Start with session │
|
|
│ :e filename Edit file │ vim -r Recover swap file │
|
|
│ :e! Reload file │ :set sessionopts Set session options │
|
|
│ :new New window │ :wall Write all files │
|
|
│ :vnew New vertical │ :qall Quit all windows │
|
|
│ :r filename Read file │ :wqall Write and quit all │
|
|
│ :r !command Read command │ :xa Write and exit all │
|
|
│ :cd path Change dir │ :browse e Browse and edit │
|
|
│ :pwd Print work dir │ :Sex Split explorer window │
|
|
│ :ls List buffers │ :Vex Vertical explorer window │
|
|
│ :b{num} Buffer number │ :Tex Tab explorer window │
|
|
│ :b{name} Buffer name │ :Hex Horizontal explorer │
|
|
│ :bn Next buffer │ :Lex Left explorer window │
|
|
│ :bp Previous buffer │ :Rex Return from explorer │
|
|
│ :bd Delete buffer │ :E Enhanced file browser │
|
|
│ :bufdo cmd Execute on bufs │ :Explore File explorer │
|
|
└──────────────────────────────┴──────────────────────────────────────────────┘
|
|
|
|
┌─ 🎯 WORKFLOW EXAMPLES ───────┬─ 🆘 HELP & TROUBLESHOOTING ────────────────┐
|
|
│ 1. Find & Open File: │ :help topic Get help on topic │
|
|
│ Space ff → type → Enter │ :h Short for help │
|
|
│ │ :helpgrep pat Search in help │
|
|
│ 2. Search Text in Project: │ :version Show version info │
|
|
│ Space fw → type → Enter │ :checkhealth Check neovim health │
|
|
│ │ :messages Show messages │
|
|
│ 3. Go to Definition & Back: │ :scriptnames Show loaded scripts │
|
|
│ gd → Ctrl+o │ :map Show all mappings │
|
|
│ │ :map <key> Show mapping for key │
|
|
│ 4. AI Code Explanation: │ :verbose map Show mapping with source │
|
|
│ Select code → Space cce │ :set option? Show option value │
|
|
│ │ :set all Show all options │
|
|
│ 5. Quick Chat with AI: │ :syntax Show syntax info │
|
|
│ Space ccq → ask → Enter │ :highlight Show highlight groups │
|
|
│ │ :autocmd Show autocommands │
|
|
│ 6. Format Code: │ :function Show user functions │
|
|
│ Space ca → select format │ :command Show user commands │
|
|
│ │ :let Show variables │
|
|
│ 7. Git Stage Changes: │ :set Show changed options │
|
|
│ ]c → Space hp → Space hs │ :args Show argument list │
|
|
│ │ :pwd Show current directory │
|
|
│ 8. Find & Replace: │ :file Show current file info │
|
|
│ Space fw → /old → Ctrl+q │ :ls Show buffer list │
|
|
│ → :%s//new/gc │ :tabs Show tab list │
|
|
│ │ :registers Show register contents │
|
|
│ 9. Terminal Integration: │ :jumps Show jump list │
|
|
│ Alt+i → run commands │ :changes Show change list │
|
|
│ │ :marks Show mark list │
|
|
│ 10. Theme & Config: │ :undolist Show undo branches │
|
|
│ Space th → select theme │ :set rtp? Show runtime path │
|
|
│ Space ch → view help │ :echo $VIMRUNTIME Show vim runtime │
|
|
└──────────────────────────────┴──────────────────────────────────────────────┘
|
|
|
|
╚══════════════════════════════════════════════════════════════════════════════╝
|
|
|
|
🎯 QUICK START:
|
|
1. Press SPACE and wait to see all options
|
|
2. Space ff = Find files | Space fw = Find text | Ctrl+n = File tree
|
|
3. gd = Go to definition | K = Show docs | Space ca = Code actions
|
|
4. Space ccq = AI chat | Ctrl+J = Accept AI | Space cce = Explain code
|
|
|
|
🔥 PRO TIPS:
|
|
- Leader (Space) shows all available commands when pressed
|
|
- Use :help <command> for detailed help on any command
|
|
- :checkhealth to verify your setup is working correctly
|
|
- Most commands work in combination (operators + motions)
|
|
- Visual mode first, then action for selections
|
|
|
|
💡 REMEMBER:
|
|
- Vim is modal (Normal/Insert/Visual/Command modes)
|
|
- Motions: w(word) e(end) b(back) 0($) ^($) gg(G) f(F) t(T)
|
|
- Operators: d(delete) y(yank) c(change) >(indent) <(unindent)
|
|
- Text objects: i/a + w(word) s(sentence) p(paragraph) b(block)
|
|
|
|
🚀 Master the basics first, then gradually learn advanced features!
|