kickstart.nvim/memory-bank/techContext.md

86 lines
2.1 KiB
Markdown

# Neovim Configuration Technical Context
## Technologies Used
1. Core Technologies:
- Neovim - Core editor
- Lua - Configuration language
- Kickstart Framework - Configuration foundation
- lazy.nvim - Plugin manager
2. LSP Technologies:
- mason.nvim - LSP/DAP/Linter manager
- nvim-lspconfig - LSP configuration
- nvim-cmp - Completion engine
- LuaSnip - Snippet engine
3. Development Tools:
- nvim-dap - Debug Adapter Protocol
- nvim-lint - Linting framework
- nvim-treesitter - Syntax highlighting
- nvim-autopairs - Auto-pairing
- telescope.nvim - Fuzzy finding
## Development Setup
1. Required Components:
- Neovim >= 0.8.0
- Git for plugin management
- Lua >= 5.1
- Python 3.11.9 (configured for Neovim)
- (Optional) Nerd Font for icons
2. Language Support Dependencies:
- Language servers (managed by mason.nvim)
- Debug adapters (managed by mason-nvim-dap)
- Linters (managed by mason-nvim-lint)
## Technical Constraints
1. Performance Considerations:
- Lazy loading for improved startup time
- Event-based plugin loading
- Efficient LSP configuration
2. System Requirements:
- Sufficient memory for LSP servers
- Storage space for installed tools
- Compatible terminal emulator
3. Integration Limitations:
- LSP server availability
- Debug adapter compatibility
- Linter tool requirements
## Configuration Architecture
1. Plugin Management:
- Lazy loading based on events/commands
- Clear dependency specifications
- Plugin-specific configurations
2. Language Support:
- Extensive LSP server configurations
- Language-specific formatters
- Custom debugging setups
3. User Interface:
- Terminal-based UI
- Status line integration
- Diagnostic displays
- Debug UI integration
## Tool Configuration
1. Debug Adapters:
- delve for Go
- debugpy for Python
- Custom keymaps (F1-F7, leader keys)
2. Linters:
- dockerfile: hadolint
- json: jsonlint
- markdown: markdownlint
- python: pylint
- terraform: tflint
3. Formatters:
- Managed through conform.nvim
- Language-specific formatting tools
- Format-on-save capabilities