How to prefix workspace names with numbers?

Hi, I'm a new xmonad user, and despite knowing next to no Haskell, I've made xmonad work pretty much the way I want it. Fantastic! Now there's only one major thing I miss. Let's get to the point before boring you with rationales; I want DynamicLog to prefix my workspace names with a number, e.g. "web", "chat", "work" becomes "1:web", "2:chat", "3:work". I found a previous discussion[1] in the mailing list and a zsh script[2], but I would like to do it directly in xmonad.hs, presumable where I define my PP. (I use dzen2 to display the workspace names, if it makes any difference). My PP is pretty standard, you can find it here: http://paste.kde.org/564734/ So why do I want this? I use DynamicWorkspaces to create and delete workspaces on the fly, but still prefer to use Mod(+shift)+<number> to switch and move windows between workspaces. This is a bit hard, however, without a number next to the workspace name. I know that you can bind a key to selectWorkspace, but I find it faster to switch using the traditional method when you don't have many workspaces. I'm using xmonad 0.10 and xmonad-contrib 0.10, but I guess I wouldn't mind trying out darcs if it's needed. Help would be very much appreciated! With best regards, Hans ---- [1] http://www.haskell.org/pipermail/xmonad/2010-January/009683.html [2] http://www.haskell.org/pipermail/xmonad/2010-February/009690.html

On 8 October 2012 19:17, Hans Chen
Hi,
I'm a new xmonad user, and despite knowing next to no Haskell, I've made xmonad work pretty much the way I want it. Fantastic!
Now there's only one major thing I miss. Let's get to the point before boring you with rationales; I want DynamicLog to prefix my workspace names with a number, e.g. "web", "chat", "work" becomes "1:web", "2:chat", "3:work". I found a previous discussion[1] in the mailing list and a zsh script[2], but I would like to do it directly in xmonad.hs, presumable where I define my PP. (I use dzen2 to display the workspace names, if it makes any difference).
My PP is pretty standard, you can find it here: http://paste.kde.org/564734/
So why do I want this? I use DynamicWorkspaces to create and delete workspaces on the fly, but still prefer to use Mod(+shift)+<number> to switch and move windows between workspaces. This is a bit hard, however, without a number next to the workspace name. I know that you can bind a key to selectWorkspace, but I find it faster to switch using the traditional method when you don't have many workspaces.
I'm using xmonad 0.10 and xmonad-contrib 0.10, but I guess I wouldn't mind trying out darcs if it's needed.
Help would be very much appreciated!
With best regards, Hans
---- [1] http://www.haskell.org/pipermail/xmonad/2010-January/009683.html [2] http://www.haskell.org/pipermail/xmonad/2010-February/009690.html
I'm not directly answering your question, but I'll try to help you solve your problem. First, I'd question myself why I would want to create workspaces on the fiy :P, and then "keep them" enough time to make your issue relevant. I always imagined dynamicworkspaces as a complement to create "short-lived" workspaces. Also, if you are creating the same (or similar) workspaces every time... maybe there isn't really a good reason to create them on the fly. In my case I keep 7 "fixed" WS: 1:terms, 2:web, 3:coding, 4:files, 5:media, 6:various, 7:im. They are called that way, so it's easy to use the number to jump between them and then I create/rename/remove "dynamic" ones in case are needed. Another module that helps (a lot) in jumping/moving between workspaces are X.A.CycleRecentWS and X.A.CycleWS, I think you should take a look :) Regards! -- Pablo Olmos de Aguilera Corradini - @PaBLoX http://www.glatelier.org/ http://about.me/pablox/ http://www.linkedin.com/in/pablooda/ Linux User: #456971 - http://counter.li.org/

Pablo Olmos de Aguilera C. writes:
First, I'd question myself why I would want to create workspaces on the fiy :P,
Really !?
and then "keep them" enough time to make your issue relevant. I always imagined dynamicworkspaces as a complement to create "short-lived" workspaces.
DynamicWorkspaces has made my use of computers bearable. *Everything* I do, gets its own Dynamic workspace: + Letter to Aunt Mabel: open a new workspace; + fiddle with my XMonad config: new workspace; + Order a book/toaster/monitor: new workspace; + try to solve my dropped network connection problem: new workspace; + install some software: new workspace; + fix bug #7364: new workspace; + draw a new logo for the Worm Appreciation Society: new workspace; + the new course I am writing: its own workspace + topic I want to read up on and experiment with for the new course: new workspace. In reality, many workspaces, because I will want to investigate many different topics. The fact that I can have all windows related to some activity grouped together on a workspace, not interfering with those related to other activities, combined with the ability to SWITCH TO THAT WORKSPACE IN UNDER A SECOND, regardless of whether it was last visited seconds ago or weeks ago, is one of the hugest boons to my productivity I have ever experienced. Having these workspaces have names I make up on the fly, makes it very easy to remember what is what. The real world has this habit of not letting me finish whatever I am doing without interruption. I have to task switch between many things. Some tasks last mere seconds, some take weeks or months. The ability to have a workspace dedicated to each of these tasks and to switch between the contexts they create at almost zero cost, and the concomitant confidence this brings in being able to switch away from some context in the knowledge that when I get around to resuming this task (be it 5 seconds from now or 3 weeks from now) everything will be waiting for me exactly as I left it, is what make my modern use of computers bearable.
In my case I keep 7 "fixed" WS:
Frankly, I don't see how you manage with only 7 workspaces.
1:terms, 2:web, 3:coding, 4:files, 5:media, 6:various, 7:im.
Coding? Just one workspace for coding? You can seriously fit *all* the windows related to *all* the coding tasks you are currently working on, on to a *sigle* workspace? Remember that 'currenly' includes + the speculative refactoring of the frobnicator in the Fubar project, which you've been playing with in your spare moments over the last week + the showstopping segfault that your PHB/lover/most important client *needs* solving *this minute*. + the new feature you have been working on as your main coding task for the last 2 days + that damned bug #7364 which you've been chipping away at for the last month + your experiments with the new feature introduced by the latest release of some language/package you use + the code samples you are creating to help new people joining the Barfoo project, get going quickly Each of these is likely to contain + Editor window + compilation/evaluation/running/tsting window(s) + documentation window + miscellaneous related web search window All that, one one 'coding' workspace? Really? (If you don't like coding, similar examples can be made in whatever domain you like.) Files? Various? Aah, takes me back to the Dark Ages before I got my hands on DynamicWorkspaces. Working with a window manager without Dynamic Workspaces, to me, looks like working on a filesystem without mkdir and rmdir, where you determine the directories you get when you configure your OS.
They are called that way, so it's easy to use the number to jump between them
I have 3 keys for workspace navigation (and some related ones for screen navigation) + Select workspace by name Automatically switches when unique starting substring is entered: this means that most workspace switches take just two keystrokes. And I don't have to remember that, say, files is 4: I just have to remember that files starts with 'f' (or, in extremis, 'fi'). + Select most recently used invisible workspace (very useful). + Cycle through (I almost never use this one) On most of these I also have the following modifiers + SHIFT: send the focused window to the target workspace (keep focus on the source workspace) + CONTROL: carry the focused window to the target workspace (move focus to the target workspace) You can pry my DynamicWorkspaces from my cold dead fingers.

On Tue, Oct 9, 2012 at 6:04 AM, Pablo Olmos de Aguilera C. < pablo@glatelier.org> wrote:
First, I'd question myself why I would want to create workspaces on the fiy :P, and then "keep them" enough time to make your issue relevant. I always imagined dynamicworkspaces as a complement to create "short-lived" workspaces. Also, if you are creating the same (or similar) workspaces every time... maybe there isn't really a good reason to create them on the fly.
Thanks for your suggestion. I tried it the "standard way" first, but found that it didn't fit my workflow that well.
In my case I keep 7 "fixed" WS:
1:terms, 2:web, 3:coding, 4:files, 5:media, 6:various, 7:im.
They are called that way, so it's easy to use the number to jump between them and then I create/rename/remove "dynamic" ones in case are needed.
I had a similar setup, but with 10 workspaces with 3 "various" (unnamed) ones. But I found that most of the time I only used about half of the workspaces, since I use my computer for many different things. I still keep a set of default workspaces, but DynamicWorkspaces is really nice for creating space for the other tasks.
Another module that helps (a lot) in jumping/moving between workspaces are X.A.CycleRecentWS and X.A.CycleWS, I think you should take a look :)
I use CycleWS to cycle between screens - it's a bit annoying for workspaces
since it may change the workspaces on the other screens. (If I cycle to a
workspace that's already shown on a physical screen, it will be swapped
with the current one.)
On Tue, Oct 9, 2012 at 9:18 AM, Jacek Generowicz
Pablo Olmos de Aguilera C. writes: + Select workspace by name Automatically switches when unique starting substring is entered: this means that most workspace switches take just two keystrokes. And I don't have to remember that, say, files is 4: I just have to remember that files starts with 'f' (or, in extremis, 'fi').
Hm, maybe I should get used to that instead, it sounds really nice. Can you please tell me more about how you have configured it to switch automatically and/or post the relevant parts of your xmonad.hs? I use the default keybindings, so I have to hit tab and return after entering the substring in order to switch, which is a bit too slow for my liking. Cheers, Hans

