this post was submitted on 24 Sep 2024
23 points (96.0% liked)

Neovim

2183 readers
2 users here now

founded 1 year ago
MODERATORS
 

Hello, I’m a developer wanting to change from VSCode to Neovim. I’ve been using a Neovim extension for VSCode, so I know how to drive it to some extent.

I work with:

  • Rust
  • Typescript
  • React

I’m happy to use default NVim mostly with:

  • ctags
  • ins-completion
  • netrwtreelisting

I want to keep things really simple and use defaults when reasonable.

I basically just want to know how to set up Rust analyser and (for ts) prettier/eslint.

Questions:

  • Should I use a nvim conf file or lua? I’m happy to learn Lua if it’s recommended.
  • If I need packages for the above functionality, which package manager is best (excuse the imprecise terminology)?
  • Any additional recommendations?

Thank you.

top 6 comments
sorted by: hot top controversial new old
[–] asciimage@sh.itjust.works 12 points 2 months ago (1 children)
  • Yes, definitely use lua. You don't need to learn much, you can learn as you go
  • I'd recommend lazy.nvim as a plugin manager

In fact, just start with kickstart.nvim. It is a starter config which is well documented and all in one file. It is a great starting point and you can then build from there. I'd recommend learning how to modularize and start moving stuff for separate concerns into separate files.

[–] lkdm@programming.dev 1 points 2 months ago (1 children)

Thank you, I’ll look into kickstart!

Here’s where I’m at. After a bit of fiddling, I managed to get Rustacean LSP working.

I also used ChatGPT to translate my existing .vim config to lua.

[–] asciimage@sh.itjust.works 5 points 2 months ago* (last edited 2 months ago)

Looking good! You should switch to lazy from packer though. It's simple:

  • You just need to add a lazy.lua file (just copy the one from the "Structured setup" section in lazy installation documentation)
  • Then instead of a plugins.lua, you can create a plugins/ directory instead where you can have separate .lua files in it and lazy will automatically detect them.
  • Just follow the lazy Plugin Spec documentation and move over your packer plugins to lazy
[–] paw 5 points 2 months ago (1 children)

This video playlist from typecraft helped me a lot to set up a minimal neovim config: https://m.youtube.com/playlist?list=PLsz00TDipIffreIaUNk64KxTIkQaGguqn

I once in a while, improve, add or remove plugins and settings, whenever I find it necessary.

I use this rust plugin: https://github.com/mrcjkb/rustaceanvim However I haven't used Rust very much in my neovom set up as of now.

Another good starting point for a neovim config is here: https://github.com/nvim-lua/kickstart.nvim

Have fun.

[–] lkdm@programming.dev 3 points 2 months ago

Cheers, I managed to get Rustacean set up. Will look at those video, thank you

[–] Prunebutt@slrpnk.net 1 points 2 months ago

If you like a great, extendable batteries included solution, try out Astronvim.

I found it way easier to get into configuring my setup with a workable config that I could tinker with, rather than learning from scratch.