🚀 Introduction

LazyVim est une distribution Neovim préconfigurée qui ajoute des fonctionnalités modernes tout en conservant la puissance de Vim.

🎯 Leader Key

Leader = Space (par défaut dans LazyVim)

📂 Gestion des fichiers

Neo-tree (Explorateur de fichiers)

  • <leader>e : Toggle Neo-tree
  • <leader>E : Toggle Neo-tree (répertoire de travail)
  • Dans Neo-tree :
    • a : Ajouter un fichier/dossier
    • d : Supprimer
    • r : Renommer
    • c : Copier
    • x : Couper
    • p : Coller
    • y : Copier le nom du fichier
    • Y : Copier le chemin relatif
    • gy : Copier le chemin absolu
    • H : Toggle fichiers cachés
    • R : Rafraîchir
    • ? : Afficher l’aide

Telescope (Recherche floue)

  • <leader><space> : Trouver des fichiers
  • <leader>ff : Trouver des fichiers (git)
  • <leader>fF : Trouver des fichiers (tous)
  • <leader>fr : Fichiers récents
  • <leader>fg : Grep (recherche dans les fichiers)
  • <leader>fw : Rechercher le mot sous le curseur
  • <leader>fb : Buffers
  • <leader>fh : Aide
  • <leader>fc : Fichiers de configuration
  • <leader>: : Historique des commandes
  • <leader>/ : Rechercher dans le buffer actuel

📝 Édition et navigation

Mouvements de base Vim

  • h, j, k, l : Gauche, bas, haut, droite
  • w / W : Mot suivant
  • b / B : Mot précédent
  • e / E : Fin du mot
  • 0 : Début de ligne
  • ^ : Premier caractère non-blanc
  • $ : Fin de ligne
  • gg : Début du fichier
  • G : Fin du fichier
  • { / } : Paragraphe précédent/suivant
  • % : Aller au bracket correspondant

Flash (Navigation rapide)

  • s : Flash (jump to)
  • S : Flash Treesitter
  • r : Remote Flash
  • R : Treesitter Search
  • / : Recherche avec Flash
  • ? : Recherche arrière avec Flash

Mouvements avancés

  • <C-u> : Remonter d’un demi-écran
  • <C-d> : Descendre d’un demi-écran
  • <C-o> : Revenir à la position précédente
  • <C-i> : Aller à la position suivante
  • gd : Aller à la définition
  • gr : Aller aux références
  • gI : Aller à l’implémentation
  • gy : Aller à la déclaration de type

🪟 Fenêtres et buffers

Gestion des fenêtres

  • <leader>w : Fenêtres (préfixe)
  • <leader>ww : Autre fenêtre
  • <leader>wd : Supprimer la fenêtre
  • <leader>w- : Split horizontal
  • <leader>w| : Split vertical
  • <C-h> : Aller à la fenêtre de gauche
  • <C-j> : Aller à la fenêtre du bas
  • <C-k> : Aller à la fenêtre du haut
  • <C-l> : Aller à la fenêtre de droite
  • <C-Up> : Augmenter la hauteur
  • <C-Down> : Diminuer la hauteur
  • <C-Left> : Diminuer la largeur
  • <C-Right> : Augmenter la largeur

Buffers

  • <leader>bb : Changer de buffer
  • <leader>bd : Supprimer le buffer
  • <leader>bD : Supprimer le buffer (forcer)
  • <S-h> : Buffer précédent
  • <S-l> : Buffer suivant
  • [b : Buffer précédent
  • ]b : Buffer suivant
  • <leader>bp : Toggle pin du buffer
  • <leader>bP : Supprimer les buffers non-pinnés

🔍 Recherche et remplacement

Recherche

  • / : Recherche avant
  • ? : Recherche arrière
  • n : Occurrence suivante
  • N : Occurrence précédente
  • * : Rechercher le mot sous le curseur (avant)
  • # : Rechercher le mot sous le curseur (arrière)
  • <leader>sr : Remplacer dans les fichiers (Spectre)
  • <leader>sR : Remplacer le mot sous le curseur

Highlighting

  • <leader>uh : Toggle search highlight
  • <Esc><Esc> : Effacer la recherche highlight

💻 LSP et complétion

