Best Apple 3-in-1 Travel Chargers (2026): Anker, ESR, Satechi
Keep your trio of Apple gadgets powered up wherever you go with these compact folding chargers. ⌘ Read more
AI Engineers aren’t safe from being replaced by AI
Article URL: https://dmanco.dev/2025/08/17/fear-not-even-ai-engineers-will-be-replaced-by-ai.html
Comments URL: https://news.ycombinator.com/item?id=48380987
Points: 3
# Comments: 1 ⌘ Read more
Microsoft Doubles Down on Controversial Quantum Computing Claims
Article URL: https://www.science.org/content/article/doubling-down-controversial-claims-microsoft-accelerates-quantum-computing-plans
Comments URL: https://news.ycombinator.com/item?id=48380516
Points: 3
# Comm … ⌘ Read more
The advertising cartel coming to your web browser
Article URL: https://blog.zgp.org/the-advertising-cartel-coming-to-your-web-browser/
Comments URL: https://news.ycombinator.com/item?id=48375175
Points: 20
# Comments: 3 ⌘ Read more
Morningstar values SpaceX at $780B, half its IPO target
Article URL: https://www.reuters.com/business/media-telecom/morningstar-values-spacex-780-billion-half-its-ipo-target-2026-06-02/
Comments URL: https://news.ycombinator.com/item?id=48373909
Points: 11
# Comments: 3 ⌘ Read more
Coreutils for Windows
Article URL: https://github.com/microsoft/coreutils
Comments URL: https://news.ycombinator.com/item?id=48372853
Points: 15
# Comments: 3 ⌘ Read more
Gente amiga, se não estão a acompanhar a #CopaDoMundoDePalavrasFeias, sintonizem já num dos hits do fediverso pt-br. Obrigado @usuario@usuario <3
Superquiz, Wednesday, June 3
Trivia buffs, test your knowledge with today’s interactive superquiz. ⌘ Read more
CSS-Native Parallax Effect
Article URL: https://dan-webnotes.com/posts/2026-06-02-css-native-parallax-effect/
Comments URL: https://news.ycombinator.com/item?id=48368291
Points: 3
# Comments: 0 ⌘ Read more
Michael Burry says neither SpaceX nor Anthropic is worth $1T
Article URL: https://www.businessinsider.com/big-short-michael-burry-spacex-anthropic-ipo-ai-bubble-claude-2026-6
Comments URL: https://news.ycombinator.com/item?id=48368187
Points: 13
# Comments: 3 ⌘ Read more
Not Every Byte Gets a Vote
Article URL: https://mitander.xyz/posts/not-every-byte-gets-a-vote/
Comments URL: https://news.ycombinator.com/item?id=48367009
Points: 3
# Comments: 0 ⌘ Read more
Crystal Nights by Greg Egan
Article URL: https://www.gregegan.net/MISC/CRYSTAL/Crystal.html
Comments URL: https://news.ycombinator.com/item?id=48364754
Points: 3
# Comments: 0 ⌘ Read more
Debug Project
Article URL: https://debug.com/
Comments URL: https://news.ycombinator.com/item?id=48362347
Points: 3
# Comments: 0 ⌘ Read more
Hackers Used Meta’s AI Support Bot to Seize Instagram Accounts
Article URL: https://krebsonsecurity.com/2026/06/hackers-used-metas-ai-support-bot-to-seize-instagram-accounts/
Comments URL: https://news.ycombinator.com/item?id=48361346
Points: 7
# Comments: 3 ⌘ Read more
Nvidia Cosmos 3
Article URL: https://developer.nvidia.com/blog/develop-physical-ai-reasoning-world-and-action-models-with-nvidia-cosmos-3/
Comments URL: https://news.ycombinator.com/item?id=48356654
Points: 6
# Comments: 0 ⌘ Read more
Why Are Large Language Models So Terrible at Video Games?
Article URL: https://spectrum.ieee.org/ai-video-games-llms-togelius
Comments URL: https://news.ycombinator.com/item?id=48354405
Points: 6
# Comments: 3 ⌘ Read more
Atherton spent $145K to delay train electrification. The rest of us paid $400M
Article URL: https://peninsulaforeveryone.org/blog/atherton-spent-145k-to-delay-caltrain-electrification-the-rest-of-us-paid-400-million-and-waited-3-extra-years/
Comments URL: [https://news … ⌘ Read more
Show HN: The Tired Engineer
Article URL: https://www.thetiredengineer.com/
Comments URL: https://news.ycombinator.com/item?id=48344930
Points: 3
# Comments: 1 ⌘ Read more
Show HN: Komi-learn – continuous memory and self-improvement for coding agents
Article URL: https://github.com/kurikomi-labs/komi-learn
Comments URL: https://news.ycombinator.com/item?id=48343216
Points: 3
# Comments: 0 ⌘ Read more
Ahoy, DECmate II the little PDP-8 that could
Article URL: http://oldvcr.blogspot.com/2026/05/ahoy-decmate-ii-little-pdp-8-that-could.html
Comments URL: https://news.ycombinator.com/item?id=48343078
Points: 3
# Comments: 0 ⌘ Read more
Custom Errors Are Non-Negotiable in My Rust Applications
Article URL: https://tristonarmstrong.com/blog/custom-errors-are-non-negotiable-in-my-rust-applications
Comments URL: https://news.ycombinator.com/item?id=48341505
Points: 3
# Comments: 0 ⌘ Read more
Parallel Reconstruction of Lawful TLS Wiretapping
Article URL: https://remyhax.xyz/posts/reproducing-lawful-tls-wiretapping/
Comments URL: https://news.ycombinator.com/item?id=48339943
Points: 3
# Comments: 0 ⌘ Read more
Probabilistic, Reformative Justice
Article URL: https://www.lesswrong.com/posts/dqbhcm6g7CMWvhoid/probabilistic-reformative-justice
Comments URL: https://news.ycombinator.com/item?id=48336882
Points: 3
# Comments: 0 ⌘ Read more
Is the Ferrari Luce’s Design Really That Bad? 3 Italian Auto Experts Weigh In
The first electric Ferrari is already this year’s most divisive car. We asked three Italian auto industry professionals to explain where the EV’s design makes sense, and where it doesn’t add up. ⌘ Read more
Perry Compiles TypeScript directly to executables using SWC and LLVM
Article URL: https://www.perryts.com/
Comments URL: https://news.ycombinator.com/item?id=48332151
Points: 3
# Comments: 1 ⌘ Read more
CVE-Bench: testing LLM agents on real-world vulnerability patches
Article URL: https://giovannigatti.github.io/cve-bench/
Comments URL: https://news.ycombinator.com/item?id=48328088
Points: 3
# Comments: 1 ⌘ Read more
It Will Never Be the Year of the Linux Desktop
Article URL: https://unix.foo/posts/it-will-never-be-the-year-of-the-linux-desktop/
Comments URL: https://news.ycombinator.com/item?id=48323920
Points: 3
# Comments: 0 ⌘ Read more
The UK Government’s Low Value Purchase System Is a Waste of Time
Article URL: https://shkspr.mobi/blog/2026/05/the-uk-governments-low-value-purchase-system-is-a-waste-of-time/
Comments URL: https://news.ycombinator.com/item?id=48322154
Points: 3
# Comments: 0 ⌘ Read more
HP Omnibook 3 Review: Redefining the Budget Laptop
To get to $600, Apple and HP made different compromises. If you demand more power and performance, the HP Omnibook 3 delivers. ⌘ Read more
Real-time LLM Inference on Standard GPUs: 3k tokens/s per request
Article URL: https://blog.kog.ai/real-time-llm-inference-on-standard-gpus-3-000-tokens-s-per-request/
Comments URL: https://news.ycombinator.com/item?id=48321076
Points: 13
# Comments: 4 ⌘ Read more
Meta Quest Promo Codes and Coupons for June 2026
Experience cutting-edge VR and save up to 20% with coupons for the latest games, Meta Quest 3, Ray-Ban AI glasses, and more deals. ⌘ Read more
The mysterious Hy3 LLM is topping OpenRouter Model Rankings by a large margin
Article URL: https://minimaxir.com/2026/05/openrouter-hy3/
Comments URL: https://news.ycombinator.com/item?id=48317294
Points: 3
# Comments: 0 ⌘ Read more
@movq@www.uninformativ.de I really like your style of writing, btw. It’s much calmer and less aggressive then mine. :-) When I turned my bullet points into paragraphs, I got a bit mad in the process.
Sure, feel free to include anything you want. Regarding citing, this is where twtxt falls short in my opinion. Especially with feed rotation, classic links die quickly. Message hashes only help so much. Nobody outside the twtxt universe knows how to deal with them. So, not perfect for inclusion on a web page. Linking to a thread or message on some yarnd instance might be the more user-friendly option. But the disadvantage is that it’s “just” a mirror, not the primary or original source. In all reality, this could be considered splitting hairs, though.
I should have probably written a proper article. That would have given me time to review the result more carefully, too. ;-) Perhaps that’s something for the future. But honestly, I’m not sure if I really want to waste my time and energy on that subject. So many other fun or useless things come to mind right away that I could do instead. 8-)
So, yeah, do whatever feels best to you. I don’t mind being cited or linked, but I also don’t mind not to be cited or not to be linked to. :-D Not a helpful answer, I know. Sorry. ;-) But anyway, thanks for asking, mate! I do appreciate it.
To finish my thought, linking to my frontpage is probably also useless, since I deliberatly do not have a table of contents there. In fact, my entire frontpage is rather silly.
Surfshark Promo Codes: 87% Off | June 2026
Save up to 87% with a Surfshark coupon code, 3 months of VPN free today, and more from WIRED. ⌘ Read more
On Labubu and the Hyperreal
Article URL: https://2earth.github.io/website/20260525.html
Comments URL: https://news.ycombinator.com/item?id=48299335
Points: 3
# Comments: 0 ⌘ Read more
I’m Tired of Talking to AI
Article URL: https://orchidfiles.com/im-tired-of-ai-generated-answers/
Comments URL: https://news.ycombinator.com/item?id=48292224
Points: 18
# Comments: 3 ⌘ Read more
Internet Starts to Return in Iran After 3-Month Blackout
Some internet connectivity is returning in Iran after nearly 90 days offline, web monitoring groups say. But it isn’t clear if the reconnection is permanent. ⌘ Read more
@movq@www.uninformativ.de I only had 3.5” disks.
DynIP – Dynamic DNS with RFC 2136, IPv6, DNSSEC, and BYOD
Article URL: https://dynip.dev/
Comments URL: https://news.ycombinator.com/item?id=48276363
Points: 8
# Comments: 3 ⌘ Read more
Chatbot Has a Long Memory. That Isn’t Always a Good Thing
Article URL: https://www.wsj.com/tech/ai/ai-memory-cd1de7f4
Comments URL: https://news.ycombinator.com/item?id=48272954
Points: 3
# Comments: 0 ⌘ Read more
Ferrari Luce, Maranello’s first ever electric car
Article URL: https://www.topgear.com/car-news/electric/its-finally-here-meet-ferrari-luce-maranellos-first-ever-fully-electric-car
Comments URL: https://news.ycombinator.com/item?id=48271933
Points: 3
# Comments: 0 ⌘ Read more
Jony Ive’s Ferrari
Article URL: https://www.ferrari.com/en-EN/auto/ferrari-luce
Comments URL: https://news.ycombinator.com/item?id=48271629
Points: 3
# Comments: 0 ⌘ Read more
Yoti age checks share facial photos and device fingerprints with third parties
Article URL: https://techxplore.com/news/2026-05-online-age-pointless-privacy.html
Comments URL: https://news.ycombinator.com/item?id=48271327
Points: 3
# Comments: 0 ⌘ Read more
GPT Guesses Between 1 and 100
Article URL: https://github.com/exmergo/research-chatgpt-guesses-between-1-and-100
Comments URL: https://news.ycombinator.com/item?id=48265745
Points: 12
# Comments: 3 ⌘ Read more
$100 CPU Shootout: Comparing the Ryzen 5 5500, Core i3-14100F, & Core i3-12100F
Article URL: https://www.tomshardware.com/pc-components/cpus/100-budget-cpu-shootout-ddr4
Comments URL: https://news.ycombinator.com/item?id=48259608
Points: 3
# Comments: 0 ⌘ Read more
When (if ever) it’s appropriate to make jokes before the US Supreme Court
Article URL: https://www.scotusblog.com/2026/05/when-if-ever-its-appropriate-to-make-jokes-take-selfies-or-curse-before-the-court/
Comments URL: https://news.ycombinator.com/item?id=48258236
Points: 3
# Comm … ⌘ Read more
The day my ping took countermeasures
Article URL: https://blog.cloudflare.com/the-day-my-ping-took-countermeasures/
Comments URL: https://news.ycombinator.com/item?id=48253602
Points: 3
# Comments: 0 ⌘ Read more
My I3-Emacs Integration
Article URL: https://khz.ac/software/i3-integration.html
Comments URL: https://news.ycombinator.com/item?id=48252535
Points: 3
# Comments: 0 ⌘ Read more
Polsia raised $30M; source map: fake ARR, dead users, god-mode over your company
Article URL: https://zero-arr.vercel.app
Comments URL: https://news.ycombinator.com/item?id=48252194
Points: 10
# Comments: 3 ⌘ Read more
Google Is Killing ChromeOS: Aluminium OS, Its Android-Based Replacement
Article URL: https://techjournal.org/google-aluminium-os-replacing-chromeos
Comments URL: https://news.ycombinator.com/item?id=48244476
Points: 13
# Comments: 3 ⌘ Read more
NTSB pulls docket after AI recreates dead pilots’ voices
Article URL: https://arstechnica.com/ai/2026/05/ai-users-re-create-dead-pilots-voices-from-crash-investigation-docs/
Comments URL: https://news.ycombinator.com/item?id=48241501
Points: 12
# Comments: 3 ⌘ Read more
Models.dev: open-source database of AI model specs, pricing, and capabilities
Article URL: https://github.com/anomalyco/models.dev
Comments URL: https://news.ycombinator.com/item?id=48241172
Points: 3
# Comments: 0 ⌘ Read more
Steve Wozniak cheered after telling students they have AI – actual intelligence
Article URL: https://www.businessinsider.com/steve-wozniak-apple-ai-graduation-speech-2026-5
Comments URL: https://news.ycombinator.com/item?id=48233563
Points: 14
# Comments: 3 ⌘ Read more
Curtis Yarvin and the Political Evolution of Silicon Valley Reactionaries
Article URL: https://www.dontbeasucker.blog/p/the-butterflies-in-your-stomach
Comments URL: https://news.ycombinator.com/item?id=48229260
Points: 18
# Comments: 3 ⌘ Read more
Serving Netflix Video Traffic at 400Gb/S and Beyond (2022) [pdf]
Article URL: https://nabstreamingsummit.com/wp-content/uploads/2022/05/2022-Streaming-Summit-Netflix.pdf
Comments URL: https://news.ycombinator.com/item?id=48227068
Points: 3
# Comments: 0 ⌘ Read more
Launch HN: Runtime (YC P26) – Sandboxed coding agents for everyone on a team
Hey HN, We’re Gus and Carlos from Runtime ( https://runtm.com). We’re building infra that lets your whole team (including non-engineers) ship with Claude Code, Codex, and other agents without engineering having to handhold every session.
After Mentum (YC S21) was acquired, I personally shipped 4 full-stack products in 3 months using coding agents. When I tried to roll the same workflow out to the rest of the team, it fell apart: Most PRs were unme … ⌘ Read more
Indexing a year of video locally on a 2021 MacBook with Gemma4-31B (50GB swap)
Article URL: https://blog.simbastack.com/indexed-a-year-of-video-locally/
Comments URL: https://news.ycombinator.com/item?id=48222733
Points: 3
# Comments: 0 ⌘ Read more
Python 3.15: features that didn’t make the headlines
Article URL: https://blog.changs.co.uk/python-315-features-that-didnt-make-the-headlines.html
Comments URL: https://news.ycombinator.com/item?id=48220696
Points: 4
# Comments: 0 ⌘ Read more
3 Best Smart Ring Brands: Oura, RingConn, and Samsung (2026)
A svelte smart ring can track important activity, sleep, and health metrics. Plus—unlike most smartwatches—it doesn’t need to be charged every day. ⌘ Read more
NordVPN Coupons and Deals: 77% Off in May 2026
Save up to 77% on 2-year plans and get 3 free months with our NordVPN discount codes. ⌘ Read more
Interesting read on the ECONNRESET saga, @movq@www.uninformativ.de. Thanks for the writeup! <3
Surfshark Promo Codes: 87% Off | May 2026
Save up to 87% with a Surfshark coupon code, 3 months of VPN free today, and more from WIRED. ⌘ Read more
On Running LightSpray Cloudmonster 3 Hyper Review:
The Swedish shoemaker’s LightSpray Cloudmonster 3 Hyper is a laceless, lightweight, super shoe. ⌘ Read more
7.0.4: stable
Version:7.0.4 (stable)Released:2026-05-07Source:linux-7.0.4.tar.xzPGP Signature:linux-7.0.4.tar.signPatch:full ( incremental)ChangeLog:ChangeLog-7.0.4 ⌘ Read more
A Library Dedicated Solely to the Epstein Files Is Opening in New York
The Institute for Primary Facts has compiled more than 3.5 million pages of the Epstein files for public display at the newly opened Donald J. Trump and Jeffrey Epstein Memorial Reading Room. ⌘ Read more
NASA scientist describes what she saw during 3 near-death experiences
55-year-old Ingrid Honkala believes that she has experienced a glimpse of what happens after we die. For many people, even a single near-death experie… ⌘ Read more
@lyse@lyse.isobeef.org green or not, it is lovely. So effortlessly perked at the top of the tree! Ah, if only we could see the world as birds do…! <3
Meta Quest Promo Codes: $50 Off | May 2026
Experience cutting-edge VR and save up to 20% with coupons for the latest games, Meta Quest 3, Ray-Ban AI glasses, and more deals. ⌘ Read more
@prologic@twtxt.net Oh yeah, very beautiful! I can hear the roaring of the waterfall and like to be there, too. The first shot makes it look like you’re in the middle of a cave. :-)
I completely forgot, I saw my very first badger in the wild the day before yesterday. :-) That was absolutely cool! <3
I heard something comparatively large rustling in the bush right next to me and thought that it must be dear. Naturally, I stopped and tried to see what’s in there. The rustling went up the bank and it suddenly came down again towards the road I was on. That’s when I first layed eyes on it and identified it as a badger. For a split second I thought that it’s going to get after me and was ready to get running. But it just hadn’t noticed me yet. When it eventually spotted me, it froze for a few seconds and ran off uphill. My camera took too long to boot, so it was already gone by the time the photo machine was good to go.
Surfshark Promo Codes: 87% Off | May 2026
Save up to 87% with a Surfshark coupon code, 3 months of VPN free today, and more from WIRED. ⌘ Read more
NordVPN Coupons and Deals: 77% Off in May 2026
Save up to 77% on 2-year plans and get 3 free months with our NordVPN discount codes. ⌘ Read more
Record-breaking Viking hoard of 3,000 coins unearthed in Norway
The impressive discovery is being hailed as the largest of its kind ever found in the country. The hidden stash was unearthed quite by accident when t… ⌘ Read more
7.0.3: stable
Version:7.0.3 (stable)Released:2026-04-30Source:linux-7.0.3.tar.xzPGP Signature:linux-7.0.3.tar.signPatch:full ( incremental)ChangeLog:ChangeLog-7.0.3 ⌘ Read more
Adidas Adizero Adios Pro Evo 3 Shoe Review: World Record Breaker
I ran in Sabastian Sawe’s world-record-breaking running shoe. It’s fast, but only if you can maintain your locked-in form for 26 miles. ⌘ Read more
Best Apps for Focus (2026): Focus Friend, Forest, Focus Traveller
Distractions? What distractions? Here are our recommendations for apps that help you stay focused on the task at hand. ⌘ Read more
As an enjoyer of delightfully bad graphic design, found on most Czech village center cork boards, I’m sad to see the stolen clipart and badly cropped watermarked stock images, gradually replaced with AI slop.
This is far from a serious rant, but generating images of my kind being telepathically hit with sharp rocks, surely gives me a right to complain.

