Logs: liberachat/#xmonad
| 2023-02-08 19:55:19 | <geekosaur> | you probably need something like: `[("M-C-" ++ show x, setWorkspaceIndex x) | x <- [1..9]]` |
| 2023-02-08 19:55:20 | × | kayvank quits (~user@52-119-115-185.PUBLIC.monkeybrains.net) (Client Quit) |
| 2023-02-08 19:55:49 | → | kayvank joins (~user@52-119-115-185.PUBLIC.monkeybrains.net) |
| 2023-02-08 19:56:04 | <beastwick> | using this as ref `removeKeysP` ["M-S-" ++ [n] | n <- ['1'..'9']] |
| 2023-02-08 20:00:10 | <geekosaur[m]> | > [(n,x) | n <- ['1'..'9'], x <- [1..9]] |
| 2023-02-08 20:00:12 | <lambdabot> | [('1',1),('1',2),('1',3),('1',4),('1',5),('1',6),('1',7),('1',8),('1',9),('2... |
| 2023-02-08 20:01:19 | <beastwick> | oh what |
| 2023-02-08 20:01:28 | <beastwick> | the first element in the pair should increment no? |
| 2023-02-08 20:02:01 | <geekosaur[m]> | Cartesian product |
| 2023-02-08 20:02:14 | <beastwick> | > [(n,x) | n <- [1..9], x <- [1..9]] |
| 2023-02-08 20:02:15 | <lambdabot> | [(1,1),(1,2),(1,3),(1,4),(1,5),(1,6),(1,7),(1,8),(1,9),(2,1),(2,2),(2,3),(2,... |
| 2023-02-08 20:02:20 | <beastwick> | oh it is |
| 2023-02-08 20:02:30 | <beastwick> | oh I see why what I did is bad |
| 2023-02-08 20:03:04 | <beastwick> | however, it still has no effect lol |
| 2023-02-08 20:03:47 | <beastwick> | I did not convert this, as I saw no need since my default keybinds of 1 - 9 are setup, would this be part of the prob? zip (zip (repeat (modm)) [xK_1..xK_9]) (map (withWorkspaceIndex W.greedyView) [1..]) This is from the DynamicWorkspaces module |
| 2023-02-08 20:04:03 | <beastwick> | not sure why I would need to do that |
| 2023-02-08 20:05:39 | <geekosaur> | that just changes the default keybinds to go by your assigned workspace index instead of by the order of workspaces in `workspaces`. you may want it, yes |
| 2023-02-08 20:06:20 | <beastwick> | that looks a bit tougher to convert to additionalKeysP, but i'll try |
| 2023-02-08 20:09:08 | <geekosaur> | second `zip` becomes `map (("M-" ++) . show . subtract 48`, I think |
| 2023-02-08 20:09:22 | <beastwick> | [("M-" ++ show x, withWorkspaceIndex W.greedyView x) | x <- [1..9]]) |
| 2023-02-08 20:09:22 | <geekosaur> | wait, dropped a close paren |
| 2023-02-08 20:09:27 | <geekosaur> | second `zip` becomes `map (("M-" ++) . show . subtract 48)`, I think |
| 2023-02-08 20:10:32 | <beastwick> | ok my M-<1-9> keys seem to not work now, I think I need to unbind the originals |
| 2023-02-08 20:10:44 | <geekosaur> | this should replace them |
| 2023-02-08 20:12:09 | <mc47> | geekosaur: I don't recall that |
| 2023-02-08 20:13:51 | <geekosaur> | I apparently only discussed it with Solid in channel |
| 2023-02-08 20:14:33 | <geekosaur> | https://paste.tomsmeding.com/X8KYGl28 |
| 2023-02-08 20:20:03 | <beastwick> | geekosaur, ok removing the original binds, and including the new binds works, but it seems like I need to manually set each workspace to an index |
| 2023-02-08 20:23:34 | <beastwick> | this is the working config https://paste.tomsmeding.com/aONGGndu |
| 2023-02-08 20:23:39 | <beastwick> | awesome |
| 2023-02-08 20:24:28 | <geekosaur> | well yes, that's the downside of doing things by index |
| 2023-02-08 20:24:45 | <geekosaur> | I'm wondering if you maybe just want to change to named workspaces instead of using the default numbers |
| 2023-02-08 20:25:07 | <beastwick> | yeah, I think I am conflicted about how to approach my workspaces lol |
| 2023-02-08 20:25:25 | <beastwick> | i like both the dynamic workspaces, but now i'm wondering if I just need an extra set |
| 2023-02-08 20:25:32 | <beastwick> | F1 - F12 or w/e |
| 2023-02-08 20:25:32 | <geekosaur> | https://github.com/geekosaur/xmonad.hs/blob/skkukuk/xmonad.hs#L59-L61 and https://github.com/geekosaur/xmonad.hs/blob/skkukuk/xmonad.hs#L133 |
| 2023-02-08 20:25:45 | <beastwick> | and the ability to name them |
| 2023-02-08 20:25:54 | <beastwick> | or rename them |
| 2023-02-08 20:26:25 | <geekosaur> | and maybe up the number of keys used, yes. I use keys xK_1 through xK_equals (which sadly can't be specified as a simple range) |
| 2023-02-08 20:26:39 | <beastwick> | can F1 - F12 be ranged? |
| 2023-02-08 20:26:39 | <geekosaur> | https://github.com/geekosaur/xmonad.hs/blob/skkukuk/xmonad.hs#L261 |
| 2023-02-08 20:26:42 | <beastwick> | or I have to do each one |
| 2023-02-08 20:26:43 | <geekosaur> | yes |
| 2023-02-08 20:27:02 | <geekosaur> | [xK_F1 .. xK_F12] is fine |
| 2023-02-08 20:27:11 | <beastwick> | nice |
| 2023-02-08 20:27:28 | <geekosaur> | may need an import, lemme check |
| 2023-02-08 20:27:53 | <geekosaur> | no, no extra import needed |
| 2023-02-08 20:28:27 | <geekosaur> | ghci> [xK_F1 .. xK_F12] |
| 2023-02-08 20:28:28 | <geekosaur> | [65470,65471,65472,65473,65474,65475,65476,65477,65478,65479,65480,65481] |
| 2023-02-08 21:42:48 | × | kayvank quits (~user@52-119-115-185.PUBLIC.monkeybrains.net) (Remote host closed the connection) |
| 2023-02-08 21:43:24 | → | kayvank joins (~user@52-119-115-185.PUBLIC.monkeybrains.net) |
| 2023-02-08 21:52:07 | × | kayvank quits (~user@52-119-115-185.PUBLIC.monkeybrains.net) (Quit: ERC 5.4 (IRC client for GNU Emacs 28.1)) |
| 2023-02-08 21:52:37 | → | kayvank joins (~user@52-119-115-185.PUBLIC.monkeybrains.net) |
| 2023-02-08 21:53:12 | × | kayvank quits (~user@52-119-115-185.PUBLIC.monkeybrains.net) (Remote host closed the connection) |
| 2023-02-08 21:53:36 | → | kayvank joins (~user@52-119-115-185.PUBLIC.monkeybrains.net) |
| 2023-02-08 22:22:56 | × | mc47 quits (~mc47@xmonad/TheMC47) (Remote host closed the connection) |
| 2023-02-08 22:38:30 | <kayvank> | is there a way to force xmobar to a specific monitor/display? |
| 2023-02-08 22:40:25 | <geekosaur> | -x displayNumber |
| 2023-02-08 22:44:15 | <xmonadtrack> | New xmonad-contrib branch created: pull/799 (1 commit) https://github.com/xmonad/xmonad-contrib/pull/799 |
| 2023-02-08 23:01:53 | → | patrl joins (~patrl@user/patrl) |
| 2023-02-08 23:04:31 | × | patrl quits (~patrl@user/patrl) (Client Quit) |
| 2023-02-08 23:42:55 | × | kayvank quits (~user@52-119-115-185.PUBLIC.monkeybrains.net) (Ping timeout: 248 seconds) |
| 2023-02-09 01:04:48 | <ectospasm> | OK, reposting a little from last night. Here's my xmonad.hs, in its current form: https://git.eldon.me/trey/XMonad/src/branch/multiheaded-fixup/xmonad.hs |
| 2023-02-09 01:05:24 | <ectospasm> | I've been trying to wrack my brain on how I got per-display workspaces working, but it looks like I no longer have comments that give me clues. |
| 2023-02-09 01:05:55 | × | werneta quits (~werneta@137.79.219.74) (Remote host closed the connection) |
| 2023-02-09 01:06:22 | <geekosaur> | the usual way is X.L.IndependentScreens |
| 2023-02-09 01:06:44 | <ectospasm> | geekosaur: Yes, I am using IndependentScreens (I have it mapped to IS) |
| 2023-02-09 01:06:53 | <ectospasm> | But I don't know what the next steps are. |
| 2023-02-09 01:07:15 | <ectospasm> | I use IS.countScreens a few places to change behavior whether one or three screens are detected. |
| 2023-02-09 01:07:54 | <ectospasm> | I think I had at one time the concept of leftScreen, centerScreen, and rightScreen, but I don't remember how those work. |
| 2023-02-09 01:15:44 | <ectospasm> | OK, so I'm looking at the hackage documentation for IndependentScreens. I see the example: `myConfig = def { workspaces = withScreens 2 ["web", "email", "irc" ] }`, am I reading that right that it sets up those named workspaces on display 2? |
| 2023-02-09 01:16:12 | <ectospasm> | How would I extrapolate that for more than one display, if I'm reading that right? |
| 2023-02-09 01:17:26 | <geekosaur> | no, it means that it's configured for two screens, each of which gets its own workspaces with those names |
| 2023-02-09 01:18:03 | <geekosaur> | there's no real support for pinning specific workspaces to monitors |
| 2023-02-09 01:18:39 | <ectospasm> | Hmmm, OK. So that basically means it gets the same list of workspaces on each screen, rather than having each screen have its own independent list of workspaces. |
| 2023-02-09 01:19:03 | <geekosaur> | right |
| 2023-02-09 01:19:28 | <geekosaur> | hyporthetically it could be done but IndependentScreens doesn't really support it |
| 2023-02-09 01:19:41 | <ectospasm> | It's been while, but I thought I had it working a while ago with each screen having a different list of workspaces for each screen, but I guess that isn't possible (if it ever was). |
| 2023-02-09 01:20:11 | <geekosaur> | it's possible if you build the workspace list manually, I think, instead of using its helper functions |
| 2023-02-09 01:20:36 | <geekosaur> | like, behind the scenes it gives you 0_web 1_web 2_web 0_email etc. |
| 2023-02-09 01:22:10 | <geekosaur> | maybe something related to that is what you were doing with LeftScreen etc. |
| 2023-02-09 01:26:07 | <ectospasm> | Yes, I see that I had that mapped to winKey + xK_h. |
| 2023-02-09 01:26:38 | <ectospasm> | I define CenterScreen but it doesn't look like I used it anywhere else. |
| 2023-02-09 01:38:03 | <ectospasm> | So it looks like I can use withScreen rather than withScreens to construct the desired list of workspaces per screen. |
| 2023-02-09 01:39:03 | <ectospasm> | I can define a function, genWorkspaces or something like that, that determines how many screens are detected, and sets up the workspaces accordingly. |
| 2023-02-09 01:40:42 | <ectospasm> | So, if for one screen (let's say screen 2), I'll have ["web", "email", "irc"] as the virtual workspace names, and ["2_web", "2_email", "2_irc"] as the physical workspace names? |
| 2023-02-09 01:40:56 | <ectospasm> | Likewise for the other screens |
| 2023-02-09 01:51:46 | <ectospasm> | geekosaur: so all the examples I can find use withScreens, which defines the same set of virtual workspaces on each screen. How would I call withScreen (singular)? Does it construct the physical workspace IDs automatically? |
| 2023-02-09 01:54:00 | <geekosaur> | it does. I showed you what the workspaces it builds look like |
| 2023-02-09 01:54:38 | <geekosaur> | you would have to build workspace names yourself, and make sure you use them correctly yourself |
| 2023-02-09 01:55:50 | <geekosaur> | and yes, you got the virtual and physical names correct |
| 2023-02-09 02:04:23 | <geekosaur> | the real complication will be that it has you redefine mod-1, etc. and those will have to somehow switch workspace names depending on screen |
| 2023-02-09 02:10:50 | <ectospasm> | I'm struggling to find an example that uses withScreen in a way that I can copy. I did find something that executes `withScreen 0 view`, but that doesn't give me a clue how to construct what I want. |
| 2023-02-09 02:11:51 | <ectospasm> | I typically have certain named applications on specific workspaces. I rarely use mod-n to switch to an indexed workspace. |
| 2023-02-09 02:12:23 | <ectospasm> | So, myTerminal should get launched on the "shell" workspace, wherever that may be. |
| 2023-02-09 02:12:55 | <geekosaur> | `withScreen 0 view` is a function which takes a workspace name as parameter and switches to that workspace on screen 0 |
| 2023-02-09 02:13:39 | <ectospasm> | OK, so it prompts for the workspace name. That's the virtual workspace name? |
| 2023-02-09 02:13:47 | <geekosaur> | no |
| 2023-02-09 02:13:57 | <geekosaur> | I mean, it doesn't prompt |
| 2023-02-09 02:14:27 | <geekosaur> | `windows (withScreen 0 view "mail")` is a full use of that expression |
All times are in UTC.