urep-scala
nvim-metals
urep-scala | nvim-metals | |
---|---|---|
1 | 12 | |
6 | 431 | |
- | 2.3% | |
10.0 | 7.6 | |
over 3 years ago | 5 days ago | |
Starlark | Lua | |
BSD 3-clause "New" or "Revised" License | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
urep-scala
-
What's your preferred setup/process (IDE, settings, etc) for working in Scala?
For build tooling, we've found that Bazel is the Scala build tool that sucks the least, at least for us. sbt is the standard and is easier to work with at a smaller scale, but it's slow and with what we were doing, we couldn't have it sanely do a full monorepo build. Dev life got significantly less shitty about a month after moving to Bazel. We open sourced our minimal Bazel repo setup if you want to try it out. https://github.com/radixbio/urep-scala The most significant limitation we've had with Bazel is that it really only works for interesting Scala projects as we have it configured on Linux and Mac (not Windows). We use Linux for development so this is fine for us and we can get the .exe installers and deploy jars out that we need to support Windows platforms.
nvim-metals
-
Seeking input from Metals users about build importing.
By multiple subprojects are they independent builds? Or just one big build with nested build files? I actually have a discussion related to this in here. Please to jump in there if that's the same issue you're having and comment on your situation. It'll be helpful to determine how to address it.
-
Neovim & Scala. Metals LSP not found when using :LspInstall
Use nvim-metals
-
elixir.nvim
elixir.nvim is a langauge plugin for Elixir. It is similar to nvim-metals in that is manages ElixirLS (Elixir's language server) and provides a complete experience over nvim-lspconfig.
-
Use Vim as a Scala IDE
Install https://github.com/scalameta/nvim-metals
-
debugpy.nvim: Command and API frontend to nvim-dap and Debugpy (debugging Python)
But I haven't yet set up anything properly other than Debugpy. nvim-dap is very barebones, so I feel that the best way is to have an extra configuration plugin on top. Debugpy.nvim is a very specific frontend plugin, but there are also more general plugins like nvim-metals and vim-ultest which also offer integration with nvim-dap.
-
What's your preferred setup/process (IDE, settings, etc) for working in Scala?
Yeah it's pretty good already and getting newer features everyday. I didn't want to hook up the vim I use everyday to a heavy editor so installed neovim alongside vim on my system and use this https://github.com/scalameta/nvim-metals (which I believe is the metals official way) and it's super straight forward to use.
-
How do you deal with poorly documented plugins?
Every software project is WIP to some extent, but that doesn't stop Neovim itself from having really high standards in documentation. A lot of Neovim plugins also have really high standards, such as nvim-metals.
-
sidebar.nvim - A generic and modular lua sidebar
nvim-metals (really thorough manual)
- Tree Sitter support
- Scala - what is best development setup?
What are some alternatives?
scaluzzi - Additional rules for Scalafix. The part of scalazzi rules.
completion-nvim - A async completion framework aims to provide completion to neovim's built in LSP written in Lua
metals-sublime - Sublime Text package for Metals, a language server for Scala
nvim-lua-guide - A guide to using Lua in Neovim
sbt - sbt, the interactive build tool
neovim - Vim-fork focused on extensibility and usability
tree-sitter-scala - Scala grammar for tree-sitter
nvim-cmp - A completion plugin for neovim coded in Lua.
nvim-dap - Debug Adapter Protocol client implementation for Neovim
sidebar.nvim - A generic and modular lua sidebar for Neovim
Metals - Scala language server with rich IDE features 🚀
nvim-treesitter - Nvim Treesitter configurations and abstraction layer