Enabled debug plugin
This commit is contained in:
parent
2e890c0e15
commit
a1b412b7b9
|
@ -4,4 +4,3 @@ test.sh
|
||||||
nvim
|
nvim
|
||||||
|
|
||||||
spell/
|
spell/
|
||||||
lazy-lock.json
|
|
||||||
|
|
|
@ -0,0 +1,84 @@
|
||||||
|
# CLAUDE.md
|
||||||
|
|
||||||
|
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
|
||||||
|
This is a Neovim configuration based on kickstart.nvim, a minimal starting point for Neovim configuration. The codebase is primarily single-file (init.lua) with modular plugin extensions.
|
||||||
|
|
||||||
|
## Commands
|
||||||
|
|
||||||
|
### Formatting and Linting
|
||||||
|
- **Format Lua code**: Use stylua via Mason tool installer (automatically configured)
|
||||||
|
- **Lint files**: Configured through nvim-lint plugin with markdownlint for markdown files
|
||||||
|
- **Check formatting**: GitHub Actions workflow runs stylua formatting checks
|
||||||
|
|
||||||
|
### Development Workflow
|
||||||
|
- **Start Neovim**: `nvim`
|
||||||
|
- **Plugin management**: `:Lazy` (view plugin status, updates, etc.)
|
||||||
|
- **Health check**: `:checkhealth` (verify external dependencies)
|
||||||
|
- **Mason management**: `:Mason` (manage LSP servers, formatters, linters)
|
||||||
|
|
||||||
|
### Key External Dependencies
|
||||||
|
- `git`, `make`, `unzip`, C Compiler (`gcc`)
|
||||||
|
- `ripgrep` (for Telescope search functionality)
|
||||||
|
- Clipboard tool (xclip/xsel/win32yank)
|
||||||
|
- Optional: Nerd Font (set `vim.g.have_nerd_font = true` in init.lua)
|
||||||
|
|
||||||
|
## Architecture
|
||||||
|
|
||||||
|
### File Structure
|
||||||
|
```
|
||||||
|
init.lua # Main configuration file (single-file approach)
|
||||||
|
lua/
|
||||||
|
├── kickstart/ # Kickstart.nvim optional plugins
|
||||||
|
│ ├── health.lua # Health check functionality
|
||||||
|
│ └── plugins/ # Modular plugin configurations
|
||||||
|
│ ├── autopairs.lua
|
||||||
|
│ ├── debug.lua
|
||||||
|
│ ├── gitsigns.lua
|
||||||
|
│ ├── indent_line.lua
|
||||||
|
│ ├── lint.lua
|
||||||
|
│ └── neo-tree.lua
|
||||||
|
└── custom/ # User custom plugins and configurations
|
||||||
|
└── plugins/
|
||||||
|
├── init.lua # Custom plugin loader (sets relativenumber)
|
||||||
|
├── dap.lua # Debug adapter protocol
|
||||||
|
├── hardtime.lua
|
||||||
|
└── codium.lua # Codeium AI completion
|
||||||
|
```
|
||||||
|
|
||||||
|
### Plugin Management
|
||||||
|
- **Plugin manager**: lazy.nvim
|
||||||
|
- **LSP management**: Mason + mason-lspconfig + mason-tool-installer
|
||||||
|
- **Automatic installation**: Tools specified in `ensure_installed` table are auto-installed via Mason
|
||||||
|
|
||||||
|
### Core Plugin Categories
|
||||||
|
1. **LSP & Completion**: nvim-lspconfig, nvim-cmp, mason ecosystem
|
||||||
|
2. **Fuzzy Finding**: Telescope with fzf-native extension
|
||||||
|
3. **Syntax**: nvim-treesitter with auto-update
|
||||||
|
4. **Formatting**: conform.nvim with stylua for Lua
|
||||||
|
5. **Git**: gitsigns for git integration
|
||||||
|
6. **UI**: which-key, neo-tree (file explorer)
|
||||||
|
7. **Debugging**: nvim-dap with UI extensions
|
||||||
|
|
||||||
|
### Configuration Philosophy
|
||||||
|
- Single init.lua file keeps configuration simple and readable
|
||||||
|
- Modular plugins in separate files for organization
|
||||||
|
- Lazy loading for performance
|
||||||
|
- Format-on-save enabled with LSP fallback
|
||||||
|
- Automatic tool installation via Mason
|
||||||
|
|
||||||
|
### Custom Extensions
|
||||||
|
- Relative line numbers enabled by default
|
||||||
|
- Codeium AI completion integration
|
||||||
|
- Additional debugging capabilities with nvim-dap
|
||||||
|
- Hard time plugin for Vim training
|
||||||
|
|
||||||
|
## Development Notes
|
||||||
|
|
||||||
|
- The configuration follows kickstart.nvim principles: readable, documented, and minimal
|
||||||
|
- LSP servers and tools are automatically installed via Mason
|
||||||
|
- Format-on-save is configured with LSP fallback for unsupported file types
|
||||||
|
- Plugin lazy-loading is used extensively for performance
|
||||||
|
- Custom plugins should be added to `lua/custom/plugins/` directory
|
8
init.lua
8
init.lua
|
@ -980,16 +980,12 @@ require('lazy').setup({
|
||||||
-- Here are some example plugins that I've included in the Kickstart repository.
|
-- Here are some example plugins that I've included in the Kickstart repository.
|
||||||
-- Uncomment any of the lines below to enable them (you will need to restart nvim).
|
-- Uncomment any of the lines below to enable them (you will need to restart nvim).
|
||||||
--
|
--
|
||||||
-- require 'kickstart.plugins.debug',
|
require 'kickstart.plugins.debug',
|
||||||
require 'kickstart.plugins.indent_line',
|
require 'kickstart.plugins.indent_line',
|
||||||
require 'kickstart.plugins.lint',
|
require 'kickstart.plugins.lint',
|
||||||
-- require 'kickstart.plugins.indent_line',
|
|
||||||
-- require 'kickstart.plugins.lint',
|
|
||||||
-- require 'kickstart.plugins.autopairs',
|
-- require 'kickstart.plugins.autopairs',
|
||||||
-- require 'kickstart.plugins.neo-tree',
|
-- require 'kickstart.plugins.neo-tree',
|
||||||
-- require 'kickstart.plugins.gitsigns', -- adds gitsigns recommend keymaps
|
-- require 'kickstart.plugins.gitsigns', -- adds gitsigns recommend keymaps
|
||||||
require 'kickstart.plugins.indent_line',
|
|
||||||
require 'kickstart.plugins.lint',
|
|
||||||
|
|
||||||
-- NOTE: The import below can automatically add your own plugins, configuration, etc from `lua/custom/plugins/*.lua`
|
-- NOTE: The import below can automatically add your own plugins, configuration, etc from `lua/custom/plugins/*.lua`
|
||||||
-- This is the easiest way to modularize your config.
|
-- This is the easiest way to modularize your config.
|
||||||
|
@ -997,14 +993,12 @@ require('lazy').setup({
|
||||||
-- Uncomment the following line and add your plugins to `lua/custom/plugins/*.lua` to get going.
|
-- Uncomment the following line and add your plugins to `lua/custom/plugins/*.lua` to get going.
|
||||||
-- For additional information, see `:help lazy.nvim-lazy.nvim-structuring-your-plugins`
|
-- For additional information, see `:help lazy.nvim-lazy.nvim-structuring-your-plugins`
|
||||||
{ import = 'custom.plugins' },
|
{ import = 'custom.plugins' },
|
||||||
-- { import = 'custom.plugins' },
|
|
||||||
--
|
--
|
||||||
-- For additional information with loading, sourcing and examples see `:help lazy.nvim-🔌-plugin-spec`
|
-- For additional information with loading, sourcing and examples see `:help lazy.nvim-🔌-plugin-spec`
|
||||||
-- Or use telescope!
|
-- Or use telescope!
|
||||||
-- In normal mode type `<space>sh` then write `lazy.nvim-plugin`
|
-- In normal mode type `<space>sh` then write `lazy.nvim-plugin`
|
||||||
-- you can continue same window with `<space>sr` which resumes last telescope search
|
-- you can continue same window with `<space>sr` which resumes last telescope search
|
||||||
-- For additional information, see `:help lazy.nvim-lazy.nvim-structuring-your-plugins`
|
-- For additional information, see `:help lazy.nvim-lazy.nvim-structuring-your-plugins`
|
||||||
{ import = 'custom.plugins' },
|
|
||||||
}, {
|
}, {
|
||||||
ui = {
|
ui = {
|
||||||
-- If you are using a Nerd Font: set icons to an empty table which will use the
|
-- If you are using a Nerd Font: set icons to an empty table which will use the
|
||||||
|
|
|
@ -0,0 +1,37 @@
|
||||||
|
{
|
||||||
|
"LuaSnip": { "branch": "master", "commit": "21f74f7ba8c49f95f9d7c8293b147c2901dd2d3a" },
|
||||||
|
"cmp-nvim-lsp": { "branch": "main", "commit": "bd5a7d6db125d4654b50eeae9f5217f24bb22fd3" },
|
||||||
|
"cmp-nvim-lsp-signature-help": { "branch": "main", "commit": "031e6ba70b0ad5eee49fd2120ff7a2e325b17fa7" },
|
||||||
|
"cmp-path": { "branch": "main", "commit": "c642487086dbd9a93160e1679a1327be111cbc25" },
|
||||||
|
"cmp_luasnip": { "branch": "master", "commit": "98d9cb5c2c38532bd9bdb481067b20fea8f32e90" },
|
||||||
|
"codeium.vim": { "branch": "main", "commit": "a8d47ec54fe82df920b2545559f767003e8a7f8d" },
|
||||||
|
"conform.nvim": { "branch": "master", "commit": "b4aab989db276993ea5dcb78872be494ce546521" },
|
||||||
|
"fidget.nvim": { "branch": "main", "commit": "4d5858bd4c471c895060e1b9f3575f1551184dc5" },
|
||||||
|
"gitsigns.nvim": { "branch": "main", "commit": "6e3c66548035e50db7bd8e360a29aec6620c3641" },
|
||||||
|
"hardtime.nvim": { "branch": "main", "commit": "6d7664d5bdfaea44c5f50b29f5239fab7b00c273" },
|
||||||
|
"indent-blankline.nvim": { "branch": "master", "commit": "005b56001b2cb30bfa61b7986bc50657816ba4ba" },
|
||||||
|
"lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" },
|
||||||
|
"lazydev.nvim": { "branch": "main", "commit": "2367a6c0a01eb9edb0464731cc0fb61ed9ab9d2c" },
|
||||||
|
"mason-lspconfig.nvim": { "branch": "main", "commit": "5e085efe67fccb13372d54331d849219662a7e93" },
|
||||||
|
"mason-nvim-dap.nvim": { "branch": "main", "commit": "86389a3dd687cfaa647b6f44731e492970034baa" },
|
||||||
|
"mason-tool-installer.nvim": { "branch": "main", "commit": "517ef5994ef9d6b738322664d5fdd948f0fdeb46" },
|
||||||
|
"mason.nvim": { "branch": "main", "commit": "7dc4facca9702f95353d5a1f87daf23d78e31c2a" },
|
||||||
|
"mini.nvim": { "branch": "main", "commit": "6bf9eccaf2a5395b254bc031f9812cf163ca4187" },
|
||||||
|
"monokai-pro.nvim": { "branch": "master", "commit": "1ac671f6da720cba967d28d25c2f16b8b4e18808" },
|
||||||
|
"nui.nvim": { "branch": "main", "commit": "de740991c12411b663994b2860f1a4fd0937c130" },
|
||||||
|
"nvim-cmp": { "branch": "main", "commit": "b5311ab3ed9c846b585c0c15b7559be131ec4be9" },
|
||||||
|
"nvim-dap": { "branch": "master", "commit": "7523676a4be17644587aa47e4d42f6f7646d4727" },
|
||||||
|
"nvim-dap-go": { "branch": "main", "commit": "b4421153ead5d726603b02743ea40cf26a51ed5f" },
|
||||||
|
"nvim-dap-ui": { "branch": "master", "commit": "cf91d5e2d07c72903d052f5207511bf7ecdb7122" },
|
||||||
|
"nvim-lint": { "branch": "master", "commit": "f126af5345c7472e9a0cdbe1d1a29209be72c4c4" },
|
||||||
|
"nvim-lspconfig": { "branch": "master", "commit": "c8b90ae5cbe21d547b342b05c9266dcb8ca0de8f" },
|
||||||
|
"nvim-nio": { "branch": "master", "commit": "21f5324bfac14e22ba26553caf69ec76ae8a7662" },
|
||||||
|
"nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" },
|
||||||
|
"plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" },
|
||||||
|
"telescope-fzf-native.nvim": { "branch": "main", "commit": "1f08ed60cafc8f6168b72b80be2b2ea149813e55" },
|
||||||
|
"telescope-ui-select.nvim": { "branch": "master", "commit": "6e51d7da30bd139a6950adf2a47fda6df9fa06d2" },
|
||||||
|
"telescope.nvim": { "branch": "0.1.x", "commit": "a0bbec21143c7bc5f8bb02e0005fa0b982edc026" },
|
||||||
|
"todo-comments.nvim": { "branch": "main", "commit": "304a8d204ee787d2544d8bc23cd38d2f929e7cc5" },
|
||||||
|
"vim-sleuth": { "branch": "master", "commit": "be69bff86754b1aa5adcbb527d7fcd1635a84080" },
|
||||||
|
"which-key.nvim": { "branch": "main", "commit": "370ec46f710e058c9c1646273e6b225acf47cbed" }
|
||||||
|
}
|
Loading…
Reference in New Issue