Puppy Linux Discussion Forum Forum Index Puppy Linux Discussion Forum
Puppy HOME page : puppylinux.com
"THE" alternative forum : puppylinux.info
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

The time now is Sat 26 Jul 2014, 05:16
All times are UTC - 4
 Forum index » Taking the Puppy out for a walk » Announcements
wmx window manager, v. 7, now available for puppy 4.12 users
Moderators: Flash, Ian, JohnMurga
Post new topic   Reply to topic View previous topic :: View next topic
Page 1 of 2 [28 Posts]   Goto page: 1, 2 Next
Author Message
musher0


Joined: 04 Jan 2009
Posts: 4229
Location: Gatineau (Qc), Canada

PostPosted: Sat 07 Mar 2009, 04:38    Post subject:  wmx window manager, v. 7, now available for puppy 4.12 users
Subject description: wmx window manager, v. 7, now available for puppy 4.12 users
 

Hello, all!

I've uploaded a pet archive containing the most recent wmx window manager, v. 7 (Jan. 2009) here:
http://www.murga-linux.com/puppy/viewtopic.php?p=281635#281635

It's my own build, with incorporation or "revision" if you like from a fedora rpm.

The three posts are in French; however I'm willing to translate into English if there is any interest. (It won't be a problem since this is what I do for a living.)

Two screenshots are included.

