Improved flow
This commit is contained in:
98
docs/README.md
Normal file
98
docs/README.md
Normal file
@@ -0,0 +1,98 @@
|
||||
# Neovim Workflow Documentation
|
||||
|
||||
This documentation covers workflows and keybindings for this LazyVim-based Neovim configuration, optimized for **TypeScript**, **Python**, and **Go** development.
|
||||
|
||||
## Quick Start
|
||||
|
||||
1. **Leader key**: `<Space>`
|
||||
2. **Find files**: `<leader>ff` or `<leader><space>`
|
||||
3. **Find text**: `<leader>sg` (grep) or `<leader>/` (in buffer)
|
||||
4. **File explorer**: `<leader>e`
|
||||
5. **Which-key help**: Press `<leader>` and wait
|
||||
|
||||
## Cheatsheets (Quick Reference)
|
||||
|
||||
| Cheatsheet | Description |
|
||||
|------------|-------------|
|
||||
| [Keybindings](cheatsheets/keybindings.md) | Complete keybinding reference by category |
|
||||
| [Git Workflow](cheatsheets/git-workflow.md) | Git operations, diffs, PRs, and blame |
|
||||
| [Testing](cheatsheets/testing.md) | Running and debugging tests |
|
||||
| [Database](cheatsheets/database.md) | Database connections and queries |
|
||||
|
||||
## Detailed Guides
|
||||
|
||||
| Guide | Description |
|
||||
|-------|-------------|
|
||||
| [TypeScript Workflow](guides/typescript-workflow.md) | Complete TypeScript/JavaScript development guide |
|
||||
| [Python Workflow](guides/python-workflow.md) | Python development with venv, testing, debugging |
|
||||
| [Go Workflow](guides/go-workflow.md) | Go development guide |
|
||||
| [Git Workflow](guides/git-workflow.md) | Detailed git operations and PR review workflow |
|
||||
| [Debugging](guides/debugging.md) | DAP debugging for all languages |
|
||||
| [Snippets](guides/snippets.md) | Creating custom code snippets |
|
||||
| [AI Assistant](guides/ai-assistant.md) | Using opencode.nvim for AI-assisted coding |
|
||||
|
||||
## Key Binding Prefixes
|
||||
|
||||
| Prefix | Purpose | Examples |
|
||||
|--------|---------|----------|
|
||||
| `<leader>f` | **Find/Files** | Find files, recent files |
|
||||
| `<leader>s` | **Search** | Search text, symbols, help |
|
||||
| `<leader>g` | **Git** | Git status, diffs, PRs |
|
||||
| `<leader>c` | **Code** | LSP actions, format, rename |
|
||||
| `<leader>t` | **Test** | Run tests, debug tests |
|
||||
| `<leader>d` | **Debug** | DAP debugging |
|
||||
| `<leader>D` | **Database** | DBUI, connections |
|
||||
| `<leader>R` | **REST** | HTTP requests |
|
||||
| `<leader>k` | **AI (opencode)** | AI assistance |
|
||||
| `<leader>h` | **Harpoon** | Quick file navigation |
|
||||
| `<leader>q` | **Session** | Save/restore sessions |
|
||||
| `<leader>1-9` | **Harpoon files** | Jump to marked files |
|
||||
|
||||
## Configuration Files
|
||||
|
||||
| File | Purpose |
|
||||
|------|---------|
|
||||
| `lua/config/options.lua` | Neovim settings |
|
||||
| `lua/config/keymaps.lua` | Global keymaps |
|
||||
| `lua/plugins/*.lua` | Plugin configurations |
|
||||
| `snippets/*.lua` | Custom code snippets |
|
||||
|
||||
## Plugin Overview
|
||||
|
||||
### Core Plugins
|
||||
- **LazyVim**: Base distribution with sensible defaults
|
||||
- **Telescope**: Fuzzy finder for files, text, symbols
|
||||
- **Treesitter**: Syntax highlighting and text objects
|
||||
- **LSP**: Language server protocol for IDE features
|
||||
|
||||
### Language Support
|
||||
- **TypeScript**: Full LSP, ESLint, Vitest integration
|
||||
- **Python**: LSP, venv-selector, pytest, DAP
|
||||
- **Go**: gopls, golangci-lint, go test, DAP
|
||||
|
||||
### Productivity
|
||||
- **Harpoon**: Quick file switching (marks up to 9 files)
|
||||
- **Flash.nvim**: Fast navigation with search labels
|
||||
- **Persistence**: Session management
|
||||
- **Trouble**: Diagnostics list
|
||||
|
||||
### Git
|
||||
- **Diffview**: Side-by-side diffs and file history
|
||||
- **Git-blame**: Inline blame annotations
|
||||
- **Octo**: GitHub PRs and issues in Neovim
|
||||
- **Gitsigns**: Git gutter signs
|
||||
|
||||
### Other
|
||||
- **Neotest**: Test runner for all languages
|
||||
- **DAP**: Debug adapter protocol
|
||||
- **Dadbod**: Database client
|
||||
- **Kulala**: REST client
|
||||
- **Opencode**: AI assistant
|
||||
|
||||
## Getting Help
|
||||
|
||||
- Press `<leader>` and wait for which-key popup
|
||||
- `:Telescope keymaps` - Search all keybindings
|
||||
- `:Telescope help_tags` - Search help documentation
|
||||
- `:checkhealth` - Check for configuration issues
|
||||
- `:Lazy` - Manage plugins
|
||||
Reference in New Issue
Block a user