I always found Geany a real gem among the regular crop of IDEs. (and I did spend quite some time exploring the synaptic app store back in the day)
The level of focus and simplicity is hardly seen among its peers.
I always found Geany a real gem among the regular crop of IDEs. (and I did spend quite some time exploring the synaptic app store back in the day)
The level of focus and simplicity is hardly seen among its peers.
Python has pycharm, Java has intelliJ, but ruby has just RubyMine which doesn't have a community edition and also isn't very good (at least when I tried it like 5-8 years ago).
Geany was nice because while it didn't have autocomplete for anything but just text symbols, it did have enough Project-related features that it matched how I liked to view my files as a directory tree rooted at a project dir. And the syntax highlighting was good and so on.
I ended up switching to vscode (well, vscodium, anyway) after I used vscode at work. Maybe I should check up on Geany again as of this big 2.0 release. I'd like to use an actually-free editor, though I settle for vscodium-style "free" when there's a big delta in productivity and features.
I have a great deal of sympathy for RubyMine (and shudder at working for the CLion team, whew) because Ruby isn't doing the IDE author any favors. Given:
https://gitlab.com/gitlab-org/gitlab/-/blob/v16.5.0-ee/lib/g...
- what types are client_email and private_key? they are whatever type they're called with lolol
- the symbol Google::Auth::ServiceAccountCredentials just materializes; was it required in some containing context and thus is in scope by _this_ required file? are those symbols visible in every context from one of the various Gemfile lines? a hard-core rubyist knows
- where did the symbol StringIO come from? well, from require 'stringio' obviously, which is on .. err, which line exactly? I guess that lends weight to the 'this file is obviously running as a child context of some other file' theory
I think half of it is the culture of Rubyists and half of it is "productivity hacks" of "if it runs, then it must be correct"
I also recognize that I'm very clearly a static typing snob, and firmly in the camp of "please import symbols you use," but that doesn't stop me from having a great deal of sympathy for anyone who has to implement an IDE for such a monkey-patch friendly language
Honestly I'm right with you. I was complaining in another ruby thread [0] the other day about how opaque ruby is in terms of context around what's actually happening and where things come from in a given block of code.
I'm about a year into working at a Rails shop and it's been a wild ride coming from a background of Swift/C++/Python. There's some cool syntax niceties in Ruby around writing functional blocks which I really like, but beyond that I find myself just endlessly frustrated with it as a tool. A lot of the senior folk at my org swear by ruby and know enough of Rails to have a good intuition about what's going on and how the system is organized, but for someone new to the whole enchilada it's so hard to find mental purchase in any given chunk of code.
> "if it runs, then it must be correct"
this has described the root of so many of the bugs I've had to chase down, holy crap.
Was it of sufficient speed for your needs? It certainly takes longer to open than a couple of milliseconds. But I'm not aware of any GUI application that does.
Not that I would actually notice anyhow, given display latency of ~16ms at 60 Hz anyways :D
However I have seen mystery hangs in general, which can happen to almost anything.
I had a machine one time where a self-built version of midnight commander would always hang for several seconds on startup. Never saw that before or since. You can not say "mc takes something like 5-10 seconds to start up" even though it did on that machine that time.
I don't remember the details, but it turned out to be some combination of environment/context ie a particular terminal on a particular client sshing to a particular server where mc itself was, env variables, and/or setting in a mc config file. Might have been something to do with locale or TERM, or.. . I really have no idea anymore. But the hang was fixed by hunting down the config problem, and I've never seen it before that, nor since.
Following Geany updates fixed the issue, as far as I remember.
I suppose it could load the interface first, then load the files, then parse and highlight them after the window is up, but don't feel like it would make a lot of difference until its done.
You may find projects useful. Can open the dozen files for one project, then close it, then open the next group from another project. Instead of every file you potentially might want to work on.