Live data from Hacker News

Show HN: A Tiling Window Manager for Windows, Written in Janet

agent-kilo.github.io

101–110 of 112 posts

Re: Show HN: A Tiling Window Manager for Windows, Written in Janet

#101
post #98

Earlier quoted context omitted.

> Having tiling options that fit within a smaller part of the screen (e.g. still allow side by side or top/bottom split, but in a smaller total region) would be great. Do you mean reserving screen space for the on-screen keyboard? If that's the case, you can try to "transform" the top-level frame (a frame that tracks a monitor's screen area), either in the REPL or in your config: https://agent-kilo.github.io/jwno/coo…

Yes! transforming the top level frame sounds like the way to go. I ran jwno with example-config and pressed RAlt and RAlt+K a few times, each time trying one of the onscreen shortcut keys (b, c, d, etc). Log at the bottom of this comment. At the end of the process I was left in a state where pressing Space triggered a context menu in my title bar, and I couldn't type space in the app (e.g. in Notepad or Terminal) whi…

It seems your right alt key is actually the AltGr key. I didn't explicitly support AltGr in Jwno, so it freaked out.

Sorry for the confusion. I think switching to another leader key, such as LAlt or RCtrl, should fix the issue.

Re: Show HN: A Tiling Window Manager for Windows, Written in Janet

#103

What resource did you use to learn Janet? And did you already know lisp before? Comming from Python and php I found the "Janet for mortals" very difficult. It expected me to know what closures and macros are.

I'm not the one you asked, but maybe this is helpful:

I learnt Janet after learning Clojure, and it all felt very natural. So a possible approach is to grab a beginner Clojure book/tutorial first, run some of the examples, and then see how far you get with Janet.

Not everything is the same, but you'll find that out along the way, and the people in the Janet Zulip chat are always super helpful.

Also check out https://janetdocs.com for some examples.

Re: Show HN: A Tiling Window Manager for Windows, Written in Janet

#104
post #6

Jwno is great, agentkilo is kind, Lisp is magic :)

Thanks for the kind words! It means a lot coming from you :)

This means something to me that one dev recognizes another and gives them kudos. I applaud this positive behaviour. You'd never get that from the AI monsters. But of course, now you probably will. Sorry, everyone.

Re: Show HN: A Tiling Window Manager for Windows, Written in Janet

#105
post #98

Earlier quoted context omitted.

Yes! transforming the top level frame sounds like the way to go. I ran jwno with example-config and pressed RAlt and RAlt+K a few times, each time trying one of the onscreen shortcut keys (b, c, d, etc). Log at the bottom of this comment. At the end of the process I was left in a state where pressing Space triggered a context menu in my title bar, and I couldn't type space in the app (e.g. in Notepad or Terminal) whi…

It seems your right alt key is actually the AltGr key. I didn't explicitly support AltGr in Jwno, so it freaked out. Sorry for the confusion. I think switching to another leader key, such as LAlt or RCtrl, should fix the issue.

Thanks, that's it. I really like 'gradually walk the UI tree', though I'm struggling a bit with the thing I want being obscured by the label (and me not remembering what was there). An offset would be nice, though I'm sure it's not easy to define a heuristic that works in all places.

The first thing I tried was in my browser, I asked for all the buttons and it labelled the 'x' to close each tab, but where the labels were laid out it just looked like an inviting right-aligned label on the clickable tabs themselves. Lost a few tabs before I realised, because you also don't see any feedback on the click since any UI feedback is hidden by the label. Hmm. Food for thought.

Re: Show HN: A Tiling Window Manager for Windows, Written in Janet

#106
post #85

Earlier quoted context omitted.

Yeah, it's mind-blowing when it clicks, and makes the whole "exceptions vs. return types" discussion look like a quarrel of 3yos in a sand box. Error handling in other languages/runtimes just doesn't feel sufficient from now on. This is, of course, just a part of a larger whole - the fact that your Common Lisp program ships with a compiler it can access and effectively always runs in an edit-and-go debugger. Embracin…