LSP

  • K : Hover (info)
  • gK : Signature help
  • <leader>ca : Code action
  • <leader>cr : Renommer
  • <leader>cf : Formater
  • <leader>cd : Line diagnostics
  • ]d : Diagnostic suivant
  • [d : Diagnostic précédent
  • ]e : Erreur suivante
  • [e : Erreur précédente
  • ]w : Warning suivant
  • [w : Warning précédent

Complétion (nvim-cmp)

  • <C-Space> : Ouvrir la complétion
  • <C-b> : Scroll docs (haut)
  • <C-f> : Scroll docs (bas)
  • <C-n> : Item suivant
  • <C-p> : Item précédent
  • <CR> : Confirmer
  • <Tab> : Snippets suivant / Item suivant
  • <S-Tab> : Snippets précédent / Item précédent

🔧 Git

Git signs

  • ]h : Hunk suivant
  • [h : Hunk précédent
  • <leader>ghs : Stage hunk
  • <leader>ghr : Reset hunk
  • <leader>ghS : Stage buffer
  • <leader>ghu : Undo stage hunk
  • <leader>ghR : Reset buffer
  • <leader>ghp : Preview hunk
  • <leader>ghb : Blame line
  • <leader>ghd : Diff this
  • <leader>ghD : Diff this ~

Git (LazyGit)

  • <leader>gg : Ouvrir LazyGit
  • <leader>gG : LazyGit (répertoire de travail)
  • <leader>gb : Git blame line
  • <leader>gf : LazyGit file history
  • <leader>gl : LazyGit log
  • <leader>gL : LazyGit log (répertoire de travail)

🧪 Terminal

  • <leader>ft : Terminal (répertoire racine)
  • <leader>fT : Terminal (répertoire actuel)
  • <C-/> : Terminal (répertoire racine)
  • <C-_> : Terminal (répertoire racine) (alternative)
  • <Esc><Esc> : Mode normal (dans le terminal)

🎨 Interface et UI

UI Toggle

  • <leader>uf : Toggle format on save
  • <leader>us : Toggle spelling
  • <leader>uw : Toggle word wrap
  • <leader>ul : Toggle line numbers
  • <leader>ud : Toggle diagnostics
  • <leader>uc : Toggle conceal
  • <leader>uh : Toggle inlay hints
  • <leader>uT : Toggle treesitter highlight
  • <leader>ub : Toggle background

Notifications

  • <leader>un : Dismiss notifications
  • <leader>sn : Rechercher notifications

📦 Lazy (gestionnaire de plugins)

  • <leader>l : Lazy (menu)
  • :Lazy : Ouvrir Lazy
  • Dans Lazy :
    • I : Installer
    • U : Mettre à jour
    • S : Sync
    • X : Clean
    • C : Check
    • L : Log
    • R : Restore
    • P : Profile

🔨 Debugging (DAP)

  • <leader>db : Toggle breakpoint
  • <leader>dB : Breakpoint condition
  • <leader>dc : Continue
  • <leader>dC : Run to cursor
  • <leader>dg : Go to line (no execute)
  • <leader>di : Step into
  • <leader>dj : Down
  • <leader>dk : Up
  • <leader>dl : Run last
  • <leader>do : Step out
  • <leader>dO : Step over
  • <leader>dp : Pause
  • <leader>dr : Toggle REPL
  • <leader>ds : Session
  • <leader>dt : Terminate
  • <leader>dw : Widgets

🧩 Autres raccourcis utiles

Édition

  • <leader>ur : Toggle Relative line numbers
  • <leader>uc : Toggle conceallevel
  • gcc : Commenter/décommenter ligne
  • gbc : Commenter/décommenter bloc
  • gc : Commenter (en mode visuel)
  • <leader>cf : Formater le document/sélection

Sessions

  • <leader>qs : Restore session
  • <leader>ql : Restore last session
  • <leader>qd : Don’t save current session

Autres

  • <leader>K : Keywordprg
  • <leader>L : LazyVim Changelog
  • <leader>xl : Location list
  • <leader>xq : Quickfix list
  • <leader>xt : Todo/Fix/Fixme
  • <leader>xT : Todo/Fix/Fixme (Trouble)
  • <leader>xx : Diagnostics (Trouble)
  • <leader>xX : Buffer diagnostics (Trouble)

⚙️ Configuration

Fichiers importants

  • ~/.config/nvim/lua/config/lazy.lua : Configuration Lazy
  • ~/.config/nvim/lua/config/options.lua : Options Neovim
  • ~/.config/nvim/lua/config/keymaps.lua : Keymaps personnalisés
  • ~/.config/nvim/lua/config/autocmds.lua : Autocommands
  • ~/.config/nvim/lua/plugins/ : Plugins personnalisés

Commandes utiles

  • :LazyExtras : Gérer les extras LazyVim
  • :LazyHealth : Vérifier la santé
  • :checkhealth : Vérification complète
  • :Mason : Gérer les LSP/DAP/linters/formatters

💡 Astuces

  1. Leader key : Appuyez sur Space puis attendez pour voir tous les raccourcis disponibles
  2. Which-key : Le menu contextuel s’affiche automatiquement après avoir appuyé sur <leader>
  3. Telescope : Utilisez <C-/> dans Telescope pour voir tous les mappings
  4. Mason : :Mason pour installer facilement des serveurs LSP
  5. Lazy : :Lazy pour gérer vos plugins
  6. Extras : :LazyExtras pour activer des fonctionnalités supplémentaires (langages, outils)

🔑 Commandes mode commande (:)

Essentielles

  • :w : Sauvegarder
  • :q : Quitter
  • :wq ou :x : Sauvegarder et quitter
  • :q! : Quitter sans sauvegarder
  • :e <fichier> : Éditer un fichier
  • :bn / :bp : Buffer next/previous
  • :bd : Buffer delete

Avancées

  • :split ou :sp : Split horizontal
  • :vsplit ou :vs : Split vertical
  • :term : Ouvrir un terminal
  • :Mason : Gestionnaire LSP/DAP
  • :Lazy : Gestionnaire de plugins
  • :LazyExtras : Extras LazyVim
  • :checkhealth : Diagnostic de santé

🎓 Modes Vim

  • i : Mode INSERT (avant le curseur)
  • a : Mode INSERT (après le curseur)
  • v : Mode VISUAL
  • V : Mode VISUAL LINE
  • <C-v> : Mode VISUAL BLOCK
  • R : Mode REPLACE
  • Esc : Retour au mode NORMAL

🔗 Ressources

  • Documentation LazyVim : lazyvim.org
  • GitHub LazyVim : LazyVim
  • Neovim docs : :help
  • LazyVim keymaps : :help lazyvim.keymaps

Dernière mise à jour : Octobre 2025