My Neovim setup, fully tailored for pure Python development.
NOTE: This setup defaults to a light colorscheme. Don't judge me.
The default leader key is Space.
- Neovim v0.11
- pyright
- debugpy
By default, pyright is configured to look for a virtual environment named .venv
inside ~/.config/nvim, to set it up:
cd ~/.config/nvim
python -m venv .venv
source .venv/bin/activate
pip install pyrightAlso, while the virtual environment is active, install debugpy to enable nvim-dap:
pip install debugpySometimes errors appear when installing nvim-dap for the first time, if this
is the case:
- Install
nvim-dapfirst. - Then install its dependencies.
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- auto-save: Because I'm too lazy to use
:wall 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.
- 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)
