https://github.com/florianbx/nvim_config
Customized NeoVim setup for enhanced VueJS, Angular, TailwindCSS, and TypeScript development, featuring integrated tools like Prettier and ESLint, along with a suite of efficient keyboard shortcuts for streamlined coding workflows.
https://github.com/florianbx/nvim_config
keymapping lsp lua manson noice nvim nvim-configs nvim-lazy
Last synced: about 1 month ago
JSON representation
Customized NeoVim setup for enhanced VueJS, Angular, TailwindCSS, and TypeScript development, featuring integrated tools like Prettier and ESLint, along with a suite of efficient keyboard shortcuts for streamlined coding workflows.
- Host: GitHub
- URL: https://github.com/florianbx/nvim_config
- Owner: FlorianBx
- Created: 2023-11-28T03:38:07.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2025-08-27T11:59:08.000Z (7 months ago)
- Last Synced: 2025-08-27T20:54:26.599Z (7 months ago)
- Topics: keymapping, lsp, lua, manson, noice, nvim, nvim-configs, nvim-lazy
- Language: Lua
- Homepage:
- Size: 5.76 MB
- Stars: 6
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# ✨ Flbx-nvim
> **Modern, modular Neovim configuration optimized for Vue.js/TypeScript development**





## 🚀 Features
- **🏗️ 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
## 📦 Installation
```sh
git clone https://github.com/FlorianBx/nvim_config ~/.config/nvim
nvim
```
### Requirements
- **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`)
### Optional
- **lazygit** - Git UI (`brew install lazygit`)
- **tmux** - Terminal multiplexing
## ⚡ Key Bindings
> **Leader key:** ``
### 📝 Essential
| Key | Action |
|-----|---------|
| `jj` | Exit insert mode |
| `ew` | Save file |
| `eq` | Quit window |
| `r` | Reload buffer |
| `ga` | Select all |
### 🪟 Window & Buffer
| Key | Action |
|-----|---------|
| `ss` / `sv` | Split horizontal/vertical |
| `sx` / `sw` | Close split/other splits |
| `` / `` | Previous/next buffer |
| `c` | Close buffer |
### 🔍 Navigation (Telescope)
| Key | Action |
|-----|---------|
| `ff` | Find files |
| `fg` | Live grep |
| `fb` | Open buffers |
| `fr` | Recent files |
| `ft` | Search TODOs |
### 📁 File Explorers
| Key | Action |
|-----|---------|
| `ee` | Neotree file explorer |
### 🎯 Harpoon (Quick Navigation)
| Key | Action |
|-----|---------|
| `ha` | Add file to Harpoon |
| `hh` | Open Harpoon menu |
| `1-4` | Jump to Harpoon files |
### 🔧 LSP & Diagnostics
| Key | Action |
|-----|---------|
| `gd` | Go to definition |
| `gr` | Go to references |
| `gi` | Go to implementation |
| `K` | Show hover info |
| `ca` | Code actions |
| `rn` | Rename symbol |
| `ll` | Format buffer |
| `d` | Show diagnostics |
| `[d` / `]d` | Prev/next diagnostic |
### 🤖 AI Completion (Copilot)
| Key | Mode | Action |
|-----|------|---------|
| `` | Insert | Accept suggestion |
| `` | Insert | Dismiss suggestion |
| `` | Insert | Next suggestion |
| `` | Insert | Previous suggestion |
### 📝 Snippets
| Key | Mode | Action |
|-----|------|---------|
| `` | Insert | Expand or jump snippet |
| `` | Insert | Jump back in snippet |
| `` | Insert | Change snippet choice |
### 🎨 Vue.js Snippets
| 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 |
### 🅰️ Angular Development
| Key | Action |
|-----|---------|
| `ac` | Go to component.ts |
| `at` | Go to component.html |
| `as` | Go to component.spec.ts |
| `acc` | Go to component.css |
| `ass` | Go to component.scss |
### 🔀 Git Integration
| Key | Action |
|-----|---------|
| `gp` | Preview git hunk |
| `gm` | Toggle line blame |
| `lg` | Launch LazyGit |
| `gv` | Git diff view |
| `gt` | Git file history |
### 🚨 Trouble & TODOs
| Key | Action |
|-----|---------|
| `xx` | Trouble diagnostics |
| `xw` | Workspace diagnostics |
| `xq` | Quickfix list |
| `nt` / `pt` | Next/prev TODO |
### 🖥️ TMUX Navigation
| Key | Action |
|-----|---------|
| `` / `` / `` / `` | Navigate panes |
| `` | Navigate to previous pane |
### 💾 Session Management
| Key | Action |
|-----|---------|
| `wr` | Restore workspace |
| `wl` | Load last session |
| `we` | Exclude session |
## 🧩 Plugin Architecture
### 📂 Structure
```
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
```
### 🎯 Core Plugins
- **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
### 🌐 Language Support
- **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
## 🎨 Customization
### 📝 Key Files
- `lua/florian/core/keymaps.lua` - All keybindings
- `lua/florian/core/options.lua` - Neovim settings
- `lua/florian/plugins/` - Plugin configurations
- `lua/florian/plugins/lsp/configs/` - LSP settings
### 🔧 Performance
- **Lazy loading** - Fast startup (~50ms)
- **Smart formatting** - Excludes node_modules
- **Treesitter optimization** - Large file handling
- **Efficient diagnostics** - Configurable virtual text
## 🆕 Recent Updates
### ✨ Latest Features
- **🤖 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
## 🙌 Credits
Thanks to the amazing Neovim community and plugin authors:
- **[folke](https://github.com/folke)** - lazy.nvim, trouble.nvim, persistence.nvim
- **[ThePrimeagen](https://github.com/ThePrimeagen)** - Harpoon
- **[stevearc](https://github.com/stevearc)** - conform.nvim
- **[sindrets](https://github.com/sindrets)** - Diffview
---
## ⚖️ License
MIT © FlorianBx