JG> Select workspace by name Automatically switches when unique starting JG> substring is entered: this means that most workspace switches take JG> just two keystrokes. And I don't have to remember that, say, files JG> is 4: I just have to remember that files starts with 'f' (or, in JG> extremis, 'fi'). HC> Hm, maybe I should get used to that instead, it sounds really HC> nice. Can you please tell me more about how you have configured it HC> to switch automatically and/or post the relevant parts of your HC> xmonad.hs? I use the default keybindings, so I have to hit tab and HC> return after entering the substring in order to switch, which is a HC> bit too slow for my liking. OK, I'll have a go. I won't paste my whole config file, as that could well overwhelm you with irrelevant nonsense (and I'm embarassed about how much of a mess some of it is :-). Let's see, I'll paste sections of my config file, with some commentary in between First of all, the ad-hoc spread of keybindings was driving me insane, so I hacked up something which allows me to define keybindings in tabular form. This gives me a convenient overview of my current keybindings and really helps with selecting new keybindings or coming up with a sensible set of bindings that works for me. (For the sake of brevity I've elided some of the action wrapper definitions from the /where/ section, leaving mostly the ones related to window/workspace manipulation): -------------------------------------------------------------------------------- myKeyBindingsTable conf = mkKeymap conf $ concat $ table conf -- key M- M-S- M-C- M-S-C- table conf = [ k "<Return>" __ __ openTerminal __ , k "a" gotoScreen1 sendScreen1 takeScreen1 swapScreen1 , k "b" gotoWorkspace sendWorkspace takeWorkspace makeWorkspace , k "c" conkeror emacsclient __ __ , k "d" launchWithDmenu __ __ __ , k "e" wicdNetwork __ __ __ , k "f" fullscreen mirror mirror __ , k "g" gotoMenu' bringMenu' windowMenu' xmonadCommands , k "h" __ __ __ __ , k "i" __ __ __ __ , k "j" __ __ __ __ , k "k" focusUrgent' __ __ clearUrgents' , k "l" expandMaster shrinkMaster incMaster decMaster , k "m" gotoMaster __ shiftMaster' __ , k "n" nextWindow prevWindow nextWindowSwap prevWindowSwap , k "o" __ __ __ __ , k "p" prevWindow nextWindow prevWindowSwap nextWindowSwap -- reversed version of 'n' , k "q" restartXMonad __ __ quitXMonad , k "r" __ __ __ __ , k "s" toggleStruts cntrlCenter __ swapScreens , k "t" tileFloating __ __ __ , k "u" gotoScreen0 sendScreen0 takeScreen0 swapScreen0 , k "v" volumeMuteToggle volumeDown volumeUp __ , k "w" nextWorkspace prevWorkspace renameWorkspace' deleteWorkspace , k "x" __ __ __ __ , k "y" __ __ __ __ , k "z" __ __ __ __ , k "<Backspace>" closeWindow __ __ deleteWorkspace , k "<Space>" nextLayout prevLayout __ resetLayout , k "-" gotoRecentWS sendRecentWS takeRecentWS __ ] where k key m ms mc msc = [ bind "M-" key m , bind "M-S-" key ms , bind "M-C-" key mc , bind "M-S-C-" key msc ] bind modifiers key (U comment action) = (modifiers ++ key, action) bind modifiers key (B comment action) = (modifiers ++ key, action $ modifiers ++ key) __ = B "Available for use" (\key -> spawn $ "xmessage '" ++ key ++ " is not bound.'") openTerminal = U "Open a terminal" (spawn "rxvt-unicode +sb -fg wheat -bg grey10") closeWindow = U "Close the focused window" kill launchWithDmenu = U "Dmenu" (spawn "exe=`dmenu_path | dmenu` && eval \"exec $exe\"") gotoMenu' = U "Switch to window chosen by name via dmenu" gotoMenu bringMenu' = U "Bring a window chosen by name via dmenu" bringMenu windowMenu' = U "Pop up a 'flower' of actions to perform on window" windowMenu xmonadCommands = U "Execute an XMonad command via dmenu" (defaultCommands >>= runCommand) gotoScreen0 = U "Go to screen 0" (onScreen 0 gotoX) sendScreen0 = U "Send to screen 0" (onScreen 0 sendX) takeScreen0 = U "Take to screen 0" (onScreen 0 takeX) gotoScreen1 = U "Go to screen 1" (onScreen 1 gotoX) sendScreen1 = U "Send to screen 1" (onScreen 1 sendX) takeScreen1 = U "Take to screen 1" (onScreen 1 takeX) gotoRecentWS = U "Switch to the most recently visited invisible workspace" (windows gotoRecent) sendRecentWS = U "Send to the most recently visited invisible workspace" (windows sendRecent) takeRecentWS = U "Take to the most recently visited invisible workspace" (windows takeRecent) gotoWorkspace = U "Switch to named workspace with autoComplete" (selectWorkspace myXPConfig) makeWorkspace = U "Switch to named workspace" (selectWorkspace myXPConfig { autoComplete = Nothing }) sendWorkspace = U "Send to named workspace" (withWorkspace myXPConfig sendX) takeWorkspace = U "Take to named workspace" (withWorkspace myXPConfig takeX) nextWorkspace = U "Go to next workspace" (nextWS) prevWorkspace = U "Go to previous workspace" (prevWS) renameWorkspace' = U "Rename workspace" (renameWorkspace myXPConfig) deleteWorkspace = U "Remove workspace" (removeWorkspace) fullscreen = U "Toggle fullscreening" (sendMessage $ Toggle NBFULL) mirror = U "Toggle layout mirrorring" (sendMessage $ Toggle MIRROR) expandMaster = U "Increase the size of the master area" (sendMessage Expand) shrinkMaster = U "Increase the size of the master area" (sendMessage Shrink) incMaster = U "Increase the nummber of windows in the master area" (sendMessage (IncMasterN 1)) decMaster = U "Decrease the nummber of windows in the master area" (sendMessage (IncMasterN (-1))) gotoMaster = U "Move focus to the master window" (windows focusMaster) shiftMaster' = U "Make focused master, push others down." (windows shiftMaster) -- TODO: + Make focus stay on the originally focused window -- + Think about the keybinding -- + Generalize to N screens swapScreens = U "Swap currest screen with other" (windows swapTopScreens) swapScreen0 = U "Swap current screen with screen 0" (windows $ swapTopScreenWith 0) swapScreen1 = U "Swap current screen with screen 1" (windows $ swapTopScreenWith 1) -------------------------------------------------------------------------------- mkKeymap comes from XMonad.Util.EZConfig The Bs and Us all over the place are mine: -------------------------------------------------------------------------------- -- Two varieties of Action: B(ound) is aware of the key that was used to -- invoke it, U(nbound) is not aware of the key. data Action = U String ( X ()) | B String (String -> X ()) -------------------------------------------------------------------------------- I planned to use the string in an automatically generated table of keybindings that pops up at the behest of a keystroke, but I never got around to doing that. (Ideas welcome.) Homing in on the details of your question: from the bindings table you can see that I use 'b' as my workspace selection key: -------------------------------------------------------------------------------- , k "b" gotoWorkspace sendWorkspace takeWorkspace makeWorkspace -------------------------------------------------------------------------------- The corresponding action wrappers are defined as -------------------------------------------------------------------------------- gotoWorkspace = U "Switch to named workspace with autoComplete" (selectWorkspace myXPConfig) makeWorkspace = U "Switch to named workspace" (selectWorkspace myXPConfig { autoComplete = Nothing }) sendWorkspace = U "Send to named workspace" (withWorkspace myXPConfig sendX) takeWorkspace = U "Take to named workspace" (withWorkspace myXPConfig takeX) -------------------------------------------------------------------------------- U is a constructor of my Action type (shown above). selectWorkspace and withWorkspace come from XMonad.Actions.DynamicWorkspaces myXPConfig is rather simple: -------------------------------------------------------------------------------- myXPConfig = defaultXPConfig { -- If only one completion remains, auto-select it after 1 -- microsecond. Increasing the delay could help to stop accidentally -- sending keypresses to the newly focused window, but with my -- current usage, 1 microsecond is working just fine. autoComplete = Just 1 } -------------------------------------------------------------------------------- defaultXPConfig comes from XMonad.Prompt I define sendX, takeX: -------------------------------------------------------------------------------- gotoX = windows . view sendX = windows . shift takeX = sendX ->> gotoX -- Helpers for performing multiple actions on the same entity infixl 1 ->> (a ->> b) c = do a c b c -------------------------------------------------------------------------------- view and shift come from XMonad.StackSet The whole lot is installed thus: -------------------------------------------------------------------------------- myConfig = gnomeConfig { ... , keys = myKeyBindingsTable ... } -------------------------------------------------------------------------------- and gnomeConfig comes from XMonad.Config.Gnome (though I suspect that there's nothing Gnome specific left in my config at all, by now). I think I've shown all the necessary bits for the core of your question, if not, don't hesitate to ask. Hope it will be of some use.

