Rune 1.3: adds TypeScript, a Helix editor, Kitty graphics and OSC-7501

Posted by ernestrc 1 day ago

Counter63Comment26OpenOriginal

Comments

Comment by hnlmorg 1 day ago

These days it feels like everyone and their son are building a new IDE (and I say this as someone who’s done the same haha).

Interestingly, they’re using graphics libraries like OpenGL/Vulkan in Go. Like I originally was. But after a year of edge cases, I gave up and switched to Wails (using OS-native webviews). And I found that a good balance between avoiding the slowness and bloat of Electron, while not having to reimplement font atlases, Unicode rendering, and a million other things people take for granted these days.

Comment by whatever1 1 day ago

The perfect work environment is something very personal.

I am not happy with your decisions for the ide you sold me. I never was, I just coped.

The LLMs just enable everyone to build exactly what they need. And if that thing has an audience of one, so be it.

Comment by hnlmorg 1 day ago

Tbh I was building stuff for an audience of one long before LLMs. If people liked what I built then I always considered that a bonus.

That’s why I’ve been running my own $SHELL for ~10 years. Even had my own Linux WM in development for a brief period.

But you’re right that it’s never been easier.

Comment by ernestrc 1 day ago

I use ebiten which through CGO uses glfw, so there’s a few layers of abstraction between Go and OpenGL. It’s true that I had to implement unicode rendering and a bunch of other things for either completeness or performance, but Ebiten was a solid foundation to build from.

Comment by hnlmorg 1 day ago

I was using SDL.

It was a nice API to target and I got some really good performance vs memory and CPU usage out of it. But I also don’t regret moving off it.

Comment by bicepjai 23 hours ago

Makes sense for programming nerds. Knowing a programming language doesn't make us unique anymore, but building our own IDE can get us back some nerd points

Comment by hnlmorg 14 hours ago

Building an IDE isn’t exactly a hard challenge though. Real nerds design their own programming languages.

Comment by gertop 1 day ago

Using the system WebView has pretty much the same bloat as electron (in terms of cpu and ram) unless I'm missing something? Sure it's nice that it's not 500MB on disk but day to day it doesn't affect me as much as the fact that you're still running in a browser.

Comment by hnlmorg 1 day ago

It’s a fair assumption that it would, but that wasn’t my experience in practice.

Browsers are surprisingly efficient renderers. So I can use a lean AOT language for most of the heavy lifting and then just use the webview for the final painting to screen.

The final runtime isn’t actually any more CPU nor memory hungry than when I was having to store images and font atlases in GPU memory and writing to the frame buffer directly via SDL. And as a benefit of the switch, I get a richer library of widgets to draw, far fewer rendering glitches due to edge cases in fonts, graphics drivers, and a plethora of other hard-to-debug problems.

The original plan was to support both WebKit and SDL frontends (like how libghostty works) but the webview was such an accelerant on productivity and with so few drawbacks that i quickly dropped SDL support and went all in with webviews.

Comment by speed_spread 1 day ago

There exist a space between these approaches (webview, direct graphics) and TUI which nobody dares to explore anymore and I'm not sure why: native GUI apps and widgets. For example, Lazarus (FreePascal IDE / Delphi clone) gets it right. You get performance, low resource usage, portability and a good UI that's quick to use, respects platform standards and is highly discoverable.

Comment by hnlmorg 19 hours ago

There’s lots of reasons why that isn’t more common. Not good reasons. But reasons nonetheless.

1. It’s not cross platform.

2. Non-native but mature cross platform toolkits (eg Qt) have spotty support in many of the more recent and popular languages like Rust and Go.

3. The proliferation of the web has lead to application design becoming part of the branding. Which often works against using the sterile native widgets

4. Even before that happened, many companies still reimplemented their own spin on native widgets. Including the OS vendors themselves (Apple and Microsoft are notoriously bad at filling their own style guidelines).

5. A surprising amount of times, native widgets simple don’t exist for precise problem you need solving. For IDE example, you’d have to build your own text area anyway. Likewise for terminal emulation.

6. Web developers are cheaper

I honestly do think VB6 was peak GUI development for desktop systems. But times have moved on.

Comment by l1ng0 20 hours ago

Also all the fresh implementations using OpenGL etc have to reinvent accessibility, keyboard control and many solved UX issues, which they rarely do as well as the existing platform libraries.

Comment by metruzanca 1 day ago

This is cool, but I think I'll stick with herdr and a separate browser and zed. Following the linux philosophy of using many tools that do their job well, rather than 1 tool that does everything poorly.

Comment by bbkane 1 day ago

Don't let the Emacs folks read this :)

Comment by ernestrc 1 day ago

Have you found that it does everything poorly?

Comment by jon128 22 hours ago

If they're going to do this they should have a real image viewer render images and control the coordinates of the image viewer's window by talking to the window manager. The operative word here being "should", us i3/Sway users recognize that some others may have this luxury (or not).

I remember when quality desktop ricing was a personal and novel thing, then there was commoditization of that beautiful thing and the posers outnumbered the organic ricers.

Looks like the same is happening for IDEs.

It'll fool other posers and macOS/Windows users, sure.

But when you watch someone work you can tell who carefully configured their plugins for Neovim they added incrementally over time.

It's like a suit. You can have a fancy suit, but people who have their own tailored suits can tell when the one you're wearing isn't really "your's".

Comment by m1keil 1 day ago

I assume this type of application is the new JavaScript frameworks for the near future.

Comment by amelius 1 day ago

That sideways traffic light means it's for MacOS, I presume?

Comment by jadar 1 day ago

The homepage is definitely giving "designed by an LLM"

Comment by hnlmorg 1 day ago

I’m guessing you scrolled passed the text and went straight to the screenshots?

> You can download it for macOS and Linux

Comment by e12e 1 day ago

> You can download it for macOS and Linux

Comment by ra 1 day ago

This looks really cool - but are we still doing TUIs?

Comment by KlausEWDev 1 day ago

Why wouldn't we?

Comment by ernestrc 1 day ago

TUIs now and forever.

Comment by __MatrixMan__ 1 day ago

We most certainly are.

Comment by LoganDark 1 day ago

What would you do instead?