Yes, RubyMine will offer completion for this block.
Yes, RubyMine will offer completion for this block.
Interesting. I’ve had this issue before and I’ve concluded that both LSP gems don’t really have a great solution to this problem. It crops up for me in both some code blocks and nested blocks. The solargraph maintainers have provided a solution for user-defined Classes here, but that’s not really applicable in your case.
Being frank, I would open an issue with both LSPs with your code example to get a better idea of what’s actually going on here and what potential solutions you can explore. Sorry I couldn’t offer more insight here
I used solargraph for a really long time and it mostly suited all my needs, but I’ve seen it chew through memory in resource-bound environments (laptops with > 8GB RAM). Solargraph is very mature and is actively developed as of today. I’d say it’s still a very fine choice for anyone needing some LSP features in a text editor.
Personally, I switched to ruby-lsp some time back and haven’t needed anything else but my requirements aren’t the norm. I spend a lot of time in a terminal with tmux, vim/helix (which has ootb support for solargraph
), and a handful of monitoring tools.
Overall, I would say solargraph should fit the bill for most users. Ruby-LSP is great if solargraph isn’t cutting it for you in some way.
RubyMine is an Interactive Development Environment, not a Language Server Protocol. RubyMine doesn’t need to use an LSP since it has all the features an LSP offers (and more) built into to the environment.
Yeah see that’s the sort of conclusive mindset that’s got us here. I don’t mean to insinuate you’re wrong for coming to that conclusion, but “It costs money or effort so let’s use a worse option because it’s convenient” is part of the reason we don’t have a lot of good solutions in this domain.
I’ll also admit the options these days are limited depending on your goals for a project. If you want to reach the most eyes and have the highest draw of potential contributors, having a discord server makes sense. My gripe is when technical discussion or support take place there.
Honestly, I’ve noticed an uptick in the number of discourse forums for tech related things and I’m all for that. Discourse is documented well and maintained openly, it’s indexable by search engines and you can visit and use discourse-based web forums using browsers that aren’t capable of js rendering (think lynx). The last bit is a nice-to-have for me, but just being indexable is huge.
In 10 years, I would hate it if every answer I gave or got from a developer is lost to an endless abyss of messages buried deep in an obscure discord guild that a user would have to sift through only after making an account with and installing specific chat software. I hate there being so many hurdles in front of just getting answers. That’s a good tl;dr as to why discord is on my shitlist for support/development discussion platforms.
right there with you. when a project/repo advertises discord as it’s primary/sole means of communication between and with developers I let out a big sigh and move on to something else.
It’s important to note that
ruby-lsp
is made by Shopify, and is currently used in-house by the company. The resources they can invest intoruby-lsp
both in terms of development man-power and project management is naturally going to be higher than the community developedsolargraph
.That’s strange, but
Enumerable#map
andEnumerable#select
have different uses. One is used to execute a block across a collection of elements, while the other constructs a new collection based on the block passed to a collection and the results of evaluating that block against each element.I use RubyMine on my desktop and it’s a very solid development experience. I’ll say that if your machine can’t quite handle RubyMine, VS Code(ium) is a nice alternative with the solargraph or ruby-lsp plugins. I don’t know if they’ll have the same completion issue as neovim though.