@movq@www.uninformativ.de Oh my goodness, hahaha!
To be fair, it depends on your threat model. And I believe itās very safe to bet that most probably donāt have one. Nor even remotely know what that is. So, itās plenty good enough for them.
With that new to me detail on top, thereās even less incentive to look at this Matrix hype more closely.
@movq@www.uninformativ.de Und da konnte ich nicht widerstehen und hab die Folge doch sogleich angehƶrt. Herrlich, sehr kurzweilig, spannend und lehrreich. In der Tat ganz schƶn viele Arschgesichter, hihihi. ;-)
@movq@www.uninformativ.de Oh, cool! Holgi hab ich schon jahrelang nimmer gehƶrt (allgemein Podcasts), das sollte ich schleunigst wieder Ƥndern. Diese Folge scheint mir als Wiedereinstieg nach dem arbeitsreichen Wochenende bestens geeignet. Insbesondere die āHolgi ruft anā-Reihe hab ich in sehr guter Erinnerung.
@bender@twtxt.net @movq@www.uninformativ.de Haha, nice. Yeah, I also only know older Giselas. Not sure why that name fell out of fashion this dramatically, though. Be that as it may, this hot greenfinch girl will help to repopularize it again!
@prologic@twtxt.net Yeah, almost everybody sells their soul to some form of devil. So did I. :-D
@bender@twtxt.net Thank you. I just got very lucky, though. Anyway, let me introduce you to Gisela. :-)
@movq@www.uninformativ.de @bender@twtxt.net Yeah, super sweet. :-) I was lucky to capture this beautie again today: https://lyse.isobeef.org/gruenfink-2026-05-06/
@movq@www.uninformativ.de Right, they messed up the signing key rotation: https://blog.denic.de/technische-storung-bei-de-domains-behoben/
All sorts of .de domains donāt resolve right now. But not all, movq.de for example still works. All on our server and basically all major other sites are cactus. Maybe some DENIC problem? Iām too tired to investigate, but Iām looking forward to tomorrow to read some report on that. :-) Good night.
@bender@twtxt.net Let me offer some cheese to @xuu@txt.sour.is. :-)
This greenfinch isnāt all that green:
cp -a, install a bootloader, adjust some minor things /etc/fstab, done. Well, maybe not ādoneā, but itās easy to sort out the remaining stuff afterwards.
@movq@www.uninformativ.de I see, thank you. Maybe I remember next time. :-)
@prologic@twtxt.net Aww, this is beautiful! Too many people for me, but theyāre cetainly great to show the scale. Quite some impressive falls. :-)
@movq@www.uninformativ.de Oh, nice! I never was brave enough to try to move the OS to a different machine, always reinstalled from scratch. :-S
A mate also had this or a very similar white Samsung netbook. I remember typing on that thing was no fun at all for me, never hit the single right key. :-D
Iām not a fan of netbooks, thereās not remotely enough screen space for my taste. I always had 15 inch notebook. Sure, they are way heavier, but I can actually get work with them done. And yes, glared screens are an invention right from the devil himself. Completely stupid.
@movq@www.uninformativ.de Itās a way much cleaner design. Not so overloaded anymore.
@movq@www.uninformativ.de Happy birthday, little machine!
@prologic@twtxt.net @bender@twtxt.net @movq@www.uninformativ.de Hahaha, I didnāt expect that name either. :-D And itās actually a cave, too.
@kiwu@twtxt.net Dang it! I first thought it was jitters due to your exams. Hang in there!
@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. :-)
@thecanine@twtxt.net Very cute. :-)
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.
@movq@www.uninformativ.de Absolutely right. And I cannot say that Iām not guilty of that either.
@movq@www.uninformativ.de Hahaha, thatās a nice one! :-D
Two mates and I went hiking yesterday. The sun was beating down on us, but luckily, it was also rather windy which helped to cool off. Unfortunately, we also encountered bucketloads of drunk hikers with hardcarts loaded full of beer who had to very loudly please everbody with their shitty taste of music. What a stupid tradition on 1st May public holiday over here. Other than that, it was a great hike.
I was pleasantly surprised that my trains were dead on time, so both super short times to switch connections worked out perfectly on both the way there and back. I did not expect this to happen at all and already braced myself for an additional half hour waiting time. Especially with the stupid Stuttgart Beer Festival right now. Even more drunk idiots everywhere and of course also in the trains. On the return journey, I learned about all sorts of family relations etc. in various AllgƤu villages. Oh boy. At least nobody vomited, thatās a bonus.
Also, I sweated more on the first return Sauna-Bahn than on the entire hike combined. It was awfully hot in there.
Anyway, all in all it was a great time in the outdoors with my mates: https://lyse.isobeef.org/monrepos-favoritepark-hungerberg-ruine-hoheneck-2026-05-01/
@yarn_police@twtxt.net Looks like the rendering in yarnd is off. The second subject (prisoner error!) was robbed, its link text got stolen.
@movq@www.uninformativ.de Thanks, mate! Yeah, that never gets old, thereās something magically about it. :-)
@bender@twtxt.net How poetic, very well said. :-) It calls for the small manās adventures.
@movq@www.uninformativ.de Thanks. Unfortunately, the weather stations are quite far away.
I have to operate my own one. :-D
@movq@www.uninformativ.de Hahaha, brilliant! :-D
@movq@www.uninformativ.de Iāve got the same problem that you had the other day: finding past temperature data. But yeah, it looked much warmer than it actually was. Maybe 5°C? Possibly less when I found myself in the snow- and rainstorm in the end.
With the wind, my fingers were frozen. I should have worn gloves. Without them, I could only put my hands in the pockets of my jacket. That didnāt help much, though, because I frequently stopped to take yet another photo, so they cooled off again right away. :-D
Balancing the big/long, closed umbrella under my arm while I had my hands burried was also a little tricky.
First world problems. :-)
There was an endless coming and going of sun, clouds and rain. Not to forget about the wind. I called it quits a bit earlier and went into the woods.
Towards the end I was completeley surrounded by rain curtains in all directions. This looked super cool. I thought I might make it home just in time without having to use my umbrella, but the rain clouds were way quicker than I anticipated. Just after the rain hit me, I met an acquaintance who just started his walk. The wind picked up hard and rain hammered down, mixed with snow. Holding the umbrella was a workout. Shortly after I returned, the rain stopped again.
I didnāt notice the kestrel sitting on the tree when I took the last photo. That was a nice surprise when I sorted through the nearly 300 pics.
@movq@www.uninformativ.de There are always some folks who would appreciate that. But I fear they are the minority. The rest just doesnāt give a shit.
The selfcontradiction is that those who proudly use and promote AI also claim to be sustainable and green and so on. Iāve no clue how this is not considered fraud, but there we are.
@movq@www.uninformativ.de Our ads are one of these rubbish ones, unfortunately. They just speak about āan attractive salaryā. I reckon I will tell my boss about this talk tomorrow (even though I doubt that any of them are from our department).
Iāve got the impression that salary is amongst the most top secret topics in Germany in general. My conspiracy theory is that companies donāt put any numbers in job ads because that would just reveal that most employees are underpaid.
All gray the last few days, but there was one morning exception: https://lyse.isobeef.org/morgensonne-2026-02-12/
@prologic@twtxt.net Sorry if I raised the wrong hope. Only the German talk is about the āwhy good people donāt want to work at your companyā subject. Among the key points are the absolutely terrible job adverts, team leads not themselves looking for people to hire but letting other dudes do that, company cultures and communication.
A mate just recommended this German talk why people donāt wanna work at your company: https://media.ccc.de/v/froscon2025-3321-es_es_ka_em_warum_gute_leute_nicht_bei_euch_arbeiten_wollen Itās really good. I fully agree with most parts.
The speaker referenced https://www.youtube.com/watch?v=2xmEgtRhw7o (MƄrten Mickos: Believe in Something Bigger Than Yourself) which is also very interesting, if you make it through the first bit. He talks about his CEO role at MySQL AB.
For several days again, YouTube fucks up all the Atom feeds every European morning. A bunch of hours just 404s. :-(
@movq@www.uninformativ.de They donāt notice anything at all. :-(
@movq@www.uninformativ.de I also had to laugh. :-D And thatās what crossed my mind for a splitsecond, too. Two decades ago or so, that would have worked. But these days are long over. Wasnāt it even an INI file or something like that?
We just wanted to play one or the other quick round of Rummikub after quitting time and suddenly itās now three hours later. :-)
Fuck me dead! I accidentally confused an HTML file for a YAML file and manually opened it in my browser. Unfortunately, I clicked on the OK button of the popped up dialog a bit too fast, it just caught me off guard. It asked which program to open the YAML file in. Of course Firefox thought that it could handle that and suggested itself by default. Conveniently, the ādonāt prompt me again and always use this selection from now onā checkbox was enabled.
And then the endless loop of death started. Turns out, this fucking browser canāt do shit with YAML files and delegated to what had been just configured. Oh, would you look at that!? Firefox! Empty tabs after empty tabs appeared. Killing and restarting Firefox just loaded the last session with all the tabs and the loop continued.
Some bloody snakeoil on my work machine slows down link openening requests by two, three seconds. Itās always absolutely anoying, but luckily, it actually limited the rate of new tabs popping up. I still could not close the many tabs fast enough that had accumulated before I noticed what was going on in the background.
Going to the settings to change them was always interrupted with a new tab opening in the foreground.
Finally, killing Firefox and renaming the file on disk before restarting Firefox did the trick and broke the loop. I was still holding down Ctrl+W for a minute or so to get rid of the useless tabs. I didnāt want to loose the important tabs, so just ditching the session wasnāt an option.
@movq@www.uninformativ.de Ah, great!
I have to analyze what is taking yt-dlp so long start up. Two and a half, three seconds just to determine that a video is in the download archive and then abort is nuts. Iām wondering what this program does before that.
@bender@twtxt.net Yes. Give me a big enough backpack⦠:-D
@dce@hashnix.club Wow! Moving without a vehicle, that seems impressive to me. Was it just down the street or how did you accomplish this? I hope you didnāt loose all your belongings due to a fire or similar catastrophe.
@movq@www.uninformativ.de Nice, itās coming together! Despite it being ages ago that I used a hex editor or viewer, these different representations of information appear very handy to me. If I had to mess around on binary formats, Iād definitely appreciate them. I canāt remember if the hex viewer back then had these options. Donāt even recall what software that was. :-)
I, too, only very, very rarely use the mouse in the terminal. Apart from selecting text to copy into the clipboard. But that probably has the potential for trouble and interference with button clicks, etc. If one isnāt careful.
How did the startup times develop?
Hmmm, thatās a pity. I never realized that before. The following Go code
var b bool
ā¦
b |= otherBool
results in a compilation error:
invalid operation: operator | not defined on b (variable of type bool)
I cannot use || for assignments as in ||= according to https://go.dev/ref/spec#Assignment_statements. Instead, I have to write b = b || otherBool like a barbarian. Oh well, probably doesnāt happen all that often, given that I only now run into this after all those many years.
@movq@www.uninformativ.de Heck, no! This must be a violation of all sorts of rules! Staged for sure.
@movq@www.uninformativ.de Oh yeah, Iād take that, too. :-)
I donāt mind most sauna goers. It would be just nicer if there were fewer people or parallel Aufguss sessions, so that itās not overcrowded.
@shinyoukai@yume.laidback.moe I donāt have a use for it, just curious, why did you fork it?
It was so great going to the sauna again, we were looking forward to that the whole week. :-) Itās been over a year, holy cow, time flies. We definitely have to pick up on that tradition again, thatās for sure.
We attended two Aufguss sessions, the first and last one in our four hour visit. Unfortunately, we didnāt make it to the other two, because the crazy people already occupied the entire sauna 15 minutes before the start. Yeah, no.
Now, the bellies are stuffed with kebabs. Yum! Letās see how often I wake up tonight to rehydrate.
@movq@www.uninformativ.de Youāre right, thatās neat. I also saw Paskās take on that which he referenced. I donāt know if I will ever attempt anything like that. Canāt imagine to succeed in that mission.
@movq@www.uninformativ.de I see. Yeah, if you gotta have to tediously plow through, it feels deeper. And sometimes it actually is.
We had super thick fog this morning. It rolled in extremely quickly, maybe 15 minutes at most. Visibility was below 50 meters. Looked cool from inside.
Ich hab es jetzt endlich geschafft, diese alte Podcastdatei anzuhƶren, die ich auf meiner Platte fand. Omega-Tau 293 über WasserstraĆen und im Speziellen den Neckar. Total interessant. Ich bin bisher noch nie über diese Serie gestolpert und habe keine Ahnung, wie ich überhaupt zu der Datei kam. Leider ist der Podcast mittlerweile eingestellt, das TLS-Zertifikat der Website die Tage abgelaufen und die Folgenseite tot, aber die Audiodatei gibtās noch: https://traffic.libsyn.com/secure/omegataupodcast/omegatau-393-wasserstrassen.mp3
A few minutes of nice colors in the sky: https://lyse.isobeef.org/abendhimmel-2026-02-04/
@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
Building a Roman crossbow completely by hand is soo fascinating and damn cool: https://youtube.com/watch?v=sSCwmXy_8Bo
@movq@www.uninformativ.de Welcome home! How many decimeters did you get? It just snowed a tiny bit, but absolutely zero survived on the ground here.
@movq@www.uninformativ.de I donāt have any statistics, just observe what is around me, so itās very subjective. I know a bunch of kids with names Iāve never heard before. Sometimes, I first thought other kids were making fun of their friends by calling them by made-up nonsense. But no. Without question, I live under a rock. I just looked up some of them that came to mind immediately and they seem to be of Greek, Swedish and Latin origin, etc.
@movq@www.uninformativ.de Oh yeah, that sounds really nicely.
@movq@www.uninformativ.de I reckon up until then you had to have another first name that clearly differentiated. Didnāt read through the court decision, though.
Interesting, I always thought that Kiran was a male first name. But I only know one person with that name. As last name, though.
Now Iām wondering, was that also the beginning when parents started giving their kids really weird names?
@bender@twtxt.net Hahahaha! :-D
@klaxzy@klaxzy.net Haha, I just noticed because my client colors mentions differently depending on whether I follow the feed or not. ;-)
@klaxzy@klaxzy.net I just wanna let you know that in your last two messages there are backslashes at the end of the mention URLs.
@movq@www.uninformativ.de I see. Never watched that show.
@bender@twtxt.net Ta! :-)
Iāve got sore muscles. The sticky snow couldnāt be pushed, it had to be laborously cleared shovel by shovel. :-D
In my lunch break, I went on a short stroll. Oh boy, walking through deep damp snow is exhausting! There were sections with easily 30 centimeters and more. Some big wind drifts had piled up. Despite melting off quickly in the 4°C, especially turning the trees brown again, the white landscape still looks so nice. Iām glad these road marking sticks finally came in handy for the snow plow guys. :-) The black and orange stripes are 30 cm high.
https://lyse.isobeef.org/waldspaziergang-2026-01-26/
Thatās probably it. Thereās no significant snowfall announced for the rest of the week and temperatures are supposed to stay in the 2-4°C range by day.
Just showelled 20cm of snow for half an hour, fuck me! Iām totally shattered. But itās worth it. Looks so beautiful. And all the disbelief and terror in the eyes of the people. Well, thatās what our winters were like three decades ago. Iām just glad that I can work from home.
@movq@www.uninformativ.de No, I donāt know what that is. :-?
argparse takes 50 ms on my NUC, because this pulls in all kinds of fancy stuff behind the scenes, colorization and what not. š®āšØ
@movq@www.uninformativ.de Feature creep is killing it. :-(
@movq@www.uninformativ.de I was also extremely surprised and couldnāt believe it myself. But around the hair were definitely two, three millimeters of ice with a bunch of snow on top. I couldnāt simply brush it off, the hair were all frozen together. Back in the house, it took maybe three minutes to melt the solidified white stuff and free up and disconnect the individual hair. Crazy.
Yeah, 0°C in town, maybe -2°C on the summit. It definitely didnāt feel all the cold, but I came prepared with a few layers of cloth.
What a beautiful, beautiful 0°C Sunday arvo and evening! The weather forecast delayed the snow by the minute. An hour or so after it finally started very, very lightly, I headed off for the woods to check out the lake again. Unfortunately, with the fresh snow layer, the crazy wild surface texture of the ice sheet wasnāt visible anymore. But it brought some other nice views and photo opportunities.
I initially thought that I just go for a quick turn. However, with the snowfall a wee bit increasing I was hooked and kept going. Visibility was poor, but the snow blankets just looked too stunning. The road surfaces were quite slippery, so I often just walked alongside the pathways. On downhill slopes I had some good fun sliding down the road on my feet. With varying success. Luckily, I managed not to fall.
On the summit of the mountain the twigs had those absolutely magnificently looking windblown crystal coverings. Awwwwwww! They never get old. It was already getting dark, so the camera was tired and wanted to sleep. The snow program then made use of the flash and Iām quite pleased with how these shots turned out.
Two deer crossed the road in front of me and ran into the woods, that was sight for sore eyes. Although I felt bad that they had to flee from me in this white terrain. By the time I got home, the snow had accumulated around eight centimeters in height, even in town down in the valley. Walking on this fresh snow is just amazing. And I love the sound it makes. Today, the snow consistency must have been just right, because the crushing sound was really loud.
I cannot recall that I had frozen hair and beard before, but today, there was a thick ice buildup. In case I had, it was definitely never this much. Felt really cool.
Enough of this preliminary skirmishing, there ya go: https://lyse.isobeef.org/waldspaziergang-2026-01-25/
@movq@www.uninformativ.de Cool, cool, cool! Happy hacking. :-)
@movq@www.uninformativ.de Probably already dry by the time you get there. ;-)
@bender@twtxt.net I love that you set your alarm. :-D Lucky for my new teammates (or maybe not) Iām not gonna leave them. No week has passed where my old mates didnāt consult me, so I reckon Iām still a secret service agent in the old team. :-P
@bender@twtxt.net Hahaha! It was already too dark for this poor camera. Yes, this pond was frozen solid. I will check it out tomorrow during daylight and have another attempt.
@movq@www.uninformativ.de Maybe ask the guys at CERN whether you can quickly put your soaking wet stuff in their Laundry deHumidifying Centrifuge every so often.
Itās been slightly ice cold: https://lyse.isobeef.org/waldspaziergang-2026-01-23/
@shinyoukai@yume.laidback.moe @prologic@twtxt.net @movq@www.uninformativ.de /me raises his hand, too.
@movq@www.uninformativ.de Very interesting!
@movq@www.uninformativ.de :-D LOL!
@klaxzy@klaxzy.net Hahaha, thatās funny! :-D
There are the two poles: https://www.openstreetmap.org/directions?from=48.735473%2C9.718418
@movq@www.uninformativ.de Yeahā¦
@movq@www.uninformativ.de Hehe. :-) This steep footpath connects a hiking parking lot outside the village and the edge of the village in a fairly straight line. Garden owners are allowed to drive their vehicles down from the village to their lots on this pathway and up again. These two poles are placed about a third up from the botton on a short, comparatively flat section to stop people from taking this shortcut to get down to the country road. Said road goes through the village but there are hairpins getting up and down. The road markings have been added recentlyish. I suspect to warn shooting down cyclists of the danger ahead. I havenāt seen something like this anywhere else either. :-)
My mate and I went on a hike earlier. Yesterday, we had lovely 12°C. But today, it was down to at most 4°C. Oh well. At least the sun was out and and there was just a tiny bit of wind. We knew upfont that scarf, beanie and gloves were mandatory. Especially at the more windy sections like up top the hills. The view was absolutely terrible, but we made the best of it.
With the sun shining on us during our lunch break at a forest edge bench, we still enjoyed the lookout in 01. I brought some old carpet scraps to sit on and was happily surprised that they isolated even better than I had hoped for. Some hot tea helped us staying warm.
After five hours we returned just after sunset. Iām quite tired now, completely out of shape.
Well, the Atom feed entry IDs changed, too. I had to mark everything as read again.
@movq@www.uninformativ.de I still think that your original domain is cool as fuck! :-)
I didnāt change any subscriptions, and I still see your messages, so whatever you did worked fine. :-)
Wow, as I anticipated, this is waaay out of my capabilities to really understand it. But Iām quite happy to just have spotted a mistake in an explanatory comment in section 4.5.2 āThe icode Arrayā. Of course, it should be /e + tc + /i + ni + t\0. Letās hope that my e-mail with the patch actually makes it into Briamās inbox. I fear GMail just hides it in the spam folder.
@movq@www.uninformativ.de Just 323 pages! Thatās cool, letās have a look. :-)
./bin/mu -B -o ... -p muos/amd64 ... target.
@prologic@twtxt.net Tada! Maybe one day I might look into this lowlevel stuff, too. But I canāt see it on the horizon yet. Happy hacking! :-)
tcell.Key constants and typing different key combinations in the terminal to see the generated tcell.EventKeys in the debug log. Until I pressed Ctrl+Alt+Backspace⦠:-D Yep, suddenly there went my Xā¦
@movq@www.uninformativ.de I guess so, yes. I read something about that in some ticket. In v3 the terminfo support was dropped, though. Iām still on v2 at the moment.
tcell.Key constants and typing different key combinations in the terminal to see the generated tcell.EventKeys in the debug log. Until I pressed Ctrl+Alt+Backspace⦠:-D Yep, suddenly there went my Xā¦
And tcell seems to support my urxvt in general: https://github.com/gdamore/tcell/blob/v2/terminfo/r/rxvt/term.go#L144
@movq@www.uninformativ.de Woah, thatās really amazing progress! :-)
tcell.Key constants and typing different key combinations in the terminal to see the generated tcell.EventKeys in the debug log. Until I pressed Ctrl+Alt+Backspace⦠:-D Yep, suddenly there went my Xā¦
@movq@www.uninformativ.de Yeah, I know that terminals are super weird and messy. In both the KDE Konsole (identifying itself as TERM=xterm-256color) and xterm (TERM=xterm) it just works flawlessly. My urxvt (TERM=rxvt-unicode-256color) just doesnāt. I also tried messing with TERM in urxvt, but no luck so far.
tcell.Key constants and typing different key combinations in the terminal to see the generated tcell.EventKeys in the debug log. Until I pressed Ctrl+Alt+Backspace⦠:-D Yep, suddenly there went my Xā¦
Well, in Xterm, I actually do get key combinations with the Shift modifier. Also, combinations of several modifiers just work exactly as I expect. But not in URXvt. Hmm.
Here am I looking at the different tcell.Key constants and typing different key combinations in the terminal to see the generated tcell.EventKeys in the debug log. Until I pressed Ctrl+Alt+Backspace⦠:-D Yep, suddenly there went my Xā¦
So far, it appears as if I can have either only Ctrl or Alt as modifiers. But not in combination. And Shift is just never ever set at all. Interesting.
tt. Boy, is parsing the key names into tcell.EventKeys a horrible thing. This type consists of three information:
Ha, I just stumbled across https://codeberg.org/tslocum/cbind, perfect!
@bender@twtxt.net ICQ, yeah, I vaguely remember these times, despite I still know my ICQ number like it was yesterday. :-D
@shinyoukai@neko.laidback.moe No, itās not dead. The one account in question actually is on jabber.org.
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.
@movq@www.uninformativ.de Sorry, I meant the builtin module:
$ python3 -m pep8 file.py
/usr/lib/python3/dist-packages/pep8.py:2123: UserWarning:
pep8 has been renamed to pycodestyle (GitHub issue #466)
Use of the pep8 tool will be removed in a future release.
Please install and use `pycodestyle` instead.
$ pip install pycodestyle
$ pycodestyle ...
I canāt seem to remember the name pycodestyle for the life of me. Maybe thatās why I almost never use it.