I've been using an awesome config now for two years that implements
workspaces via tagging as an alternative to simple tags.

I wanted to post how that works here to spur conversation on the
topic. I find tagging very awkward and have never been able to convert
to them, however I did implement workspaces via tags.

I've used xmonad and awesomewm after coming from Enlightenment 14
where I made strong use of the virtual desktops feature and the array
of virtual screens. I had a hacked together version of this for xmonad
(multidim), but it fails in xinerama with multiple heads. My awesome
config works for one laptop screen, and three 24" screens just fine.

From: https://bazaar.launchpad.net/~rladams/+junk/Awesome3dConfig/files

This awesome configuration emulates a 3d cube of workspaces tagged by
their coordinates in xyz format.

My work style is to start a central task, and then supplemental tasks
should be organized radially from that central task. To do this, I use
a 2d plane of workspaces where I can easily layout my windows
geometrically and navigate them spatially in lieu of a desktop or tab
analogy. Multiple projects or key tasks are separated on separate
planes.

In this configuration, each workspace is a tag organized into a 3d
cube of workspaces described by a simple coordinate system. To
navigate between these workspaces, simple keybindings have been
created.

Keys:

Control Left/Right       - Navigate X axis
Control Up/Down          - Navigate Y axis
Control Shift Left/Right - Navigate Z axis
Shift Arrows             - Change focus on screen in direction of arrow

Example Workspace Plane:

The example plane below puts Emacs into the central window, surrounded
by supplimental windows that help support the central task.

At any time from the central window, any supplemental window is only
one key chord away (Control+Arrows). Habit and simple organization
gives way to always knowing where to go to find an item in relation to
the central workspace.

+-----------------------------------------------+----------------------+
|                       |                       |                      |
|                       |  Suppliment           |                      |
|                       |                       |                      |
|                       |  Firefox              |                      |
|                       |                       |                      |
+----------------------------------------------------------------------+
|                       |                       |                      |
|  Supplement           |    Central Task       |  Suppliment          |
|                       |                       |                      |
|  SQL Window           |    EMACS              |  Documentation       |
|                       |                       |                      |
+----------------------------------------------------------------------+
|                       |                       |                      |
|                       |  Suppliment           |                      |
|                       |                       |                      |
|                       |  Two shell prompts    |                      |
|                       |                       |                      |
+-----------------------------------------------+----------------------+


There is no Alt-tab style confusion of trying to find the right window
in a dynamic stack. This organization also lends itself to full screen
windows, or relatively few tiles.

Second level supplementary windows can be created in the corners,
where they are at most two key chords from center. These are less
frequently used and may provide scratch space for additional windows.

The third dimension comes in when managing multiple core tasks in
parallel, where the advantage of easy radial addressing becomes a
concern for another project. The third dimension allows us to stack
workspaces, and toggle between them when it is time to change
projects.

+-----------------------------------------------+----------------------+
| 1,1,1                 |                       |                      |
|                       |  Suppliment           |                      |
|                       |                       |                      |
|                       |  Firefox              |                      
|---------+
|                       |                       |                      |        
 |
+----------------------------------------------------------------------+        
 |
|                       |                       |                      |        
 |
|  Supplement           |    Central Task       |  Suppliment          |        
 |
|                       |                       |                      |        
 |----------+
|  SQL Window           |    EMACS              |  Documentation       
|---------+          |
|                       |                       |                      |        
 |          |
+----------------------------------------------------------------------+        
 |          |
|                       |                       |                      |        
 |          |
|                       |  Suppliment           |                      |on      
 |          |
|                       |                       |                      |        
 |----------+
|                       |  Two shell prompts    |                      
|---------+          |
| 1,3,1                 |                       |                      |        
 |          |
+-----------------------------------------------+----------------------+        
 |          |
          |                       |                       |                     
 |ion       |
          |                       |  Two shell prompts    |                     
 |          |
          | 1,3,2                 |                       |                     
 |----------+
          
+-----------------------------------------------+----------------------+        
  |
                     |                       |                       |          
            |
                     |                       |  Two shell prompts    |          
            |
                     | 1,3,3                 |                       |          
            |
                     
+-----------------------------------------------+----------------------+


TODO Items:

 - Tags on any screen, allowing "sliding puzzle" style with multiple
   monitors and coordinate wrapping.
 - 3d axis cursors, ie: when swapping between planes always restore
   the focus to the window on that plane which last had focus (task
   central focus, instead of strict coordinate navigation).

------------------------------------------------------------------
Russell Adams                            rlad...@adamsinfoserv.com

PGP Key ID:     0x1160DCB3           http://www.adamsinfoserv.com/

Fingerprint:    1723 D8CA 4280 1EC9 557F  66E8 1154 E018 1160 DCB3

-- 
To unsubscribe, send mail to awesome-unsubscr...@naquadah.org.

Reply via email to