ayushnix has quit [Remote host closed the connection]
groknull has joined #river
groknull has quit [Remote host closed the connection]
NickH has quit [Remote host closed the connection]
NickH has joined #river
waleee has quit [Ping timeout: 264 seconds]
snakedye has quit [Ping timeout: 250 seconds]
snakedye has joined #river
talismanick has quit [Ping timeout: 250 seconds]
eShaev9z_ has joined #river
eShaev9z has quit [Ping timeout: 264 seconds]
smach has joined #river
smach has quit [Client Quit]
cabal704 has joined #river
cabal704 has quit [Client Quit]
fitrh has joined #river
snakedye has quit [Ping timeout: 268 seconds]
<NikhilSingh[m]>
is there any way i can implement going to next and previous tag respective of current one (kindda want cycle in range of 1-9 for every output)
<NikhilSingh[m]>
how to get the value of current output tag?
jao has quit [Ping timeout: 265 seconds]
Ordoviz has joined #river
fitrh has quit [Read error: Connection reset by peer]
ahmadraniri[m] has quit [Quit: Bridge terminating on SIGTERM]
p00f1 has quit [Quit: Bridge terminating on SIGTERM]
uncomfyhalomacro has quit [Quit: Bridge terminating on SIGTERM]
Arya[verncc][m] has quit [Quit: Bridge terminating on SIGTERM]
kraem_ has quit [Quit: Bridge terminating on SIGTERM]
mizzunet has quit [Quit: Bridge terminating on SIGTERM]
AryaKiran has quit [Quit: Bridge terminating on SIGTERM]
DemiMarie has quit [Quit: Bridge terminating on SIGTERM]
yutkat[m] has quit [Quit: Bridge terminating on SIGTERM]
lordmzte has quit [Quit: Bridge terminating on SIGTERM]
plumeus has quit [Quit: Bridge terminating on SIGTERM]
voroskoi[m] has quit [Quit: Bridge terminating on SIGTERM]
testy has quit [Quit: Bridge terminating on SIGTERM]
n0r[m] has quit [Quit: Bridge terminating on SIGTERM]
Shinyzenith[m] has quit [Quit: Bridge terminating on SIGTERM]
tiosgz has quit [Quit: Bridge terminating on SIGTERM]
tleydxdy[m] has quit [Quit: Bridge terminating on SIGTERM]
Snektron has quit [Quit: Bridge terminating on SIGTERM]
entenel has quit [Quit: Bridge terminating on SIGTERM]
Grafcube[m] has quit [Quit: Bridge terminating on SIGTERM]
akumar[m] has quit [Quit: Bridge terminating on SIGTERM]
NikhilSingh[m] has quit [Quit: Bridge terminating on SIGTERM]
Nulo has quit [Ping timeout: 268 seconds]
kraem_ has joined #river
Abdullah has quit [Ping timeout: 248 seconds]
lordmzte has joined #river
Shinyzenith[m] has joined #river
p00f1 has joined #river
yutkat[m] has joined #river
voroskoi[m] has joined #river
Grafcube[m] has joined #river
ahmadraniri[m] has joined #river
mizzunet has joined #river
entenel has joined #river
plumeus has joined #river
DemiMarie has joined #river
tleydxdy[m] has joined #river
tiosgz has joined #river
testy has joined #river
akumar[m] has joined #river
AryaKiran has joined #river
n0r[m] has joined #river
uncomfyhalomacro has joined #river
Arya[verncc][m] has joined #river
NikhilSingh[m]1 has joined #river
Snektron has joined #river
waleee has joined #river
<DemiMarie>
Does River allow writing third-party window managers?
<leon-p>
DemiMarie: kinda
<leon-p>
we have the layout protocol
<leon-p>
however layout generators are pretty limited. they only respond to the server requesting a layout
<leon-p>
and they are not responsible for handling focus, which is still done by the server
<leon-p>
they don't know which window is focused either (or identify individual windows at all), so resizing individual windows like in sway isn't possible
<leon-p>
but as long as what you are trying to do is generating a strictly linear window layout where you want to cycle the focus up or down the logical window stack instead of focusing spatially, you should be fine
<leon-p>
note that we do plan to give layout gens a lot more control, however that will require some further work and careful protocol design
<ifreund>
I think "third party window managers" describes my long term plans fairly well, though it's unclear exactly how much policy it is feasible to move out of the compositor process
<ifreund>
I intend to move as much as possible out
<ifreund>
but there are tradeoffs wrt latency in particular that need careful consideration
<leon-p>
I think it makes sense to not go the X route and give full control, but rather offer a few abstracted events / requests. For example I think it makes more sense to have a "attach this windows position to the cursor with these constraints" request than implementing that functionality manually
<ifreund>
leon-p: I think that boils down to the policy vs mechanism distinction, I agree in theory but don't yet have a clear idea how this will look in practice
<ifreund>
scheme seems pretty well thought out, and potentially very nice for higher level WM logic/configuration in code
<leon-p>
have you read "the little schemer"? highly recommended if you want to get into it a bit more. I think there is also a second book that takes it a bit further
<leon-p>
pretty sure Guile Scheme has a Wayland library already, so it's definitely possible
<ifreund>
no I haven't, I figured that dybvig's book would be the most indepth/well thought out
<ifreund>
Without having used any scheme implementation heavily, chicken currently looks the nicest to me
<leon-p>
that's the one that compiles to c, wasn't it?
<ifreund>
yeah, highly portable and seems like a good simplicity/performance ratio
<ifreund>
If I really care about performance I'll just write Zig after all
<leon-p>
would be neat if the important part of the future rivertile would fit into one single scheme file. right now river is only hackable if you know how to Wayland
<ifreund>
one other thing that seems very attractive would be hot code reloading for this kind of thing
Nulo has joined #river
<leon-p>
reload rivers code or that of an external client?
Nulo has quit [Read error: Connection reset by peer]
<leon-p>
ieadeally I'd like to make it as hard as possible for users hacking around to loose their session, even if they do weird things
Nulo has joined #river
Ordoviz has quit [Ping timeout: 268 seconds]
Ordoviz has joined #river
waleee has quit [Ping timeout: 268 seconds]
<ifreund>
leon-p: reload the "window manager" client external to river without losing its in-memory state
<ifreund>
and I totally agree, enabling hacking around without losing the session/needing to restart river to test changes is a design goal
<leon-p>
if that's your goal, I think you'll have better results by using a scheme and attaching a REPL
Ordoviz has quit [Ping timeout: 265 seconds]
Abdullah has joined #river
<plumeus>
A second book that takes Scheme further? Perhaps SICP?
<plumeus>
I've been reading SICP and when I wondered if I should give The Little Schemer a shot, I think I was told it's pretty much redundant as SICP covers more... Or that might have been a different book... Welp.
<plumeus>
I do recommend SICP though. Probably the best book I've read, although it's very math heavy and lax on programming itself, I feel.
Nulo has quit [Read error: Connection reset by peer]
Nulo has joined #river
Ordoviz has joined #river
Ordoviz has quit [Quit: WeeChat 3.6]
Ordoviz has joined #river
<leon-p>
math is fitting in a lisp book. almost took a seminar on lambda calculus this semester, but a lab project was a bit more interesting in the end
<leon-p>
The Little Schemer focuses more on how to structure control flow. super nice to de-program your brain from linearimperative programming
jao has joined #river
cabal704 has joined #river
cabal704 has quit [Read error: Connection reset by peer]
cabal704 has joined #river
jeanjack_ has joined #river
jeanjack has quit [Ping timeout: 268 seconds]
jeanjack has joined #river
jeanjack_ has quit [Ping timeout: 265 seconds]
jeanjack has quit [Ping timeout: 252 seconds]
jeanjack has joined #river
Nulo has quit [Ping timeout: 268 seconds]
Nulo has joined #river
Nulo has quit [Ping timeout: 265 seconds]
jeanjack has quit [Ping timeout: 268 seconds]
Nulo has joined #river
ayushnix has joined #river
cabal704 has quit [Quit: WeeChat 3.5]
jeanjack has joined #river
ayushnix has quit [Ping timeout: 252 seconds]
snakedye has joined #river
ayushnix has joined #river
ayushnix has joined #river
ayushnix has quit [Changing host]
jeanjack has quit [Ping timeout: 244 seconds]
jeanjack has joined #river
jeanjack has quit [Ping timeout: 268 seconds]
jeanjack has joined #river
jeanjack has quit [Ping timeout: 244 seconds]
jeanjack has joined #river
jeanjack_ has joined #river
jeanjack has quit [Ping timeout: 260 seconds]
snakedye has quit [Ping timeout: 260 seconds]
Ordoviz has quit [Quit: WeeChat 3.6]
snakedye has joined #river
snakedye has quit [Read error: Connection reset by peer]
snakedye has joined #river
jeanjack has joined #river
jeanjack_ has quit [Ping timeout: 252 seconds]
jeanjack has quit [Ping timeout: 268 seconds]
jeanjack has joined #river
ayushnix has quit [Remote host closed the connection]
ayushnix has joined #river
ayushnix has quit [Changing host]
ayushnix has joined #river
jeanjack has quit [Ping timeout: 268 seconds]
jeanjack has joined #river
ayushnix has quit [Remote host closed the connection]