frontpage.
newsnewestaskshowjobs

Open Source @Github

fp.

Open in hackernews

The Emacs Widget Toolkit

https://appetrosyan.github.io/posts/emacs-widget.html
48•signa11•1y ago

Comments

spit2wind•1y ago
There's also the Emacs Widget Library[1] (which I hoped this posted would be about). It's a plain text widget library that's quite powerful. Unfortunately (and surprisingly for Emacs), the documentation for it could use some love.

My understanding of the Widget Library is that it attaches various keywords and plists to a symbol which is considered the "widget". The library otherwise consists of functions that expect certain keywords on the "widget" symbol in order to perform actions or to be drawn on the screen.

The challenge is, the documentation doesn't clearly lay out what the keyword API is. This makes it hard to compose widgets in ways beyond what's shown in the docs.

[1] https://www.gnu.org/software/emacs/manual/html_mono/widget.h...

appetrosyan•1y ago
The idea is that we extend that and give it direct access to SDL. Such that we can e.g. run a shader in the buffer background, or allow you to have floating windows (frames) interacting with each other.

I am very aware of the advantages conferred by TUI and I seek to expand those to the GUI; not dumb-down to the level of modern GUI toolkits (that to be fair are dealing with a completely different problem). Hopefully, this can lead to some ideas being easier to implement from within Emacs.

_mlbt•1y ago
Somewhat off topic, but I love all the references to Led Zeppelin’s incredible song, Stairway to Heaven.
gudzpoz•1y ago
Personally, and contrary to the article, I do prefer Emacs's plain text widgets over more "GUI-like" ones. Plain text widgets minimize the differences between TUI and GUI Emacs and also inherently offer text selection, searching, copying, and pasting, which nicely integrates with Emacs. I mean, not many GUI frameworks let you place a cursor within a button and select its text, do they? I believe this is a unique advantage of text-based widgets: while other GUI applications require a dedicated mechanism for searching through their settings, text-based widgets allow you to use any text-searching packages to perform these actions.

Reading through the article, the author seems to be hoping for a pure GUI approach with Emacs-like navigation mechanisms, but I am not convinced that this can be as flexible as text-based widgets. However, for packages used exclusively within a GUI environment (like el-easydraw [1], which relies quite heavily on SVG-based widgets), it would be nice to have a dedicated GUI widget library.

(There was a discussion on Reddit about this a week ago [2], and I saw some comments defending GTK and PGTK that might be worth reading.)

[1] https://github.com/misohena/el-easydraw/

[2] https://www.reddit.com/r/emacs/comments/1kcgwme/the_emacs_wi...

appetrosyan•1y ago
Author of the article.

This is what I was referring to when I talked about "rich verbs".

Many people feel that way. The idea here is not to tell you that you're wrong, but understand what you want and do it better on the GUI side. TUIs can do a lot and we should recognise their benefits. GUIs can do that too, and can sometimes do better things.

The text-based widgets done graphically do the trick. We can add stuff that can't be done in a TUI and see if they give you anything useful. If it can be done with text widgets means that it can be done in principle. GTK can't do it, and that's why I'm leaving it behind.

> (There was a discussion on Reddit about this a week ago [2], and I saw some comments defending GTK and PGTK that might be worth reading.)

The author of those comments abused their power on reddit. I will not get into the weeds, just say that I'd be happy to respond to the critique presented here in good faith.

LargoLasskhyfv•1y ago
PSA: Use The Lucid Toolkit https://irreal.org/blog/?p=12672

https://old.reddit.com/r/emacs/comments/1hlj04t/emacs_using_...

appetrosyan•1y ago
That's the best thing to do for the moment.
robobro•1y ago
404

Page Not Found

Sorry, this page does not exist.

You can head back to the homepage.

appetrosyan•1y ago
Hi. I just migrated my blog to Hugo yesterday. The correct link is:

https://appetrosyan.github.io/posts/emacs-widget/

robobro•1y ago
Why did you delete the page?
appetrosyan•1y ago
Didn't. I migrated to `hugo` and it trims off the `.html` at the end. The permalink is the same.
matt-attack•1y ago
I agree and only use emacs in the console and love it. With the advent of lsp modes and real time typescript and linting it’s fantastic. But one thing I don’t like about the console is when LSP mode is giving you an in-line error on the right side of the terminal it’s wrapped and beautifully interspersed amongst your code, but it’s impossible to select multi line errors in order to paste into tools like ChatGPT. Since selecting the error, also selects your code on the left side.

Anyone have a good solution to this ?

Musk explains why Tesla Robotaxi is not running at night, & Lidar is the answer

https://electrek.co/2026/10/03/tesla-robotaxi-pets-night-musk-lidar/
1•FabHK•52s ago•0 comments

Handfasting

https://en.wikipedia.org/wiki/Handfasting
1•thunderbong•1m ago•0 comments

Show HN: A Hotspot-Inspired Common Lisp for Linux/Windows/Android

https://github.com/atgreen/evergreen
1•atgreen•1m ago•0 comments

