Home liberachat/#xmonad: Logs Calendar

Logs on 2021-11-27 (liberachat/#xmonad)

00:02:22 alternateved parts (~user@staticline-31-183-149-3.toya.net.pl) (ERC 5.4.1 (IRC client for GNU Emacs 29.0.50))
00:20:30 × banc quits (banc@gateway/vpn/airvpn/banc) (Ping timeout: 256 seconds)
00:32:51 × jmct_ quits (sid160793@tinside.irccloud.com) (Ping timeout: 245 seconds)
00:33:16 × amir quits (sid22336@user/amir) (Ping timeout: 245 seconds)
00:34:07 amir joins (sid22336@user/amir)
00:36:12 jmct_ joins (sid160793@id-160793.tinside.irccloud.com)
00:43:29 cyr4x3 joins (~cyr4x3@139.47.118.87)
00:43:29 × cyr4x3 quits (~cyr4x3@139.47.118.87) (Client Quit)
00:53:16 × werneta quits (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Quit: Lost terminal)
00:53:47 werneta joins (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
01:02:20 × catman quits (~catman@user/catman) (Quit: WeeChat 3.4-dev)
01:06:32 catman joins (~catman@user/catman)
02:04:40 × noex quits (~null@2600:8804:1280:aa0:5857:94a:25de:c513) (Quit: my dad's not a phone!)
02:05:02 noex joins (~null@2600:8804:1280:aa0:5857:94a:25de:c513)
02:52:08 × matijja quits (~matijja@193.77.181.201) (Quit: ZNC 1.8.1 - https://znc.in)
02:56:54 matijja joins (~matijja@193.77.181.201)
03:15:31 rekahsoft joins (~rekahsoft@cpe0008a20f982f-cm64777d666260.cpe.net.cable.rogers.com)
03:22:59 × td_ quits (~td@94.134.91.33) (Ping timeout: 250 seconds)
03:24:49 MrNobody_0000000 joins (~MrNobody@user/mrnobody-0000000/x-9129771)
03:24:51 td_ joins (~td@94.134.91.117)
03:24:53 × MrNobody_0000000 quits (~MrNobody@user/mrnobody-0000000/x-9129771) (Client Quit)
03:25:16 MrNobody_0000000 joins (~MrNobody@user/mrnobody-0000000/x-9129771)
04:27:57 × MrNobody_0000000 quits (~MrNobody@user/mrnobody-0000000/x-9129771) (Quit: MrNobody_0000000)
04:31:36 MrNobody_0000000 joins (~MrNobody@user/mrnobody-0000000/x-9129771)
04:58:14 × werneta quits (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Quit: Lost terminal)
05:32:27 × Vermoot quits (~vermoot@89-158-106-112.rev.numericable.fr) (Remote host closed the connection)
05:32:44 Vermoot joins (~vermoot@89-158-106-112.rev.numericable.fr)
05:33:28 × rekahsoft quits (~rekahsoft@cpe0008a20f982f-cm64777d666260.cpe.net.cable.rogers.com) (Remote host closed the connection)
05:34:01 rekahsoft joins (~rekahsoft@cpe0008a20f982f-cm64777d666260.cpe.net.cable.rogers.com)
05:38:10 werneta joins (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
05:48:11 × rekahsoft quits (~rekahsoft@cpe0008a20f982f-cm64777d666260.cpe.net.cable.rogers.com) (Remote host closed the connection)
05:48:42 rekahsoft joins (~rekahsoft@cpe0008a20f982f-cm64777d666260.cpe.net.cable.rogers.com)
06:04:21 × rekahsoft quits (~rekahsoft@cpe0008a20f982f-cm64777d666260.cpe.net.cable.rogers.com) (Remote host closed the connection)
06:04:54 rekahsoft joins (~rekahsoft@cpe0008a20f982f-cm64777d666260.cpe.net.cable.rogers.com)
06:18:38 × rekahsoft quits (~rekahsoft@cpe0008a20f982f-cm64777d666260.cpe.net.cable.rogers.com) (Ping timeout: 256 seconds)
06:24:21 × mvk quits (~mvk@2607:fea8:5cc1:fa00::4702) (Ping timeout: 250 seconds)
06:38:13 mvk joins (~mvk@2607:fea8:5cc1:fa00::4702)
08:49:44 qbt joins (~qbt@user/edun)
08:54:22 banc joins (banc@gateway/vpn/airvpn/banc)
08:57:44 alternateved joins (~user@staticline-31-183-149-3.toya.net.pl)
09:00:08 × diamondtoken[m] quits (~diamondto@2001:470:69fc:105::1:2594) (Quit: You have been kicked for being idle)
09:03:17 × qbt quits (~qbt@user/edun) (Quit: Leaving.)
09:03:25 × Solid quits (~slot@xmonad/slotThe) (Remote host closed the connection)
09:04:09 Solid joins (~slot@xmonad/slotThe)
09:12:36 × Solid quits (~slot@xmonad/slotThe) (Remote host closed the connection)
09:14:42 Solid joins (~slot@xmonad/slotThe)
09:17:37 × geekosaur quits (~geekosaur@xmonad/geekosaur) (Killed (NickServ (GHOST command used by allbery_b)))
09:17:40 allbery_b joins (~geekosaur@xmonad/geekosaur)
09:17:43 allbery_b is now known as geekosaur
09:19:40 × Solid quits (~slot@xmonad/slotThe) (Quit: Connection reset by pear)
09:20:04 Solid joins (~slot@xmonad/slotThe)
09:37:14 qbt joins (~qbt@user/edun)
09:37:54 × mvk quits (~mvk@2607:fea8:5cc1:fa00::4702) (Ping timeout: 260 seconds)
10:00:32 × werneta quits (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 240 seconds)
10:01:23 × qbt quits (~qbt@user/edun) (Quit: Leaving.)
10:04:00 alternateved parts (~user@staticline-31-183-149-3.toya.net.pl) (ERC 5.4.1 (IRC client for GNU Emacs 29.0.50))
10:05:17 qbt joins (~qbt@user/edun)
10:15:42 × qbt quits (~qbt@user/edun) (Quit: Leaving.)
10:37:37 <Vermoot> So this is gonna be a bit different:
10:38:08 <Vermoot> Can you guys think of a way I can bind something to two mouse buttons *at the same time*?
10:38:55 <Vermoot> I'd like to move my windows (by default with mod+mouse1 and drag) by using both mouse buto
10:39:15 <Vermoot> buttons (mouse 1 and mouse 3 and drag) simultaneously
10:44:04 <Vermoot> and preferrably regardless of order (I was thinking of using mouse1 as a modifier, which would mean having to press mouse1 before mouse3, and I'd like to avoid that)
10:48:26 seschwar joins (~seschwar@user/seschwar)
11:30:57 × haskl[error] quits (~haskl@user/haskl) (Read error: Connection reset by peer)
11:33:04 haskl joins (~haskl@user/haskl)
12:55:00 <FOSSHuman[m]> <geekosaur> "windows (\ss -> foldr (W...." <- Thanks for the solution! It may take me a while to understand this and add it to my config, I wonder if I could use some kind of prompt to ask which workspace I want to windows shifted to, but for now I'll just try this.. (beginner at Haskell btw)
13:07:52 qbt joins (~qbt@user/edun)
13:08:37 <geekosaur> https://hackage.haskell.org/package/xmonad-contrib-0.17.0/docs/XMonad-Prompt-Workspace.html
13:09:18 <geekosaur> Vermoot, X11 doesn't really support that
13:10:17 <geekosaur> moreover it's going to conflict with the default server behavior that both buttons at the same time emulates button 2
13:10:57 <geekosaur> which is wired in and you can't useit to emulate a different mouse button, which would make it much easier to implement if it worked :(
13:24:27 × qbt quits (~qbt@user/edun) (Quit: Leaving.)
13:26:25 qbt joins (~qbt@user/edun)
13:31:34 × qbt quits (~qbt@user/edun) (Quit: Leaving.)
13:34:11 qbt joins (~qbt@user/edun)
13:36:07 × qbt quits (~qbt@user/edun) (Client Quit)
13:52:03 qbt joins (~qbt@user/edun)
14:41:47 × qbt quits (~qbt@user/edun) (Quit: Leaving.)
14:46:08 qbt joins (~qbt@user/edun)
14:49:32 × qbt quits (~qbt@user/edun) (Client Quit)
14:51:35 <Vermoot> geekosaur, I had tested in xev how it looked when clicking with both buttons, and it seemed to me to properly recognize those, but alright
14:53:06 <Vermoot> I'd actually be fine with using button 2 instead, but some apps I use (Bitwig Studio, for example) use button 2 click and drag for some actions, which I guess would be problematic
14:53:28 <Vermoot> I'm guessing in general binding a mouse button without any modifier isn't a good idea?
14:54:00 qbt joins (~qbt@user/edun)
15:00:23 × qbt quits (~qbt@user/edun) (Quit: Leaving.)
15:09:31 <geekosaur> right, that takes it away from apps
15:10:05 <geekosaur> and while you can configure a key to be a modifier, you can't configure a mouse button to be a modifier
15:12:36 <geekosaur> there are other potential solutions, for example you can get a foot pedal and set it up as a modifier
15:21:29 <Vermoot> eeeeh
15:21:37 <Vermoot> I don't really have a use for that right now
15:22:06 <Vermoot> I do have a mouse with tons of buttons though, some of which I could use for that kind of stuff
15:22:24 <Vermoot> But right now the mouse is configured to send keyboard events, like a numpad
15:22:27 <Vermoot> Which isn't ideal
15:23:27 <Vermoot> I'm not sure how to make it output mouse button events (20 of them)
15:23:34 <Vermoot> (It's a Logitech G600)
15:24:32 <geekosaur> I think you have to run a configuration utility (which of course is only available for Windows)
15:24:59 <Vermoot> My overall goal is always the same: have a setup I can use in keyboard-only (that's easy) mode, kb+m, or mouse only for when I'm lazily browsing with just my mouse
15:25:09 <geekosaur> (maaaaaaybe MacOS if they felt like it; Logi goes through phases where they only admit to Windows existing)
15:25:48 <Vermoot> geekosaur, eeeh, Logitech's software is really not great. G hub is the shitty replacement for the already-not-great Logitech Gaming Software
15:27:46 <Vermoot> Problem is the mouse has some internal memory with bindings inside, so I can either run it in software mode, where mouse events are passed to Logitech's software, which outputs what's bound to them, or firmware mode, with bindings in memory. As far as I can tell, when the mouse can't detect any Logitech software on the system it automatically falls back to firmware mode, making it hard for me to do whatever I want with the mouse events
15:28:34 <Vermoot> anyhoo
15:29:15 <Vermoot> I need to find a way to be able to move and resize windows with the mouse only, without window decorations. Which doesn't seem very doable :D
15:29:27 <geekosaur> so in that case I wonder if you can just bind some of those firmware events as modifiers
15:29:43 <geekosaur> might be difficult if there's no way to distinguish from e.g. a digit
15:30:26 <Vermoot> Yeah. In firmware mode right now the mouse is set to output 0-9 and -=
15:30:48 <Vermoot> So I'd have to somehow grab those and verify the device ID from which they've been sent, maybe
15:30:57 <Vermoot> But that's *very* jank imo
15:32:07 <geekosaur> you'd have to use XInput2 to detach the mouse-"keyboard" from the shared keyboard input, then use handleEventHook to recognize the events, but then you lose them as modifiers
15:32:36 <geekosaur> have to do everything yourself
15:32:48 <Vermoot> I could probably do something with kmonad as well, grabbing events from the mouse-keyboard only and then rebinding them to something else
15:32:59 <Vermoot> but iirc kmonad can't output mouse events right now
15:34:47 <Vermoot> On a more practical note : when I was on macOS I had hidden firefox's window decorations, but I could still move the window by grabbing some parts of the UI which have the right property set to them. Now on linux with xmonad I can't do that anymore, though it'd be pretty useful
15:35:39 <Vermoot> Now that I think of it, even without window decorations, most of the apps I use have some places that would be very convenient as "grabbers" to move the windows around
15:37:17 <geekosaur> https://hackage.haskell.org/package/xmonad-contrib-0.17.0/docs/XMonad-Layout-BorderResize.html ?
15:37:28 <geekosaur> sadly it's fairly limited
15:38:31 <Vermoot> That's just to resize them though, right?
15:39:01 <Vermoot> I'm talking about moving them around either in floating mode or to use with TiledWindowDragging
15:40:05 <geekosaur> for moving, you can have the mouse anywhere in the window as long as you have the modifier pressed
15:40:27 <geekosaur> doesn't require the app to be involved
15:41:42 <Vermoot> Sure, my point is about moving the windows without a modifier :D Just like with window decorations in "classic" WMs. There's no modifier involved, it's all about where you grab the window
15:41:51 <Vermoot> (I'm annoying, I'll concede)
15:43:06 <Vermoot> The whole point actually is to be able to do this one handed
15:43:12 <geekosaur> yeh, if you can't arrange for an extended mouse button, you may be happier with a different wm
15:43:22 <geekosaur> not like xmonad is the only choice out there
15:43:39 <Vermoot> Oh no way, I'm way too deep into xmonad and way too happy with most of it to go away now haha
15:44:11 <Vermoot> I guess what I should do really is to bind the four main modifiers to side buttons of my mouse
15:44:41 <Vermoot> But I was hoping for a more "universal" way that would work with any old mouse, or my laptop's trackpad
15:56:10 <Vermoot> geekosaur, BorderResize only works on floating layouts but won't work with actual floating windows, right?
16:04:52 <geekosaur> there is no such thing as a floating layout in xmonad
16:05:20 <geekosaur> (well, there is, but it's a lot of work as you poretty much have to duplicate all the floating logic in the layout from scratch)
16:06:25 <geekosaur> PositionStoreFloat is a layout modifier that tracks the relationship between floating windows and tiled windows
16:08:17 <Vermoot> I was looking at BorderResize, and the docs say it works with layouts that react to the SetGeometry message. So looking at WindowArranger, you can apply `windowArrange` to layouts to make that happen. And the description for that function reads "A layout modifier to float the windows in a workspace"
16:08:26 <Vermoot> So that's what I was talking about
16:09:01 <Vermoot> I don't really know the specifics though
16:09:56 <geekosaur> uh? I see "This is a pure layout modifier that will let you move and resize windows with the keyboard in any layout"
16:10:14 <Vermoot> That's the module's description
16:10:34 <Vermoot> I'm talking about the `windowArrange` and `windowArrangeAll` functions within that module
16:10:42 mc47 joins (~mc47@xmonad/TheMC47)
16:15:02 <geekosaur> yeh, I'm looking at source now
16:15:20 <geekosaur> thing is there are Arrange and Dearrange messages, the window is normally tiled on Dearrange
16:16:05 <Vermoot> Yeah the WindowArranger stuff is very weird to me. You can move and resize windows around, but they're still tiled, but other windows don't react to it, etc
16:16:13 <Vermoot> I don't really see a use case for it
16:16:37 <geekosaur> afaict it's just so you can move and resize via keyboard
16:16:58 <geekosaur> which you can't really do with normally floated windows
16:17:06 <Vermoot> Ah, fair
16:17:35 <Vermoot> So it's kind of a bastard state between floating and non-floating right?
16:18:21 <geekosaur> yes
16:18:35 <geekosaur> there's another layout of that sort in there,m specific to "bluetile"
16:19:02 <geekosaur> come to think of it, bluetile might be of interest to you
16:21:43 <Vermoot> I've come across it but haven't really been able to understand what it was
16:22:49 <geekosaur> kind of a cross between xmonad and a traditional window manager
16:59:04 mvk joins (~mvk@2607:fea8:5cc1:fa00::4702)
17:48:41 × Vermoot quits (~vermoot@89-158-106-112.rev.numericable.fr) (Read error: Connection reset by peer)
18:13:07 × catman quits (~catman@user/catman) (Quit: WeeChat 3.4-dev)
18:13:55 catman joins (~catman@user/catman)
18:22:11 kaizoku joins (~kaizoku@user/kaizoku)
18:22:18 × MrNobody_0000000 quits (~MrNobody@user/mrnobody-0000000/x-9129771) (Quit: MrNobody_0000000)
18:27:37 × geekosaur quits (~geekosaur@xmonad/geekosaur) (Remote host closed the connection)
18:29:42 geekosaur joins (~geekosaur@xmonad/geekosaur)
18:58:51 <spoonm> does Stack(focus) change where it points to if I try to invoke it on an unfocused workspace?
18:59:29 <spoonm> I'm trying to figure out why W.peek seems to wield a different window than the one that was actually focused when I switch to another workspace
18:59:42 <spoonm> yield*
19:13:41 werneta joins (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
19:14:37 Vermoot joins (~vermoot@89-158-106-112.rev.numericable.fr)
19:21:54 <geekosaur> I don't understand the question. W.peek always operates on the current ws, not a different one
19:39:01 × werneta quits (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Quit: Lost terminal)
19:46:36 × seschwar quits (~seschwar@user/seschwar) (Ping timeout: 245 seconds)
19:51:29 seschwar joins (~seschwar@user/seschwar)
20:01:03 × seschwar quits (~seschwar@user/seschwar) (Ping timeout: 268 seconds)
20:05:33 seschwar joins (~seschwar@user/seschwar)
20:14:31 × seschwar quits (~seschwar@user/seschwar) (Ping timeout: 245 seconds)
20:19:47 seschwar joins (~seschwar@user/seschwar)
20:24:53 Guest30 joins (~Guest30@169-0-75-49.ip.afrihost.co.za)
20:26:08 × Guest30 quits (~Guest30@169-0-75-49.ip.afrihost.co.za) (Client Quit)
20:26:40 catman_ joins (~catman@user/catman)
20:27:04 × catman quits (~catman@user/catman) (Killed (tungsten.libera.chat (Nickname regained by services)))
20:27:04 catman_ is now known as catman
20:29:22 × seschwar quits (~seschwar@user/seschwar) (Ping timeout: 260 seconds)
20:31:01 seschwar joins (~seschwar@user/seschwar)
20:33:33 werneta joins (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
20:41:44 × seschwar quits (~seschwar@user/seschwar) (Ping timeout: 268 seconds)
20:43:15 seschwar joins (~seschwar@user/seschwar)
20:48:02 <spoonm> so I've realized after reading the source code
20:48:15 <spoonm> my bad, assumed it worked a specific way due to where I saw it being used
20:50:19 spidla joins (~spidla@94.142.238.3)
20:50:39 spidla parts (~spidla@94.142.238.3) ()
20:54:31 × jsoo_ quits (~znc@irc.refl.club) (Quit: ZNC 1.8.2 - https://znc.in)
21:07:50 jsoo joins (~znc@irc.refl.club)
21:36:09 × mc47 quits (~mc47@xmonad/TheMC47) (Remote host closed the connection)
21:44:34 × Eoco_ quits (~ian@x-160-94-179-157.acm.umn.edu) (Ping timeout: 256 seconds)
22:19:00 ebray187 joins (~ebray187@2800:150:129:17c4:224:1dff:fed5:599e)
22:33:28 × ebray187 quits (~ebray187@2800:150:129:17c4:224:1dff:fed5:599e) (Quit: Konversation terminated!)
22:45:43 abhixec joins (~abhixec@c-67-169-139-16.hsd1.ca.comcast.net)
23:27:19 × werneta quits (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Quit: Lost terminal)
23:38:37 × geekosaur quits (~geekosaur@xmonad/geekosaur) (Remote host closed the connection)
23:46:30 geekosaur joins (~geekosaur@xmonad/geekosaur)
23:50:04 werneta joins (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
23:51:47 × werneta quits (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Client Quit)

All times are in UTC on 2021-11-27.