previously on neovim (ONGOING)
this is some more recent reflections on using neovim as a code editor.
# what I absolutely can’t live without (so far)
neo-tree
neo-tree offers three things that makes my life much easier: 1) most obviously
the filesystem tree, 2) a git status tree that shows modified, new and deleted
files in the current git workspace and 3) a buffer list that shows currently
opened files.
GitSigns
I use neo-tree’s git status view more often than the gitsigns; but when I need
to do code review and prepare git commits, GitSigns is my best friend: I can
interactively go through all the changes and stage them by hunks. IMO git add
and git add -i
is way too primitive.
live grep
the reason I’m using less LSPs is live grep : this is very powerful, and it’s
much much much more performant that LSPs when you want to find something. Well
there are {limits} but in general grep
does the
job very well. One extreme example is: when browsing linux kernel source tree,
lsp simply won’t work!
The plugin I’m using here is telescope
: I know telescope is much more than
giving me a fuzzy finder: it handles lsps, buffer managements, helper searcher,
and many others. The only two features I use from telescope though, is live grep
and file finder.
comment and formatting
it’s a pain to manually toggle code comment; it’s a pain to manually format code,
period.
# why no auto-completion?
it’s hard to explain: okay let’s put it this way, I still love auto-completion
when I’m writing a language that I’m not comfortable with and requires a lot of
brain memory (I’m talking about latex
). But for programming
# why I can live without language servers?
my list of plugins:
life quality plugins:
- Comment.nvim : toggle code comment
- dagon : my “monochrome” colorscheme
- formatter.nvim : code formatting (wrapper for external tools)
- gitsigns.nvim : git integration
- lazy.nvim : plugin management
- neo-tree.nvim : tree UI for filesystem, buffers, and git status
- nvim-autopairs : inserting a pair
- telescope.nvim : UI for fuzzy finder and live grep
less essential plugins
- tabular : auto tab indents
- tagbar : UI for ctags
- vim-better-whitespace : highlight trailing spaces
implicits (deps):
- nui.nvim : required by neo-tree
- plenary.nvim : required by neo-tree
looks necessary but actually no:
- nvim-cmp : autocompletion
- lspconfig : the LSPs…
- markdown* : editing and preview related plugins
[+] click to leave a comment [+]
>> SEND COMMENT <<