On 9 October 2012 08:43, Jacek Generowicz
JG> Select workspace by name Automatically switches when unique starting JG> substring is entered: this means that most workspace switches take JG> just two keystrokes. And I don't have to remember that, say, files JG> is 4: I just have to remember that files starts with 'f' (or, in JG> extremis, 'fi').
HC> Hm, maybe I should get used to that instead, it sounds really HC> nice. Can you please tell me more about how you have configured it HC> to switch automatically and/or post the relevant parts of your HC> xmonad.hs? I use the default keybindings, so I have to hit tab and HC> return after entering the substring in order to switch, which is a HC> bit too slow for my liking.
OK, I'll have a go. I won't paste my whole config file, as that could well overwhelm you with irrelevant nonsense (and I'm embarassed about how much of a mess some of it is :-).
Let's see, I'll paste sections of my config file, with some commentary in between
First of all, the ad-hoc spread of keybindings was driving me insane, so I hacked up something which allows me to define keybindings in tabular form. This gives me a convenient overview of my current keybindings and really helps with selecting new keybindings or coming up with a sensible set of bindings that works for me. (For the sake of brevity I've elided some of the action wrapper definitions from the /where/ section, leaving mostly the ones related to window/workspace manipulation):
Please, can you upload your config file somewhere? It looks like a mess here =/. PS.- I'm curious, which client are you using to have those "named" quotes? Regards, -- Pablo Olmos de Aguilera Corradini - @PaBLoX http://www.glatelier.org/ http://about.me/pablox/ http://www.linkedin.com/in/pablooda/ Linux User: #456971 - http://counter.li.org/

Pablo Olmos de Aguilera C. writes:
Please, can you upload your config file somewhere? It looks like a mess here =/.
OK, ok, here it is: http://pastebin.com/A53AfM1D (30 day expiry) (It wasn't as much of a mess as I feared. Haven't ventured in there for a while)
PS.- I'm curious, which client are you using to have those "named" quotes?
Short answer: any decent editor that understands rectangles. Long answer: You probably won't like this, as you admitted to belonging to the Dark Side upthread. There is something called Supercite which plugs into any Emacs mail client and does these sorts of quotes. When I tried it, it seemed more trouble that it was worth. On the occasions that this quoting style seems useful, I just use Emacs' rectangle operations.

On 9 October 2012 04:18, Jacek Generowicz
Pablo Olmos de Aguilera C. writes:
First, I'd question myself why I would want to create workspaces on the fiy :P,
Really !?
I started laughing here....
and then "keep them" enough time to make your issue relevant. I always imagined dynamicworkspaces as a complement to create "short-lived" workspaces.
DynamicWorkspaces has made my use of computers bearable.
*Everything* I do, gets its own Dynamic workspace:
+ Letter to Aunt Mabel: open a new workspace; + fiddle with my XMonad config: new workspace; + Order a book/toaster/monitor: new workspace; + try to solve my dropped network connection problem: new workspace; + install some software: new workspace; + fix bug #7364: new workspace; + draw a new logo for the Worm Appreciation Society: new workspace; + the new course I am writing: its own workspace + topic I want to read up on and experiment with for the new course: new workspace. In reality, many workspaces, because I will want to investigate many different topics.
That's sounds great. I don't understand how (or where) in the screen you can list all those workspaces without going crazy or memorizing everything. I tried to use DWS and every new workspace is added before the first one (which seems a bit odd to me) and after a while dzen was totally filled, so I couldn't keep track of everything.
The fact that I can have all windows related to some activity grouped together on a workspace, not interfering with those related to other activities, combined with the ability to SWITCH TO THAT WORKSPACE IN UNDER A SECOND, regardless of whether it was last visited seconds ago or weeks ago, is one of the hugest boons to my productivity I have ever experienced.
Having these workspaces have names I make up on the fly, makes it very easy to remember what is what.
The real world has this habit of not letting me finish whatever I am doing without interruption. I have to task switch between many things. Some tasks last mere seconds, some take weeks or months. The ability to have a workspace dedicated to each of these tasks and to switch between the contexts they create at almost zero cost, and the concomitant confidence this brings in being able to switch away from some context in the knowledge that when I get around to resuming this task (be it 5 seconds from now or 3 weeks from now) everything will be waiting for me exactly as I left it, is what make my modern use of computers bearable.
I agree... you never turn off your computer do you?
In my case I keep 7 "fixed" WS:
Frankly, I don't see how you manage with only 7 workspaces.
1:terms, 2:web, 3:coding, 4:files, 5:media, 6:various, 7:im.
Coding? Just one workspace for coding? You can seriously fit *all* the windows related to *all* the coding tasks you are currently working on, on to a *sigle* workspace? Remember that 'currenly' includes
+ the speculative refactoring of the frobnicator in the Fubar project, which you've been playing with in your spare moments over the last week + the showstopping segfault that your PHB/lover/most important client *needs* solving *this minute*. + the new feature you have been working on as your main coding task for the last 2 days + that damned bug #7364 which you've been chipping away at for the last month + your experiments with the new feature introduced by the latest release of some language/package you use + the code samples you are creating to help new people joining the Barfoo project, get going quickly
Actually I use tmux + vim and I'm really happy with it. Normally I code for myself or little projects so I've never found with some of the use cases you said before. Anyway, I get the point :).
Each of these is likely to contain
+ Editor window + compilation/evaluation/running/tsting window(s) + documentation window + miscellaneous related web search window
Tmux + tmuxinator <3.
All that, one one 'coding' workspace? Really?
(If you don't like coding, similar examples can be made in whatever domain you like.)
Files? Various? Aah, takes me back to the Dark Ages before I got my hands on DynamicWorkspaces.
Here I was like ROFLMAO.
Working with a window manager without Dynamic Workspaces, to me, looks like working on a filesystem without mkdir and rmdir, where you determine the directories you get when you configure your OS.
They are called that way, so it's easy to use the number to jump between them
I have 3 keys for workspace navigation (and some related ones for screen navigation)
+ Select workspace by name Automatically switches when unique starting substring is entered: this means that most workspace switches take just two keystrokes. And I don't have to remember that, say, files is 4: I just have to remember that files starts with 'f' (or, in extremis, 'fi'). + Select most recently used invisible workspace (very useful). + Cycle through (I almost never use this one)
On most of these I also have the following modifiers
+ SHIFT: send the focused window to the target workspace (keep focus on the source workspace) + CONTROL: carry the focused window to the target workspace (move focus to the target workspace)
Well, I couldn't imagined how to do that, so I've never tried too. It would be awesome if you can post your complete config file in paste-like service like gist or pastebin. It could help me to evolve from those medieval times.
You can pry my DynamicWorkspaces from my cold dead fingers.
... I was still laughing here. Thanks for your time, it was an AWESOME email, you should post it somewhere else. I honestly have been working for a couple of months and I'm very comfortable with the setup that I got right now :) Regards, -- Pablo Olmos de Aguilera Corradini - @PaBLoX http://www.glatelier.org/ http://about.me/pablox/ http://www.linkedin.com/in/pablooda/ Linux User: #456971 - http://counter.li.org/

2012/10/10 Pablo Olmos de Aguilera C.
On 9 October 2012 04:18, Jacek Generowicz
wrote: Pablo Olmos de Aguilera C. writes:
First, I'd question myself why I would want to create workspaces on the fiy :P,
Really !?
I started laughing here....
FWIW, I would like a setup where I can use Actions.CycleWS functions without going through empty workspaces. This could be simulated with workspaces on the fly.
and then "keep them" enough time to make your issue relevant. I always imagined dynamicworkspaces as a complement to create "short-lived" workspaces.
DynamicWorkspaces has made my use of computers bearable.
*Everything* I do, gets its own Dynamic workspace:
+ Letter to Aunt Mabel: open a new workspace; + fiddle with my XMonad config: new workspace; + Order a book/toaster/monitor: new workspace; + try to solve my dropped network connection problem: new workspace; + install some software: new workspace; + fix bug #7364: new workspace; + draw a new logo for the Worm Appreciation Society: new workspace; + the new course I am writing: its own workspace + topic I want to read up on and experiment with for the new course: new workspace. In reality, many workspaces, because I will want to investigate many different topics.
That's sounds great. I don't understand how (or where) in the screen you can list all those workspaces without going crazy or memorizing everything. I tried to use DWS and every new workspace is added before the first one (which seems a bit odd to me) and after a while dzen was totally filled, so I couldn't keep track of everything.
The fact that I can have all windows related to some activity grouped together on a workspace, not interfering with those related to other activities, combined with the ability to SWITCH TO THAT WORKSPACE IN UNDER A SECOND, regardless of whether it was last visited seconds ago or weeks ago, is one of the hugest boons to my productivity I have ever experienced.
Having these workspaces have names I make up on the fly, makes it very easy to remember what is what.
The real world has this habit of not letting me finish whatever I am doing without interruption. I have to task switch between many things. Some tasks last mere seconds, some take weeks or months. The ability to have a workspace dedicated to each of these tasks and to switch between the contexts they create at almost zero cost, and the concomitant confidence this brings in being able to switch away from some context in the knowledge that when I get around to resuming this task (be it 5 seconds from now or 3 weeks from now) everything will be waiting for me exactly as I left it, is what make my modern use of computers bearable.
I agree... you never turn off your computer do you?
In my case I keep 7 "fixed" WS:
Frankly, I don't see how you manage with only 7 workspaces.
1:terms, 2:web, 3:coding, 4:files, 5:media, 6:various, 7:im.
Coding? Just one workspace for coding? You can seriously fit *all* the windows related to *all* the coding tasks you are currently working on, on to a *sigle* workspace? Remember that 'currenly' includes
+ the speculative refactoring of the frobnicator in the Fubar project, which you've been playing with in your spare moments over the last week + the showstopping segfault that your PHB/lover/most important client *needs* solving *this minute*. + the new feature you have been working on as your main coding task for the last 2 days + that damned bug #7364 which you've been chipping away at for the last month + your experiments with the new feature introduced by the latest release of some language/package you use + the code samples you are creating to help new people joining the Barfoo project, get going quickly
Actually I use tmux + vim and I'm really happy with it. Normally I code for myself or little projects so I've never found with some of the use cases you said before. Anyway, I get the point :).
Each of these is likely to contain
+ Editor window + compilation/evaluation/running/tsting window(s) + documentation window + miscellaneous related web search window
Tmux + tmuxinator <3.
All that, one one 'coding' workspace? Really?
(If you don't like coding, similar examples can be made in whatever domain you like.)
Files? Various? Aah, takes me back to the Dark Ages before I got my hands on DynamicWorkspaces.
Here I was like ROFLMAO.
Working with a window manager without Dynamic Workspaces, to me, looks like working on a filesystem without mkdir and rmdir, where you determine the directories you get when you configure your OS.
They are called that way, so it's easy to use the number to jump between them
I have 3 keys for workspace navigation (and some related ones for screen navigation)
+ Select workspace by name Automatically switches when unique starting substring is entered: this means that most workspace switches take just two keystrokes. And I don't have to remember that, say, files is 4: I just have to remember that files starts with 'f' (or, in extremis, 'fi'). + Select most recently used invisible workspace (very useful). + Cycle through (I almost never use this one)
On most of these I also have the following modifiers
+ SHIFT: send the focused window to the target workspace (keep focus on the source workspace) + CONTROL: carry the focused window to the target workspace (move focus to the target workspace)
Well, I couldn't imagined how to do that, so I've never tried too. It would be awesome if you can post your complete config file in paste-like service like gist or pastebin. It could help me to evolve from those medieval times.
You can pry my DynamicWorkspaces from my cold dead fingers.
... I was still laughing here. Thanks for your time, it was an AWESOME email, you should post it somewhere else.
I honestly have been working for a couple of months and I'm very comfortable with the setup that I got right now :)
Regards, -- Pablo Olmos de Aguilera Corradini - @PaBLoX http://www.glatelier.org/ http://about.me/pablox/ http://www.linkedin.com/in/pablooda/ Linux User: #456971 - http://counter.li.org/
_______________________________________________ xmonad mailing list xmonad@haskell.org http://www.haskell.org/mailman/listinfo/xmonad

On Tue, Oct 9, 2012 at 1:43 PM, Jacek Generowicz
OK, I'll have a go. I won't paste my whole config file, as that could well overwhelm you with irrelevant nonsense (and I'm embarassed about how much of a mess some of it is :-).
Wow, thanks for the comprehensive explanation! I actually figured it out myself, but your config looks very interesting and I'll certainly see what more I can learn from it. Here's what I did: 1. Define two custom prompts: myXPConfigSelect = defaultXPConfig { autoComplete = Just 0 , showCompletionOnTab = True } myXPConfigNew = defaultXPConfig { autoComplete = Nothing , showCompletionOnTab = True } (I have some more settings but they aren't relevant here.) 2. Bind keys for switching and creating workspaces, in the latter case it doesn't autocomplete: -- Switch workspace , ((modm , xK_h), selectWorkspace myXPConfigSelect) -- Move window to workspace , ((modm .|. shiftMask, xK_h), withWorkspace myXPConfigSelect (windows . W.shift)) -- Create new workspace , ((modm , xK_n), selectWorkspace myXPConfigNew) -- Move window to newly created workspace , ((modm .|. shiftMask, xK_n), withWorkspace myXPConfigNew (windows . W.shift) Works like a charm. I'm still experimenting with which keys to use, but otherwise I'm pretty satisfied with this. On Wed, Oct 10, 2012 at 12:04 AM, Pablo Olmos de Aguilera C. < pablo@glatelier.org> wrote:
That's sounds great. I don't understand how (or where) in the screen you can list all those workspaces without going crazy or memorizing everything. I tried to use DWS and every new workspace is added before the first one (which seems a bit odd to me) and after a while dzen was totally filled, so I couldn't keep track of everything.
I was also annoyed by how newly created workspaces would mess up the order
with my configured ones. I found this patch that fixes it for me:
http://www.haskell.org/pipermail/xmonad/2012-July/012810.html
Ideally I would like to order all workspaces by when they were created.
On Wed, Oct 10, 2012 at 12:26 AM, Carlos López Camey
FWIW, I would like a setup where I can use Actions.CycleWS functions without going through empty workspaces. This could be simulated with workspaces on the fly.
And I would like Actions.CycleWS to ignore workspaces that are visible on other screen (to avoid switching those workspaces). Now I'm going off topic, but does anyone know if it's possible with the toggleOrDoSkip function? About the original question about prefixing workspace names with numbers, I'm happy with the prompt + autocomplete, so I don't really need an answer (unless it's easy to achieve). Cheers, Hans

Hans Chen writes:
Wow, thanks for the comprehensive explanation!
'Twas a pleasure.
2. Bind keys for switching and creating workspaces, in the latter case it doesn't autocomplete:
Yes, My config needs improving in this respect. On the one hand I like just being able to create a new workspace with the same key as switching. On the other, if I want to create a workspace with a name which starts with the same letter as an existing one, I get a switch. So I have to resort to tricks like prepending the new name with an underscore, and then deleting it before hitting return. So, in the back of my mind I've been meaning to create a dedicated 'new workspace' key. Maybe this will motivate me to get on and do it.
Works like a charm. I'm still experimenting with which keys to use, but otherwise I'm pretty satisfied with this.
Aaah, I love the sound of productivity increasing.
Ideally I would like to order all workspaces by when they were created.
Hmm. Interesting choice.
And I would like Actions.CycleWS to ignore workspaces that are visible on other screen (to avoid switching those workspaces).
Hmm. Another interesting choice.
Now I'm going off topic, but does anyone know if it's possible with the toggleOrDoSkip function?
Not off the top of my head, sorry.
About the original question about prefixing workspace names with numbers, I'm happy with the prompt + autocomplete, so I don't really need an answer (unless it's easy to achieve).
I'd have to dig around to remind myself about the relevant plumbing, so if you're happy with what you've got, I'll pass on this one.

Jacek Generowicz writes:
Hans Chen writes:
2. Bind keys for switching and creating workspaces, in the latter case it doesn't autocomplete:
Yes, My config needs improving in this respect.
On the one hand I like just being able to create a new workspace with the same key as switching. On the other, if I want to create a workspace with a name which starts with the same letter as an existing one, I get a switch. So I have to resort to tricks like prepending the new name with an underscore, and then deleting it before hitting return.
So, in the back of my mind I've been meaning to create a dedicated 'new workspace' key. Maybe this will motivate me to get on and do it.
Duh! So it turns out that I had already done this. I just needed to switch off autocompletion for my renameWorkspace. Thanks for giving me this much-needed push!

Pablo Olmos de Aguilera C. writes:
On 9 October 2012 04:18, Jacek Generowicz
wrote:
*Everything* I do, gets its own Dynamic workspace:
+ Letter to Aunt Mabel: open a new workspace; + fiddle with my XMonad config: new workspace; + Order a book/toaster/monitor: new workspace; + try to solve my dropped network connection problem: new workspace; + install some software: new workspace; + fix bug #7364: new workspace; + draw a new logo for the Worm Appreciation Society: new workspace; + the new course I am writing: its own workspace + topic I want to read up on and experiment with for the new course: new workspace. In reality, many workspaces, because I will want to investigate many different topics.
That's sounds great. I don't understand how (or where) in the screen you can list all those workspaces without going crazy or memorizing everything.
My top notification bar contains workspace names (19 of them, just now) and the layout name. Nothing else. (Hmm, I could probably do without tha layout name.) This bar lists, from left to right + The currently active workspace, in white + The workspace visible on the other monitor, in grey + The rest, in most-to-least recently visited order, red for empty ones, green otherwise
I tried to use DWS and every new workspace is added before the first one (which seems a bit odd to me)
Hint: myDzenPP = defaultPP { .... , ppSort = getSortByMyRule } Go to town!
and after a while dzen was totally filled, so I couldn't keep track of everything.
Well, yes, as the number of workspaces grows, it does become more difficult to keep track of things. But it's much *more* difficult to keep track of all those things if you have to stuff them all on a mere 7 workspaces with names like 'files' and 'various'.
you never turn off your computer do you?
Hardware upgrades are always dark days. (OK, ok, I also have to reboot because of software updates every now and then.) But seriously, rebooting my computer feels like taking all my belongings out of my house and then putting them back into place. I can't fathom why anyone would want to do that voluntarily.
Actually I use tmux + vim
... to do the job of XMonad, it would seem.
I have 3 keys for workspace navigation (and some related ones for screen navigation)
+ Select workspace by name Automatically switches when unique starting substring is entered: this means that most workspace switches take just two keystrokes. And I don't have to remember that, say, files is 4: I just have to remember that files starts with 'f' (or, in extremis, 'fi'). + Select most recently used invisible workspace (very useful). + Cycle through (I almost never use this one)
On most of these I also have the following modifiers
+ SHIFT: send the focused window to the target workspace (keep focus on the source workspace) + CONTROL: carry the focused window to the target workspace (move focus to the target workspace)
Well, I couldn't imagined how to do that, so I've never tried too. It would be awesome if you can post your complete config file in paste-like service like gist or pastebin. It could help me to evolve from those medieval times.
I'd rather not paste my *whole* config (at least not before a clean up, and I don't have time for that at the moment). Have a look at what I posted for Hans, and ask if you want any clarification or further info.
You can pry my DynamicWorkspaces from my cold dead fingers.
... I was still laughing here. Thanks for your time, it was an AWESOME email, you should post it somewhere else.
Thanks for your kind words. They brightened up my morning.
I honestly have been working for a couple of months and I'm very comfortable with the setup that I got right now :)
Well, that's what matters. We all have different styles and habits. I'm sure that what works for me will be completely wrong for many others.

On 10 October 2012 02:50, Jacek Generowicz
Pablo Olmos de Aguilera C. writes:
On 9 October 2012 04:18, Jacek Generowicz
wrote: *Everything* I do, gets its own Dynamic workspace:
+ Letter to Aunt Mabel: open a new workspace; + fiddle with my XMonad config: new workspace; + Order a book/toaster/monitor: new workspace; + try to solve my dropped network connection problem: new workspace; + install some software: new workspace; + fix bug #7364: new workspace; + draw a new logo for the Worm Appreciation Society: new workspace; + the new course I am writing: its own workspace + topic I want to read up on and experiment with for the new course: new workspace. In reality, many workspaces, because I will want to investigate many different topics.
That's sounds great. I don't understand how (or where) in the screen you can list all those workspaces without going crazy or memorizing everything.
My top notification bar contains workspace names (19 of them, just now) and the layout name. Nothing else. (Hmm, I could probably do without tha layout name.)
This bar lists, from left to right
+ The currently active workspace, in white + The workspace visible on the other monitor, in grey + The rest, in most-to-least recently visited order, red for empty ones, green otherwise
I haven't thought about the last point... sounds really interesting!
I tried to use DWS and every new workspace is added before the first one (which seems a bit odd to me)
Hint:
myDzenPP = defaultPP { .... , ppSort = getSortByMyRule }
Go to town!
Thanks for the tip :).
and after a while dzen was totally filled, so I couldn't keep track of everything.
Well, yes, as the number of workspaces grows, it does become more difficult to keep track of things. But it's much *more* difficult to keep track of all those things if you have to stuff them all on a mere 7 workspaces with names like 'files' and 'various'.
Of course it's hard if you aren't in my mind O_o. I know perfectly what's in each workspace.
you never turn off your computer do you?
Hardware upgrades are always dark days.
(OK, ok, I also have to reboot because of software updates every now and then.)
But seriously, rebooting my computer feels like taking all my belongings out of my house and then putting them back into place. I can't fathom why anyone would want to do that voluntarily.
I don't have a workstation, only my laptop and a 24'' monitor. So I have to turn off my computer every day.
Actually I use tmux + vim
... to do the job of XMonad, it would seem.
It's a good complement, It's very easy to have tmuxinator configuration to open the pane configuration I want. Sadly, that's impossible to do with xmonad.
You can pry my DynamicWorkspaces from my cold dead fingers.
... I was still laughing here. Thanks for your time, it was an AWESOME email, you should post it somewhere else.
Thanks for your kind words. They brightened up my morning.
Was that ironic?
I honestly have been working for a couple of months and I'm very comfortable with the setup that I got right now :)
Well, that's what matters. We all have different styles and habits. I'm sure that what works for me will be completely wrong for many others.
Yep, though some things you have written are good ideas that I'm
probably going to implement in the near future.
On 10 October 2012 03:57, Jacek Generowicz
Pablo Olmos de Aguilera C. writes:
Please, can you upload your config file somewhere? It looks like a mess here =/.
OK, ok, here it is:
http://pastebin.com/A53AfM1D (30 day expiry)
(It wasn't as much of a mess as I feared. Haven't ventured in there for a while)
Thank a lot, I'm sure it'll help me a lot! :D
PS.- I'm curious, which client are you using to have those "named" quotes?
Short answer:
any decent editor that understands rectangles.
Long answer:
You probably won't like this, as you admitted to belonging to the Dark Side upthread.
LoL.
There is something called Supercite which plugs into any Emacs mail client and does these sorts of quotes. When I tried it, it seemed more trouble that it was worth. On the occasions that this quoting style seems useful, I just use Emacs' rectangle operations.
Oh, thanks, though I'm still used to gmail web interface =(. Regards, -- Pablo Olmos de Aguilera Corradini - @PaBLoX http://www.glatelier.org/ http://about.me/pablox/ http://www.linkedin.com/in/pablooda/ Linux User: #456971 - http://counter.li.org/

Pablo Olmos de Aguilera C. writes:
and after a while dzen was totally filled, so I couldn't keep track of everything.
Well, yes, as the number of workspaces grows, it does become more difficult to keep track of things. But it's much *more* difficult to keep track of all those things if you have to stuff them all on a mere 7 workspaces with names like 'files' and 'various'.
Of course it's hard if you aren't in my mind O_o. I know perfectly what's in each workspace.
I totally admit that XMonad is just a crutch I need because of the limitations of my brain. My poor little brain just can't keep track of all of this (certainly not efficiently), if yours can, then I send a little nod of admiration in your general direction. But I find it hard to believe that anyone who can keep track of N (for large values of N) windows on a single workspace, would find it *more* difficult to keep track of the same windows, when spread out over several named workspaced containing related windows. But then experience tells me that people's brains can be wired up completely differently.
But seriously, rebooting my computer feels like taking all my belongings out of my house and then putting them back into place. I can't fathom why anyone would want to do that voluntarily.
I don't have a workstation, only my laptop and a 24'' monitor. So I have to turn off my computer every day.
Huh? I don't have a workstation, only my laptop and a 26'' monitor. I have a laptop as my main workstation precisely to enable me NOT TO SWITCH IT OFF AT ALL, even when I have to move physically to another country. Yes, I might suspend or hibernate it, but switch it off? Why on earth would you want/need to do that?
It's a good complement, It's very easy to have tmuxinator
OK, what's tuxminator? Cursory Googling doesn't come up with anything sensible, two days in a row now, only wallpaper.
configuration to open the pane configuration I want. Sadly, that's impossible to do with xmonad.
Granted, I haven't found anything like that in XMonad, but then I haven't really looked, because I don't really need it, becasue I never switch my computer off.
Thanks for your kind words. They brightened up my morning.
Was that ironic?
No, why? I interpreted your remarks as laughing with me rather than laughing at me. I enjoyed sharing the laugh, and thanked you for sharing it.
Yep, though some things you have written are good ideas that I'm probably going to implement in the near future.
Cool, it tickles me pink to have some positive influence on people.
Oh, thanks, though I'm still used to gmail web interface =(.
That's something else that I find unfathomable. Email is essentially text. To deal with it efficiently, I want to use the most efficient tool I have for dealing with text. That would be the text editor I use daily, and whose actions have been imprinting themselves into the core of my nervous system over the course of many years. Regardless of what your choice of editor is, I can't fathom why you would want to relinquish all that in favour of a slow, cumbersome, inefficient, pointy-clickety interface. OK, maybe managing your mail, as opposed to writing it, is something that only Emacs users would understand/want/appreciate. But *writing* your mail? Surely *everyone* would want to write their mail in their standard text editor, rather than some ad-hoc one. (So that, for example, if you want to prepend the author's initials to each of his quoted lines, there's nothing to wonder about: it just happens naturally.) Personally, I just can't stomach any mail interface that is not Embedded in Emacs. But then Emacs is pretty much my OS.

On Thu, Oct 11, 2012 at 3:53 AM, Jacek Generowicz
It's a good complement, It's very easy to have tmuxinator
OK, what's tuxminator? Cursory Googling doesn't come up with anything sensible, two days in a row now, only wallpaper.
Google can only correct so many kinds of typoes. https://github.com/aziz/tmuxinator --- note, not "tuxminator". ("tmux" is a turbocharged replacement for "screen".) As for controlling xmonad, you can do some of it with wmctrl/nawm and EwmhDesktops, and now that I'm in a position to start stabilizing my life again I can try to look into turning ServerMode from a somewhat unfortunately designed proof of concept into a usable feature. -- brandon s allbery kf8nh sine nomine associates allbery.b@gmail.com ballbery@sinenomine.net unix/linux, openafs, kerberos, infrastructure http://sinenomine.net

POdAC> tmuxinator JG> OK, what's tuxminator? Cursory Googling doesn't come up with anything JG> sensible, two days in a row now, only wallpaper. BA> Google can only correct so many kinds of typoes. The human brain is a fascinating thing! I went through that, character by character, both yesterday and today, and completely failed to spot my adulteration of the original. I guess the dapper penguin was so firmly lodged in my mind, that it couldn't entertain the possibility of the first three characters being wrong. Thanks.

On 11 October 2012 04:53, Jacek Generowicz
Pablo Olmos de Aguilera C. writes:
and after a while dzen was totally filled, so I couldn't keep track of everything.
Well, yes, as the number of workspaces grows, it does become more difficult to keep track of things. But it's much *more* difficult to keep track of all those things if you have to stuff them all on a mere 7 workspaces with names like 'files' and 'various'.
Of course it's hard if you aren't in my mind O_o. I know perfectly what's in each workspace.
I totally admit that XMonad is just a crutch I need because of the limitations of my brain. My poor little brain just can't keep track of all of this (certainly not efficiently), if yours can, then I send a little nod of admiration in your general direction.
But I find it hard to believe that anyone who can keep track of N (for large values of N) windows on a single workspace, would find it *more* difficult to keep track of the same windows, when spread out over several named workspaced containing related windows. But then experience tells me that people's brains can be wired up completely differently.
The thing is that actually I don't have many windows opened =P. Remember that I do power off my computer.
But seriously, rebooting my computer feels like taking all my belongings out of my house and then putting them back into place. I can't fathom why anyone would want to do that voluntarily.
I don't have a workstation, only my laptop and a 24'' monitor. So I have to turn off my computer every day.
Huh?
I don't have a workstation, only my laptop and a 26'' monitor. I have a laptop as my main workstation precisely to enable me NOT TO SWITCH IT OFF AT ALL, even when I have to move physically to another country. Yes, I might suspend or hibernate it, but switch it off? Why on earth would you want/need to do that?
Hibernate has never worked ok with my laptops and I move my laptop almost everyday. Even though, I proposed myself (once again) to try to get it working! (I have faith on TuxOnIce).
configuration to open the pane configuration I want. Sadly, that's impossible to do with xmonad.
Granted, I haven't found anything like that in XMonad, but then I haven't really looked, because I don't really need it, becasue I never switch my computer off.
Afaik it's impossible =(.
Thanks for your kind words. They brightened up my morning.
Was that ironic?
No, why?
I interpreted your remarks as laughing with me rather than laughing at me. I enjoyed sharing the laugh, and thanked you for sharing it.
<3.
Yep, though some things you have written are good ideas that I'm probably going to implement in the near future.
Cool, it tickles me pink to have some positive influence on people.
You xmonad configuration is really "sui generis", I've seen a lot of them, but no one to that level of details. It's well commented and has the best hotkey configuration I've ever seen. I totally fell in love with it and I'm prolly going to make a big mix between mine and yours.
Oh, thanks, though I'm still used to gmail web interface =(.
That's something else that I find unfathomable. Email is essentially text. To deal with it efficiently, I want to use the most efficient tool I have for dealing with text. That would be the text editor I use daily, and whose actions have been imprinting themselves into the core of my nervous system over the course of many years. Regardless of what your choice of editor is, I can't fathom why you would want to relinquish all that in favour of a slow, cumbersome, inefficient, pointy-clickety interface.
I use the hotkeys which helps a bit, but after started using xmonad and then pentadactyl reaching the mouse it's a pain that I try to avoid at all costs.
OK, maybe managing your mail, as opposed to writing it, is something that only Emacs users would understand/want/appreciate. But *writing* your mail? Surely *everyone* would want to write their mail in their standard text editor, rather than some ad-hoc one. (So that, for example, if you want to prepend the author's initials to each of his quoted lines, there's nothing to wonder about: it just happens naturally.)
Yeah, I somehow do that. In fact this email is being written in a gvim window. I use pentadactyl so after a couple of keystrokes (<C-i>) on a textarea throws me here. The only issue with that is that I still can't make xmonad understand that all these windows should be floating and not tiled =/. I wrote in this list a while ago but every attempt to make a "generic" declaration with a managehook failed.
Personally, I just can't stomach any mail interface that is not Embedded in Emacs. But then Emacs is pretty much my OS.
I don't know if I can "embed" a mail interface in vim (I haven't searched), but I guess that mutt is the closest thing to that. Anyway, once again I felt motivated to get rid of the gmail web interface :) Regards, -- Pablo Olmos de Aguilera Corradini - @PaBLoX http://www.glatelier.org/ http://about.me/pablox/ http://www.linkedin.com/in/pablooda/ Linux User: #456971 - http://counter.li.org/

Pablo Olmos de Aguilera C. writes:
Hibernate has never worked ok with my laptops and I move my laptop almost everyday.
Understood. This is one of the two or three main reasons why I tolerated OS X for 8 years: that shit just works (TM). Incidentally, the immiscibility of XMonad and Aqua was one of, if not *the* major reason for me moving back. My hibernation was broken for a while until around a week ago. Painful times. (I've been back in Linux long enough now, that it's probably time to ditch Ubuntu.) The trouble with trying to solve problems of this kind is that it forces you to reboot your computer. Many times. And, by now, you know how I feel about that. Hint: TuxOnIce
Even though, I proposed myself (once again) to try to get it working! (I have faith on TuxOnIce).
... Ah, you already know about it. Well, it worked like a charm for me.
You xmonad configuration is really "sui generis",
Heh, yes, I'm a /sui generis/ kinda guy :-)
It's well commented
I tried. But I fell way short of the standards I was hoping to achieve, before I could no longer justify spending any more time on XMonad. The thing is, I know that a future me will, one day, invest another solid chunk of time in trying to get XMonad to do his bidding ... and that guy's a maniac, and he knows where I live.
and has the best hotkey configuration I've ever seen.
Yes, I do like that scheme. Though I'm sure it could be made better, it's already a huge improvement on the standard, scatter arcane keybinding incantations in a random order approach. One day, I'll get back to it and implement the keybindings display feature. The trouble is that opening my config file and looking at that table, is sufficiently painless, that that particular itch doesn't need much scratching.
I totally fell in love with it and I'm prolly going to make a big mix between mine and yours.
Cool! Makes me happy. I thank you for persuading me to post it.
Oh, thanks, though I'm still used to gmail web interface =(.
That's something else that I find unfathomable. Email is essentially text. To deal with it efficiently, I want to use the most efficient tool I have for dealing with text. That would be the text editor I use daily, and whose actions have been imprinting themselves into the core of my nervous system over the course of many years. Regardless of what your choice of editor is, I can't fathom why you would want to relinquish all that in favour of a slow, cumbersome, inefficient, pointy-clickety interface.
I use the hotkeys which helps a bit, but after started using xmonad and then pentadactyl reaching the mouse it's a pain that I try to avoid at all costs.
Hmm, so Pentadactyl is the new Vimperator. I'm sure that you can guess that I use Conkeror: still wouldn't let it anywhere near my mail.
OK, maybe managing your mail, as opposed to writing it, is something that only Emacs users would understand/want/appreciate. But *writing* your mail? Surely *everyone* would want to write their mail in their standard text editor, rather than some ad-hoc one. (So that, for example, if you want to prepend the author's initials to each of his quoted lines, there's nothing to wonder about: it just happens naturally.)
Yeah, I somehow do that. In fact this email is being written in a gvim window. I use pentadactyl so after a couple of keystrokes (<C-i>) on a textarea throws me here.
Te-he. C-i takes me from a Conkeror textarea into Emacs. Still wouldn't let it anywhere near my email :-)
The only issue with that is that I still can't make xmonad understand that all these windows should be floating and not tiled =/.
Truth be told: I've never understood the point of these floating windows, or how they actually work in XMonad. (Perhaps I don't make enough use of stuff like GIMP.) When I get a floating window, it's often only a matter of seconds before I tile the bugger, out of annoyance. I'm sure that I could benefit from some education in this respect.
I wrote in this list a while ago but every attempt to make a "generic" declaration with a managehook failed.
Personally, I just can't stomach any mail interface that is not Embedded in Emacs. But then Emacs is pretty much my OS.
I don't know if I can "embed" a mail interface in vim (I haven't searched), but I guess that mutt is the closest thing to that.
Chances are that it's not (sensibly) possible. It's very much an Emacs cultural thing, to take whatever it is that you do repeatedly, and have Emacs absorb it. Org-mode is an epic testament to this.
Anyway, once again I felt motivated to get rid of the gmail web interface :)
I must stop leading you astray. :-)

