Modern, modular Neovim configuration optimized for Vue.js/TypeScript development
- ποΈ Modular Architecture - Organized plugin categories for maintainability
- π― Vue.js/TypeScript Focus - Specialized configurations for modern web development
- π€ GitHub Copilot Integration - AI-powered code completion
- β‘ Performance Optimized - Smart lazy loading and efficient configurations
- π File Explorer - Neotree for seamless navigation
- π Enhanced Git Workflow - Gitsigns, LazyGit, and Diffview integration
- πΎ Session Management - Automatic workspace persistence
git clone https://github.com/FlorianBx/nvim_config ~/.config/nvim
nvim- Neovim 0.9+ - Required for modern features
- Git - Plugin management
- Node.js - LSP servers and formatters
- ripgrep - Fast searching (
brew install ripgrep) - fd - Fast file finding (
brew install fd)
- lazygit - Git UI (
brew install lazygit) - tmux - Terminal multiplexing
Leader key:
<Space>
| Key | Action |
|---|---|
jj |
Exit insert mode |
<leader>ew |
Save file |
<leader>eq |
Quit window |
<leader>r |
Reload buffer |
ga |
Select all |
| Key | Action |
|---|---|
ss / sv |
Split horizontal/vertical |
sx / sw |
Close split/other splits |
<S-h> / <S-l> |
Previous/next buffer |
<leader>c |
Close buffer |
| Key | Action |
|---|---|
<leader>ff |
Find files |
<leader>fg |
Live grep |
<leader>fb |
Open buffers |
<leader>fr |
Recent files |
<leader>ft |
Search TODOs |
| Key | Action |
|---|---|
<leader>ee |
Neotree file explorer |
| Key | Action |
|---|---|
<leader>ha |
Add file to Harpoon |
<leader>hh |
Open Harpoon menu |
<leader>1-4 |
Jump to Harpoon files |
| Key | Action |
|---|---|
gd |
Go to definition |
gr |
Go to references |
gi |
Go to implementation |
K |
Show hover info |
<leader>ca |
Code actions |
<leader>rn |
Rename symbol |
<leader>ll |
Format buffer |
<leader>d |
Show diagnostics |
[d / ]d |
Prev/next diagnostic |
| Key | Mode | Action |
|---|---|---|
<C-l> |
Insert | Accept suggestion |
<C-]> |
Insert | Dismiss suggestion |
<C-\> |
Insert | Next suggestion |
<C-[> |
Insert | Previous suggestion |
| Key | Mode | Action |
|---|---|---|
<Tab> |
Insert | Expand or jump snippet |
<S-Tab> |
Insert | Jump back in snippet |
<C-e> |
Insert | Change snippet choice |
| Trigger | Description |
|---|---|
vue3 |
Vue 3 component template |
vref |
Vue ref with TypeScript |
vreactive |
Vue reactive with TypeScript |
vcomputed |
Vue computed property |
vwatch |
Vue watch function |
vprops |
Vue props with TypeScript |
vemits |
Vue emits with TypeScript |
| Key | Action |
|---|---|
<leader>ac |
Go to component.ts |
<leader>at |
Go to component.html |
<leader>as |
Go to component.spec.ts |
<leader>acc |
Go to component.css |
<leader>ass |
Go to component.scss |
| Key | Action |
|---|---|
<leader>gp |
Preview git hunk |
<leader>gm |
Toggle line blame |
<leader>lg |
Launch LazyGit |
<leader>gv |
Git diff view |
<leader>gt |
Git file history |
| Key | Action |
|---|---|
<leader>xx |
Trouble diagnostics |
<leader>xw |
Workspace diagnostics |
<leader>xq |
Quickfix list |
<leader>nt / <leader>pt |
Next/prev TODO |
| Key | Action |
|---|---|
<C-h> / <C-j> / <C-k> / <C-l> |
Navigate panes |
<C-\> |
Navigate to previous pane |
| Key | Action |
|---|---|
<leader>wr |
Restore workspace |
<leader>wl |
Load last session |
<leader>we |
Exclude session |
lua/florian/plugins/
βββ ui/ # Colorscheme, which-key, dressing
βββ navigation/ # Telescope, neotree, harpoon, tmux-nav
βββ editor/ # Treesitter, formatting, trouble
βββ coding/ # Completion, copilot, snippets
βββ git/ # Gitsigns, lazygit, diffview
βββ lsp/ # LSP configurations
- Lazy.nvim - Plugin manager with smart loading
- Telescope - Fuzzy finder with fzf integration
- Neotree - A file explorer for Neovim
- Copilot - AI-powered code completion
- Conform.nvim - Modern formatting with Prettier
- Harpoon - Quick project navigation
- Trouble.nvim - Diagnostics and quickfix
- LSP - Native LSP with Mason auto-install
- Vue.js - Volar LSP with Vue 3 + TypeScript
- TypeScript/JavaScript - Advanced IntelliSense
- Angular - Component navigation with ng-croissant
- HTML/CSS - Tailwind CSS integration
- Markdown - Enhanced editing
lua/florian/core/keymaps.lua- All keybindingslua/florian/core/options.lua- Neovim settingslua/florian/plugins/- Plugin configurationslua/florian/plugins/lsp/configs/- LSP settings
- Lazy loading - Fast startup (~50ms)
- Smart formatting - Excludes node_modules
- Treesitter optimization - Large file handling
- Efficient diagnostics - Configurable virtual text
- π€ GitHub Copilot - AI-powered code completion
- ποΈ Modular Architecture - Organized plugin categories
- β‘ Performance Optimizations - Smart lazy loading
- π Vue.js Snippets - Comprehensive Vue 3 templates
- π§ Enhanced LSP - TypeScript with inlay hints
- π File Explorer - Neotree integration
Thanks to the amazing Neovim community and plugin authors:
- folke - lazy.nvim, trouble.nvim, persistence.nvim
- ThePrimeagen - Harpoon
- stevearc - conform.nvim
- sindrets - Diffview
MIT Β© FlorianBx