| 2022-12-19 00:05:26 +0000 | ^[ | (~user@user//x-8473491) |
| 2022-12-19 00:10:24 +0000 | LemanR | (~LemanR@2607:fb90:54b0:6e01:9403:ba62:4ea3:9eb9) (Quit: Client closed) |
| 2022-12-19 00:27:40 +0000 | Guest4 | (~Guest4@ip68-101-166-83.sd.sd.cox.net) |
| 2022-12-19 00:28:59 +0000 | <Guest4> | I've got a question about modifying the list of workspaces in the `XMonad.config` (not the current StackSet) |
| 2022-12-19 00:29:35 +0000 | <Guest4> | So this lets me query the list of WorkspaceIds in the config: |
| 2022-12-19 00:29:35 +0000 | <Guest4> | ``` |
| 2022-12-19 00:29:36 +0000 | <Guest4> | workspacesInConfig :: X [WorkspaceId] |
| 2022-12-19 00:29:36 +0000 | <Guest4> | workspacesInConfig = asks (XMonad.workspaces . XMonad.config) |
| 2022-12-19 00:29:37 +0000 | <Guest4> | ``` |
| 2022-12-19 00:30:55 +0000 | <Guest4> | What is the idiomatic analogue of this for modification? |
| 2022-12-19 00:31:41 +0000 | <geekosaur> | you can't modify it; it's read-only |
| 2022-12-19 00:33:03 +0000 | <geekosaur> | you can modify the workspaces in the StackSet, but you need some way to access them afterward because you can't rebind the keys that were defined using the read-only list of workspaces |
| 2022-12-19 00:33:24 +0000 | <Guest4> | That makes sense |
| 2022-12-19 00:33:47 +0000 | <Guest4> | related question |
| 2022-12-19 00:34:50 +0000 | <Guest4> | well, really just a rephrasing of my question to make sure it's clear |
| 2022-12-19 00:35:01 +0000 | <Guest4> | is there a way of essentially updating (in a normal functional way = generating a new modified value) the config with a modified list of workspaces? |
| 2022-12-19 00:36:31 +0000 | <Guest4> | The context for asking is that I'm trying to simultaneously use `XMonad.Actions.TreeSelect` and functions that rename/add to/remove from the workspaces in the StackSet |
| 2022-12-19 00:38:30 +0000 | <geekosaur> | do you know what the Reader monad is? |
| 2022-12-19 00:38:33 +0000 | <Guest4> | Yes |
| 2022-12-19 00:39:09 +0000 | ft | (~ft@p4fc2a257.dip0.t-ipconnect.de) (Remote host closed the connection) |
| 2022-12-19 00:39:42 +0000 | <Guest4> | So basically you're telling me that the relevant value I'm asking about is never meant to modified after initialization |
| 2022-12-19 00:39:42 +0000 | <geekosaur> | the XMonad configuration is stored in a Reader, so it can be accessed but not modified. there are no tricks to get around this, and everything else assumes this so won't look for changes anyway |
| 2022-12-19 00:39:49 +0000 | <geekosaur> | correct |
| 2022-12-19 00:39:52 +0000 | <Guest4> | Yeah ok |
| 2022-12-19 00:40:34 +0000 | <Guest4> | Alright |
| 2022-12-19 00:40:54 +0000 | ft | (~ft@p4fc2a257.dip0.t-ipconnect.de) |
| 2022-12-19 00:42:06 +0000 | <Guest4> | So I'm currently trying to accomplish my goal by using `XMonad.Util.ExtensibleState` to create a `TreeZipper WorkspaceId` that essentially parallels some of the information in the `StackSet` |
| 2022-12-19 00:42:19 +0000 | <geekosaur> | right. the list of workspaces in particular is there only for reference; the "live" version is the StackSet |
| 2022-12-19 00:43:21 +0000 | <Guest4> | yeah - and a lot of code is written in a way that grabs information from the static, totally ordered list of workspaces from the initial config rather than the StackSet |
| 2022-12-19 00:43:28 +0000 | <Guest4> | which I understand why |
| 2022-12-19 00:44:29 +0000 | <Guest4> | but I've written a bunch of tweaked versions of operations for navigating/updating workspaces that update the treezipper state appropriately |
| 2022-12-19 00:44:33 +0000 | <geekosaur> | one reason for that is it gives you the possibility for "hidden" workspaces, which for example NamedScratchpads uses to put hidden scratchpads in an "NSP" workspace |
| 2022-12-19 00:45:19 +0000 | <Guest4> | and nevertheless I keep finding situations where there are calls that cause the current workspace to change that I didn't anticipate |
| 2022-12-19 00:45:34 +0000 | <Guest4> | and then the TreeZipper and the StackSet end up unsynced |
| 2022-12-19 00:45:59 +0000 | <Guest4> | (I have a keybinding to manually update the TreeZipper, but this is Not Ideal) |
| 2022-12-19 00:46:08 +0000 | <geekosaur> | you could probably stick something to resync them in logHook |
| 2022-12-19 00:46:24 +0000 | <Guest4> | that is exactly what I was hoping someone would say! |
| 2022-12-19 00:48:37 +0000 | <Guest4> | I am having trouble figuring out how exactly to use logHook, however |
| 2022-12-19 00:48:55 +0000 | <Guest4> | Like - when is whatever's in the logHook run? |
| 2022-12-19 00:49:07 +0000 | <Guest4> | what is the type of information that is available? |
| 2022-12-19 00:49:26 +0000 | <geekosaur> | it's the last step of XMonad.Operations.windows, which is the master function that handles all focus, workspace, etc. changes |
| 2022-12-19 00:50:16 +0000 | <geekosaur> | it is not passed anything explicitly but it can access the StackSet (`gets windowset`) so you can see what workspace is current and adjust your TreeZipper as needed |
| 2022-12-19 00:51:24 +0000 | <geekosaur> | since it's in X, all read-only (asks) and mutable (gets) state is available to it |
| 2022-12-19 00:54:07 +0000 | <geekosaur> | the only restriction is that, since it's run in X.O.windows, you can't run X.O.windows from it without causing an infinite loop |
| 2022-12-19 00:54:35 +0000 | <geekosaur> | (unless you are very careful to avoid such loop) |
| 2022-12-19 00:55:54 +0000 | <Guest4> | that makes sense |
| 2022-12-19 00:56:05 +0000 | <Guest4> | that's very helpful, thank you! |
| 2022-12-19 00:58:52 +0000 | <geekosaur> | if you need a pointer to the exact state information, X is StateT XState (ReaderT XConf IO). XState and XConf are defined in XMonad.Core. |
| 2022-12-19 01:10:09 +0000 | sogens | (sogens@gateway/vpn/protonvpn/sogens) (Quit: WeeChat 3.7.1) |
| 2022-12-19 01:10:37 +0000 | sogens | (sogens@gateway/vpn/protonvpn/sogens) |
| 2022-12-19 02:45:26 +0000 | sogens | (sogens@gateway/vpn/protonvpn/sogens) (Quit: WeeChat 3.7.1) |
| 2022-12-19 03:04:30 +0000 | banc | (banc@gateway/vpn/protonvpn/banc) (Ping timeout: 268 seconds) |
| 2022-12-19 03:10:03 +0000 | jao | (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 268 seconds) |
| 2022-12-19 03:15:16 +0000 | sogens | (sogens@gateway/vpn/protonvpn/sogens) |
| 2022-12-19 03:19:50 +0000 | sogens | (sogens@gateway/vpn/protonvpn/sogens) (Client Quit) |
| 2022-12-19 03:24:53 +0000 | banc | (banc@gateway/vpn/protonvpn/banc) |
| 2022-12-19 03:31:44 +0000 | td_ | (~td@83.135.9.47) (Ping timeout: 252 seconds) |
| 2022-12-19 03:33:30 +0000 | td_ | (~td@83.135.9.40) |
| 2022-12-19 03:47:47 +0000 | terrorjack | (~terrorjac@2a01:4f8:1c1e:509a::1) (Quit: The Lounge - https://thelounge.chat) |
| 2022-12-19 03:50:23 +0000 | terrorjack | (~terrorjac@2a01:4f8:1c1e:509a::1) |
| 2022-12-19 04:15:01 +0000 | sogens | (sogens@gateway/vpn/protonvpn/sogens) |
| 2022-12-19 04:22:14 +0000 | sogens | (sogens@gateway/vpn/protonvpn/sogens) (Quit: WeeChat 3.7.1) |
| 2022-12-19 04:23:48 +0000 | sogens | (sogens@gateway/vpn/protonvpn/sogens) |
| 2022-12-19 04:27:09 +0000 | sogens | (sogens@gateway/vpn/protonvpn/sogens) (Client Quit) |
| 2022-12-19 04:53:33 +0000 | Guest4 | (~Guest4@ip68-101-166-83.sd.sd.cox.net) (Ping timeout: 260 seconds) |
| 2022-12-19 05:08:32 +0000 | ectospasm | (~ectospasm@user/ectospasm) (Ping timeout: 252 seconds) |
| 2022-12-19 05:12:21 +0000 | ectospasm | (~ectospasm@user/ectospasm) |
| 2022-12-19 05:26:07 +0000 | sogens | (sogens@gateway/vpn/protonvpn/sogens) |
| 2022-12-19 06:09:40 +0000 | sogens | (sogens@gateway/vpn/protonvpn/sogens) (Quit: WeeChat 3.7.1) |
| 2022-12-19 06:10:02 +0000 | sogens | (sogens@gateway/vpn/protonvpn/sogens) |
| 2022-12-19 06:12:36 +0000 | sogens | (sogens@gateway/vpn/protonvpn/sogens) (Client Quit) |
| 2022-12-19 06:12:58 +0000 | sogens | (sogens@gateway/vpn/protonvpn/sogens) |
| 2022-12-19 06:36:55 +0000 | sogens | (sogens@gateway/vpn/protonvpn/sogens) (Quit: WeeChat 3.7.1) |
| 2022-12-19 06:39:37 +0000 | sogens | (sogens@gateway/vpn/protonvpn/sogens) |
| 2022-12-19 06:56:56 +0000 | telser | (~quassel@user/telser) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) |
| 2022-12-19 06:58:38 +0000 | mncheck | (~mncheck@193.224.205.254) |
| 2022-12-19 07:00:55 +0000 | mncheck | (~mncheck@193.224.205.254) (Remote host closed the connection) |
| 2022-12-19 07:06:19 +0000 | mncheck | (~mncheck@193.224.205.254) |
| 2022-12-19 07:10:24 +0000 | telser | (~quassel@user/telser) |
| 2022-12-19 08:19:47 +0000 | alexiscott | (~user@4.red-83-36-45.dynamicip.rima-tde.net) |
| 2022-12-19 08:21:14 +0000 | alexiscott | (~user@4.red-83-36-45.dynamicip.rima-tde.net) (Client Quit) |
| 2022-12-19 08:50:53 +0000 | <xmonadtrack> | New branch created: pull/432 (6 commits) https://github.com/xmonad/xmonad/pull/432 |
| 2022-12-19 08:54:47 +0000 | sogens | (sogens@gateway/vpn/protonvpn/sogens) (Quit: WeeChat 3.7.1) |
| 2022-12-19 09:12:58 +0000 | sogens | (sogens@gateway/vpn/protonvpn/sogens) |
| 2022-12-19 09:24:11 +0000 | cfricke | (~cfricke@user/cfricke) |
| 2022-12-19 09:26:46 +0000 | sogens_ | (sogens@gateway/vpn/protonvpn/sogens) |
| 2022-12-19 09:28:41 +0000 | sogens | (sogens@gateway/vpn/protonvpn/sogens) (Ping timeout: 268 seconds) |
| 2022-12-19 09:31:34 +0000 | <xmonadtrack> | New branch created: pull/433 (7 commits) https://github.com/xmonad/xmonad/pull/433 |
| 2022-12-19 09:49:34 +0000 | xacktm | (~xacktm@user/xacktm) (Ping timeout: 265 seconds) |
| 2022-12-19 09:51:54 +0000 | <xmonadtrack> | New branch created: pull/434 (8 commits) https://github.com/xmonad/xmonad/pull/434 |
| 2022-12-19 10:08:33 +0000 | ft | (~ft@p4fc2a257.dip0.t-ipconnect.de) (Quit: leaving) |
| 2022-12-19 10:27:29 +0000 | <xmonadtrack> | New branch created: pull/435 (7 commits) https://github.com/xmonad/xmonad/pull/435 |
| 2022-12-19 10:42:04 +0000 | lokesh1197 | (~Thunderbi@14.102.72.155) |
| 2022-12-19 10:47:26 +0000 | xacktm | (~xacktm@user/xacktm) |
| 2022-12-19 10:54:45 +0000 | lokesh1197 | (~Thunderbi@14.102.72.155) (Ping timeout: 260 seconds) |
| 2022-12-19 10:55:28 +0000 | sogens_ | (sogens@gateway/vpn/protonvpn/sogens) (Quit: WeeChat 3.7.1) |
| 2022-12-19 11:00:11 +0000 | sogens | (sogens@gateway/vpn/protonvpn/sogens) |
| 2022-12-19 11:03:59 +0000 | lokesh1197 | (~Thunderbi@14.102.72.155) |
| 2022-12-19 11:08:23 +0000 | lokesh1197 | (~Thunderbi@14.102.72.155) (Ping timeout: 260 seconds) |
| 2022-12-19 11:29:24 +0000 | lambdabot | (~lambdabot@haskell/bot/lambdabot) (Remote host closed the connection) |
| 2022-12-19 11:30:43 +0000 | lambdabot | (~lambdabot@haskell/bot/lambdabot) |
| 2022-12-19 11:43:44 +0000 | <xmonadtrack> | New branch created: pull/436 (8 commits) https://github.com/xmonad/xmonad/pull/436 |
| 2022-12-19 11:46:52 +0000 | <[Leary]> | That's probably it for tonight. These were delayed due to a couple of weaknesses I noticed while I was turning the commit messages into PRs. I probably could have forced them through in the promised time frame, but honestly I didn't have the determination ... I plan to accept my trouting with dignity. |
| 2022-12-19 11:47:35 +0000 | <[Leary]> | There's still sister PRs for contrib and maybe another for core, but they'll have to wait a little. |
| 2022-12-19 12:06:26 +0000 | sogens | (sogens@gateway/vpn/protonvpn/sogens) (Ping timeout: 272 seconds) |
| 2022-12-19 12:36:00 +0000 | xacktm | (~xacktm@user/xacktm) (Quit: fBNC - https://bnc4free.com) |
| 2022-12-19 12:47:11 +0000 | sogens | (sogens@gateway/vpn/protonvpn/sogens) |
| 2022-12-19 13:27:51 +0000 | xacktm | (~xacktm@user/xacktm) |
| 2022-12-19 13:35:17 +0000 | lokesh1197 | (~Thunderbi@14.102.72.154) |
| 2022-12-19 13:35:58 +0000 | mvk | (~mvk@2607:fea8:5ce3:8500::6126) |
| 2022-12-19 13:37:06 +0000 | mvk | (~mvk@2607:fea8:5ce3:8500::6126) (Client Quit) |
| 2022-12-19 13:42:24 +0000 | lokesh1197 | (~Thunderbi@14.102.72.154) (Quit: lokesh1197) |
| 2022-12-19 13:46:58 +0000 | lokesh1197 | (~Thunderbi@14.102.72.154) |
| 2022-12-19 14:07:24 +0000 | sogens | (sogens@gateway/vpn/protonvpn/sogens) (Ping timeout: 272 seconds) |
| 2022-12-19 14:29:42 +0000 | sogens | (sogens@gateway/vpn/protonvpn/sogens) |
| 2022-12-19 14:32:12 +0000 | <geekosaur> | I don't promise anyone will get to them any time soon; I have a PR waiting myself because I don't commit my own PRs nunless it's doc-only (and in that case it's usually a direct commit anyway) |
| 2022-12-19 14:40:53 +0000 | rekahsoft | (~rekahsoft@2605:8d80:6e2:a50e:e78b:13e9:40ed:3d2c) |
| 2022-12-19 14:54:13 +0000 | <liskin> | Also it's quite heavy stuff :-) |
| 2022-12-19 15:11:39 +0000 | sogens | (sogens@gateway/vpn/protonvpn/sogens) (Ping timeout: 260 seconds) |
| 2022-12-19 15:21:27 +0000 | geekosaur | gets around to looking (got a number of other things going on, mostly personal) |
| 2022-12-19 15:21:32 +0000 | <geekosaur> | oh, my |
| 2022-12-19 15:37:31 +0000 | cfricke | (~cfricke@user/cfricke) (Quit: WeeChat 3.7.1) |
| 2022-12-19 16:35:18 +0000 | rekahsoft | (~rekahsoft@2605:8d80:6e2:a50e:e78b:13e9:40ed:3d2c) (Ping timeout: 260 seconds) |
| 2022-12-19 17:16:57 +0000 | jao | (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) |
| 2022-12-19 17:20:46 +0000 | td_ | (~td@83.135.9.40) (Quit: waking up from the american dream ...) |
| 2022-12-19 17:33:24 +0000 | td_ | (~td@83.135.9.40) |
| 2022-12-19 18:23:11 +0000 | Jade[m] | Jadesheit[m] |
| 2022-12-19 18:29:53 +0000 | lokesh1198 | (~Thunderbi@14.139.128.60) |
| 2022-12-19 18:30:14 +0000 | lokesh1197 | (~Thunderbi@14.102.72.154) (Ping timeout: 272 seconds) |
| 2022-12-19 18:30:14 +0000 | lokesh1198 | lokesh1197 |
| 2022-12-19 18:33:44 +0000 | koluacik | (~koluacik@165.227.171.188) (Quit: ZNC - https://znc.in) |
| 2022-12-19 18:34:06 +0000 | koluacik | (~koluacik@165.227.171.188) |
| 2022-12-19 18:48:36 +0000 | thunderrd_ | (~thunderrd@183.182.111.182) (Ping timeout: 272 seconds) |
| 2022-12-19 19:01:53 +0000 | thunderrd_ | (~thunderrd@183.182.111.27) |
| 2022-12-19 19:05:42 +0000 | lokesh1197 | (~Thunderbi@14.139.128.60) (Ping timeout: 272 seconds) |
| 2022-12-19 19:53:23 +0000 | sogens | (sogens@gateway/vpn/protonvpn/sogens) |
| 2022-12-19 19:55:14 +0000 | ft | (~ft@p4fc2a257.dip0.t-ipconnect.de) |
| 2022-12-19 20:03:52 +0000 | mvk | (~mvk@2607:fea8:5ce3:8500::6126) |
| 2022-12-19 20:04:07 +0000 | mvk | (~mvk@2607:fea8:5ce3:8500::6126) (Client Quit) |
| 2022-12-19 20:29:07 +0000 | geekosaur | (~geekosaur@xmonad/geekosaur) (Killed (NickServ (GHOST command used by allbery_b))) |
| 2022-12-19 20:29:07 +0000 | allbery_b | (~geekosaur@xmonad/geekosaur) |
| 2022-12-19 20:29:10 +0000 | allbery_b | geekosaur |
| 2022-12-19 20:29:18 +0000 | xmonadtrack | (~xmonadtra@xmonad/geekosaur) (Ping timeout: 272 seconds) |
| 2022-12-19 20:50:16 +0000 | xmonadtrack | (~xmonadtra@069-135-003-034.biz.spectrum.com) |
| 2022-12-19 20:50:16 +0000 | xmonadtrack | (~xmonadtra@069-135-003-034.biz.spectrum.com) (Changing host) |
| 2022-12-19 20:50:16 +0000 | xmonadtrack | (~xmonadtra@xmonad/geekosaur) |
| 2022-12-19 20:55:49 +0000 | td_ | (~td@83.135.9.40) (Ping timeout: 260 seconds) |
| 2022-12-19 21:49:57 +0000 | td_ | (~td@83.135.9.40) |
| 2022-12-19 22:24:22 +0000 | jao | (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 252 seconds) |
| 2022-12-19 22:36:21 +0000 | mc47 | (~mc47@xmonad/TheMC47) |
| 2022-12-19 22:38:24 +0000 | mc47 | (~mc47@xmonad/TheMC47) (Remote host closed the connection) |