On Thu, Oct 11, 2012 at 4:28 PM, Jacek Generowicz
Incidentally, the immiscibility of XMonad and Aqua was one of, if not *the* major reason for me moving back.
They're not immiscible, just not as nice as it could be. I'm running xmonad on OS X now. I would like to see Spaces visible to XQuartz as separate XRandR screens, but I'm not sure how well that would work and there are limits to what XQuartz can do in adapting between X11 and Core Graphics. -- brandon s allbery kf8nh sine nomine associates allbery.b@gmail.com ballbery@sinenomine.net unix/linux, openafs, kerberos, infrastructure http://sinenomine.net

Brandon Allbery writes:
On Thu, Oct 11, 2012 at 4:28 PM, Jacek Generowicz
wrote: Incidentally, the immiscibility of XMonad and Aqua was one of, if not *the* major reason for me moving back.
They're not immiscible,
Hrrrm. Can you control, say, Apple Mail or Safari with XMonad?
I'm running xmonad on OS X now.
I used to run it on there too, but I couldn't shake the feeling that it just partitioned my OS into two separate ones: some stuff just doesn't run in X on OS X.

On Thu, Oct 11, 2012 at 5:16 PM, Jacek Generowicz
They're not immiscible,
Hrrrm.
Can you control, say, Apple Mail or Safari with XMonad?
Ah, you're in the X11 uber alles camp. In that sense they are immiscible, yes; X11 is a second class citizen, it should be a second class citizen, this will never change, if you don't like it then indeed you must run something else. There are plenty of craptacular X11 desktop environments on Linux if that's what you like. -- brandon s allbery kf8nh sine nomine associates allbery.b@gmail.com ballbery@sinenomine.net unix/linux, openafs, kerberos, infrastructure http://sinenomine.net

