https://github.com/jlmsc/neovim-dotfiles
My neovim dotfiles.
https://github.com/jlmsc/neovim-dotfiles
configuration custom dotfiles lua minimalist neovim neovim-plugins nvim-configuration plugin-manager productivity tweaks
Last synced: about 1 month ago
JSON representation
My neovim dotfiles.
- Host: GitHub
- URL: https://github.com/jlmsc/neovim-dotfiles
- Owner: JLMSC
- Created: 2025-04-28T02:14:53.000Z (about 1 year ago)
- Default Branch: master
- Last Pushed: 2025-05-01T04:41:32.000Z (about 1 year ago)
- Last Synced: 2025-05-01T08:16:26.590Z (about 1 year ago)
- Topics: configuration, custom, dotfiles, lua, minimalist, neovim, neovim-plugins, nvim-configuration, plugin-manager, productivity, tweaks
- Language: Lua
- Homepage:
- Size: 10.7 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Neovim-dotfiles
My Neovim setup, fully tailored for **pure Python development**.

> **NOTE**: This setup defaults to a light colorscheme. Don't judge me.
## Default Leader Key
The default leader key is **Space**.
## Requirements
```
- Neovim v0.11
- pyright
- debugpy
```
## Python: Pyright Setup
By default, `pyright` is configured to look for a virtual environment named `.venv`
inside `~/.config/nvim`, to set it up:
```bash
cd ~/.config/nvim
python -m venv .venv
source .venv/bin/activate
pip install pyright
```
Also, while the virtual environment is active, install `debugpy` to enable `nvim-dap`:
```bash
pip install debugpy
```
## Nvim-DAP: Setup
Sometimes errors appear when installing `nvim-dap` for the first time, if this
is the case:
1. Install `nvim-dap` first.
2. Then install its dependencies.
## SSHFS: Mount and Unmount (for remote <-> local Neovim development)
```bash
cd /mnt
mkdir project
sudo chown $USER:$USER /mnt/project
chmod 777 /mnt/notebook
# To use allow_other you need to uncomment "user_allow_other" in /etc/fuse.conf
sshfs -o uid=1000,gid=1000,allow_other,default_permissions,umask=0022 user@host:/project_path /mnt/project
sudo fusermount -u /mnt/project
rm -rf /mnt/project
```
## Plugins Included
- **auto-save**: Because I'm too lazy to use `:w` all the time.
- **auto-session**: Automatic session management, saves and restores workspaces.
- **barbar**: Visual tabs for buffers.
- **catppuccin**: Best colorscheme in the world.
- **confirm-quit**: Prevents accidentally exiting Neovim without saving.
- **coq_nvim**: Autocompletion.
- **gitsign**: Git integration.
- **indent-blankline**: Visual identation guides.
- **lualine**: Beautiful statusline.
- **nvim-dap**: Debugging.
- **nvim-tree**: File explorer. (Use g? to see the keys)
- **nvim-treesitter-context**: Sticky context.
- **nvim-treesitter**: Better highlighting and parsing.
- **nvim-web-devicons**: Icons.
- **telescope**: Fuzzy finder.
- **todo-comments**: Highlight TODOs.
- **which-key**: Helps me remember my mappings.
## TO-DO
- [ ] Something to automate SSHFS/SSH remote <-> local development.
- [ ] AI completion or something like that.
- [ ] Note taking within Neovim.
- [ ] neovim-tips (liked the idea, may add it later on)