Wingo: floating and tiling window manager with per-monitor workspaces

More screenshots.
Wingo has two features which, when combined, set it apart from other window managers (maybe):
1) Support for both floating and tiling placement policies. Wingo can be used as a regular floating (stacking) window manager, complete with decorations, maximization, sticky windows, and most other things you might find in a window manager. Wingo can also be switched into a tiling mode where window decorations disappear, and windows are automatically managed via tiling.
2) Workspaces per monitor. In a multi-head setup, each monitor can display its own workspace---independent of the other monitors. This makes changing your view of windows in multi-head setups much easier than in most other window managers, which will only allow you to see one workspace stretched across all of your monitors. Also, since placement policies like floating and tiling affect workspaces, this makes it possible for one monitor to be tiling while another is floating!
Inspiration
Wingo is heavily inspired by Openbox and Xmonad (and of course, pytyle). Basically, Openbox's floating semantics (although most window managers are the same in this regard) and Xmonad's automatic tiling style plus its workspace model (workspaces per monitor). I've also adopted Xmonad's "greedy" workspace switching and embedded the concepts from the "DynamicWorkspaces" contrib library into the Gribble command system.
Configuration
Wingo is extremely configurable. This includes binding any of a vast number of commands to key or mouse presses, theming your window decorations and setting up hooks that will fire depending upon a set of match conditions.
All configuration is done using an INI like file format with support for simple variable substitution (which makes theming a bit simpler). No XML. No recompiling. No scripting.
Configuring key/mouse bindings and hooks uses a central command system called Gribble. For example, one can add a workspace named "cromulent" with this command while Wingo is running:
AddWorkspace "cromulent"
But that's not very flexible, right? It'd be nice if you could specify the name of workspace on the fly... For this, simply use the "Input" command as an argument to AddWorkspace, which shows a graphical prompt and allows you to type in a name:
AddWorkspace (Input "Enter your workspace name:")
The text entered into the input box will be passed to the AddWorkspace command.
Please see the HOWTO-COMMANDS file for more info. We've barely scratched the surface.
Scripting Wingo
So I lied earlier. You can kind of script Wingo by using its IPC mechanism. While Wingo is running, you can send any command you like:
wingo-cmd 'AddWorkspace "embiggen"'
Or perhaps you can't remember how to use the AddWorkspace command:
wingo-cmd --usage AddWorkspace
Which will print the parameters, their types and a description of the command.
Want to pipe some information to another program? No problem, since commands can return stuff!
wingo-cmd GetWorkspace
And you can even make commands repeat themselves every X milliseconds, which is ideal for use with something like dzen to show the name of the currently active window:
wingo-cmd --poll 500 'GetClientName (GetActive)' | dzen2
Finally, you can see a list of all commands, their parameters and their usage: (even if Wingo isn't running)
wingo-cmd --list-usage
(Wingo actually can provide enough information (or will soon) for ambitious hackers to script their own layouts in whatever programming language they like without ever having to deal with X at all. Assuming it has support for connecting to unix domain sockets. Or you could just use a shell with 'wingo-cmd' if you're into that kind of tomfoolery.)
Dynamic Workspaces
Having some set number of workspaces labeled 1, 2, 3, 4, ... is a thing of the past. While Wingo won't stop you from using such a simplistic model, it will egg you on to try something else: dynamic workspaces.
Dynamic workspaces takes advantage of two things: workspace names and adding/removing workspaces as you need them.
This is something that I find useful since I'm typically working on multiple projects, and my needs change as I work on them. For example, when working on Wingo, I might add the "wingo" workspace, along with the "xephyr" workspace and the "gribble" workspace. When I'm done, I can remove those and add other workspaces for my next project. Or I can leave those workspaces intact for when I come back to them later.
With Wingo, such a workflow is natural because you're no longer confined to "removing only the last workspace" or some other such nonsense. Plus, adding a workspace requires that you name it---so workspaces always carry some semantic meaning.
(N.B. I don't mean to imply that this model is new, just uncommon; particularly among floating window managers. I've personally taken the model from xmonad-contrib's DynamicWorkspaces module.)
Tiling layouts
Right now, only simple tiling layouts are available. (Vertical and Horizontal.) Mostly because those are the layouts that I primarily use. I'll be adding more as they are demanded.
Dependencies
Wingo is written in pure Go (including all of its dependencies). As such, Go (and git) is the only package necessary to build and install Wingo. Once Wingo is installed, Go can be removed. (No Xlib/xcb, no cairo, no gui toolkits.)
Installation
Wingo is in the AUR. Alternatively, if you have a Go environment set up, you can download, build and install Wingo and all of its necessary dependencies with:
go get github.com/BurntSushi/wingo
go get github.com/BurntSushi/wingo/wingo-cmd
(Yes, Go's build system is really that awesome.)
There's a lot more at Wingo's github.
Please note that Wingo should be considered in a very alpha state. I've been using it for a little bit myself, but beyond that, Wingo is untested.
Last edited by BurntSushi (2012-10-22 06:02:16)

netfun81 wrote:wow, nice wm.  Install was a breeze, love having floating layout on one screen and tiling on another.   In the past, for certain apps that wouldn't play well with a tiling wm, I would have to kill X, change my .xinitrc to start openbox and startx again.   This seems like the perfect solution.
Thanks :-)
netfun81 wrote:Does "go get github.com/BurntSushi/wingo"  always pull the latest from git?   Can i just delete the wingo executable from go/bin and run command to upgrade to latest or do I need to delete config files each time to remain compatible?
Yes, `go get ...` always pulls from the latest git. I make sure that Wingo builds before pushing to `master`. I'll use a different branch for any longer term experiments.
You could use `wingo-git` in the AUR, but `go get` is just as good. (Indeed, the PKGBUILD uses `go get`!)
One note those, use this to update to instead:
go get -u github.com/BurntSushi/wingo
go get -u github.com/BurntSushi/wingo/wingo-cmd
You shouldn't have to delete any executables.
As far as configuration files go... I'm not sure. I haven't figured out how I'm going to handle them yet. I don't think any well-formed configuration file will break Wingo, but it's certainly possible that old configuration files will miss out on new features/options. (For example, I just added some new focus follows mouse options.) Wingo will always maintain an in-memory default configuration, so missing configuration options will also never break Wingo.
You can always check out the new configuration files by running `wingo --write-config`. You'll have to move `~/.config/wingo` to a temporary location first though.
If you're installing from the AUR, I'll try to add post installation messages for any big changes.
FYI, I should say that installation is so easy because of Go. :-) /plug
Last edited by BurntSushi (2012-10-26 21:07:44)

Similar Messages

  • Is there a tiling window manager with anti-aliased fonts?

    Hi,
    Is there a tiling window manger with anti-aliased fonts?
    Thanks.
    Last edited by 9mqks5hn (2009-07-14 18:50:45)

    pauldonnelly wrote:
    cinan wrote:your font configuration has nothing to do with window manager. Hope this helps you http://wiki.archlinux.org/index.php/Xor … figuration
    Any text the window manager displays is rather affected.
    None come to mind here, but that doesn't mean much.
    You can use any panel/pager with XMonad if you use the ewmh hooks (these panels usually support anti-aliased fonts). There is a dzen2-xft version floating around the net somewhere if I'm not mistaken...

  • Best tiling window manager for two monitors

    I am looking for a window manager, that will work thus, my main window on my main left monitor, and my stack (my unfocused windows) on my right monitor.  Is there a WM that can do this or anyone know one that comes close.
    Thanks

    skottish wrote:
    If it helps at all, this is a useful way to look at awesome vs. xmonad:
    awesome is pretty much a complete WM/DE (it's close to being a full DE) with a task bar, system tray, run dialog, something like nine preconfigured window management algorithms, right-click menus, etc. Through lua scripting it can be fully extended. There's a lot to awesome by default and more often than not users are going to start to tear it down because there's just so much of it.
    xmonad out of the box is about 5% WM and 95% toolkit to build your own. It has no DE features upon first start and few layouts. If your objective is to build up your WM and not to tear it down, this is a good place to start. The GHC dependency is irrelevant if this is your goal (assuming you can afford the hard drive space) in my opinion.
    One thing that's pretty cool about xmonad that a lot people may not realize is that some of it's developers are involved with Arch. Arch-haskell (the bazillion packages in AUR), Real World Haskell (the book), and GHC are all tied nicely together by some of these people.
    What is cool about XMonad too that you can integrate Gnome and KDE easily in XMonad and bluetile is really cool for starters

  • Subtle - another tiling window manager

    It's been a while since the first subtle AUR package came up and there was never neither an introduction nor a thread here in the forum. Time to get this started and to hopefully get opinions/feedback of the of users who already gave/want to give subtle a try.
    For all of you who never heared about subtle - here comes the intro:
    subtle is another tiling window manager on the field with a grid-based manual tiling window manager with a strong focus on easy but customizable look and feel. In comparison to other tiling windows managers, subtle has no automatic tiling of the screen size in any way, instead windows are arranged according to positions inside of a grid - these positions are called gravities - which can completely be controlled with key bindings.
    subtle also has a Ruby based config with support for lambdas as key bind actions, a wmctrl-like commandline tool (subtler) to interact with subtle and an extension (subtlext) for Ruby that is capable of doing the same and even more!
    There are also small Ruby applets (sublets) that can show various stuff like system load and the time. The management of these scripts can be done with sur (Subtle User Repository) - a small command line script similar to gem which makes installing of a subtlet a piece of cake e.g.:
    sur install clock
    Windows placement and window properties are determined by a complete tagging system for clients and views and can be manipulated in the config and/or per runtime with subtler/subtlext.
    Features
    - Ruby integration for config/key actions and hooks
    - Flexible panels with loadable Ruby scripts (sublets)
    - Integrated System tray
    - Complete tagging system
    - ICCM/EWMH-compliant
    - Lightweight
    Screenshots
    Install
    The AUR packages: subtle subtle-hg sur-hg
    I would suggest to pick the subtle-hg package to get the latest changes.
    Contact
    If you have problems, suggestions or just want to talk about subtle feel free to join #subtle on irc.freenode.org or drop a mail to unexist at dorfelite dot net.
    Last edited by unexist (2010-04-24 15:40:02)

    dcurtis wrote:
    I love this gravity idea but the WM in it's current state would not allow me to be productive (no offense) and I have a distaste for ruby ( love python ) but I'm willing to grow.  However, here are my comments:
    1) being able to tweak the gravity settings would be nice, and per-tag.  I like to have a big left window (stacked) and a column of two windows on the right.  I use wmii and this does this OK by dividing the right column.  My one grip is the I could stack on the right, but I couldn't divide AND stack.  I see the potential for that w/ subtle.  Here is my current ss: http://static.milkbox.net/ss/ss-2009-05-06.png
    2) it would be nice if you could have movement between gravities.  I'd like to move between columns.  And my gripe about like, musca and ratpoison is that when i do move between columns it doesn't keep track of the previous vertical position.  Starting with the bottom right focused, moving to the left, and then moving back to the right focuses me in the top right.  I think it would be _REALLY_ cool if you had some sort of column based movement (left gravity, center gravity, right gravity) that would cycle, and also movement up through the stack.  Not sure how this would work.
    3) I prefer that new windows are created with the same gravity as the windows already open.  I would guess this is fairly easy to do.
    4) switch to python... I AM KIDDING.  but seriously, i know it'll never happen but that's cool.  I just wanted to post this #4!...
    anyways, keep up the good work.
    1 + 2) What do you mean with 'per tag'? You can assign gravity tags to clients witht he config so that any layout is possible and you can freely create your own movement stuff with the grabs. Subtlext gives you control over gravities of the clients. Yes, it's Ruby and I won't argue about like you did in 4) - it's a matter of taste and I really like Ruby.
    3) So just to understand this: If you set the top left gravity to a client, you would prefer that the next client also gets top left gravity?
    Wra!th wrote:Floating windows need to be stackable (egbe able to bring one infront of another using the mouse)
    Well, actually this was in subtle but was removed in favor for the WindowRaise and WindowLower grab that allows e.g. to cycle through windows with center gravity.
    milomouse wrote:A smaller complaint, which may or may not be due to my own ignorance, is that switching views (jump) with the shortcut seems to be a little picky. Sometimes I can use the shortcut to switch views and sometimes it refuses to work. Seems to happen mostly when I'm on an empty view and try to switch (with the shortcut) to another . I don't know if it loses focus or what. Anyway, these are minor compared to my enjoyment with Subtle so far. Thanks again.
    Oh, yes. I will fix it shortly tomorrow - you may write a ticket for it so that you can see when it's fixed.
    Last edited by unexist (2009-05-10 09:57:51)

  • Neurowm - dynamic tiling window manager based on Xmonad

    Hi,
    I started to write my own window manager last year so that it fits exactly my needs. The project was paused due to a lack of time but last month I could start coding again and make it stable. It was my very first step into the X protocol so I decided to use C language and Xlib rather than XCB because of the documentation. I might plan to port it to XCB in the near future though.
    neurowm is a dynamic tiling window manager based on Xmonad, where you must write your own configuration using C language instead of Haskell language. If you are familiar with Xmonad, you should be able to understand the configuration easily.
    Some features:
    - Compile and reload the comfiguration file on the fly withour restarting X
    - Support of float layout
    - Support of toggled layouts
    - Border width, color and gaps can be configured at window level
    - Mirror, Reflect X and Reflect Y support on every layout
    - Support of fixed windows on every layout
    - Support if free window on every layout
    - Dzen support
    - Xinerama support (TODO)
    - Java support (TODO)
    Screenshots:
    Website: https://github.com/nnoell/neurowm
    There is no PKGBUILD at the moment and please, bear in mind that the window manager is under heavy development, so the configuration file might change a lot. Feel free to try it and leave some feedbacks.

    i enjoy all the neuromancer references (wintermute). and your avatar from the cover of the c64 game. gibson would be proud ;D
    I am not really good at names, that is why I take all of them from things I love. Next one won't be from neuromancer, I promisse
    the wm looks very nice in your scrots. can i make some feature suggestions based on my wm experiences?
    i've recently switched from awesomewm to herbsluftwm, and really like it.
    - the binary tree division makes so much sense. you split a frame, then split that frame, and so on into infinity. and all those frames are movable via key-binding as well. as opposed to pre-defined layouts in awesome (and as far as i can tell, neurowm too).
    - having a command line tool that you use to dynamically set properties is amazing. border colors, gaps, displays, etc. e.g. you configure you monitor settings via a command v.s. you config file, this makes it more flexible for on the fly changes.
    Yes, you are right, command line tools are very useful, I might think of adding that. Regarding the binary tree division, I think it would be good to create another "special" layout (as the floated one) with its own bindings. I think I will try herbsluftwm and compare it to Xmonad so I can get to the point.
    I decided to create an Xmonad-like window manager using C language because many people don't know Haskell and GHC is quite heavy. The configuration file might be difficult to understand at first (specially if you are not familiar with C language) but if you guys have any problem, don't hesitate to contact me
    PD: Ninja gaiden is also an amazing franchise, specially the 3 games from the NES, played a lot when I was a kid.

  • Question(s) about tiling window manager

    Hello fellow Arch-users.
    I'm looking for a new WM and need some help/advise from the community.
    Currently I run Xfce. However, I have found over the past couple of month that I usually use terminals to get tasks done, such as starting programs, editing files or browse my computer and that my graphical WM stands more in my way than it is any good to me.
    I do still use graphical programs, for example Icecat as my browser and Claws-mail as my e-mail client among others and will continue to do so. But for editing files or browsing my computer I already use vim and mc (midnight commander).
    So, I thought I may be better off with a tiling WM. However, I'm not so sure if I have the right idea of a tiling window manager. My idea of a tiling WM is that I can place many terminals on my desktop and my graphical programs on top of them. Is that correct? Also I hope that the WM is able to open these terminals without interfering with each other, meaning that they don't overlap or something. I don't want to have to always move them around with the mouse. Does a tiling window manager do that?
    If I make the change, I'd like to have WM that is easy to set up and configure. I don't want to spent too much time configuring and tweaking the program. I was looking into Subtle or Awesome. Would that be a good idea?
    Again, maybe my idea of such kind of window manager is totally wrong. Therefore, I'm seeking support from the people who already use them.
    Thanks in advance!
    Last edited by Janusz11 (2011-01-24 18:35:47)

    Janusz11 wrote:So, I thought I may be better off with a tiling WM. However, I'm not so sure if I have the right idea of a tiling window manager. My idea of a tiling WM is that I can place many terminals on my desktop and my graphical programs on top of them. Is that correct? Also I hope that the WM is able to open these terminals without interfering with each other, meaning that they don't overlap or something. I don't want to have to always move them around with the mouse. Does a tiling window manager do that?
    Yes, exactly. Tiling window manager arrange your windows dependent on their alignment strategy, there are many WMs that do that according to a preset layouts like wmfs, awesome, xmonad and other that offer a more flexible (manual) approach like wmii and i3 to name a few. There is also subtle, which offers a unique layout among the tiling windows managers. As far as I know all of them offer a floating mode, where windows can float loosely above the other tiled windows.
    Generally you can say,  the more flexible the whole thing is, the more you need to configure initially. Also some of the named WMs do more than just managing windows like providing a panel or tray on their own.
    As far as I know all of them offer a floating mode, where windows can float loosely above the other tiled windows.
    Janusz11 wrote:If I make the change, I'd like to have WM that is easy to set up and configure. I don't want to spent too much time configuring and tweaking the program. I was looking into Subtle or Awesome. Would that be a good idea?
    subtle and awesome are very flexible and you need to/can do lots of things in your config. Personally I use and develop subtle and my opinion is quite biased.

  • Musca (Tiling Window Manager)

    I've just come across this tiling window manager which seems to be very new, I've seen no mentions of it anywhere other than wikipedia, so I thought I'd download it and try it out. You can find it here, along with source and probably all the info you could possibly need.
    "A simple tiling window manager for X, with features nicked from ratpoison and dwm"
    http://aerosuidae.net/musca.html
    It looks to be alot like dwm in the configuring aspect, (ie. edit config.h and compile), although it also has a start file which can be used to run some internal commands.
    Anyway I've only been using it for literally the time it took me to write this post, but I thought I'd suggest that others give it a shot! I'm certainly enjoying it so far

    aerosuidae wrote:Thanks.  I've never even looked at the process for creating a package for AUR.  If you are volunteering to maintain this (? ), get on the mailing list to hear about new releases: http://mail.aerosuidae.net/mailman/list … suidae.net
    Joined
    aerosuidae wrote:No idea.  Out of interest: Why do you think it better it gets run from $HOME?
    The PKGBUILD becomes easier. Also if its in $HOME, you can make as many changes as you want and run it. You can even change the path of the executable, if you want. One disadvantage is that if you have multiple users on the computer, you will have to install for each user.
    aerosuidae wrote:Oh.  I rather like dates as they're IMHO more informative and useful than a number.  Still, I can live with that.
    Well if you use the dates, I will change the build method for every release. No big deal. Let me know which way you prefer.
    aerosuidae wrote:
    Inxsible wrote:The trouble with your shortcuts is, that I use most of those shortcuts in my Openbox setup --and in my dwm. like Mod4+r - to start rTorrent etc. I guess, I will just have to relearn all my shortcuts and not use Mod4 in the shortcuts for starting apps.
    No, don't let Musca dictate to you how to work. Customize the combinations that clash using .musca_start or config.h
    Is there a limit to how many keybindings you can add?
    I currently have all of these.
    struct keymap keymaps[] = {
    { "Mod4+Shift+h", "hsplit 1/2" },
    { "Mod4+Shift+v", "vsplit 1/2" },
    { "Mod4+Shift+r", "remove" },
    { "Mod4+Shift+o", "only" },
    { "Mod4+Shift+k", "kill" },
    { "Mod4+Shift+c", "cycle" },
    { "Mod4+Left", "focus left" },
    { "Mod4+Right", "focus right" },
    { "Mod4+Up", "focus up" },
    { "Mod4+Down", "focus down" },
    { "Mod4+Next", "use (next)" },
    { "Mod4+Prior", "use (prev)" },
    { "Mod4+Tab", "screen (next)" },
    { "Mod4+Shift+w", "switch window" },
    { "Mod4+Shift+g", "switch group" },
    { "Mod4+x", "shell" },
    { "Mod4+Shift+m", "command" },
    { "Mod4+Shift+d", "dedicate flip" },
    { "Mod4+Shift+a", "catchall flip" },
    { "Mod4+Shift+u", "undo" },
    { "Mod4+Shift+s", "stack flip" },
    { "Mod4+Control+Left", "resize left" },
    { "Mod4+Control+Right", "resize right" },
    { "Mod4+Control+Up", "resize up" },
    { "Mod4+Control+Down", "resize down" },
    { "Mod4+a", "exec lxappearance" },
    { "Mod4+b", "exec recorder" },
    { "Mod4+c", "exec conky" },
    { "Mod4+e", "exec easytag" },
    { "Mod4+f", "exec pcmanfm" },
    { "Mod4+g", "exec geany" },
    { "Mod4+t", "exec urxvt -bg black -fg white" },
    If I add one more, the pkg builds fine, installs too...but when I log in, X starts for a microsecond and bombs. Here's dmesg | tail and it says that musca segfaults.
    agpgart-intel 0000:00:00.0: putting AGP V2 device into 4x mode
    nvidia 0000:01:00.0: putting AGP V2 device into 4x mode
    musca[10748]: segfault at 41 ip b7eb2aa8 sp bfcb5d6c error 4 in libc-2.9.so[b7e40000+140000]
    agpgart-intel 0000:00:00.0: AGP 2.0 bridge
    agpgart-intel 0000:00:00.0: putting AGP V2 device into 4x mode
    nvidia 0000:01:00.0: putting AGP V2 device into 4x mode
    musca[11554]: segfault at 41 ip b7e7faa8 sp bfc82d2c error 4 in libc-2.9.so[b7e0d000+140000]
    agpgart-intel 0000:00:00.0: AGP 2.0 bridge
    agpgart-intel 0000:00:00.0: putting AGP V2 device into 4x mode
    nvidia 0000:01:00.0: putting AGP V2 device into 4x mode
    Just wanted to let you know. If its a bug, I will open it on your launchpad bugtracker.
    Last edited by Inxsible (2009-03-13 06:28:52)

  • Pwm - a simplistic tiling window manager in python3

    Hello,
    I want to announce a project which I have been working on in the last couple of weeks to learn about python.
    PWM - A simplistic tiling window manager written in python3
    AUR package pwm-git
    github repo
    As already said, pwm tries to be relatively simplistic, both in functionality as well as in code.
    pwm includes:
    Multiple workspaces.
    A column-based layout, every window can be resized freely.
    Windows can also float or be fullscreen.
    A bar, similiar to i3bar.
    A menu like dmenu but with fuzzy search.
    Everything is configured in python.
    There is no multimonitor support because I only have a laptop now with no additional screens.
    For more information please check the github repo
    Last edited by mibitzi (2013-08-10 02:16:16)

    Yes, here are two of my screenshots from the August Screenshots Thread

  • Looking for a light weight tiled window manager.

    Hello everyone,
    I am looking for a light weight window manager with tile support.  I am a programmer by hobby and I like to be able to maximize my screen real estate.
    I love hot key and terminal use it just speeds up the process.  I don't however want it to have a huge scripting learning curve.  Currently I am in the process of learning Android development so having to learn a new scripting language on top of it won't make matters better.
    Currently I am comfortable with bash, and python.  I can also do some work in perl but not super fluent with it yet.
    It would also help if it has dual monitor support.  My main monitor is a 23" LCD max res 1920x1080 and my second monitor is a 17" LCD max res 1440x900 until I get around to picking up another 23".

    Runiq wrote:
    Search first, post later:
    http://wiki.archlinux.org/index.php/Lig … plications
    another good wiki page is the tiler comparison, the chart shows vitals, like what they are configured in
    http://wiki.archlinux.org/index.php/Com … w_Managers
    Last edited by hume's doona (2010-10-08 12:17:51)

  • How do I maintain my add-ons if I deside to quit cc-cloud membership and try to manage with my old DW4-version?

    How do I maintain my add-ons if I deside to quit cc-cloud membership and try to manage with my old DW4-version?

    You don't. Extensions are always version specific and DW4 could not support them in the first place because back then many things liek jQuery, HTML5 or CSS 2.1 didn't even exist or were in their infancy.
    Mylenium

  • Wm-experiments: pytiler - Tiling/window management for floating WMs

    I've created a few little tools and things to experiment with WMs recently and I'm slowly putting them into this git repository:
    http://github.com/iphitus/wm-experiment … er/pytiler
    The first one is pytiler. It's a usable proof of concept window tiler for any standards compliant floating (or tiling) WM. It runs as a daemon, continually managing/arranging windows. This gives the same behaviour as if you're running a tiling WM - in your floating WM. If you think about it, floating WM's do very little arrangement/positioning, so they don't mind if an external tool does it for them. Alternatively it can be called to just tidy up/layout windows without the daemon.
    I realise there is already the "Poor Man's Window Tiler" however it has a few pitfalls
    - Can only be called once off
    - Parses and executes external commands for it's window control.
    pytiler uses libwnck, which can either be found in gnome-python-desktop (gnome dep) or libwnck-python (AUR, no gnome dep).
    I no longer use pytiler and don't have the time to develop/maintain it so I'm hoping someone here will find it useful or wish to extend it further.
    Last edited by iphitus (2009-07-25 01:26:27)

    sand_man wrote:
    Tyriel wrote:I really love the idea of this.  Nice work
    Search the forums for stiler
    I have mentioned stiler above, however this implementation does more than a few things differently, ie, 'continual' management of windows and not parsing the output of externally called programs.
    Last edited by iphitus (2009-07-29 12:13:29)

  • New window manager (with prototype!) [wmii-like] --- looking for help

    I have a prototype for a new window manager in the style of wmii. It is called
    cakewm. I currently have a prototype version implemented in pygame, and would
    like help moving this to use X---making it a real window manager.
    Disclaimer: I have a very limited knowledge of X11 and window manager
    development. The most I've done is add a couple new features to wmfs.
    To get the code
    > git clone git://github.com/saikobee/cakewm.git
    Then run main.py. cakewm depends on pygame.
    Upon running, press Alt-Enter to fullscreen cakewm and intercept keybinds, or
    Alt-Space to just intercept keybinds.  Press Alt-Esc to quit. The window
    manager related keybinds are listed in the file binds.conf.
    Config note: <WSCA-x> means Windows-Shift-Control-Alt-x
    Implementation note: pypixel.py is a large and mostly useless dependency. I
    forked a library I made previously rather than coding straight in pygame.
    cakewm's goals are to be similar to wmii, but with more functionality, easier
    configurability, and saner defaults.
    - cakewm is fully functional using the keyboard. Mouse support can come later.
    - cakewm provides 9 workspaces per monitor.
    - cakewm manages each workspace as a group of columns. Each column is like a
      wmii default split, except each window can have other windows "stacked" on
      top of or behind it.
    - cakewm manages column sizes (and window sizes within columns) using a
      master/slave paradigm, with the ability to adjust the size ratios.
    - cakewm's configuration file is simple key=val pairs, with the ability to
      include other files like in C.
    - cakewm has a slightly larger emphasis on window decorations (adjustable
      size---even in tiled mode) and themes (nothing bloated, like pixmaps or
      gradients---it's all still simple colors).
    - cakewm will have proper support for international text (Japanese text in
      window titles or the wmii status bar generally render as boxes) through the
      use of a more advanced text library such as Pango.
    Please let me know if you have comments, questions, or concerns. If you are
    interested in helping, get in touch with me. If you know somewhere better to
    look for volunteers, please let me know.

    m4co wrote:
    Wow is this forum active. Makes me feel welcome here
    The thing about wireless, I actually like command line, but there are a few things that are worth having a applet or something.
    And wireless is one of those. I guess I can take a look on wicd.
    It's a good idea to have compiz as the WM actually. Would it be lightweight to have it like that?
    Is there anybody here that uses compiz as a WM?
    For the xfce4-panel, is it possible to get transparency on it? That's probably the only thing holding me back with xfce4-panel.
    If "able to run compiz" wasn't a requisite, what other WM would you suggest for my "profile" ?
    I would like to hear other users opinions who like to customize everything on a WM.
    I recommend running Compiz by itself. There is a good wiki page on it in the Arch wiki. Some apps you'll want to go with it are:
    LXAppearance --change GTK/icon theme
    Feh or Nitrogen --Set Wallpaper
    Xfce4-panel --The lightest one that works with Compiz properly
    Or, if you don't want a panel: stalonetray
    Compiz-deskmenu --For a customizable right-click main menu
    Gmrun --Run dialog (Alt+F2 in most DEs)
    And this helped me a lot.
    Thank you all for the replies. I appreciate.
    Xfce4-panel can have transparency.  The only problem is that everything become transparent: text, icons, everything.
    I use Compiz as a standalone WM and it is much lighter than DE+Compiz. My Compiz setup uses about 30MB(out of 1GB) more RAM than my Openbox setup (which are both the same except for the WM).

  • Partitioning and Installing Windows 7 with Mac OS X Lion

    Hi
    after failing seriously with the partitioning after installing Win 7, I hope that I will find some help from the scratch...
    I want to install OS X Lion with Win 7.
    3 Partitions with Mac are needed and 1 fro Windows.
    I got 750Gb on my Mac Book Pro.
    Disk should look like this:
    100Gb Main Partition (Mac)
    200Gb Documents Partition (Mac)
    300Gb Stuff and Games (Mac)
    150Gb Windows 7 Partition
    I tried now to create a 100Gb Partition for Mac and a 150Gb Partition for Windows 7.
    After Installing the Mac OS, I was trying to add the 2 other Partitions, but it already telling me that i'm gonna loose my Windows Boot when I change the Partitions. I pressed ok and restarted with the windows 7 DVD for the recovery, which wasn't working due to version incompability -.- (I installed Windows from that DVD)
    What steps should I make to get this to work? Some guys says that it not gonna work, but a friend of min has 3 mac partitions and a windows. Sadly he can't remember the way to this setup
    Thank you for the help
    NESTi

    What you are talking about is illegal.
    Here are the relevant words from the Snow Leopard EULA
    A. Single Use License. Subject to the terms and conditions of this License, unless you have purchased a Family Pack or Upgrade license for the Apple Software, you are granted a limited non-exclusive license to install, use and run one (1) copy of the Apple Software on a single Apple-branded computer at a time. You agree not to install, use or run the Apple Software on any non-Apple-branded computer, or to enable others to do so. This License does not allow the Apple Software to exist on more than one computer at a time, and you may not make the Apple Software available over a network where it could be used by multiple computers at the same time.
    You should also read the terms and conditions of use of these forums, which include the following:-
    Keep within the Law
    No material may be submitted that is intended to promote or commit an illegal act.
    Do not submit software or descriptions of processes that break or otherwise ‘work around’ digital rights management software or hardware. This includes conversations about ‘ripping’ DVDs or working around FairPlay software used on the iTunes Store.
    Do not post defamatory material.

  • XWin window manager with virtual desktops

    So I'm resuming my search for an X11 window manager that provides virtual desktops. I also would like just a little bit of keyboard customization, i.e., assign an F key to raise a window. Keystrokes to move between virtual desktops would be nice.
    Any suggestions?
    Blackbox, from Darwinports, seems very nice in a lot of ways, but to get a visual interface to its virtual desktops you have to add bbpager. Darwinports does not have bbpager, and Blackbox needs a newer version of bbpager than the one on fink. Building bbpager from source myself appears to work, but an attempt to run it gives:
    dyld: lazy symbol binding failed: lazy pointer not found
    dyld: lazy pointer not found
    Trace/BPT trap
    At which point I'm in over my head.
    A while back, AfterStep 1.8 did everything I wanted, but nobody maintains it for OS X anymore, as far as I can tell. AfterStep 2 is maintained, but the default style has changed not to my liking, and then and now customizing it is complex.

    Hi Don,
       It's good to hear from you, as always! I believe that the lazy symbol binding failure is the result of the use of the wrong version gcc. I think that it happens when you use gcc-3.3 when gcc-4.0.1 is required, although I could have that backwards; it hasn't happened to me yet. I don't know why some apps would require a new version of gcc when most don't.
       It appears that Jonathan's suggestions are for virtual desktops for Aqua and not X11. Of course given your taste for virtual desktops, that is likely to be something of interest to you.
       As for virtual desktops for X11, they abound. My preference for a window manager that implements virtual desktops is Enlightenment. I like it for other reasons but it has a nice virtual desktop arrangement that "plays well" with Rootless mode. The desktops are arranged in a square. By default, the top two desktops have no background image, while the bottom two do. This allows one to use Enlightenment's elaborate contextual menu, which I like. There are numerous subtle features that make using desktops convenient and I think you'd like it.
    Gary
    ~~~~
       A "practical joker" deserves applause for his wit according
       to its quality. Bastinado is about right. For exceptional
       wit one might grant keelhauling. But staking him out on
       an anthill should be reserved for the very wittiest.
             -- Lazarus Long

  • Laggy window performance with external monitor and USB hub after 8.1 -- possible cause found

    I have the Yoga 11s which I've been using in conjunction with a Plugable UD-3900 for a few weeks now. Everything has worked very well, especially with external display, keyboard, mouse, and ethernet plugged into the hub.
    After upgrading to 8.1 the other day, I began getting very noticeable window and mouse lag on the external monitor. Dragging windows would jump around, aero peek renders were slow, and the 'ribbon' screen saver would pixelate and was slow to wake up.
    I installed the updated DisplayLink drivers, and also all the updated Lenovo drivers, but the problem remained. This morning I was trying different ideas and found something very interesting:
    The configuration I use when attached to the UD-3900 is to have the keyboard flipped under and the display flipped up in the "stand" so I can use it as a second monitor. Of course when you do that, the Yoga turns off the keyboard & touchpad so they don't get accidentally pressed.
    Just for kicks, I decided to flip the keyboard back around and try using the touchpad to move windows around on the extended monitor. Surprise: the laggy window dragging and rendering was gone. And then even more surprising, when going back to the wireless mouse while still in 'laptop' configuration, everything continued to work well -- no lag.
    I thought maybe it was an incompatibility with the Logitech wireless USB keyboard/mouse itself, so I disconnected it. However, I also have a bluetooth Microsoft mouse, and it does the exact same thing: With laptop keyboard flipped back & disabled, window drags & aero peek renders lag. As soon as I activate the touchpad, lag is gone, and the BT mouse behaves normally.
    So, it seems to be some kind of interaction between the automatic disabling of the Yoga's keyboard/touchpad and any external mouse. Has anyone else seen anything similar? Any ideas on how to solve so I can use the Yoga in the stand configuration?

    Just to close the loop on this, I've determined that the cause of my issue is the Intel Dynamic Platform and Thermal Framework software/driver. I've disabled in the BIOS for now, and the machine is working very well. Will look for an update from Lenovo to address more definitively.

Maybe you are looking for