Brandon Allbery writes:
On Thu, Oct 11, 2012 at 5:16 PM, Jacek Generowicz
wrote: Can you control, say, Apple Mail or Safari with XMonad?
Ah, you're in the X11 uber alles camp.
:-) Not at all. But I am in 'the why run two completely different window managers simultaneously, when it's far more comfortable to be running just the one' camp. But the ease with which your suggestion rolls off the tongue does make for a strong temptation to switch camps.
In that sense they are immiscible, yes; X11 is a second class citizen, it should be a second class citizen, this will never change,
Agreed. But then why bother with XMonad on OS X?
if you don't like it then indeed you must run something else. There are plenty of craptacular X11 desktop environments on Linux if that's what you like.
Eh? No. I like not having to take my fingers off the home row. I like never seeing a single pixel of my desktop background. I like XMonad: As bare (in terms of surrounding desktop environment) as possible. I hate the craptacular desktop environments, and find OS X's effort only marginally less craptacular than the Linux ones (for my personal use: for people who like to point and click, it's lightyears ahead). For my personal use, OS X offered me 3 useful features. 1. I buy any MacBook and open the lid: WiFi works. 2. I plug in an external drive: a backup is made. 3. I close the lid: it goes to sleep; when I open the lid again, it restores the session. No careful picking of the hardware. No downloading of drivers. No enabling of kernel modules. No editing of configuration files. No time spent on choosing between the 248 backup solutions on offer. (Apple Mail is also immensely less sucky than any other (non-Emacs) mail client I have ever had the displeasure of using.) BTW, can anyone recommend a Linux backup solution that Just Works?