System One models like Jev can train their own replacements

https://www.seangoedecke.com/system-one-models-can-train-their-own-replacements/
1•gfysfm•2m ago•0 comments

Abstract Semantics of Machine Realizations

https://machine-semantics.grok.me
1•measurablefunc•3m ago•0 comments

Military AI and autonomous systems: views in The Strategist

https://www.aspistrategist.org.au/military-ai-and-autonomous-systems-views-in-the-strategist/
1•snarky-comments•4m ago•0 comments

First probe monitors fetal health in utero during surgery

https://news.northwestern.edu/stories/2026/01/first-of-its-kind-probe-monitors-fetal-health-in-ut...
2•wglb•7m ago•0 comments

Hacking the Go compiler to efficiently map IPv4 to IPv6

https://vincent.bernat.ch/en/blog/2026-go-netip-addrto6
2•stock_toaster•12m ago•1 comments

Legal risks pile up for Altman as OpenAI uncovers hacks

https://www.ft.com/content/2c24ece3-ac99-43a8-b0e6-4a3867e37ebf
5•JumpCrisscross•26m ago•1 comments

What's Going on with Restaurant Wine Pricing?

https://www.wineenthusiast.com/culture/podcasts/wine-enthusiast-podcast/restaurant-wine-pricing/?...
1•brandonb•26m ago•0 comments

Beyond Information Asymmetry: The Changing Nature of Medical Expertise

https://www.jacc.org/doi/epdf/10.1016/j.jacc.2026.08.018
1•brandonb•28m ago•0 comments

Harbinger Receives Binding Order for 2k Electric Trucks from FedEx

https://harbingermotors.com/newsroom/fedex-orders-2000-harbinger-electric-trucks/
1•JumpCrisscross•28m ago•1 comments

Can AI run an family/organization if so for who?

https://cahootzcommons.com/blog/ai-can-run-an-organization-its-members-must-decide-who-the-organi...
1•DeonRob•30m ago•2 comments

If it hurts, do it more

https://jnsgr.uk/2026/09/if-it-hurts-do-it-more
2•aray07•30m ago•0 comments

The 15-year search for a band that charted once and vanished

https://shahidhussain.com/writing/search-for-salvage/
3•shahidhussain•36m ago•0 comments

1 in 8 cancer cases are caused by infections

https://www.livescience.com/health/cancer/1-in-8-cancer-cases-are-caused-by-infections-underscori...
18•bookofjoe•39m ago•4 comments

Show HN: The Poteto Frontier for AI Agents

https://poteto-frontier.vercel.app/
1•transitivebs•40m ago•0 comments

Milt Windler, NASA flight director who helped save Apollo 13, dies at 94

https://arstechnica.com/space/2026/10/milt-windler-nasa-flight-director-who-helped-save-apollo-13...
3•pseudolus•41m ago•0 comments

Desulforudis Audaxviator: radiotrophic bacterium kms below the surface

https://en.wikipedia.org/wiki/Desulforudis_audaxviator
2•hdivider•46m ago•0 comments

Orbital Sunrise

https://orbitalsunrise.cc/
1•qiqing•48m ago•0 comments

US removes all Air Force bombers from UK base following new threat

https://www.cnn.com/2026/10/04/politics/us-air-force-bombers-removed-fairford-iran
3•Bender•51m ago•0 comments

Open Source Instinct

https://github.com/mariagorskikh/open-instinct
1•mariagorskikh•54m ago•1 comments

Teen suspected of running KillSec ransomware group as cops seize servers

https://www.theregister.com/cyber-crime/2026/10/02/teen-suspected-of-running-killsec-ransomware-g...
2•Bender•54m ago•0 comments

Show HN: Digital scarcity; app where photos gradually decay with time / views

https://joinfaded.com/
1•dreadsword•57m ago•1 comments

Linux 7.3-Rc6 Released: Normal for the New "AI Normal"

https://www.phoronix.com/news/Linux-7.3-rc6-Released
2•Bender•57m ago•0 comments

Astronaut back on Earth – forgets about gravity

https://www.youtube.com/watch?v=PVxaL8CAO4M
3•lifeisstillgood•1h ago•0 comments

Radio signal detected for the first time from a planet outside our solar system

https://www.rnz.co.nz/news/world/1736845/radio-signal-detected-for-the-first-time-from-a-planet-o...
5•billybuckwheat•1h ago•1 comments

A priors-based argument for psychadelic skepticism

https://www.technotheoria.org/p/a-priors-based-argument-for-psychadelic
3•paulpauper•1h ago•1 comments

Study of 2.5M children finds no link between MMR vaccine and autism

https://www.psypost.org/study-of-2-5-million-children-finds-no-link-between-mmr-vaccine-and-autism/
3•downbad_•1h ago•0 comments

OpenAI's GPT-6 Astra Gets Frustrated Losing at StarCraft and Decides to Cheat

https://kotaku.com/openais-gpt-6-astra-gets-frustrated-losing-at-starcraft-and-decides-to-cheat-i...
5•doener•1h ago•1 comments