Dynamic Workspaces in Window Management

Posted on 04/21/2012 at 5:30pm

Do you have dynamic workspaces in your window manager?

You might be wondering: what in the world are dynamic workspaces? A dynamic workspace model allows one to add, remove or rename workspaces on the fly. Comparatively, in a typical window manager (or desktop environment) configuration, you tell the window manager to have x number of workspaces. When you start your window manager, you’ll have x workspaces, and you can typically cycle between them using some variation of “next workspace” or “previous workspace” commands. The disadvantage with this model is that it’s difficult to have a large number of workspaces—else you might forget which window is on each workspace.

Another approach (if you have a particularly nice window manager) is to specify the names of each workspace available to you. This lets you segregate windows into nice groups. Perhaps one workspace is named “web” and is dedicated to web browsing. Perhaps another one is named “editing” and is full of vim windows. And so on. Named workspaces are useful because they are easier to manage in large number—all one needs is to glance at the name of a workspace and you’ll know what kind of windows are there.

Dynamic workspaces extend upon the named workspace approach. While named workspaces don’t change in size or name, dynamic workspaces can. Named workspaces encourage general groups like “web” or “editing”, dynamic workspaces encourage task-oriented groups.

For example, while developing this blog application, I created several workspaces to manage windows related to development. Namely, blog, view and geils. blog contained terminals running vim for editing the source code, view contained a browser window I used to view my changes and geils contained a terminal logged into my web server (named Geils). After I was done working on my blog, I simply deleted those three workspaces. (I could also leave them there to come back to later—which is something I often do with persistent projects like my window manager.)

I really enjoy this approach to workspace management because it’s so specific to the tasks you’re working on. A static approach is too restraining for me; sometimes windows don’t fit nicely in each category you’ve created or sometimes you can’t forsee how a certain window will be used. Additionally, sometimes you want to have more than one workspace dedicated to some general task like “web”. But how many should you make up front? Too few and you’re restrained; but too many and you have unused workspaces cluttering up your environment.

Okay, you convinced me. How can I get dynamic workspaces?

Typically, your window manager has to support it. Xmonad comes to mind, as it has a DynamicWorkspaces module in xmonad-contrib. I’d also be willing to bet that Awesome could also do it, given its flexible Lua configuration (but I have never used Awesome extensively).

If you’re using Openbox (or possibly any EWMH compliant window manager), I’ve developed a pager that provides dynamic workspaces. (If you’re using Archlinux, it’s in the AUR.)

The pager is configured in Python, and by default, Super+Return is bound to a prompt that will show all available workspaces. If you type in a workspace name that exists, you’ll switch to that workspace. If you type in a workspace name that doesn’t exist, the pager will create that workspace and switch you to it. Finally, Super+BackSpace will delete a workspace (only when it doesn’t have any windows).

(If there’s demand, I may write another post that describes my pager in more detail. It actually has quite a few more nice features other than dynamic workspaces.)

Add a Comment

Markdown is allowed in your comment.

I can't read the CAPTCHA image.

Please verify your humanity:



Posted on 11/25/2014 at 7:14pm

Thank you Will allow me to put some links to my website http://www.elnogom.com/%D8%B4%D8%B1%D9%83%D8%A9-%D9%85%D9%83%D8%A7%D9%81%D8%AD%D8%A9-%D8%AD%D8%B4%D8%B1%D8%A7%D8%AA-%D8%AC%D8%AF%D9%87-%D9%85%D9%83%D9%87-%D8%A7%D9%84%D8%B7%D8%A7%D8%A6%D9%81/ http://www.noornada.com/%D8%B4%D8%B1%D9%83%D8%A9-%D9%85%D9%83%D8%A7%D9%81%D8%AD%D8%A9-%D8%AD%D8%B4%D8%B1%D8%A7%D8%AA-%D8%A8%D8%AC%D8%AF%D9%87-%D9%88%D9%85%D9%83%D9%87/ http://www.manarah-sa.com/%D8%B4%D8%B1%D9%83%D8%A9-%D9%85%D9%83%D8%A7%D9%81%D8%AD%D8%A9-%D8%AD%D8%B4%D8%B1%D8%A7%D8%AA-%D8%A8%D8%AC%D8%AF%D8%A9-%D8%A8%D9%85%D9%83%D9%87-%D8%A8%D8%A7%D9%84%D8%AF%D9%85%D8%A7%D9%85-%D8%A8/ http://www.3elsyana.com/%D8%B4%D8%B1%D9%83%D8%A9-%D9%85%D9%83%D8%A7%D9%81%D8%AD%D8%A9-%D8%AD%D8%B4%D8%B1%D8%A7%D8%AA-%D8%A8%D8%A7%D9%84%D8%B1%D9%8A%D8%A7%D8%B6/ http://www.riyadh-jeddah.com/%D8%B4%D8%B1%D9%83%D8%A9-%D9%85%D9%83%D8%A7%D9%81%D8%AD%D8%A9-%D8%AD%D8%B4%D8%B1%D8%A7%D8%AA-%D8%A8%D8%A7%D9%84%D8%B1%D9%8A%D8%A7%D8%B6-%D8%A8%D8%AC%D8%AF%D8%A9/