On Thu, Oct 11, 2012 at 6:10 PM, Jacek Generowicz
Can you control, say, Apple Mail or Safari with XMonad? Ah, you're in the X11 uber alles camp.
:-)
Not at all. But I am in 'the why run two completely different window managers simultaneously, when it's far more comfortable to be running just the one' camp. But the ease with which your suggestion rolls off
I have uses for X11-based stuff (have not, for example, found a single GUI IRC client for native Aqua that is really usable; also, I regularly do support for Unix/Linux stuff so need that UI available) and the X11 and Aqua stuff differs significantly enough that I don't have issues switching between them. Except that it's far easier when they're on the same machine than when one is confined to a Linux VM, which in turn is easier than when one is confined to its own hardware. Maybe if the X11 world offered a user interface that didn't feel like it was written by bonobos on LSD, I'd use it full time. I'd even be willing to put up with driver hell if the UI weren't just so horrid. I mean, I'm not fond of Apple Mail but it's way more usable than Linux offerings.... But in the meantime, I need it to be around and I want it to be conveniently available, without being in my way. XQuartz serves the purpose. -- brandon s allbery kf8nh sine nomine associates allbery.b@gmail.com ballbery@sinenomine.net unix/linux, openafs, kerberos, infrastructure http://sinenomine.net

