{"id":30116291,"url":"https://github.com/clifinger/nvim-for-dev","last_synced_at":"2026-04-08T11:31:11.005Z","repository":{"id":309145485,"uuid":"1035295165","full_name":"clifinger/nvim-for-dev","owner":"clifinger","description":"Minimal Neovim configuration for dev designed with simplicity in mind.","archived":false,"fork":false,"pushed_at":"2026-03-30T20:40:58.000Z","size":59,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-03-30T22:22:10.570Z","etag":null,"topics":["copilot","copilot-chat","css","dev","golang","html","javascript","json","markdown","neovim","nvchad","nvim","python","rustlang","tailwindcss","toml","typescript","yaml","ziglang"],"latest_commit_sha":null,"homepage":"","language":"Lua","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"unlicense","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/clifinger.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-08-10T04:46:47.000Z","updated_at":"2026-03-30T20:41:01.000Z","dependencies_parsed_at":"2025-08-10T15:15:20.265Z","dependency_job_id":null,"html_url":"https://github.com/clifinger/nvim-for-dev","commit_stats":null,"previous_names":["clifinger/nvim-dotfiles"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/clifinger/nvim-for-dev","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clifinger%2Fnvim-for-dev","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clifinger%2Fnvim-for-dev/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clifinger%2Fnvim-for-dev/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clifinger%2Fnvim-for-dev/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/clifinger","download_url":"https://codeload.github.com/clifinger/nvim-for-dev/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clifinger%2Fnvim-for-dev/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31553981,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-08T10:21:54.569Z","status":"ssl_error","status_checked_at":"2026-04-08T10:21:38.171Z","response_time":54,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["copilot","copilot-chat","css","dev","golang","html","javascript","json","markdown","neovim","nvchad","nvim","python","rustlang","tailwindcss","toml","typescript","yaml","ziglang"],"created_at":"2025-08-10T09:03:29.954Z","updated_at":"2026-04-08T11:31:10.932Z","avatar_url":"https://github.com/clifinger.png","language":"Lua","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Neovim for Dev\n\nThis is a Neovim configuration based on **[NvChad](https://nvchad.com/)**. It is designed with **simplicity** in mind, extending NvChad with a curated set of plugins for an enhanced development experience.\n\nThe main goal is to build upon NvChad's solid foundation while keeping the customization layer minimal. This setup **respects NvChad's convention of separating custom configurations**, ensuring that the structure remains clean and easy to maintain.\n\n---\n\n## Installation\n\nThis configuration is based on NvChad. Before proceeding, ensure you have the necessary prerequisites installed.\n\n### Prerequisites\n\n- **Neovim v0.11+**\n- **A Nerd Font** as your terminal font.\n  - Make sure the nerd font you set doesn't end with `Mono` to prevent small icons.\n  - Example: `JetbrainsMono Nerd Font` and not `JetbrainsMono Nerd Font Mono`.\n- **`ripgrep`** is required for grep searching with Snacks Picker (OPTIONAL).\n  - **Debian/Ubuntu**: `sudo apt-get install ripgrep`\n  - **macOS (Homebrew)**: `brew install ripgrep`\n  - **Arch Linux**: `sudo pacman -S ripgrep`\n  - **Other**: See the [ripgrep installation guide](https://github.com/BurntSushi/ripgrep#installation).\n- **`fd`** is recommended for faster file searching (OPTIONAL).\n  - **Debian/Ubuntu**: `sudo apt-get install fd-find`\n  - **macOS (Homebrew)**: `brew install fd`\n  - **Arch Linux**: `sudo pacman -S fd`\n- **`gcc`**:\n  - Windows users must have `mingw` installed and set on path.\n- **`make`**:\n  - Windows users must have `GnuWin32` installed and set on path.\n- **`mise` or `asdf`**: For managing tool versions (optional, but recommended).\n  - Follow the official instructions at the [mise website](https://mise.jdx.dev/getting-started.html) or the [asdf website](https://asdf-vm.com/guide/getting-started.html) to install it.\n- **`delve`** (for Go debugging): Required for debugging Go applications.\n  - **Installation**: `go install github.com/go-delve/delve/cmd/dlv@latest`\n  - Make sure `$GOPATH/bin` is in your PATH.\n  - See the [Delve installation guide](https://github.com/go-delve/delve/tree/master/Documentation/installation) for more details.\n\nBefore installation, make sure to delete your old Neovim folders:\n\n```bash\n# For Linux/macOS\nrm -rf ~/.config/nvim\nrm -rf ~/.local/share/nvim\n```\n\n### Setup\n\n1. **Clone the repository**:\n\n    ```bash\n    git clone https://github.com/clifinger/nvim-for-dev.git ~/.config/nvim\n    ```\n\n2. **Launch Neovim**:\n\n    Open Neovim. The plugins will be installed automatically on the first run.\n\n    ```bash\n    nvim\n    ```\n\n3. **Install Tools**:\n\n    Run the `:MasonInstallAll` command after `lazy.nvim` finishes downloading plugins to install all the necessary LSPs, formatters, and linters.\n\n---\n\n## Update\n\nTo update the configuration and plugins, use the `Lazy sync` command.\n\n---\n\n## Additional Plugins\n\nThe following plugins have been added to enhance the core functionality:\n\n| Plugin | Description |\n|---|---|\n| **[Copilot](https://github.com/github/copilot.vim)** | Integrates GitHub Copilot to provide AI-powered code completion. |\n| **[CopilotChat](https://github.com/CopilotC-Nvim/CopilotChat.nvim)** | Enables a chat interface to interact with GitHub Copilot directly within Neovim. |\n| **[oil.nvim](https://github.com/stevearc/oil.nvim)** | A file explorer that treats directories like editable buffers for seamless navigation and file operations. |\n| **[spectre.nvim](https://github.com/nvim-pack/nvim-spectre)** | A powerful project-wide search and replace tool. |\n| **[lazygit](https://github.com/folke/snacks.nvim/blob/main/docs/lazygit.md)** | Provides an integration for the [lazygit](https://github.com/jesseduffield/lazygit) terminal UI for a more intuitive Git workflow. |\n| **[noice.nvim](https://github.com/folke/noice.nvim)** | A plugin for better UI for messages, cmdline and popups. |\n| **[telescope-ui-select.nvim](https://github.com/nvim-telescope/telescope-ui-select.nvim)** | A Telescope extension to use Telescope for `vim.ui.select`. |\n| **[nvim-treesitter-context](https://github.com/nvim-treesitter/nvim-treesitter-context)** | Shows the context of the function/class you are in at the top of the editor. |\n| **[indent-blankline.nvim](https://github.com/lukas-reineke/indent-blankline.nvim)** | Adds indentation guides. |\n| **[render-markdown.nvim](https://github.com/MeanderingProgrammer/render-markdown.nvim)** | Renders markdown in a buffer. |\n| **[mini.ai](https://github.com/echasnovski/mini.ai)** | Extends text objects and motions for nodes in the syntax tree, enhancing code manipulation. |\n| **[nvim-dap](https://github.com/mfussenegger/nvim-dap)** | Debug Adapter Protocol client for debugging applications in Neovim. |\n| **[nvim-dap-ui](https://github.com/rcarriga/nvim-dap-ui)** | A UI for nvim-dap which provides a nice debugging experience. |\n| **[nvim-dap-go](https://github.com/leoluz/nvim-dap-go)** | Extension for nvim-dap providing configurations for launching Go debugger (Delve). |\n| **[nvim-dap-virtual-text](https://github.com/theHamsta/nvim-dap-virtual-text)** | Adds virtual text support to nvim-dap for showing variable values inline. |\n\n---\n\n## Language Support\n\nBy default, this configuration adds support (LSP, formatting, linting) for the following languages, aiming to cover the most common development needs:\n\n- **Common Development:** Python\n- **Web Development:** JavaScript / TypeScript, HTML / CSS, TailwindCSS\n- **Systems Development:** Rustlang, Ziglang, Golang\n- **Config \u0026 Data Files:** JSON, YAML, TOML\n- **Documentation:** Markdown\n\n---\n\n## Custom Shortcuts\n\nIn addition to NvChad's defaults, the following shortcuts have been added to facilitate common actions.\n\n### Editing, Windows \u0026 Terminal\n\n| Shortcut | Action |\n| :--- | :--- |\n| `jk` | (Insert Mode) Exit Insert mode to return to Normal mode. |\n| `S-K` | (Normal Mode) See documentation/signature for the current word under the cursor. |\n| `\u003cc-s\u003e` | Save the current file and return to Normal mode. |\n| `\u003cc-q\u003e` | Close the current window, split, buffer or exit Neovim |\n| `\u003cleader\u003e\u003cleader\u003e` | Find files in the project (Telescope). |\n| `\u003cleader\u003ev` | Create a new vertical split. |\n| `\u003cleader\u003eh` | Create a new horizontal split. |\n| `\u003cc-h\u003e`, `\u003cc-j\u003e`, `\u003cc-k\u003e`, `\u003cc-l\u003e` | Navigate between splits (left, down, up, right). |\n| `\u003cM-i\u003e` | Open a terminal in a floating window. |\n| `\u003cM-h\u003e` | Open a terminal in a new horizontal split. |\n| `\u003cM-v\u003e` | Open a terminal in a new vertical split. |\n| `\u003cc-x\u003e` | (Terminal Mode) Switch back to Normal mode. |\n| `\u003cleader\u003efr` | Find and replace text in the current file (spectre). |\n\n### Plugins\n\n| Shortcut | Action |\n| :--- | :--- |\n| `\u003cleader\u003egg` | Launch the Lazygit interface. |\n| `\u003cleader\u003eaa` | Toggle the Copilot Chat panel. |\n| `\u003cleader\u003eaA` | Toggle Copilot completions on/off. |\n| `\u003cc-y\u003e` | Accept a Copilot completion suggestion or a diff |\n| `-` | Toggle the Oil file explorer. |\n| `\u003cleader\u003eaq` | Quick Chat(Copilot). |\n| `\u003cleader\u003eap` | Prompt actions (Copilot). |\n| `\u003cleader\u003eax` | Clear chat (Copilot). |\n| `q` | Close the Copilot Chat panel in Normal Mode. Close Nvim-Tree |\n| `\u003cleader\u003esnl` | Show last message (Noice). |\n| `\u003cleader\u003esnh` | Show history (Noice). |\n| `\u003cleader\u003esna` | Show all messages (Noice). |\n| `\u003cleader\u003esnd` | Dismiss all messages (Noice). |\n| `\u003cleader\u003eut` | Toggle Treesitter Context. |\n| `\u003cleader\u003eug` | Toggle Indentation Guides. |\n\n### Debugging (Go with Delve)\n\n| Shortcut | Action |\n| :--- | :--- |\n| `\u003cleader\u003edb` | Toggle breakpoint at current line. |\n| `\u003cleader\u003edB` | Set a conditional breakpoint. |\n| `\u003cleader\u003edc` | Continue execution / Start debugging. |\n| `\u003cleader\u003edC` | Run to cursor position. |\n| `\u003cleader\u003edi` | Step into function. |\n| `\u003cleader\u003edo` | Step over function. |\n| `\u003cleader\u003edO` | Step out of current function. |\n| `\u003cleader\u003edj` | Move down in the call stack. |\n| `\u003cleader\u003edk` | Move up in the call stack. |\n| `\u003cleader\u003edr` | Toggle REPL (Read-Eval-Print Loop). |\n| `\u003cleader\u003edt` | Terminate debugging session. |\n| `\u003cleader\u003edp` | Pause execution. |\n| `\u003cleader\u003edu` | Toggle DAP UI (debugging interface). |\n| `\u003cleader\u003ede` | Evaluate expression under cursor or selection. |\n| `\u003cleader\u003edgt` | Debug the Go test under cursor. |\n| `\u003cleader\u003edgl` | Debug the last Go test. |\n\n---\n\n## Future Plans\n\n- Adapt the `lazygit` plugin integration to automatically apply the NvChad `base64` theme.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fclifinger%2Fnvim-for-dev","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fclifinger%2Fnvim-for-dev","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fclifinger%2Fnvim-for-dev/lists"}