Posted on 11/25/2014 at 7:14pm

I do not know how to thank you but already the subject deserves thanks and respect Thank you Will allow me to put some links to my website <a href="http://www.elnogom.com/">شركة مكافحة حشرات - رش مبيدات - تنظيف خزانات - تنظيف مجالس - تنظيف شقق فلل - تنظيف مسابح - تنظيف واجهات جده مكه الطائف </a> <a href="http://www.elnogom.com/شركة-مكافحة-حشرات-جده-مكه-الطائف/">شركة مكافحة حشرات جده - مكه - الطائف </a> <a href="http://www.elnogom.com/شركة-رش-مبيدات-جده-مكه-الطائف/">شركة رش مبيدات جده - مكه - الطائف </a> <a href="http://www.elnogom.com/شركة-تنظيف-خزانات-جده-مكه-الطائف/">شركة تنظيف خزانات جده - مكه - الطائف </a> <a href="http://www.elnogom.com/شركة-تنظيف-مجالس-جده-مكه-الطائف/">شركة تنظيف مجالس جده - مكه - الطائف </a> <a href="http://www.elnogom.com/شركة-تنظيف-فلل-شقق-جده-مكه-الطائف/">شركة تنظيف شقق فلل جده - مكه - الطائف </a> <a href="http://www.elnogom.com/شركة-تنظيف-مسابح-واجهات-جده-مكه-الطائف/">شركة تنظيف مسابح و واجهات جده مكه الطائف </a>


I own a Samsung Mobile S-4 and browse the matter and it is already the subject is worthy of respect and appreciation . Thank you Will allow me to put some links to my website <a href="http://www.noornada.com/">شركة مكافحة حشرات - شركة رش مبيدات - شركة تنظيف مسابح - شركة تنظيف واجهات - شركة كشف تسربات بجده - شركة تسليك وتنظيف بيارات بجده و مكه </a> <a href="http://www.noornada.com/شركة-مكافحة-حشرات-بجده-ومكه/">شركة مكافحة حشرات بجده و مكه </a> <a href="http://www.noornada.com/شركة-رش-مبيدات-بجده-ومكه/">شركة رش مبيدات بجده ومكه </a> <a href="http://www.noornada.com/شركة-تنظيف-مسابح-بجده-ومكه/">شركة تنظيف مسابح بجده ومكه </a> <a href="http://www.noornada.com/شركة-تنظيف-واجهات-بجده-ومكه/">شركة تنظيف واجهات بجده ومكه </a> <a href="http://www.noornada.com/شركة-كشف-تسربات-بجده-ومكه/"> شركة كشف تسربات بجده بجده و مكه </a> <a href="http://www.noornada.com/شركة-تسليك-وتنظيف-بيارات-بجده-ومكه/">شركة تسليك وتنظيف بيارات بجده و مكه </a> <a href="http://www.noornada.com/شركة-كشف-تسربات-بجده-ومكه/"> شركة كشف تسربات بجده بجده و مكه </a> <a href="https://sites.google.com/site/riyadhcompany1/">شركة مكافحة حشرات بالرياض - بجدة </a> <a href="http://www.youtube.com/watch?v=yB7pmuznzRE">شركة مكافحة النمل الابيض بالرياض </a>


Posted on 09/26/2014 at 8:25am

These loans come with a few qualifying conditions as well as the following conditions are.

Stop by my homepage … Medifast coupons