[–] 2 points 2 months ago (1 child)

Is there some change you're particularly concerned about wrt to setup complexity? Lots of the changes might simplify setup because they build in functionality that previously required plugins. The LSP improvements mainly apply at the interface between LSP server and editor, not stuff that users would set up themselves. A bunch more changes are either behind-the-scenes performance improvements, or are directed at plugin authors. There are new features added. But I don't see anything that makes set up more complicated.

  • source
  • parent
  • context
  • [–] 3 points 2 months ago* (last edited 2 months ago) (1 child)

    There are lots of substantial improvements coming! I'll point to some points that appeal to me personally that aren't big enough to make headline news given how much else is coming.

    Neovim also adds:

    vim.treesitter.select()

    for starting or adjusting visual selections based on syntax-tree nodes.

    AST-aware editor interactions are something I've really been missing since leap-ast.nvim was archived. Maybe there's a good plugin for quick selections or text objects based on AST structure that I haven't gotten around to trying. But I'm looking forward to built-in building blocks!

    Edit: Wow I'm dense - leap-ast was archived because Treesitter integration is now built into leap.nvim.

    Neovim now exposes a logging interface:

    vim.log

    Sounds like a quality-of-life change that will be real nice to have when you want it! I hope this will replace my uses of print(vim.inspect(...))

    There is now:

    :bcd

    for setting a buffer-local current directory.

    I've been surprised in the past that this wasn't possible before.

    And finally, the :restart command to apply your updated editor config while preserving your open buffers and windows!

  • source
  • [–] 0 points 2 months ago (4 children)

    At this point we need a bootcamp to setup our editors first before we have the bootcamp/course for the actual language/work we want to accomplish.

    Well, congratulations on neovim graduating the university of complexity! Emacs was the chief guest.

  • source
  • [–] 2 points 3 months ago

    Aah, cheers for the clarification. I skimmed the github link in the original post, but it mostly seemed like people were happy, and I'd not heard anything about treesitter so it kind of came out of left-field. :)

    People acting entitled to the time of volunteers is bananas.

  • source
  • parent
  • context
  • [–] [S] 6 points 3 months ago (1 child)

    The project was archived back in April. I assume there were multiple incidents along the way, but the final straw was the discussion in this thread:

    https://github.com/nvim-treesitter/nvim-treesitter/discussions/8627#discussioncomment-16440673

    Basically it is just people demanding things from open-source developers and behaving like shit while doing so. These guys don't have any respect for the work other people do for free in their spare time.

    I use a lot of open-source software, but I usually don't interact with the developers. Whenever something like this happens I feel like we as a community should show our love and appreciation for these projects a lot more, so that devs don't burnout due to this loud minority full of negativity and sometimes just plain harassment.

  • source
  • parent
  • context
  • [–] 2 points 4 months ago* (last edited 4 months ago)

    because ‘j’ isn’t a jump motion (:h jump-motions). Even with a count before it, while it acts like a ‘jump’, it’s only a modifier to multiply ‘j’ [count] times

  • source
  • [–] 3 points 5 months ago (2 children)

    For rust_analyzer I use nvim-lspconfig, you can also configure it by hand, but it's less work with lspconfig.

    https://github.com/neovim/nvim-lspconfig/blob/master/doc/configs.md#rust_analyzer

    And I would install the treesitter-grammar for rust. https://github.com/nvim-treesitter/nvim-treesitter

    The Plugin was archived, but it still works. You can also install the treesitteer grammar with your package manager and just activate it in nvim, if you don't want to rely on an archived plugin.

    That's mostly it, for what you asked for.

    I also use blink for autocompletion, but I think it's a good idea to start smaller and see what you need later. https://github.com/Saghen/blink.cmp

  • source
  • [–] 1 point 6 months ago

    Neovim plugin authors forget one simple rule - plugins are supposed to plug in. Instead they write libraries.

    I’ve been forking plugins I’m unwilling to get rid of and rewriting them to not require setup. It eliminates a lot of config complexity.

    What worries me is that the same people that contribute to this mess are getting more and more involved with neovim core development. require.enable({ enabled = true}) is a recognizable [anti]pattern.

  • source
  • parent
  • context
  • view more: ‹ prev next ›