On 11 October 2012 22:53, Brandon Allbery
[...] Maybe if the X11 world offered a user interface that didn't feel like it was written by bonobos on LSD, I'd use it full time.
OMG, i've read so much funny stuff on this thread.
I'd even be willing to put up with driver hell if the UI weren't just so horrid.
I don't which kind of computer do you guys have, but I bought this laptop about 3 years ago with intel components, installed arch linux and there weren't any "driver hell". Everything worked out-of-the-box. End-user friendly distros like linux mint or ubuntu configures everything automagically (which I don't like for myself, but it's okay for most people) so I feel like we are speaking about "linuxes" around the 2000's.
I mean, I'm not fond of Apple Mail but it's way more usable than Linux offerings.... But in the meantime, I need it to be around and I want it to be conveniently available, without being in my way. XQuartz serves the purpose.
I don't understand how is that x11 could have a user interface =/. Isn't X11 just the window system? Regards, -- Pablo Olmos de Aguilera Corradini - @PaBLoX http://www.glatelier.org/ http://about.me/pablox/ http://www.linkedin.com/in/pablooda/ Linux User: #456971 - http://counter.li.org/

Pablo Olmos de Aguilera C. writes:
On 11 October 2012 22:53, Brandon Allbery
wrote:
I'd even be willing to put up with driver hell if the UI weren't just so horrid.
I don't which kind of computer do you guys have, but I bought this laptop about 3 years ago with intel components, installed arch linux and there weren't any "driver hell". Everything worked out-of-the-box.
Says the guy whose computer couldn't hibernate for the last 5 years.
End-user friendly distros like linux mint or ubuntu configures everything automagically (which I don't like for myself, but it's okay for most people) so I feel like we are speaking about "linuxes" around the 2000's.
Oh, they've made great progress since then, but there's still so much stuff that is so horribly broken. That's ok for all sorts of experimental fringe things that allow me to do the wacky /sui generis/ stuff. I love Linux for the freedom it gives me to waste lots of my time on trying to come up with schemes that save lots of my time. But I don't need anything /sui generis/ about 1. WiFi 2. Backups 3. Hibernation These are all so fundamental and so obvious that the should just work, dammit. Linux comes woefully short on this front, even today.

