Ephera @ Ephera @lemmy.ml Posts 89Comments 4,134Joined 5 yr. ago
renaming symbols, presenting documentation, formatting files,
Yes, these are supported via the Language Server Protocol (LSP). I've mostly been using it with the Rust LSP server (rust-analyzer
) and well, it typically works, but sometimes you have to tell it to restart the LSP server and stuff (which isn't a huge ordeal, but don't expect everything to always work as well as in a full-fledged IDE).
I believe, for formatting, there's also some non-LSP support.
showing code diagnostics beyond syntax errors (for example code smells or so),
This is supported in principle via LSP, too, but it depends on the specific LSP server, how much info it provides. The Rust compiler gives out relatively much on its own, which is passed on by the LSP server, but you can apparently also configure it to use the linter on save.
have AI integration (explain this, rewrite this, replace this with prompt output, …),
Not out of the box. There's a way to define "External Tools", which basically allows you to run commands and pass arguments to them and then use their output. For example, you should be able to define an External Tool, where you can select some text, then press your keyboard shortcut for that tool, so it sends the selected text to that tool and then it takes the command output and inserts it instead of the selected text.
While this is a powerful concept, I don't know, if you hit limitations at some point.
specific framework integrations (reactjs, django, actix, …),
Nope, except where this might be covered by LSP. But there's no obvious way to just install additional plugins, for example. You get about thirty built-in plugins and that's it.
and stuff like expanding macros in C/C++ and Rust?
Well, expanding macros is also possible with the Rust LSP server. Don't know about other languages.
My first thought was that someone tried a play of words on "Milwaukee". Maybe if it's being sold there, people would get it...?
For me, it's a matter of this joke being old. If someone had sat down and drawn it as a comic anyways, that would make it cool and the thought of it can be humorous in its own way. But since they didn't, it's ultimately just an old joke. It not having been made through manual labor does change my enjoyment of it.
(And much like the others, I don't care that it looks well-drawn. I just care that someone decided, fuck it, I'm a silly goose, I'll spend some time crafting something for no good reason.)
Yeah, my stance for both of those is the same: If the complexity aids you in communicating better, then use it. But if you're using big words where small words would do, then you're doing a disservice to your readers.
Yeah, I'm talking less deep than that. Plenty programming beginners will be reading Python code. And personally, I'm a fulltime software engineer, but just don't do much Python, so while I had it in the back of my mind that Python does truthiness, I would have still thought that var
must be a boolean, because it's being negated. Obviously, a different variable name might've given me more of a clue, but it really doesn't reduce mental complexity when I can't be sure what's actually in a variable.
You always want explicitness when programming. Not everyone reading your code will be deep into Python and relying on falsiness makes it harder to understand.
We've been mucking around with how to pre-configure Raspberry Pis after flashing at $DAYJOB and basically, the way the Raspberry Pi Imager works is that it writes a firstrun.sh
onto the SD card which gets run during first boot.
How does it know to not run that script from the second boot onwards? Well, one of the lines in that script is:
sh
rm -f firstrun.sh
...it deletes itself while it's running. 🙃
It's a Twitch culture thing: https://en.wikipedia.org/wiki/PogChamp
I'm not sure, if that will show up everywhere where the Dolphin icon is used, but you can change it in the menu and, I believe, the panel, by editing the Dolphin entry in the "Menu Editor" application. There's a button to select the icon there:
In that dialog, if you select "All" in the dropdown and then search for "stock_folder", that icon looks pretty close to the old Dolphin icon. Of course, if you've got the old Dolphin icon on disk somewhere, you can also select it with the "Browse..." button.
To perhaps lean more into why complex carbs are useful:
Your body can't really not digest something you've eaten. Once it's in your stomach, it will be broken down and gets put into your blood. With the simple carbs, you get a lot of blood sugar very quickly and your body then has to deal with that. It does so by producing insulin, which tells the rest of your body to take sugar out of the blood. It's put into either a limited, temporary storage (glycogen) or, once that's full, into more permanent storage (body fat).
Eating lots of sugar can also lead to your body producing too much insulin, which will cause too much sugar to be taken out of the blood, so you often have a high and then a crash/low after ingesting sugary foods.
Ideally, you want blood sugar to always stay at a reasonable level, where it can supply your brain and muscles, but where your body does not have to start storing lots of it. And that's where complex carbs are neat, because they don't get broken down all at once, when they're in your stomach/intestines, meaning their sugar enters your blood at a more sustainable rate. By eating them instead of sugar, you're less likely to put on fat and less likely to have a crash.
Ich vermute, dass es einfach nur ein gewichteter, gleitender Durchschnitt ist, aber im Volksmund ist "KI" jedes Computer-System, welches nicht zuverlässig stimmt.
Beim Auszählen sind normalerweise von allen Parteien Leute anwesend.
Mindustry is basically Factorio with more focus on tower defense.
Mystery train
Today, at $DAYJOB, we wanted to assign a temporary IP address to the Ethernet port of a Raspberry Pi, so we could connect an Ethernet cable to it and SSH in. We considered using an IPv6 address for that, because there's a lower chance of someone already using that IP address.
But as far as we could tell (didn't investigate terribly long), NetworkManager in Linux will kill a connection, if it does not get an IPv4 address in time, because it assumes there to be a DHCP server behind an Ethernet port. So, we decided to just use an IPv4 address instead.
I'm sure there's ways to make NetworkManager not do that, but those involve additional steps and complexity. And yeah, it's just kind of ridiculous to me, that we built these workarounds, like DHCP, to make IPv4 work and then the defaults assume those workarounds to be in place, which means the IPv6 experience is worse than the IPv4 experience with its workarounds...
Yeah, I assumed this to be a situation where 90+% of devices are capable, but people don't switch over out of laziness. That's kind of insane to me that it's only at 50%.
openSUSE has the best integration of KDE, but I wouldn't expect to see issues like yours on any distro, really...
🟥 Inhabitants
Yeah, community moderators may also understand the context of the community better. Normal trolls and spammers can be taken care of by anyone, but if there's a derogatory name for a sports team, for example, you need to know the context to understand what's happening.
And in that vein, lots of conflicts can be handled without reaching for the ban hammer. Just having a dedicated person that does the handling is good to have.