So far these seem the most prominent slop categories, seem to be…
Architecture slop:
- find a sketch of what an old building looked like

- generate an AI version, without correcting any of the perspective errors - this one is diagonally levitating

- generate a recreation of the buildings demise - after going through the AI, for the second time, it is now a completely different building

Moralizing slop:


History slop:

@lyse@lyse.isobeef.org 1, 3, and 22 are my picks on this very reduced set. Our bird is King/Queen, and that stop on the roof is their spot! 🥰
When the client says the site was actually better before after 3 months of redesign ⌘ Read more
When I discover one of our sites has been down for 3 days and no one noticed ⌘ Read more
When I realize I’m the only one who’s run the tests in the last 3 months ⌘ Read more
(This one actually has the potential to live longer than 3 days.)
When I spent 3 hours configuring ESLint for a 20-line script ⌘ Read more
This year for some reason or another, I decided to purchase an Ocarina, I’ve been practising a fair bit every now and again, basically during work breaks and sometimes in the afternoon / evenings (not enough to annoy the family 🤣) Anyhoo, that was 3 months ago, since then I’ve built up a bit of a Repertoire:
- Silent Night
- My Bonnie Lies Over the Ocean
- Amazing Grace
- O Holy Night
- Happy Birthday
- Greensleeves
- Scarborough Fair
- She’ll Be Coming ’Round the Mountain
I’ve now decided to purchase a slightly better quality Ocarina, the one I originally bought was a cheap $28 one, I’m now upgrading to a more professional instrument worth about $80 – Wish my luck 🍀
When I have to rebase a branch that hasn’t been synced for 3 months ⌘ Read more
When I realize my hotfix created 3 other bugs ⌘ Read more
6.19.4: stable
Version:6.19.4 (stable)Released:2026-02-26Source:linux-6.19.4.tar.xzPGP Signature:linux-6.19.4.tar.signPatch:full ( incremental)ChangeLog:ChangeLog-6.19.4 ⌘ Read more
PEP 826: Python 3.16 Release Schedule
This document describes the development and release schedule for Python 3.16. ⌘ Read more
v2 branch and @doesnm.p.psf.lt has been incredibly helpful so far. Be great ot have a few more folks to join us, some of the v2 highlights include:
@bender@twtxt.net Here is a properly formatted version of your message:
Not yet — but that’s probably a good idea.
Instructions:
- Clone the repository
git clone https://git.mills.io/saltyim/saltyim.git
cd saltyim
- Check out the
v2branch
git checkout v2
- Build and install the CLI/TUI
make DESTDIR=$HOME/bin install
After installation, run:
salty-chat
When I’m asked for an estimate and I multiply everything by 3 in my head ⌘ Read more
When I realize the docs haven’t been updated in the last 3 major versions ⌘ Read more
@lyse@lyse.isobeef.org Found some numbers now, they’re saying it was around 10cm in 3-4 hours. I don’t know, felt like more. 😂 The forecast wasn’t really good either, now that I think about it. They said there’s going to be some snow, okay, fine, but then, boom.
Haha, that old ad is lovely. Those days are over. 🤣
** Bicross **
I made a game. I’ve written about it in passing a few times, but here is an honest to goodness intro to it!
Bicross is 3 versions of the same basic game,
- Bicross, is a zen-mode version of the game.
- Bicross RPG, is an RPG version of the game where you can earn power ups, and build up hearts and stuff.
- Bicross Daily, is very similar to the RPG version, but everyone who plays on a given … ⌘ Read more
@movq@www.uninformativ.de Oh, so just half a millimeter then! :-D That’s plenty these days for everything to shut down, I’m afraid. If only the same élan was still in action as back then:
And here I am watching Mattias Björnström’s gas pedal freezing at full throttle around -40°C. Well, falls apart and gets stuck.
https://www.youtube.com/watch?v=MLgmV15XeSY
I’m not an expert on this subject at all, but I reckon an automatic in addition with all its sensors is much worse than a manual one. All wheel drive, studded tires and diff locked is what one wants in icy situations. :-D
When I finally understand what that bash script I wrote 3 months ago actually does ⌘ Read more
argparse takes 50 ms on my NUC, because this pulls in all kinds of fancy stuff behind the scenes, colorization and what not. 😮💨
Just importing data classes takes another 60 ms … This fancy new stuff is really costly.
When the client sends me their list of “just 2 or 3 small things to fix” ⌘ Read more
“A fotógrafa alemã Alice Brill, que desde o ano 2000 tem sua coleção de 14 mil negativos sob a guarda do IMS, trouxe a fotografia na bagagem quando veio da Alemanha para o Brasil, fugindo do nazismo. Alice tinha 14 anos quando a família aqui desembarcou em 1934 para encontrar a mãe, que viera na frente, e trazia na bagagem “uma minicâmera Agfa, tipo caixão”, que fazia fotos 3 x 4 e com a qual registrou suas impressões da viagem pela Espanha e Itália, que precedeu a aprovação dos papéis de imigração. A câmera era presente do pai, Erich Brill, um pintor viajante e artista plástico que, dois anos depois, não tendo se firmado em São Paulo, voltou à Alemanha e morreu em 1942, num campo de concentração. Alice seguiu seus passos profissionais com firmeza, fazendo-se artista plástica, gravadora e ensaísta, além de fotógrafa.”
Winemakers face long road to recovery after fire destroys vineyards
Two wineries in the Strathbogie Ranges have lost a combined 150 hectares of vines, 3,000 sheep and three homes in the Victorian fires. ⌘ Read more
I’m trying to implement configurable key bindings in tt. Boy, is parsing the key names into tcell.EventKeys a horrible thing. This type consists of three information:
- maybe a predefined compound key sequence, like Ctrl+A
- maybe some modifiers, such as Shift, Ctrl, etc.
- maybe a rune if neither modifiers are present nor a predefined compound key exists
It’s hardcoded usage results in code like this:
func (t *TreeView[T]) InputHandler() func(event *tcell.EventKey, setFocus func(p tview.Primitive)) {
return t.WrapInputHandler(func(event *tcell.EventKey, setFocus func(p tview.Primitive)) {
switch event.Key() {
case tcell.KeyUp:
t.moveUp()
case tcell.KeyDown:
t.moveDown()
case tcell.KeyHome:
t.moveTop()
case tcell.KeyEnd:
t.moveBottom()
case tcell.KeyCtrlE:
t.moveScrollOffsetDown()
case tcell.KeyCtrlY:
t.moveScrollOffsetUp()
case tcell.KeyTab, tcell.KeyBacktab:
if t.finished != nil {
t.finished(event.Key())
}
case tcell.KeyRune:
if event.Modifiers() == tcell.ModNone {
switch event.Rune() {
case 'k':
t.moveUp()
case 'j':
t.moveDown()
case 'g':
t.moveTop()
case 'G':
t.moveBottom()
}
}
}
})
}
This data structure is just awful to handle and especially initialize in my opinion. Some compound tcell.Keys are mapped to human-readable names in tcell.KeyNames. However, these names always use - to join modifiers, e.g. resulting in Ctrl-A, whereas tcell.EventKey.Name() produces +-delimited strings, e.g. Ctrl+A. Gnaarf, why this asymmetry!? O_o
I just checked k9s and they’re extending tcell.KeyNames with their own tcell.Key definitions like crazy: https://github.com/derailed/k9s/blob/master/internal/ui/key.go Then, they convert an original tcell.EventKey to tcell.Key: https://github.com/derailed/k9s/blob/b53f3091ca2d9ab963913b0d5e59376aea3f3e51/internal/ui/app.go#L287 This must be used when actually handling keyboard input: https://github.com/derailed/k9s/blob/e55083ba271eed6fc4014674890f70c5ed6c70e0/internal/ui/tree.go#L101
This seems to be much nicer to use. However, I fear this will break eventually. And it’s more fragile in general, because it’s rather easy to forget the conversion or one can get confused whether a certain key at hand is now an original tcell.Key coming from the library or an “extended” one.
I will see if I can find some other programs that provide configurable tcell key bindings.