An open API service indexing awesome lists of open source software.

https://github.com/aldoborrero/avim.nix

My nvim configuration with Nix!
https://github.com/aldoborrero/avim.nix

astronvim flakes lazyvim neovim nix nixvim nixvim-config nvim vim vim-plugins

Last synced: about 2 months ago
JSON representation

My nvim configuration with Nix!

Awesome Lists containing this project

README

          

# avim.nix

My custom Neovim configuration built with [Nixvim](https://github.com/nix-community/nixvim)!

## Why?

Having my Neovim configuration ready as a `flake` allows me to run `nvim` already configured to my taste wherever I want with full reproducibility.

**Note**: This is a personal configuration tailored to my specific needs. Feel free to fork this repository and customize on your own!

## Features

- **Nix Integration**: Fully reproducible Neovim setup using [Nixvim](https://github.com/nix-community/nixvim)
- **Blueprint Structure**: Uses the [Blueprint](https://github.com/numtide/blueprint) framework for organizing Nix code
- **Automatic Updates**: Weekly scheduled updates for dependencies

## Setup

### [Optional] Add flake registry shortcut

You can add the following registry shortcut to type less characters:

```console
$ nix registry add avim github:aldoborrero/astronvim.nix
```

## Running avim

```console
$ nix run avim#avim
```

## Keybindings

> **Note**: Leader key is ``, Local leader is `,`

### Navigation

| Key | Action | Description |
|-----|--------|-------------|
| `` | Navigate left | Move to left window |
| `` | Navigate down | Move to window below |
| `` | Navigate up | Move to window above |
| `` | Navigate right | Move to right window |
| `]b` | Next buffer | Switch to next buffer |
| `[b` | Previous buffer | Switch to previous buffer |
| `s` | Flash jump | Jump to location with flash.nvim |
| `S` | Flash treesitter | Jump with treesitter nodes |

### File Management

| Key | Action | Description |
|-----|--------|-------------|
| `e` | Toggle file explorer | Toggle Neo-tree |
| `o` | Focus explorer | Toggle Neo-tree focus |
| `` | Find files | Quick file picker |
| `ff` | Find files | Find files in project |
| `fF` | Find all files | Find all files (including hidden) |
| `fg` | Find git files | Find git tracked files |
| `fw` | Find words | Search for words in project |
| `fW` | Find words (all) | Search in all files |
| `fb` | Find buffers | Search open buffers |
| `fo` | Find old files | Recent files |
| `fO` | Find old files (cwd) | Recent files in current directory |
| `fa` | Find config files | Search config files |
| `fh` | Find help | Search help tags |
| `fc` | Find word under cursor | Search current word |
| `fC` | Find commands | Search available commands |
| `fk` | Find keymaps | Search keymaps |
| `fm` | Find man pages | Search manual pages |
| `f'` | Find marks | Search marks |
| `fr` | Find registers | Search registers |
| `ft` | Find themes | Search colorschemes |
| `fs` | Find smart | Smart buffer/recent/files |
| `fp` | Find projects | Search projects |
| `fn` | Find notifications | Search notifications |
| `fl` | Find lines | Search lines in buffer |
| `fu` | Find undo history | Browse undo tree |
| `f` | Resume search | Resume previous search |

### Git Operations

| Key | Action | Description |
|-----|--------|-------------|
| `gb` | Git branches | Browse branches |
| `gc` | Git commits | Repository commit history |
| `gC` | Git commits (file) | Current file commit history |
| `gt` | Git status | Show git status |
| `gT` | Git stash | Browse stash |
| `go` | Git browse | Open in browser |
| `gd` | Open Diffview | Open diff viewer |
| `gh` | File history | View file history |
| `gH` | Current file history | View current file history |
| `gq` | Close Diffview | Close diff viewer |
| `gg` | LazyGit | Open LazyGit |

### LSP (Language Server)

| Key | Action | Description |
|-----|--------|-------------|
| `gd` | Go to definition | Jump to definition |
| `gD` | Go to declaration | Jump to declaration |
| `gi` | Go to implementation | Jump to implementation |
| `gr` | Show references | Show references |
| `K` | Hover documentation | Show hover info |
| `la` | Code action | Show code actions |
| `lr` | Rename symbol | Rename symbol |
| `lf` | Format buffer | Format code |
| `lD` | Search diagnostics | Search diagnostics |
| `ls` | Search symbols | Search LSP symbols |

### Search and Replace

| Key | Action | Description |
|-----|--------|-------------|
| `sr` | Search and replace | Open Spectre |
| `sw` | Search current word | Search and replace current word |
| `sp` | Search in file | Search and replace in current file |

### UI/Utils

| Key | Action | Description |
|-----|--------|-------------|
| `u\|` | Toggle indent guides | Toggle indent guides |
| `uD` | Dismiss notifications | Clear all notifications |
| `uZ` | Toggle zen mode | Toggle zen mode |
| `uu` | Toggle undotree | Toggle undo tree |
| `H` | Home screen | Toggle dashboard |

### Terminal and AI

| Key | Action | Description |
|-----|--------|-------------|
| `` | Open Claude Code | Open Claude Code AI assistant |
| `` | Continue conversation | Continue Claude Code conversation |
| `` | Open LazyGit | Open LazyGit in terminal |
| `` | Toggle terminal | Toggle floating terminal |
| `` | Exit terminal mode | Exit to normal mode (in terminal) |

### Window Management

| Key | Action | Description |
|-----|--------|-------------|
| `\|` | Vertical split | Create vertical split |
| `\` | Horizontal split | Create horizontal split |

### Harpoon

| Key | Action | Description |
|-----|--------|-------------|
| `ha` | Harpoon add file | Add file to harpoon |
| `hh` | Harpoon menu | Toggle harpoon menu |
| `h1-9` | Jump to file 1-9 | Jump to harpoon file |
| `hn` | Next file | Jump to next harpoon file |
| `hp` | Previous file | Jump to previous harpoon file |
| `hd` | Remove file | Remove file from harpoon |
| `hc` | Clear marks | Clear all harpoon marks |

### Todo Comments

| Key | Action | Description |
|-----|--------|-------------|
| `]t` | Next todo | Jump to next todo comment |
| `[t` | Previous todo | Jump to previous todo comment |
| `st` | Search todos | Search todo comments |

### Editing

| Key | Action | Description |
|-----|--------|-------------|
| `` | Save file | Save current file |
| `` | Clear highlights | Clear search highlights |
| `/` | Toggle comment | Toggle comment (line/selection) |

## Acknowledgements

Thanks to mighty @Mic92 to whom I took inspiration (and stole majority of his code) from his [dotfiles](https://github.com/mic92/dotfiles) repository!

## License

See [License](License) for more information.