In short, wmx v.7 is as small as JWM, but centered more on keyboard
combinations and easy mouse buttons clicks. This makes managing the windows as easy as playing the accordeon. (Smile At least with wmx you can make your program windows behave like an accordeon.

Comparison from Windows : to me, wmx is reminiscent of the LiteShell shell, with a touch of FreeShade. (If this say anything to anyone.) Or maybe Liteshell was inspired by wm2 or wmx, I'll have to check.

Among other advantages,
* wmx is easier on the wrist, if any of you are sensitive to that or have had that problem. (Only my opinion, of course, I'm not a doctor.)
* window edges never go off screen unless you put them there.
* focus is easy to follow (2-3 ways to do it)
* easy change of screen
* automatically adds a screen if you use the last one. Example: you have three screens. Two are full, you start using the third screen. A fourth one is automatically created. To me, that's brilliant, since it sorts of think ahead of what you're doing.

I've incorporated add-ons that I have found useful such as stalone-tray, aemenu, aedesk, aepanel-gtk (from aewm) with some "ready-made" scripts and menus -- that you can adapt and/or change, of course.

Other notes:
* Use of fbpanel is strongly recommended to retain access to the usual puppy (jwm) menu, especially if you're a newbie. Yes, wmx has its own menu and I've included aemenu, but you have to populate them (which is simple to do, but still.)

* use of at least one ROX panel is recommended, to facilitate access to your programs and directories. Rox is not only a filer, ther is such a thing as the ROX desktop. Puppy users should proudly use their ROX desktop to the max, just as Mandriva or Pardus users use their KDE desktop to the max. It should be part of our "trademark", so to speak.

As usual you download and use at your own risk, but I've been using wmx and these additional programs successfully on my Puppy 4.12 set-up for the past two weeks. I don't know if it works on earlier puppies, maybe someone can tell us.

I hope you will enjoy this fantastic discovery as much as I do.

_________________
"Logical entities must not be multiplied needlessly." / "Il ne faut pas multiplier les êtres logiques inutilement." (Ockham)

Last edited by musher0 on Sat 25 May 2013, 22:49; edited 1 time in total
Back to top
View user's profile Send private message Visit poster's website 
ttuuxxx


Joined: 05 May 2007
Posts: 10747
Location: Ontario Canada,Sydney Australia

PostPosted: Sat 07 Mar 2009, 08:44    Post subject:  

Interesting WM, nice port to puppy Smile good job
ttuuxxx

_________________
http://audio.online-convert.com/ <-- excellent site
http://samples.mplayerhq.hu/A-codecs/ <-- Codec Test Files
http://html5games.com/ <-- excellent HTML5 games Smile

Back to top
View user's profile Send private message Visit poster's website 
musher0


Joined: 04 Jan 2009
Posts: 4229
Location: Gatineau (Qc), Canada

PostPosted: Sat 07 Mar 2009, 09:08    Post subject:  

Coming from you, that's quite a compliment. Many thanks!
_________________
"Logical entities must not be multiplied needlessly." / "Il ne faut pas multiplier les êtres logiques inutilement." (Ockham)
Back to top
View user's profile Send private message Visit poster's website 
musher0


Joined: 04 Jan 2009
Posts: 4229
Location: Gatineau (Qc), Canada

PostPosted: Sat 07 Mar 2009, 11:49    Post subject: keystrokes in wmx
Subject description: keystrokes in wmx
 

Summary of keystrokes in wmx, v.7 (Jan. 2009), by Chris Cannam et al.
(excerpted from README file.)
=-=-=-=-=
To facilitate understanding, please note that in wmx, the term
"channel" is used instead of what is usually called a "desktop".
=-=-=-=-=
[...]

-- To raise a window: click on its tab or frame, unless you have
auto-raise on focus set in Config.h.

-- To move a window: make sure it's in focus, then click and drag
on its tab, or Alt-click and drag anywhere on it (see Keyboard
controls, below, for more about Alt combinations).

-- To hide a window: make sure it's in focus, then click on the
button at the top of its tab.

-- To recover a hidden window: hold down left button on the root
window for the root menu, and choose the window you want.

-- To start a new xterm: use the first item on the left-button root
menu ("New"), unless you've disabled it in Config.h.

-- To delete a window: make sure it's in focus, click on the
button on the tab, hold the mouse button for at least a
second and a half until the cursor changes to a cross, then
release. (I know, it's not very easy. On the other hand,
things like Windows-95 tend to obscure the fact that most
windows already have a perfectly good Close option. If the
default delay doesn't suit you, change it in Config.h and
recompile.)

-- To resize a window: make sure it's in focus, then click and
drag on its bottom-right corner. For a constrained resize,
click and drag on the bottom-left or top-right corner of
the enclosing window frame.

-- To flip around amongst the windows on-screen: click with the right
mouse button on the root window or on any window's frame or tab.
[You can also use Alt-Tab.]

-- To switch between desktops (or "Channels"): click with the middle
mouse button towards the top-right corner of the root window. A
big green number will be displayed showing which channel you are
currently on. Click again before this number disappears to change
to the next channel. If you click with the left button after the
first middle-button click, you will move down a channel instead
of up.

-- To move a window from one channel [desktop] to another: click with the
middle mouse button on its frame, and then keep clicking until you
reach the channel you want to move it to.

-- To start a new application of your choice: use the middle mouse
button on the root window, anywhere other than the top-right
corner of the root window. If you have any executable programs in
your $HOME/.wmx directory -- or other directory named in
CONFIG_COMMAND_MENU -- they will be listed on a menu and you can
choose one to be started up. (You can add and remove programs
while wmx is running.) REMEMBER, $HOME/.wmx IS A DIRECTORY, not
a file, so please don't write to me asking what the file format is.

[...]

Keyboard controls
=================

By popular request, there are now some keyboard controls available.
The key combinations are configurable in Config.h -- the most
important one is that for the Alt modifier. The default bindings are:

-- To raise the focused window in the stacking order: Alt/cursor-Up

-- To lower the focused window: Alt/cursor-Down

-- To flip through the windows on screen: Alt/Tab (equivalent to
clicking the right mouse-button on the focused window's frame)

-- To hide the focused window: Alt/Return

-- To delete the focused window: Alt/BackSpace

-- To expand the focused window to the full height of the screen:
Alt/PageUp

-- To contract the focused window after expanding it: Alt/PageDown

-- To expand the focused window to the full screen (maximise):
Alt/Home

-- To contract the focused window after expanding it (unmaximise):
Alt/End

-- To expand the focused window to the full width of the screen:
Alt/KP_Add (numeric pad +)

-- To contract the focused window after expanding it:
Alt/KP_Subtract (numeric pad -)

-- If you want the same key to maximise/unmaximise set
CONFIG_SAME_KEY_MAX_UNMAX to True

-- To switch channels: Alt/cursor-Left and Alt/cursor-Right

-- To switch directly to channel number N, provided there is
a channel N (i.e. some client has been created there already):
Alt plus F-key N. Thus for channel 2 press Alt/F2 and so on.

-- To make the currently focused window "sticky", so it appears on
all channels: Alt/Pause. Repeat to unstick the window.

[...]

_________________
"Logical entities must not be multiplied needlessly." / "Il ne faut pas multiplier les êtres logiques inutilement." (Ockham)
Back to top
View user's profile Send private message Visit poster's website 
jemimah


Joined: 26 Aug 2009
Posts: 4309
Location: Tampa, FL

PostPosted: Tue 15 Sep 2009, 20:26    Post subject:  

Here's a script that will generate the menu using the jwmrc.
You can call it at the end of /usr/sbin/fixmenus to have the menu dynamically update when you install stuff. I wrote it for flwm but it will work with wmx.

Quote:

#!/bin/bash
mkdir /root/.wmx
cd /root/.wmx
rm -rf /root/.wmx/Menu/
mkdir Menu
cd Menu
cat /root/.jwmrc | while read LINE ; do
#echo $LINE
if [[ "$LINE" =~ "<Menu label*" ]] ; then
dir=`echo $LINE | cut -f2 -d\"`
mkdir $dir
cd $dir
fi
if [[ "$LINE" =~ "</Menu*" ]] ; then
cd ..
fi
if [[ "$LINE" =~ "<Program label*" ]] ; then
file=`echo $LINE | cut -f2 -d\" |sed 's/\//_/g'`
prog=`echo $LINE | cut -f2 -d\> | cut -f1 -d\<`
echo "#!/bin/bash" > "$file"
echo "$prog" >> "$file"
chmod 755 "$file"
#cp "$file" /root/.dmenu

fi


done
Back to top
View user's profile Send private message Visit poster's website 
musher0


Joined: 04 Jan 2009
Posts: 4229
Location: Gatineau (Qc), Canada

PostPosted: Tue 15 Sep 2009, 23:41    Post subject: menu generator for wmx  

Many thanks, Jememiah.

Tried your script, it works... in spite of a chmod error.
I'm not a programmer, so I can't explain why it pops up.
Perhaps we don't need to "chmod" in Puppy?
But your script works nonetheless.

With your script we can now -- theoretically, at least -- do
away with a complement such as fbpanel to sync the
newly installed programs in the menu.

Thanks again.

_________________
"Logical entities must not be multiplied needlessly." / "Il ne faut pas multiplier les êtres logiques inutilement." (Ockham)
Back to top
View user's profile Send private message Visit poster's website 
jemimah


Joined: 26 Aug 2009
Posts: 4309
Location: Tampa, FL

PostPosted: Wed 16 Sep 2009, 09:12    Post subject:  

What error did you get? The chmod shouldn't cause a problem and is necessary to make the files executable.

You should get a mkdir error if .wmx exists, but that's not a problem.
Back to top
View user's profile Send private message Visit poster's website 
jemimah


Joined: 26 Aug 2009
Posts: 4309
Location: Tampa, FL

PostPosted: Wed 16 Sep 2009, 09:28    Post subject:  

Just a quick note, it's trivial to modify wmx so it doesn't sort the menu alphabetically - that way it will look like the menu in JWM. If you still have the source, just edit Menu.C and comment out both lines that start with "qsort", then recompile.
Back to top
View user's profile Send private message Visit poster's website 
jemimah


Joined: 26 Aug 2009
Posts: 4309
Location: Tampa, FL

PostPosted: Wed 16 Sep 2009, 09:46    Post subject:  

Another cool hack you can do is add a clock and battery status monitor to the menu (actually pretty much any monitor you want). Since wmx rereads the menu every time you change it, all you need to do is have a script that periodically updates a file in the .wmx directory.

Unfortunately the wmx menus are pretty much unusable on my netbook trackpad - clicking both buttons while dragging is quite difficult. Wmx does look a lot cooler than flwm though. I may try to modify the source and see if I can fix it.
Back to top
View user's profile Send private message Visit poster's website 
musher0


Joined: 04 Jan 2009
Posts: 4229
Location: Gatineau (Qc), Canada

PostPosted: Wed 16 Sep 2009, 11:07    Post subject:  

Hello, again, Jemimah
(sorry for getting your nick wrong last time)

Here's what I get when I run it:
erreur_chmod_gen_menu_wmx.png
 Description   chmod error in gen_menu_wmx.sh
 Filesize   5.91 KB
 Viewed   773 Time(s)

erreur_chmod_gen_menu_wmx.png


_________________
"Logical entities must not be multiplied needlessly." / "Il ne faut pas multiplier les êtres logiques inutilement." (Ockham)
Back to top
View user's profile Send private message Visit poster's website 
jemimah


Joined: 26 Aug 2009
Posts: 4309
Location: Tampa, FL

PostPosted: Wed 16 Sep 2009, 11:26    Post subject:  

I wonder if one of your menu entries has some funny characters in it that I didn't anticipate - perhaps one that starts with a hyphen or something.

If you add the line
echo "$file"
right before the the chmod command, you'll be able to see what it's choking on.
Back to top
View user's profile Send private message Visit poster's website 
musher0


Joined: 04 Jan 2009
Posts: 4229
Location: Gatineau (Qc), Canada

PostPosted: Wed 16 Sep 2009, 11:46    Post subject:  

jemimah wrote:
Just a quick note, it's trivial to modify wmx so it doesn't sort the menu alphabetically - that way it will look like the menu in JWM. If you still have the source, just edit Menu.C and comment out both lines that start with "qsort", then recompile.


As for me, I prefer to keep it alphabetical.
An alphabetical sort means that you can
rely on it to find your way around the
menu and your computer using a commonly
accepted logic.

Not a subjective logic, such as what the
programmer (or anyone, for that matter)
thinks should be grouped together.

The Puppy menu has always thrown me off.
Shortly after posting wmx here, I decided
in favour of aemenu-gtk and built my own
menuS (capital S intentional) in a simple editor.

one for easy access to disks
one for easy access of the linux directories (that was a great help)
one for my own often accessed programs
one mirroring the Puppy menu (obviously -- otherwise you're cooked!).

(By default Puppy offers no menu access to disks and to the linux structure. You have to find workarounds, such as aemenu-gtk or symlinks in a folder, etc.)

Also, it's been a while since I've worked with
the wmx codes and docs, but I believe you can
put and use an "options" file in the .wmx directory
for sorting and such.

Finally, once your script has created the submenus,
I've started including a symlink to it (recursive) within
the submenus. So you don't have to get out of the
menu while you're searching for a program.

Being recursive, this symlink means that you're back to the black console
with an error after 2-3 reruns of the wmx menu. So beware. but it does help, to a point.

_________________
"Logical entities must not be multiplied needlessly." / "Il ne faut pas multiplier les êtres logiques inutilement." (Ockham)
Back to top
View user's profile Send private message Visit poster's website 
musher0


Joined: 04 Jan 2009
Posts: 4229
Location: Gatineau (Qc), Canada

PostPosted: Wed 16 Sep 2009, 11:53    Post subject:  

jemimah wrote:
I wonder if one of your menu entries has some funny characters in it that I didn't anticipate - perhaps one that starts with a hyphen or something.

If you add the line
echo "$file"
right before the the chmod command, you'll be able to see what it's choking on.


Well, I've incorporated and am using the French translation of the Puppy 4.12 menu provided by JJMoulinier (aka esmourguit in the forums) for "ToutouLinux" (which is the localisation in French of PuppyLinux). The first character of some line may have an accented character.

But I'll try your suggestion and see what happens.

_________________
"Logical entities must not be multiplied needlessly." / "Il ne faut pas multiplier les êtres logiques inutilement." (Ockham)
Back to top
View user's profile Send private message Visit poster's website 
musher0


Joined: 04 Jan 2009
Posts: 4229
Location: Gatineau (Qc), Canada

PostPosted: Wed 16 Sep 2009, 12:20    Post subject:  

Yeah, sometimes chmod flags the accented characters as errors and sometimes not. Probably the switch between ISO (in console) and UTF-8 (in X-Window) character sets is to blame?

(See excerpt of listing attached. You'll see the chmod error message appearing after some lines with accented characters, but some lines with same type of characters are not flagged.)

Non-anglophones would find it annoying in an editor, for example, but here it's nothing too serious.

We live with it all the time, and we're not dead yet! (Smile
erreur2_chmod_gen_menu_wmx.png
 Description   chmod error with accented characters in menu
 Filesize   22.45 KB
 Viewed   1670 Time(s)

erreur2_chmod_gen_menu_wmx.png


_________________
"Logical entities must not be multiplied needlessly." / "Il ne faut pas multiplier les êtres logiques inutilement." (Ockham)
Back to top
View user's profile Send private message Visit poster's website 
jemimah


Joined: 26 Aug 2009
Posts: 4309
Location: Tampa, FL

PostPosted: Wed 16 Sep 2009, 14:42    Post subject:  

It's probably the hyphen that's confusing it, it seems to be coping ok with the accents. Try this fix:

Quote:


Change this line

file=`echo $LINE | cut -f2 -d\" |sed 's/\//_/g'`

to

file=`echo $LINE | cut -f2 -d\" |sed -e 's/\//_/g' -e 's/^-//'`



Have you heard of dmenu? It's keyboard driven - you hit the hotkey, then type what you want, and dmenu shows you matching apps. Therefore menus need no structure at all. It's like a super lightweight version of quicksilver or launchy.
Back to top
View user's profile Send private message Visit poster's website 
Display posts from previous:   Sort by:   
Page 1 of 2 [28 Posts]   Goto page: 1, 2 Next
Post new topic   Reply to topic View previous topic :: View next topic
 Forum index » Taking the Puppy out for a walk » Announcements
Jump to:  

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2005 phpBB Group
[ Time: 0.0976s ][ Queries: 12 (0.0046s) ][ GZIP on ]