> Yeah, it's mind-blowing when it clicks, and makes the whole "exceptions vs. return types" discussion look like a quarrel of 3yos in a sand box. Error handling in other languages/runtimes just doesn't feel sufficient from now on. I am still waiting for a non-Lisp language with a half-decent restart system. Even compiled languages should be able to implement it (except dealing with a possible allocation failure when…

What is the issue with the system in Smalltalks?

Re: Show HN: A Tiling Window Manager for Windows, Written in Janet

#107
post #85

Earlier quoted context omitted.

Yeah, it's mind-blowing when it clicks, and makes the whole "exceptions vs. return types" discussion look like a quarrel of 3yos in a sand box. Error handling in other languages/runtimes just doesn't feel sufficient from now on. This is, of course, just a part of a larger whole - the fact that your Common Lisp program ships with a compiler it can access and effectively always runs in an edit-and-go debugger. Embracin…

> Yeah, it's mind-blowing when it clicks, and makes the whole "exceptions vs. return types" discussion look like a quarrel of 3yos in a sand box. Error handling in other languages/runtimes just doesn't feel sufficient from now on. I am still waiting for a non-Lisp language with a half-decent restart system. Even compiled languages should be able to implement it (except dealing with a possible allocation failure when…

ditto jdougan

"Restart. Start execution of the current method from the beginning. You can edit a method shown in the code pane, save it, and restart it!"

https://drcuis.github.io/TheCuisBook/The-Debugger.html

Re: Show HN: A Tiling Window Manager for Windows, Written in Janet

#108
post #105

Earlier quoted context omitted.

It seems your right alt key is actually the AltGr key. I didn't explicitly support AltGr in Jwno, so it freaked out. Sorry for the confusion. I think switching to another leader key, such as LAlt or RCtrl, should fix the issue.

Thanks, that's it. I really like 'gradually walk the UI tree', though I'm struggling a bit with the thing I want being obscured by the label (and me not remembering what was there). An offset would be nice, though I'm sure it's not easy to define a heuristic that works in all places. The first thing I tried was in my browser, I asked for all the buttons and it labelled the 'x' to close each tab, but where the labels…

> An offset would be nice, though I'm sure it's not easy to define a heuristic that works in all places.

I agree. I considered dynamic offsets, in an effort to declutter the labels, but found it even more confusing. Maybe I should do more experiments on this.

> but where the labels were laid out it just looked like an inviting right-aligned label on the clickable tabs themselves

The labels are left-aligned by default (except in `frame-hinter`). I think you can try some combinations of the `:anchor` and `:show-highlights` options[1] to see if they work better for you.

[1]: https://agent-kilo.github.io/jwno/ref/built-in-modules/jwno-...

Edit: Wrong link

Re: Show HN: A Tiling Window Manager for Windows, Written in Janet

#109

I'm curious, did you find there were things that were easier to do because it's Janet/lisp-like language? Or you just fancied like using it (perfectly valid reason of course!). I tried various lisp dialects, but I could never find the killer feature vs other languages I already use. And I can justify why I use these specific languages I do use, if that makes sense.

> I could never find the killer feature vs other languages I already use. You're kidding or trolling? Structural editing and the REPL are the greatest features of Lisp. The ability to just grab any expression and move it around simplifies so many things when coding and refactoring. With the connected REPL you can eval anything on the spot, that turns the entire experience of coding into a video game — you don't need…

I have only just begun my road down lisp, from starting to hack some elisp and working with some CL for fun. But structural editing is turning out to rapidly be my favorite feature, to the point that I'm working in my personal time on a lisp (syntax? language? idk haven't exactly decided) on top of Julia (my preferred language) so that I can use structural editing. The ability to just grab and drop entire expressions and advance through code by expression at a given level of the tree or up and down it is just really really nice.

There already is a LispSyntax.jl but it's sort of trying to be a Clojure clone and I don't care for it, haha.

Re: Show HN: A Tiling Window Manager for Windows, Written in Janet

#110
post #100

Earlier quoted context omitted.

That's the other thing. Version control is tricky with image-based systems. I won't say impossible, I never looked deeply into what Smalltalk/Pharo folks are doing, but since between playing with Pharo and Glamorous Toolkit I saw Git being integrated first-class into one of them, I imagine someone has some idea how to deal with the problem. What I meant though isn't collaborative/historical tracking, I meant day-to-d…

> Version control is tricky with image-based systems Back in the day: "ENVY/Manager augments this model by providing configuration management and version control facilities. All code is stored in a central database rather than in files associated with a particular image. Developers are continuously connected to this database; therefore changes are immediately visible to all developers." https://www.google.com/books/e…

The "Back in the day" sounds better as a pattern in general.
Post reply on HN