Neovim configuration
Why I use it
Currently, I mostly use it for LaTeX. The setup compiles on save through Tectonic and previews in Zathura. telescope handles keyword and file search across the project.
I generally output research results into a numbers.tex file from Python and \input{} it into the paper, so the statistics stay synchronized.
The noise-free configuration helps me focus on my research rather than on the editor.
Programming language
There are plugins for Python already configured: pylsp for LSP, black for formatting, flake8 for linting, and nvim-dap with debugpy for debugging. Treesitter handles syntax highlighting and indentation for Lua, Python, JavaScript, HTML, and CSS out of the box, with auto-install on for anything else.
If you want a language that isn’t pre-configured, you can add the LSP server through Mason (:Mason, pick the server, install).
What it looks like
A few plugins do most of the visual work:
-
lualinewith a custom theme. -
noicereroutes the cmdline, messages, and LSP popups into floating windows, so the bottom of the screen stays clean. -
barbarfor the buffer tabs across the top.
Also few others useful plugins:
-
gitsignsfor inline diff markers and hunk staging -
troublefor a clean diagnostics panel -
aerialfor a symbol outline on the right -
rose-pine(moon variant) for colors
Check the repository for the full plugin list, install instructions, and keymap reference.