On Thu, Oct 11, 2012 at 22:10:54 GMT, Jacek Generowicz wrote:
For my personal use, OS X offered me 3 useful features.
<snip>
3. I close the lid: it goes to sleep; when I open the lid again, it restores the session.
However, getting one to *not* do so[1] is a pain in the ass (kernel patch required and needs reapplied after every kernel update).
(Apple Mail is also immensely less sucky than any other (non-Emacs) mail client I have ever had the displeasure of using.)
I've got mutt and vim wired tightly together, but its more vim-with-mutt than what you have with Emacs :) .
BTW, can anyone recommend a Linux backup solution that Just Works?
There's obnam[1] that I've been eyeing, but have been unable to setup yet (I've been lacking a landline Internet connection for two months now :/ ) due to my FreeBSD machine being in the process of a rebuild (which is paused do to it lacking Internet). --Ben [1]It was cheap from a coworker and I just need it to test that things build and work on OS X. tmux and ssh do the job without having to deal with the things I hate with its user interface (mouse-happy, crappy keyboard modifier placement, a trackpad I hate using, no focus-follows-mouse, and more). [2]http://liw.fi/obnam/

Ben Boeckel writes:
BTW, can anyone recommend a Linux backup solution that Just Works?
There's obnam [...]
At first glance, it seems to inspire more confidence than most. I'll have to give it a go. Thanks.
yet (I've been lacking a landline Internet connection for two months now :/ ) due to my FreeBSD machine being in the process of a rebuild (which is paused do to it lacking Internet).
:-) That's a nice hole you've got yourself into. Seeing as we're off on a tangent anyway: I've been meaning to give BSD a go for over a decade, but have never managed to get over the activation energy. Could you spare a few words on the topic of which BSD one might start with? (It will have to run on a laptop, in case that makes a difference.)

On Sat, Oct 27, 2012 at 22:28:31 +0200, Jacek Generowicz wrote:
Ben Boeckel writes:
BTW, can anyone recommend a Linux backup solution that Just Works?
There's obnam [...]
At first glance, it seems to inspire more confidence than most. I'll have to give it a go. Thanks.
Yeah, it's just missing a few things and it'd be perfect for me[1].
yet (I've been lacking a landline Internet connection for two months now :/ ) due to my FreeBSD machine being in the process of a rebuild (which is paused do to it lacking Internet).
:-) That's a nice hole you've got yourself into.
Indeed. I've been considering dragging it to $DAYJOB and just spend a day setting the thing up, but I haven't gotten the urge to untangle it and lug it back and forth yet. Not like it's going to be useful outside of the apartment anyways :/ .
Seeing as we're off on a tangent anyway: I've been meaning to give BSD a go for over a decade, but have never managed to get over the activation energy. Could you spare a few words on the topic of which BSD one might start with? (It will have to run on a laptop, in case that makes a difference.)
I don't run it as a main machine, just as a server (jails make securing and sectioning off services dead simple; use ezjail-admin). As for main usage, I trip over nvi != vim all the time, but I doubt you'll have that problem for long :) . Ports are easy to manage port portupgrade, but since I don't do much with it at the top-level (tmux, ezjail-admin, and maybe one or two others), I tend to just do ports manually (with make). Other than that, getting over GNU-isms from coreutils is the biggest hurdle. This is also just FreeBSD; I haven't used OpenBSD, NetBSD, Dragonfly, or PC-BSD at all. --Ben [1]I'd love to be able to do "topic" backups. As an example, higher-end game saves shouldn't be fetched on a machine that can't game well (such as the netbook).

On Thu, Oct 11, 2012 at 22:10:54 GMT, Jacek Generowicz wrote:
For my personal use, OS X offered me 3 useful features.
<snip>
3. I close the lid: it goes to sleep; when I open the lid again, it restores the session.
However, getting one to *not* do so[1] is a pain in the ass (kernel patch required and needs reapplied after every kernel update).
(Apple Mail is also immensely less sucky than any other (non-Emacs) mail client I have ever had the displeasure of using.)
I've got mutt and vim wired tightly together, but its more vim-with-mutt than what you have with Emacs :) .
BTW, can anyone recommend a Linux backup solution that Just Works?
There's obnam[1] that I've been eyeing, but have been unable to setup yet (I've been lacking a landline Internet connection for two months now :/ ) due to my FreeBSD machine being in the process of a rebuild (which is paused do to it lacking Internet). --Ben [1]It was cheap from a coworker and I just need it to test that things build and work on OS X. tmux and ssh do the job without having to deal with the things I hate with its user interface (mouse-happy, crappy keyboard modifier placement, a trackpad I hate using, no focus-follows-mouse, and more). [2]http://liw.fi/obnam/

On Thu, Oct 11, 2012 at 05:28 PM, Jacek Generowicz
from: Jacek Generowicz
date: Thu, Oct 11 10:28 PM +02:00 2012 to: "Pablo Olmos de Aguilera C." cc: xmonad@haskell.org subject: Re: [xmonad] How to prefix workspace names with numbers? Pablo Olmos de Aguilera C. writes:
Hibernate has never worked ok with my laptops and I move my laptop almost everyday.
Understood. This is one of the two or three main reasons why I tolerated OS X for 8 years: that shit just works (TM).
Incidentally, the immiscibility of XMonad and Aqua was one of, if not *the* major reason for me moving back.
My hibernation was broken for a while until around a week ago. Painful times. (I've been back in Linux long enough now, that it's probably time to ditch Ubuntu.) The trouble with trying to solve problems of this kind is that it forces you to reboot your computer. Many times. And, by now, you know how I feel about that.
Hint: TuxOnIce
Even though, I proposed myself (once again) to try to get it working! (I have faith on TuxOnIce).
... Ah, you already know about it. Well, it worked like a charm for me.
Well, it happened that there was a repo with the package already compiled for my distro (Arch) so I didn't even have to patch it myself. Now hibernate, after like 5 years it's working. Thanks for motivating me to fix that.
You xmonad configuration is really "sui generis",
Heh, yes, I'm a /sui generis/ kinda guy :-)
I can see that.
It's well commented
I tried. But I fell way short of the standards I was hoping to achieve, before I could no longer justify spending any more time on XMonad. The thing is, I know that a future me will, one day, invest another solid chunk of time in trying to get XMonad to do his bidding ... and that guy's a maniac, and he knows where I live.
and has the best hotkey configuration I've ever seen.
Yes, I do like that scheme. Though I'm sure it could be made better, it's already a huge improvement on the standard, scatter arcane keybinding incantations in a random order approach.
One day, I'll get back to it and implement the keybindings display feature. The trouble is that opening my config file and looking at that table, is sufficiently painless, that that particular itch doesn't need much scratching.
I remember that some guy did something like that using Zenity and patching XMonad. Hope it helps ;). https://github.com/thomasf/dotfiles-thomasf-xmonad/blob/master/.xmonad/lib/X...
I totally fell in love with it and I'm prolly going to make a big mix between mine and yours.
Cool! Makes me happy. I thank you for persuading me to post it.
Oh, thanks, though I'm still used to gmail web interface =(.
That's something else that I find unfathomable. Email is essentially text. To deal with it efficiently, I want to use the most efficient tool I have for dealing with text. That would be the text editor I use daily, and whose actions have been imprinting themselves into the core of my nervous system over the course of many years. Regardless of what your choice of editor is, I can't fathom why you would want to relinquish all that in favour of a slow, cumbersome, inefficient, pointy-clickety interface.
I use the hotkeys which helps a bit, but after started using xmonad and then pentadactyl reaching the mouse it's a pain that I try to avoid at all costs.
Hmm, so Pentadactyl is the new Vimperator. I'm sure that you can guess that I use Conkeror: still wouldn't let it anywhere near my mail.
Not exactly. Pentadactyl it's a fork (or it was in the beginning) and both projects are actively (?) developed right now.
OK, maybe managing your mail, as opposed to writing it, is something that only Emacs users would understand/want/appreciate. But *writing* your mail? Surely *everyone* would want to write their mail in their standard text editor, rather than some ad-hoc one. (So that, for example, if you want to prepend the author's initials to each of his quoted lines, there's nothing to wonder about: it just happens naturally.)
Yeah, I somehow do that. In fact this email is being written in a gvim window. I use pentadactyl so after a couple of keystrokes (<C-i>) on a textarea throws me here.
Te-he. C-i takes me from a Conkeror textarea into Emacs. Still wouldn't let it anywhere near my email :-)
The only issue with that is that I still can't make xmonad understand that all these windows should be floating and not tiled =/.
Truth be told: I've never understood the point of these floating windows, or how they actually work in XMonad. (Perhaps I don't make enough use of stuff like GIMP.) When I get a floating window, it's often only a matter of seconds before I tile the bugger, out of annoyance.
I'm sure that I could benefit from some education in this respect.
I wrote in this list a while ago but every attempt to make a "generic" declaration with a managehook failed.
I even tried to use an infix operator because the buffer window was always named the same (/etc/pentadactyl.txt), but for some reason that windows never cared what the manageHook said.
Personally, I just can't stomach any mail interface that is not Embedded in Emacs. But then Emacs is pretty much my OS.
I don't know if I can "embed" a mail interface in vim (I haven't searched), but I guess that mutt is the closest thing to that.
Chances are that it's not (sensibly) possible. It's very much an Emacs cultural thing, to take whatever it is that you do repeatedly, and have Emacs absorb it. Org-mode is an epic testament to this.
Well, it seems that there are some alternatives (check the signature of this email ;))
Anyway, once again I felt motivated to get rid of the gmail web interface :)
I must stop leading you astray. :-)
lol -- Sent from Vmail. http://danielchoi.com/software/vmail.html
participants (7)
-
Ben Boeckel
-
Brandon Allbery
-
Carlos López Camey
-
Hans Chen
-
Jacek Generowicz
-
Pablo Olmos de Aguilera C.
-
Pablo Olmos de Aguilera C.