Re: Questionnaire 3 on Sawfish usage

Great questions, Teika,

I'll start by saying that I used it with a tablet (lenovo X61t)

 Teika> 1. What's your theme? Any comments on Sawfish theme?

mxflat, heavily customized to have as many buttons as possible, and
mostly to the left (when one rotates the screen, the buttons on the
right are frequently non-accessible.

 Teika> 2. Why you switched to Sawfish? Is there any feature lacking in
   Sawfish, but was present in your previous window manager?
   (a question by Alexey Froloff. Sorry Alexey for postponing a year.)

I have been using sawfish for a looooonnnnnngggg time.

 Teika> 3. What's your trayer, if you're using Sawfish standalone?
   (by Daniel Fetchinson)

I use it with ubuntu and Gnome. 

 Teika> 4. How do you switch the window? After all, it's the window manager. :)

I love to be able to switch windows by listing them and then using
regular expressions to do incremental search. It even works in tablet
mode by tying the key sequence to a gesture using easyStroke and then
using the arrows/escape/return (available in tablet mode).

 Teika> 5. Do you switch the screen resolution? If so, tell us your related
   hacks, or what you want there.

I frequently use this laptop for presentations. In that case I use
Ubuntu Monitor Preferences. 

in that case, I have the following code:

(add-hook 'configure-notify-hook dmg-rotate-hook)

in that hook, if the current window is maximized, it remaximizes it to
the new size of the screen.

Otherwise I have a simple perl script below,
that I invoke from sawfish:

Laptop: To turn off the external monitor, and set it to the default LCD:

Home: When I plug my laptop to the external monitor at home. Notice the
  overlap of screens.

Presentation: This is a simple one for a 1024 external display.

I tie these ones to sawfish using:

;; for xrandr
(bind-keys dmg-keymap "h" '(system "/home/dmg/bin/monitor home&"))
(bind-keys dmg-keymap "l" '(system "/home/dmg/bin/monitor laptop&"))
(bind-keys dmg-keymap "p" '(system "/home/dmg/bin/monitor pres&"))

Notice how the script cals dmg-update-to-head

this script resizes any window that is maximized to match the screen,
and moves windows that might fall outside the screen inside. I can make
it available if anybody is interested.


use strict;

my $what = shift;

my %modes = (
    'home' =>   '--output VGA1 --mode 1920x1200 --same-as LVDS1 --pos 0x0 --output LVDS1 --mode 1400x1050 --pos 0x0',
    'laptop' => '--output VGA1 --off --pos 0x0 --output LVDS1 --mode 1400x1050 --pos 0x0',
    'pres' => '--output VGA1 --mode 1024x768  --same-as LVDS1 --pos 0x0 --output LVDS1 --mode 1024x768 --pos 0x0',

die "invalid parameter [$what], only valid [" . join(' ', keys(%modes))  . "]"
    if ($what eq "" or
        !defined ($modes{$what}));

`xrandr  $modes{$what}`;
`sawfish-client -c 'dmg-update-to-head'`;

One think I'd like to do is to save location of windows across
resolutions, so they can be back to their original location once the
resolution is back to their original size.

Daniel M. German         
dmg (at) uvic (dot) ca
replace (at) with @ and (dot) with .

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]