Add A JWM Bookmarks Menu or Submenu/Messing Around With JWM

How to do things, solutions, recipes, tutorials
Post Reply
Message
Author
User avatar
Puppus Dogfellow
Posts: 1667
Joined: Tue 08 Jan 2013, 01:39
Location: nyc

the pinboards as workspaces/menus/fields of bookmarks

#136 Post by Puppus Dogfellow »

wnsdpn.tar.gz

here's the readme from the above .gz:
mwl9 and sd are forks/tweaks/hacks of two of MochiMoppel's scripts, winswitcher and speeddials. the only change to the latter is a button to call mwl9, which is unnecessary now that 3b calls/shuts off both. mwl 9 has a bug not present in the original--the open windows are listed twice. trade off is it doesn't auto close, you can refresh the list and repostion the box, and you get 14 additional buttons. colum one: refresh, moveback (might get rid of this one since i never use it. regardless, it was RSH's tweaks that gave the first two buttons and showed me how to add the other 12.) layer above, layer normal, layer below, sticky, close rox. column 2 has the same buttons as column 1 but the first is labeled with a different popup and the activation is set (mistakenly) for a program (search for "action" in the script to customize) i've never offered as it's specific to one of my setups. for the other six (my original intent was that the first on the second column would activate the p1 panel set), i'm thinking of either more panels, buttons to size and/or position selected windows, or a quick way to swap puppy/rox's pinboards. the next uploaded version of this will include a folder with the necessary scripts, better, less redundant, more function-specific buttons, and the scriplets for the quick pinboard switches, which i think are the only relevant ones missing from the wmp4..tar.gz file in pupli repo's utilities folder. xdotool and wmctrl are required for most of this stuff to work; both are available in the repo. for Slacko64, you'll need the 64bit wmctrl available in the ppm. you can grab the 64bit xdotool from the repo (utilities folder).

until they're upped in stand alone, copy-to-/root/my-applications/bin-able form, here are the mini-scripts for the pinboard switching/here's the readme that was supposed to go with the five little scripts i've decided not to upload until i get some stuff sorted out:



#!/bin/sh
#name this one pp1
rox --pinboard=/root/Choices/ROX-Filer/PuppyPin

_______________

#!/bin/sh

#name this one pp2

rox --pinboard=/root/Choices/ROX-Filer/PuppyPin2

_______________

#!/bin/sh
#name this one pp3
rox --pinboard=/root/Choices/ROX-Filer/PuppyPin3

_______________

#!/bin/sh

#name this one pp4

rox --pinboard=/root/Choices/ROX-Filer/PuppyPin4

_______________

#!/bin/sh
#name this one pp5
rox --pinboard=/root/Choices/ROX-Filer/PuppyPin5

_______________


#copy the pinboard in /root/Choices/ROX-Filer and name it PuppyPin2 or use geany to save the file as PuppyPin2, PuppyPin3, PuppyPin4, and PuppyPin5. if you want a blank slate,
#code:

# <?xml version="1.0"?>
# <pinboard>
# <backdrop style="Stretched">/usr/share/backgrounds/DarkGrey.jpg</backdrop>
# </pinboard>

#can be made into menu entries, keyboard shortcuts, or panel items. if you use them as desktop icons, you'll need to drag the scripts to each new "wallpaper" as they'll be removed with the pinboard. keep this in mind if you're using the pinboards as menus, bookmarks, or workspaces.
#to do: up the jwm code (find and alter the appropriate code) to make each desktop switch automatically switch pinboards. i figure it's a good way to make the desktops seem less virtual and more like distinct locations unto themselves. of course, i'd probably rather be able to switch the pinboards with the same ease i can their four panel frames, which is why their names are so brief--shift+space to call the terminal is a very handy shortcut. i like it, anyway. i recommend rox as the shortcut for alt+spacebar, and 3b as the shortcut for ctrl+spacebar.
# some further words about sd and mwl9/the original MochiMoppel scripts on which they are based: i place 3b (which calls/shuts down both) atop many of the root:# menus--together they function as a sort of master control center, or so it seems to me. i think their inclusion would improve just about every puppy.
p.dogfellow, 10/15/2014

anyway, you can drag folders, scripts, files, etc. to a "desktop" and have that called forward or put away at a key press. hope someone finds it useful. if you're adventurous or bored, you can make the pinboard scripts fire whenever a desktop is switched with the information in this thread.


____
late tip:

cd /root/Choices/ROX-Filer; for f in PuppyPin{2..6} ; do cp PuppyPin $f ; done

in a terminal will autogenerate the five pinboard copies.
Last edited by Puppus Dogfellow on Sun 14 Jun 2015, 17:07, edited 3 times in total.

User avatar
MochiMoppel
Posts: 2084
Joined: Wed 26 Jan 2011, 09:06
Location: Japan

Re: the pinboards as workspaces/menus/fields of bookmarks

#137 Post by MochiMoppel »

Puppus Dogfellow wrote:mwl9 and sd are forks/tweaks/hacks of two of MochiMoppel's scripts, winswitcher and speeddials
My sincere thanks that you didn't call them "improvements" :lol:

User avatar
Puppus Dogfellow
Posts: 1667
Joined: Tue 08 Jan 2013, 01:39
Location: nyc

Re: the pinboards as workspaces/menus/fields of bookmarks

#138 Post by Puppus Dogfellow »

MochiMoppel wrote:
Puppus Dogfellow wrote:mwl9 and sd are forks/tweaks/hacks of two of MochiMoppel's scripts, winswitcher and speeddials
My sincere thanks that you didn't call them "improvements" :lol:
no sweat, Mochi.

:lol:

thanks again for providing them.

User avatar
greengeek
Posts: 5789
Joined: Tue 20 Jul 2010, 09:34
Location: Republic of Novo Zelande

#139 Post by greengeek »

I just want to throw an idea in the mix here - I stumbled across another thread that was discussing user interfaces for puppy, and one post in particular (from 'disciple') caught my focus in terms of improving the desktop usability. Unfortunately the image he posted isn't immediately visible due to its size, but its worth clicking the download link and having a look at it here

Maybe there's some way to offer the menus in such a way using your shortcuts Puppus?

There's some other interesting ideas spread through that thread too.

User avatar
Puppus Dogfellow
Posts: 1667
Joined: Tue 08 Jan 2013, 01:39
Location: nyc

#140 Post by Puppus Dogfellow »

greengeek wrote:I just want to throw an idea in the mix here - I stumbled across another thread that was discussing user interfaces for puppy, and one post in particular (from 'disciple') caught my focus in terms of improving the desktop usability. Unfortunately the image he posted isn't immediately visible due to its size, but its worth clicking the download link and having a look at it here

Maybe there's some way to offer the menus in such a way using your shortcuts Puppus?

There's some other interesting ideas spread through that thread too.
looks cool, greengeek, but it seems like a keyboard shortcut to usr/share/applications would do more or less the same thing. you can symlink any missing programs or scripts to that folder and access them either with / and then the first letter(s) plus enter, or by clicking it in the same way you would disciple's panel. you could also copy and rename the items in the folder to make access easier by controlling their placement/sort order. i haven't read the whole thread, so i may be missing something, but that's my take on it. at least so far.

anyway, i think the puppypin switching is close to what you were talking about earlier with the time machine aspects of what's going on here. i was thinking about situations in which i'd like to have a bunch of folders ready, and when i moved from personal use to professional use, it seemed more space may be better, though as disciple points out in the linked thread, menu items and taskbar buttons (and panels) have the advantage of not being covered by other windows. so i thought about what's required the most "organization" and came back to my time as teacher--you could pop up a pinboard that has a folder for each kid, or each portfolio, one pinboard per class, or from the kid's perspective (i sometimes think about how puppy can be used in the nyc/usa school system--they've got plenty of machines that can be given new life and basically a curriculum entry point, should they choose to take advantage of the opportunity), a personal desktop plus one for each subject or project or whatever. make a mess, keep things out and handy, put it away instantly when you're finished. that's kind of how i use the panels. they become somewhat disposable over time, but both the panels and the pinboards allow easy salvage though copy-paste/deletion of the file's contents (they may want to take their drives and (etc) with them).

anyway, a large categorized panel like disciple's may appeal to some. it could be launched with a menu, key, or a button same as anything else.

User avatar
Puppus Dogfellow
Posts: 1667
Joined: Tue 08 Jan 2013, 01:39
Location: nyc

#141 Post by Puppus Dogfellow »

p573, p573-L

just put together a couple of pups that use most of what's been developed here.
...you could also copy and rename the items in the folder to make access easier by controlling their placement/sort order.
it actually includes copies of desktop files and scripts (two by mochi (speeddials and winswitcher) are 1 and 2) in the applications folder renamed and prepended with numbers. you have to remember the forward slash or to use the arrow key or the speed dial function will just shoot you out of the folder altogether. and too many loaded in front as speed dials could end up taking longer to access than the lettered ones.

User avatar
Puppus Dogfellow
Posts: 1667
Joined: Tue 08 Jan 2013, 01:39
Location: nyc

nifty tray tweak

#142 Post by Puppus Dogfellow »

if you have a stock or close to stock taskbar, you have a line similar to this in /root/jwmrc-tray:

Code: Select all

	<Tray  autohide="false" insert="right" valign="botton" x="1" y="-1" border="1" height="24" >
except that the value for x is set at zero. by making it 1, you can drop the main menu button, gaining a little extra space on the taskbar. this also would allow you to access (throw the mouse into the lower left corner) all five mouse menus. it actually requires less precision and care than clicking an actual virtual button, though i can see having a preference for the left button over the other two and the scroll wheel. you can copy the menu in /etc/xdg/templates/_root_.jwmrc over to your root:1 menu to compensate for this.

Code: Select all

	<!-- 	<TrayButton label="" icon="mini-dog.xpm">root:3</TrayButton>-->
you can either comment out the root:3 menu button as shown above, delete it, or repurpose it (exec:program-name).

you can further gain space by moving the dock to a hidden upper taskbar, which is also a convenient location for the other five menu buttons. since the menus all contain a <Desktops/> tag, you don't really need the pager, at least not to see which desktop you're on or to get to another one. no visual representation of the windows with this method though.

here's a tray for that:

Code: Select all


<JWM>
	<Tray  autohide="true" insert="right" valign="top" x="280" y="-1" border="1" height="28" >
	<TrayButton popup="Show Desktop" icon="mini-desktop.xpm">showdesktop</TrayButton>
<TrayButton label="6">root:6</TrayButton> 

<TrayButton label="7">root:7</TrayButton> 
<TrayButton label="8">root:8</TrayButton> 
<TrayButton label="9">root:9</TrayButton> 
<TrayButton label="0">root:0</TrayButton> 

			<Dock/>
			
	</Tray>
</JWM>

here's a screen shot of a desktop using the above (optionally top) tray but without the default tray (it's been commented out of /etc/xdg/templates/_root_.jwmrc) and an additional left side vertical tray containing the pager and tasklist.

User avatar
Puppus Dogfellow
Posts: 1667
Joined: Tue 08 Jan 2013, 01:39
Location: nyc

you can have more than ten desktops...

#143 Post by Puppus Dogfellow »

the following screen shot is from a large (26 inch) monitor with relatively poor resolution (1024x768). giving it three rows of eight seemed to take up much more room than two of twelve, though this set up could take three times that and still give more tasklist space than stock. all you need to do to go beyond the ten the jwm gui offers you is edit the

Code: Select all

<!-- Number of virtual desktops -->
<Desktops width="5" height="2"/>
line in jwmrc-personal. i found 4x6 manageable even on a default sized tray--play around with it keeping in mind it will scale to fit your screens (dual monitor set ups eat a lot of width and stretch the pager somewhat more than single setups).

Image

Image


to get the seamless htop window (covering the drive icons in the pic), add

Code: Select all

<Group>
     <Name>urxvt</Name>
        <Option>noborder</Option>
        <Option>notitle</Option>
      <Option>sticky</Option>
    </Group>	
to jwmrc-personal (works when using the htOPuRXVT script in Startup or Startup/quar). to change the color of htop's fonts and set the transparency, use urxvtset, which will also allow you to set the size and background/foreground combos should you decide to forgo transparency/"transparency" (window actually covers the desktop with a corresponding blank (iconless) patch of virtual wallpaper and completely hides whatever is beneath it).


i used a resource similar to this to change the clock codes from default.


trays autohide and eye-space is an invisible icon for lxtask, rox /mnt, and partview. a few icons poke out underneath the htop window and are accessible beneath maximized windows thanks to a one pixel border. without a titlebar or anything to grab onto, the htop/urxvt windows are most easily moved with the shortcut keys or Alt+ Left Click.

User avatar
Puppus Dogfellow
Posts: 1667
Joined: Tue 08 Jan 2013, 01:39
Location: nyc

insist on ignoring the warning atop /root/.jwmrc?

#144 Post by Puppus Dogfellow »

to gain control of the main (root:3, right click) menu, i began fiddling around with the .jwmrc file in root despite the warning and the advice of those who know better than i. anyway, close to a year later, it's still working well, though now that i have nine others, letting it be wouldn't be and isn't so hard. but still, if you want your menu your way and you are getting annoyed by fixmenus making you rename your despitethewarning.jwmrc to .jwmrc to overwrite the new one it creates each time you install or remove something, here's an easy way around the nuisance.

Code: Select all

#!/bin/sh
# name this one my3 and place in /root/my-applications/bin
# add <Program label="my3">my3</Program> to /etc/xdg/templates/_root_.jwmrc right below <RootMenu label="Menu" [...] onroot="3">

cd /root/my-applications/root3 
cp -f .jwmrc /root
jwm -reload

# (yes i'm just getting around to learning some basic commands)
# pretty sure the following would do the same:
#cp -f /root/my-applications/root3/.jwmrc /root
#jwm -reload

# so enter  mkdir /root/my-applications/root3 into a terminal and copy your despitethewarning.jwmrc file there, but rename it .jwmrc. run fixmenus and you should now have a one click solution to return to the menu the way you wanted it.


as it says in the somewhat harder to read code-text font, name it my3 and place in /root/my-applications/bin, add <Program label="my3">my3</Program> to /etc/xdg/templates/_root_.jwmrc right below the <RootMenu label="Menu" [...] onroot="3"> part. enter mkdir /root/my-applications/root3 into a terminal, copy your despitethewarning.jwmrc file there as .jwmrc, run fixmenus, right click, bask in your lack of annoyance.


:D


in case you want to copy some newly generated menu files over to your custom jobbie,

Code: Select all

#!/bin/sh 
#gea3

geany /root/.jwmrc /root/my-applications/root3/.jwmrc

# for menu: <Program label="gea3">gea3</Program>
will open them both up in geany for easy search-copy-paste. (do that before you run my3, may as well add <Program label="gea3">gea3</Program> to /etc/xdg/templates/_root_.jwmrc when you add the similar line for my3.)

User avatar
Puppus Dogfellow
Posts: 1667
Joined: Tue 08 Jan 2013, 01:39
Location: nyc

switch sets of shortcut keys and/or custom menus on the fly

#145 Post by Puppus Dogfellow »

jwm10config-quickswitch.tar.gz

jwm-switch-configs-on-the-fly.readme:
allows easy switching of alternate menu layouts and keyboard shortcut configurations by swapping out .jwmrc in /root and replacing it on the fly with one of your (here's a set for ten) alternates. they are set to use jwmrc.personal for customizations by default, but each new root menu has a line (by default commented out) for one of the new jwmrc-personal files that sits with it in its folder in /root/my-applications/root3. you could alter that and switch root menus by sets of ten rather than just one at a time.

all the templates in /root/my-applications/root3 are copies of the original puppy menu from /initrd/pup_ro2 compressed to one line, with the desktops goto, rox opening the applications folder in usr/share, and a jwm config switch (which should also be added atop/etc/xdg/templates/_root_.jwmrc as well) menu added:


<Menu label="jwm config switch" icon="" height="16">
<Program label="gjwm"">gjwm</Program>
<Program label="my3"">my3</Program>
<Program label="my30"">my30</Program>
<Program label="my31"">my31</Program>
<Program label="my32"">my32</Program>
<Program label="my33"">my33</Program>
<Program label="my34"">my34</Program>
<Program label="my35"">my35</Program>
<Program label="my36"">my36</Program>
<Program label="my37"">my37</Program>
<Program label="my38"">my38</Program>
<Program label="my39"">my39</Program>
<Program label="orig3"">orig3</Program>
</Menu>


the terminal shortcut for each of the additional configurations is the same as their purposely short program names i.e. enter my38 into a terminal or gexec-like launcher and that menu system and its associated shortcut keys will now be activated. comment out the jwmrc-personal line atop the .jwmrc file you are using and uncomment the one corresponding to your new customizations (keyboard, group, etc.)


overwrite the .jwmrc file in /root/my-applications/root3 to use your own current right click menu in place of the puppy original from ro2 (without having to use fixmenus, which is what "orig3" is, more or less.) gjwm opens the jwm files in geany for easy access.

here are the scripts contained in the "copy this to /root/my-applications/bin" folder:

Code: Select all

#!/bin/sh
# name my3 and place in /root/my-applications/bin
cp -f /root/my-applications/root3/.jwmrc /root
jwm -reload 

_____________

#!/bin/sh
# name my30 and place in /root/my-applications/bin
cp -f /root/my-applications/root3/root30menu/.jwmrc /root
jwm -reload 

_____________
#!/bin/sh
# name my31 and place in /root/my-applications/bin
cp -f /root/my-applications/root3/root31menu/.jwmrc /root
jwm -reload 

_____________
#!/bin/sh
# name my32 and place in /root/my-applications/bin
cp -f /root/my-applications/root3/root32menu/.jwmrc /root
jwm -reload 

_____________
#!/bin/sh
# name my33 and place in /root/my-applications/bin
cp -f /root/my-applications/root3/root33menu/.jwmrc /root
jwm -reload 

_____________
#!/bin/sh
# name my34 and place in /root/my-applications/bin
cp -f /root/my-
applications/root3/root34menu/.jwmrc /root
jwm -reload 

_____________
#!/bin/sh
# name my35 and place in /root/my-applications/bin
cp -f /root/my-applications/root3/root35menu/.jwmrc /root
jwm -reload 

_____________
#!/bin/sh
# name my36 and place in /root/my-applications/bin
cp -f /root/my-applications/root3/root36menu/.jwmrc /root
jwm -reload 

_____________
#!/bin/sh
# name my37 and place in /root/my-applications/bin
cp -f /root/my-applications/root3/root37menu/.jwmrc /root
jwm -reload 

_____________
#!/bin/sh
# name my38 and place in /root/my-applications/bin
cp -f /root/my-applications/root3/root38menu/.jwmrc /root
jwm -reload 

_____________
#!/bin/sh
# name my39 and place in /root/my-applications/bin
cp -f /root/my-applications/root3/root39menu/.jwmrc /root
jwm -reload 
#jwm -restart 
_____________

#!/bin/sh
# name orig3 and place in /root/my-applications/bin
fixmenus
jwm -restart 
#jwm -reload 
_____________


#!/bin/sh
#name gjwm and place in  /root/my-applications/bin
geany /root/.jwm/jwmrc-personal /root/.jwm/jwmrc-theme /root/.jwm/jwmrc-personal2 /root/.jwmrc /root/.jwmrc-tray /root/my-applications/root3/.jwmrc /root/my-applications/root3/jwmrc-personal3 /root/my-applications/root3/root30menu/.jwmrc /root/my-applications/root3/root30menu/jwmrc-personal30 /root/my-applications/root3/root31menu/.jwmrc /root/my-applications/root3/root31menu/jwmrc-personal31 /root/my-applications/root3/root32menu/.jwmrc /root/my-applications/root3/root32menu/jwmrc-personal32 /root/my-applications/root3/root33menu/.jwmrc /root/my-applications/root3/root33menu/jwmrc-personal33 /root/my-applications/root3/root34menu/.jwmrc /root/my-applications/root3/root34menu/jwmrc-personal34 /root/my-applications/root3/root35menu/.jwmrc /root/my-applications/root3/root35menu/jwmrc-personal35 /root/my-applications/root3/root36menu/.jwmrc /root/my-applications/root3/root36menu/jwmrc-personal36 /root/my-applications/root3/root37menu/.jwmrc /root/my-applications/root3/root37menu/jwmrc-personal37 /root/my-applications/root3/root38menu/.jwmrc /root/my-applications/root3/root38menu/jwmrc-personal38 /root/my-applications/root3/root39menu/.jwmrc /root/my-applications/root3/root39menu/jwmrc-personal39 

_____________

enjoy.


--puppus dogfellow, 3/15



so, long story short, you enter my3 or my30 (will currently work with my3 and my30-my39) into a terminal and you get a compressed original menu, a shortcut to the desktops and applications folder, and an opportunity to try out 10 or so alternate layouts. seamless, virtually instant switching between menu sets and keyboard shortcut sets. can also be used to switch between tray layouts. have your menus more wholly honed to the task at hand. or something.

:lol:

enjoy.


___________________________


edit: you may want to change the code in the above examples from jwm -reload to jwm -restart if your configuration changes involve keyboard shortcuts and the trays as -reload only works for the menus/menu entries themselves. if you're only changing the menus then keep it as is as -reload is smoother, quicker, and more pleasant (2-3 second delay at most, no flicker; jwm -restart, 3-5 second delay, harsh flicker that rearranges the task bar. not sure if other glipper installations are similarly affected, but on my machines it also almost always knocks the glipper icon from the dock as well, necessitating an alt+spacebar, 2, /, g, enter to fix it. [jwm shortcut for rox ~, (my) rox speeddial for Start up, a slash to activate path/file search (also handy for copying the path, which appears at the bottom of the rox window), g for glipper, enter.])
Last edited by Puppus Dogfellow on Sun 08 Mar 2015, 22:34, edited 2 times in total.

User avatar
Puppus Dogfellow
Posts: 1667
Joined: Tue 08 Jan 2013, 01:39
Location: nyc

embedding trays in the wallpaper

#146 Post by Puppus Dogfellow »

you can set additional jwm trays into the background to get them out of your way, or allow the dock, pager, or menus to be activated from/become a part of the wallpaper/backdrop. first example sets five menus [roots 6-(1)0], the clock, and the pager into the cluster with the drive icons:

Image


here are some other shots:


Image

centrally located menu strip (you can use large images and have the clock determine the width (or use width=""), though here i just stuck with numbers). note how the menu when launched sits above though activated from below:

Image

random placements:

Image

messing with sizes (in this case, large, 48 desktop pager):

Image


here's an example of how to do it (this is the one for the little vertical five menu button strip):

Code: Select all

<JWM>
	<Tray  autohide="false" insert="right"  layer="below" layout="vertical" x="306" y="440" border="1">
	



<!--<TrayButton label="1">root:1</TrayButton> 
 <TrayButton label="2">root:2</TrayButton> 
 <TrayButton label="3">root:3</TrayButton> 
<TrayButton label="4">root:4</TrayButton> 

 <TrayButton label="r5.png">root:5</TrayButton> -->

<TrayButton icon="r6.png">root:6</TrayButton> 



<TrayButton icon="r7.png">root:7</TrayButton> 
 <TrayButton icon="r8.png">root:8</TrayButton> 
 <TrayButton icon="r9.png">root:9</TrayButton> 
 <TrayButton icon="r0.png">root:0</TrayButton>

			
	</Tray>
	
<!-- five menu buttons are commented out since they're also the five mouse "buttons"--you could make rows of buttons comprised of any photos of your choice and use them for scripts, programs, folders, etc. -->

<!--name (for example) trayv6 and place in (for example) /root. activate by placing <Include>/root/trayv6</Include> in the  jwmrc-personal file in /root/.jwm and restart jwm -->
	
</JWM>

______________

(probably should've been posted earlier, but...)



here are some shots of the placement menus:

Image

Image

Image


Image

User avatar
Puppus Dogfellow
Posts: 1667
Joined: Tue 08 Jan 2013, 01:39
Location: nyc

move and click the mouse with the arrow keys

#147 Post by Puppus Dogfellow »

Code: Select all

<Key mask="AC" key="Up">exec:xdotool mousemove_relative -- 0 -10</Key>
<Key mask="AC" key="Down">exec:xdotool mousemove_relative -- 0 10</Key>
<Key mask="AC" key="Right">exec:xdotool mousemove_relative -- 10 0</Key>
<Key mask="AC" key="Left">exec:xdotool mousemove_relative -- -10 0</Key>

<Key mask="AS" key="Up">exec:xdotool click 2</Key>
<Key mask="AS" key="Down">showdesktop</Key>
<Key mask="AS" key="Right">exec:xdotool click 3</Key>
<Key mask="AS" key="Left">exec:xdotool click 1</Key>


<Key mask="SAC" key="Up">exec:xdotool mousemove_relative -- 0 -50</Key>
<Key mask="SAC" key="Down">exec:xdotool mousemove_relative -- 0 50</Key>
<Key mask="SAC" key="Right">exec:xdotool mousemove_relative -- 50 0</Key>
<Key mask="SAC" key="Left">exec:xdotool mousemove_relative -- -50 0</Key>


click 1 is left, 2 is middle, 3 is right. alt+ctrl moves, alt+shift clicks, alt+shift+ctrl moves the mouse at quintuple time.

earlier, alt and these keys were made into a quick scoot cluster for active windows. swap shift for control if the assonance of shift click is less helpful a mnemonic than the alliteration of control click, which has the advantage of also working alphabetically (click comes before move, ctrl comes before shift. i use the windows move shortcut most so it gets the cushiest cut. hopefully the alt plus combination will prevent interference with word processing and other programs that sometimes heavily rely on the arrow keys).

User avatar
Puppus Dogfellow
Posts: 1667
Joined: Tue 08 Jan 2013, 01:39
Location: nyc

quickly reach the choicest menu bits

#148 Post by Puppus Dogfellow »

Image

some of my menus are very long, and often i don't feel like deleting or restructuring parts that helped me build better versions, in the way though they may be. a simple work around is a script like the following, which can be added to jwmrc-personal as a shortcut, a menu as a wormhole, /root/my-applications/bin for a terminal shortcut (name it something short such as w5 or wp and activate with grun or a terminal), dragged to the desktop or a panel, or made into a tray button:

Code: Select all

#!/bin/sh
xdotool key alt+9 Up Right Down Down Down Down Right

this is the menu item version of one of the two lines of code depicted in the gif:

Code: Select all

	 <Program label="manipR9windows" icon="">xdotool key alt+9 Up Right Up Right Right</Program>

what it the two menu shortcuts look like as key codes:

Code: Select all


<Key mask="A" key="h">prev</Key>
<Key mask="A" key="j">next</Key>

<Key mask="A" key="k">exec:xdotool key alt+9 Up Right Down Down Down Down Right</Key>
<Key mask="A" key="l">exec:xdotool key alt+9 Up Right Up Right Right</Key>
something like this can save keys in the long run--rather than have a shortcut for each particular panel, pinboard, or program set, just use one or two shortcut keys to instantly access submenus containing whatever you'll be looking for. place helpful things near where you're planning to end up. let xdotool handle the drudgery of accessing the menus and pressing the up and down and left and right arrows. saves seconds, reduces demands on one's concentration (the gif depicts it accessing two of the root 9 menu's submenus). terminal shortcuts only require a shortcut to launch the terminal or grun/prun/gexec--the tersely named scripts can multiply exponentially and their easy to remember four character or so launching combinations will cost no additional keys. the two submenus pictured are mainly to give text editors/viewers word processor functionality (an ongoing project) and to provide users with an easy way to organize, size, and position windows (link above has the menu code for both plus a single monitor version of the windows manipulation menu).


edit: calling the submenus from the terminal appears to always work--not so with the shortcut keys. not sure if it's sending the keys too fast or if there's some other shortcuts i've forgotten about that are interfering, but called from a terminal or launcher such as gexec or grun or called from a menu wormhole or clicked on as a script or desktop icon all appear to work more consistently than the shortcut keys for some reason. (i recommend spacebar plus a single modifier for the shortcut that calls the terminal or terminal-caller).

User avatar
Puppus Dogfellow
Posts: 1667
Joined: Tue 08 Jan 2013, 01:39
Location: nyc

alternate method for accessing rox bookmarks through jwm

#149 Post by Puppus Dogfellow »

requiresxdotool-2.20110530.1-3.pet
64 bit version: xdotool-2.20110530.1-3.1.2.x86_64.rpm

Code: Select all

 rox /mnt; xdotool key ctrl+b

Code: Select all

 rox /tmp; xdotool key ctrl+b Down Down Down Down Down Down Down Down 	 
the above code will allow you to quickly access your rox bookmarks. you can designate what folder you want to extend its bookmarks menu by adding a path after a space after the rox (by itself, it opens /root); you can position the select-highlight by adding (a series of) Down to the latter part of the line (without it, the position defaults to Add New Bookmark).

example for the keyboard shortcuts in jwmrc-personal:

Code: Select all

 <Key mask="CS" key="b">exec:rox /mnt; xdotool key ctrl+b</Key>

example for a/the menu:

Code: Select all

	  	 <Program label="rox bookmarks" icon="">rox /tmp; xdotool key ctrl+b Down Down Down Down Down Down Down Down </Program>

script for terminal shortcut (place in /root/my-applications/bin):

Code: Select all

#!/bin/sh

rox /mnt; xdotool key ctrl+b
#rox bookmarks. for a terminal shortcut, place in /root/my-applications/bin and name rb/something apt and brief.
#make quick links to folders by adding (a series of) Down to the latter part of line and renaming the resultant scripts rb1, rb2...
right or middle clicking on the list will leave the original folder open when the bookmark is called. left clicking closes the original folder.


______

two more samples:

Code: Select all

#!/bin/sh 
#name rup
rox /mnt/home; xdotool key ctrl+b Up Up Up
#^three up from last bookmark

Code: Select all

#!/bin/sh 
# name rr
rox /usr/share; xdotool key ctrl+b Down Down Right Down
#^one down on the recently visited list
tips/reminders: escape will shut the list, ctrl+Home takes you to /root(~), and Backspace moves to parent folder--you don't really need a speed dial (designate by ctrl+0-9, access by 0-9) for / or ~ because of this (ctrl+Home followed by Backspace reaches / from any folder). call the bookmarks list with ctrl+b; left click and enter close the original, middle and right click open the bookmark as an additional folder. \ is the right click menu, / opens the path search bar at the bottom of the window.

User avatar
Puppus Dogfellow
Posts: 1667
Joined: Tue 08 Jan 2013, 01:39
Location: nyc

active versions of the window manipulations packs

#150 Post by Puppus Dogfellow »

here and hereyou can find windows manipulation scripts that work on a window to be selected by the next click. for the select (turn your mouse to crosshairs) versions it doesn't matter much how you launch the command, but for the active versions, gexec or similar launchers work on the active window whereas terminals become the active window (and merely distort themselves/bounce themselves around). use the following pack of scripts to get the active versions of the windows manipulation commands you can see on the menus. making (gexec) an easily pressed key combo (alt+spacebar) allows you to resize windows quickly and in a way you yourself find memorable. for the most part and as examples of the general naming convention, 650 will make a 650 pixel square of a window to be selected, 650a will turn the active window into a 650 pixel square; y450 moves the selected to that position, y450a moves the active window to that position. the scripts are easily customizable if the presets and titles don't suit you. comments included in them and in this thread should help out. you can use something like the vgt to make your window templates. i haven't as yet made a pack of the active versions of the (now up to) 24 send-to-desktop scripts, but changing the :SELECT: to :ACTIVE: in each and renaming a copy (for example) s15a will give a terminal shortcut for send-tos for active windows. the lba, lma, laa are to layer the active window below, middle (normal, there's already a system script named lna...), and above respectively. were i to do it again, i'd rename everything with active as the default (i.e. if you want to send the thing you select to desktop 16 or the upper right quadrant, you'd have to type the final s for SELECT--the shorter titles (s15, urq, 650, la) would work on the active windows. currently only the a and b series (halves and quadrants) are set up this way).

nwpfor~572 plus the earlier windows placement packs and the placement pack active add in will give you everything necessary to use the menus shown in the above post, and which you can find versions of here and the two posts that follow.

____


i discovered that gexec launches the rox bookmarks shortcuts, the extra menu entry ways, and the resize/reposition scripts especially well while trying to get used to openbox/fatdog. eventually i realized you can switch to jwm in fatdog as a built in feature, but the two systems aren't quite laid out the same way. easiest work around was to just keep all the code the same, adding the missing my-applications folder. it isn't part of the PATH, and i don't know if i was supposed to have restarted x after looking online to find the code to add something to the PATH, but having failed that way, i ended up just symlinking all the my-applications/bin files to one of fatdog's PATH folders, /usr/local/bin. there were relatively few scripts in the folder, so i chose it figuring it would be easy to keep track of things. the few hundred or so kb of files symlink virtually instantly, though i suppose correcting adding to the PATH would be just as fast. so far everything seems to work except WinSwitcher and SpeedDials, but that's likely due to 32/64 bit differences (wmctrl and xdotool work in other capacities--most of these scripts require either xdotool or wmctrl).

edit: the size and reposition scripts work mostly well in fatdog, the send tos and desktop hopping scripts work fine, but move along the x and y axis without resizing anything and list all the windows commands are working inconsistently or not at all...

User avatar
Puppus Dogfellow
Posts: 1667
Joined: Tue 08 Jan 2013, 01:39
Location: nyc

active and select resize, active send to gexec* shortcuts

#151 Post by Puppus Dogfellow »

Puppus Dogfellow wrote:haven't as yet made a pack of the active versions of the (now up to) 24 send-to-desktop scripts, but changing the :SELECT: to :ACTIVE: in each and renaming a copy (for example) s15a will give a terminal shortcut for send-tos for active windows. the lba, lma, laa are to layer the active window below, middle (normal, there's already a system script named lna...), and above respectively. were i to do it again, i'd rename everything with active as the default (i.e. if you want to send the thing you select to desktop 16 or the upper right quadrant, you'd have to type the final s for SELECT--the shorter titles (s15, urq, 650, la) would work on the active windows. currently only the a and b series (halves and quadrants) are set up this way).
here ya go: sendtoAhwAS.tar.gz

scripts included:

Code: Select all

h1000   h1225s  h1475   h1700s  h325   h550s  h800   s0a   s4a     w1100s  w1350   w1575s  w200   w425s  w675   w900s
h1000s  h1250   h1475s  h1725   h325s  h575   h800s  s10a  s5a     w1125   w1350s  w1600   w200s  w450   w675s  w925
h1025   h1250s  h1500   h1725s  h350   h575s  h825   s11a  s6a     w1125s  w1375   w1600s  w225   w450s  w700   w925s
h1025s  h1275   h1500s  h1750   h350s  h600   h825s  s12a  s7a     w1150   w1375s  w1625   w225s  w475   w700s  w950
h1050   h1275s  h1525   h1750s  h375   h600s  h850   s13a  s8a     w1150s  w1400   w1625s  w250   w475s  w725   w950s
h1050s  h1300   h1525s  h1775   h375s  h625   h850s  s14a  s9a     w1175   w1400s  w1650   w250s  w500   w725s  w975
h1075   h1300s  h1550   h1775s  h400   h625s  h875   s15a  shade   w1175s  w1425   w1650s  w275   w500s  w750   w975s
h1075s  h1325   h1550s  h1800   h400s  h650   h875s  s16a  stk     w1200   w1425s  w1675   w275s  w525   w750s
h1100   h1325s  h1575   h1800s  h425   h650s  h900   s17a  ushade  w1200s  w1450   w1675s  w300   w525s  w775
h1100s  h1350   h1575s  h200    h425s  h675   h900s  s18a  ustk    w1225   w1450s  w1700   w300s  w550   w775s
h1125   h1350s  h1600   h200s   h450   h675s  h925   s19a  w1000   w1225s  w1475   w1700s  w325   w550s  w800
h1125s  h1375   h1600s  h225    h450s  h700   h925s  s1a   w1000s  w1250   w1475s  w1725   w325s  w575   w800s
h1150   h1375s  h1625   h225s   h475   h700s  h950   s20a  w1025   w1250s  w1500   w1725s  w350   w575s  w825
h1150s  h1400   h1625s  h250    h475s  h725   h950s  s21a  w1025s  w1275   w1500s  w1750   w350s  w600   w825s
h1175   h1400s  h1650   h250s   h500   h725s  h975   s22a  w1050   w1275s  w1525   w1750s  w375   w600s  w850
h1175s  h1425   h1650s  h275    h500s  h750   h975s  s23a  w1050s  w1300   w1525s  w1775   w375s  w625   w850s
h1200   h1425s  h1675   h275s   h525   h750s  laa    s24a  w1075   w1300s  w1550   w1775s  w400   w625s  w875
h1200s  h1450   h1675s  h300    h525s  h775   lba    s2a   w1075s  w1325   w1550s  w1800   w400s  w650   w875s
h1225   h1450s  h1700   h300s   h550   h775s  lma    s3a   w1100   w1325s  w1575   w1800s  w425   w650s  w900
(the more or less self-describing titles (or launch codes, if you prefer) do what they say they will).


from 290easybake.sendtoAhwAS.readme:

active and select resize scripts, active send-to, stick, and layer scripts, plus the code i found that made it easier to put together and why i recommend gexec:

grep -lr --exclude-dir=".excludedsub(repeat for each subtree)" -e "SELECT" . | xargs sed -i "s/SELECT/ACTIVE/g"

i used the above to flip a directory worth of files from select scripts to active scripts. here's the reverse, in case you find yourself making your own versions and want to spare yourself from needlessly doubling the effort involved getting a set for each:

grep -lr --exclude-dir=".excludedsub" -e "ACTIVE" . | xargs sed -i "s/ACTIVE/SELECT/g"

adapted from here:

http://www.isaacsukin.com/news/2013/06/ ... -directory

(i used the built-in gnfrename to batch rename a directory of copies, then copied the new scripts back into /root/my-applications/bin. remember to check the permissions if something won't run.)


--------------------
#!/bin/sh
for file in *
do
cat negones >> $file
done#!/bin/sh

#(negones being a file in the same directory consisting of:

#!/bin/sh
wmctrl -r :ACTIVE: -b remove,maximized_vert,maximized_horz && wmctrl -r :ACTIVE: -e 0,-1,-1,-1,-1

# --a general way to make template files/fill a directory of files with given content)

#adapted from http://www.unix.com/shell-programming-a ... files.html
--------------------

find and replace (space) with (space)/root/my-applications/bin/
touch command to make them real files. [i typed out a series of numbers (200 -1800 by 25s; echo {200..1800..25} would've produced the same sequence), replaced the space (through geany's find and replace function) with space plus path, added touch infront of the resulting list, and got a batch of files that way. used gfnrename to rename copies of the originals in separate folders for height, width, select, and active (the included active send-tos were done with the grep line that starts this readme). included the content with the little script above, placed in and activated from the same folder that held the originals (spare yourself some work and copy them after the content's been added. to do: learn the code for transposing values after commas--that'd make the process more automated still...you could also i'm sure have sed/awk/grep (tr, cut?) take the values from a list and put them in the proper place in each file. this'll do for now...)

--------------------

gfnrename
--------------------

#!/bin/sh
#name fnr
findnrun
#--------------------
#^findnrun is probably the best thing to choose when you can only remember three characters in the title of the program, but it appears to only search the desktops files and so can't launch the terminal shortcuts. it gets a launch shortcut of its own, but i recommend gexec to launch the mini-scripts, whether resize, reposition, or just in general. the lack of a zealous highlight/replace-predict action may mean you need an extra tab-press to complete something like sak into sakura compared to say, gRun, but that same thing allows shorter two and three character scripts to be run without the launcher automatically predicting some longer-titled items, apparently by default interpreting those titles as fragments of longer titles outside /root/my-applications/bin--you won't be able to access them if there's a conflict. gexec's dropdown history window (which you can preload and make into a menu of sorts) also appears to work better than gRun's. i haven't done much testing with Prun, but it seems to work very well for all the non-resize/reposition shortcuts--it fails with them in the same way the terminals do (as discussed earlier, terminals are out for launching the resize reposition scripts on active windows since they'll only be resizing/repositioning themselves).
edit: pexec works as well as gexec (and also has a pull down menu you can preload)

User avatar
Puppus Dogfellow
Posts: 1667
Joined: Tue 08 Jan 2013, 01:39
Location: nyc

The Gexec Pexack update to the terminal shortcuts

#152 Post by Puppus Dogfellow »

Puppus Dogfellow wrote:terminal_shortcuts.tar.gz
cadi close all instances on all desktops
ccdi close all instances on current desktop
cg close all current geany
cl close all current leafpad
closeallrox
close instances template and explanation
cm close all current mtpaint
cr close all current rox
cs close all current sakura
ct close all current rxvt
cu close all current urxvt
cx close all current xpad
d1
d10
d2
d3
d4
d5 [all the d- series will take you to the desktop number indicated]
d6
d7
d8
d9
hlx [launch htop and lx task at the same time]
mps exit to prompt
mrs reboot
mss shutdown [m-series are Mochi-Moppel's gentler shutdown scripts,which i've not yet used. mss is the original...]
mxs restart xserver
p0
p1
p2

p3 [p- series is a (configurable) four panel toggle--like a menu for all sides. good for cadi, ccdi, and the launching scripts. also the NWPT]
p4
p5
p7
p8
p9

wg wmctrl list plus window geometry
wh wmctrl help
wl wmctrl list
wmctrl-1.07-6_i386.pet [needed by most of the stuff here]
wmctrlh wmctrl help, clickable (thanks to disciple)
wmctrll wmctrl list plus window geometry, clickable (thanks to disciple) [these two make it somewhat easier to learn about this very useful program]

because i've now made my terminal the keyboard shortcut of spacebar+shift[<Key mask="S" key="space">exec:sakura</Key>], i'm finding it's actually faster to do many things through it. because "cs" entered into it closes it, it's also unobtrusive and the action flows as smoothly as typing in a document. i also just discovered that the up and down arrow keys will allow you to scroll back and forth through all the commands you've ever entered into a terminal, so you could get away with longer, more descriptive titles without too much loss in speed, though

Code: Select all

shift+space, two or three characters, cs. 
can be done while looking elsewhere or one's eyes closed. i decided to gain back some of my keyboard shortcuts (regained ten with the desktops) and made a few happy discoveries along the way, the main one being that you can use the terminal in the same way we've been customizing the menu to launch specific folders and files. here are two templates and three examples:

Code: Select all

#!/bin/bash

geany /mnt/mmcblk0p2/Dropbox/MMMMMMMMM/supl/leafpad/leafpad1.txt /mnt/mmcblk0p2/Dropbox/MMMMMMMMM/supl/leafpad/leafpad2.txt /mnt/mmcblk0p2/Dropbox/MMMMMMMMM/supl/leafpad/leafpad3.txt /mnt/mmcblk0p2/Dropbox/MMMMMMMMM/supl/leafpad/leafpad4.txt /mnt/mmcblk0p2/Dropbox/MMMMMMMMM/supl/leafpad/leafpad5.txt /mnt/mmcblk0p2/Dropbox/MMMMMMMMM/supl/leafpad/leafpad6.txt /mnt/mmcblk0p2/Dropbox/MMMMMMMMM/supl/leafpad/leafpad7.txt /mnt/mmcblk0p2/Dropbox/MMMMMMMMM/supl/leafpad/leafpad8.txt /mnt/mmcblk0p2/Dropbox/MMMMMMMMM/supl/leafpad/leafpad9.txt /mnt/mmcblk0p2/Dropbox/MMMMMMMMM/supl/leafpad/leafpad10.txt /mnt/mmcblk0p2/Dropbox/MMMMMMMMM/supl/leafpad/leafpad11.txt

Code: Select all

#!/bin/bash
rox /mnt/mmcblk0p2/Dropbox/MMMMMMMMM /mnt/mmcblk0p2/Dropbox /mnt/mmcblk0p2/Dropbox/ANCN /mnt/mmcblk0p2/Dropbox/feb /mnt/sda2/downloadsFFFsda2 /mnt/mmcblk0p2/Dropbox/MMMMMMMMM/supl/leafpad 

Code: Select all

#!/bin/bash

leafpad /mnt/mmcblk0p2/Dropbox/MMMMMMMMM/supl/leafpad/leafpad1.txt| leafpad /mnt/mmcblk0p2/Dropbox/MMMMMMMMM/supl/leafpad/leafpad2.txt| leafpad /mnt/mmcblk0p2/Dropbox/MMMMMMMMM/supl/leafpad/leafpad3.txt| leafpad /mnt/sda1/dropboxondell571/Dropbox/MMMMMMMMM/supl/leafpad/leafpad4.txt| leafpad /mnt/mmcblk0p2/Dropbox/MMMMMMMMM/supl/leafpad/leafpad5.txt
the first one and second share the same syntax--program name, then the files or folders you want to open. naming the geany one gl and copying it (i suppose symlinking would also do) to a bin folder (/bin, usr/bin, /root/my-applications/bin, etc--all of them need to be copied to a bin folder in order for the terminal to pick them up as commands) will launch geany with those files opened when "gl" is entered into a terminal. you could also make these things themselves into shortcut keys or menu items. the rox one will open up multiple rox folders. the leafpad situation is a bit different and some programs may need this technique. it's not merely a question of whether or not the program opens with a file list/tree or as individual windows, because for libreoffice, the geany syntax [#!/bin/sh
libreoffice4.2 --writer fileone'sfullpath filetwo'sfullpath] will work. anyway, for leafpad and others, making the shortcut file is a bit more involved than simply highlighting a bunch in a folder then dragging the list to a leafpad or xpad file and then adding the crunchbang and program name on top of it. you need to use the | character to separate the individual items you want launched. you can also add more than one program launching more than one file this way. once you're done or have done a few of these, you may find

Code: Select all

shift+space, two to five characters, ct
is faster than many other keyboard shortcuts (flows better, easier to remember, less hand contorting) and is an appreciable deal faster than hunting and pecking for things on the menus or panels.

...

of course, you could still use these scripts without ever having to touch the the terminal. if you've copied the contents of the downloaded zip into my-applications/bin, making <Key mask="A" key="space">exec:rox /root/my-applications/bin</Key> the alt+spacebar shortcut for that folder allows any of them to be activated at a click, including cr, which will then close all the open rox windows, including the one it itself is in. cadi and ccdi can't be used this way (beyond functioning as cr and closeallrox) as they will both just offer to shut the active window, which is in this case rox.

to further speed things along, you could add MochiMoppel's excellent ROX-Filer: Superfast bookmarks script to the folder, perhaps calling it m1 or something brief/terminal-route friendly. it's a good idea to get familiar with rox's built in speed dials anyway--it's the fastest way to open individual folders, but you need to already be in a rox window to use it. so anyway, you get 10 (with alt+spacebar as the eleventh and only two-key item) folders you can access with the press of 0-9 on your keyboard. these scripts, as well as individual folders or scripts made to launch batches of them, can also be dragged to a panel, which can be itself made into a button, a keyboard shortcut, or a terminal shortcut. they can't be instantly closed with a c- script, but reentering the name of/reclicking the script for the same panel as the one that's opened will close it (the other panel scripts will just cover the previous one). for this reason, dragging the folder that contains the panel scripts to the panels is a good idea.

edit: updated download to include accidentally omitted p6.
following updates nwp, the above, and the placement and size packs:

The_Gexec_Pexack.

further info


__________

some of the mini scripts are dependent on a particular jwm configuration. i will attach my double and single monitor jwmrc-personal files and the menus that go with these programs in the near future.
for now here's a the double monitor jwmrc.personal file:

Code: Select all

<!-- Personally configurable options for JWM: these override default settings and theme settings -->

<JWM>

 <Include>/root/traylvert</Include>
 <!-- <Include>/root/traymidvert</Include>-->
 <!-- <Include>/root/trayrt</Include>-->
 <Include>/root/bottomtrayr</Include>
  <Include>toprighttrayr2</Include>
   <!-- <Include>/root/bottomtrayr2</Include>-->
<Include>/root/root1menu</Include>
<Include>/root/root4menu</Include>
<Include>/root/root5menu</Include>
<Include>/root/root2menu</Include>
<Include>/root/root9menu</Include>
<Include>/root/root8menu</Include>
<Include>/root/root7menu</Include>
<Include>/root/root6menu</Include>
<Include>/root/root0menu</Include>
<!-- <TrayButton label="1">root:1</TrayButton> -->
<!-- <TrayButton label="4">root:4</TrayButton> -->
<!-- <TrayButton label="5">root:5</TrayButton> -->
<!-- <TrayButton label="7">root:7</TrayButton> -->
<!-- <TrayButton label="6">root:6</TrayButton> -->
<!-- <TrayButton label="2">root:2</TrayButton> -->
<!-- <TrayButton label="8">root:8</TrayButton> -->
<!-- <TrayButton label="9">root:9</TrayButton> -->
<!-- <TrayButton label="0">root:0</TrayButton> -->

    
<!-- Number of virtual desktops  BK: syntax change with jwm 500... -->
<Desktops width="8" height="3"/>

<!-- Double click speed (in milliseconds) -->
<DoubleClickSpeed>400</DoubleClickSpeed>

<!-- Double click delta (in pixels) -->
<DoubleClickDelta>3</DoubleClickDelta>

<!-- The focus model (sloppy or click) -->
<FocusModel>click</FocusModel>

<!-- The snap mode (none, screen, or border) -->
<SnapMode distance="10">none</SnapMode>

<!-- The move mode (outline or opaque) -->
<MoveMode>outline</MoveMode>

<!-- The resize mode (outline or opaque) -->
<ResizeMode>outline</ResizeMode>


	<!-- keycode 22 BackSpace -->
<!-- Key bindings -->

<Key key="Up">up</Key>
<Key key="Down">down</Key>
<Key key="Right">right</Key>
<Key key="Left">left</Key>

<Key key="h">left</Key>
<Key key="j">down</Key>
<Key key="k">up</Key>
<Key key="l">right</Key>

<Key mask="AC" key="g">exec:geany /root/.jwm/jwmrc-personal /usr/share/applications/appsastext</Key>
<Key mask="SAC" key="g">exec:xdotool key alt+1 Down Return</Key>

<Key mask="A" key="z">exec:xdotool key alt+1 Down Return</Key>	
<Key mask="AC" key="z">exec:geany /usr/share/applications/appsastext /root/.jwm/jwmrc-personal</Key>



<Key key="F8">window</Key>


<Key mask="A" key="h">prev</Key>
<Key mask="A" key="j">next</Key>
<Key mask="A" key="k">exec:xdotool key alt+9 Up Right Down Down Down Down Right</Key>
<Key mask="A" key="l">exec:xdotool key alt+9 Up Right Up Right Right</Key>


<Key mask="AC" key="h">window</Key>
<Key mask="AC" key="j">move</Key>
<Key mask="AC" key="k">resize</Key>
<Key mask="AC" key="l">exec:leafpad</Key>


<Key mask="SC" key="h">exec:winswitcher</Key>
<Key mask="SC" key="j">exec:closeallrox</Key>
<Key mask="SC" key="k">maximize</Key>
<Key mask="SC" key="l">minimize</Key>

<Key mask="SC" key="a">exec:lxtask</Key>
<Key mask="SC" key="s">exec:lxterminal</Key>
<Key mask="SC" key="d">exec:grun</Key>
<Key mask="SC" key="f">exec:gexec</Key>





<Key mask="SA" key="h">exec:ccdi</Key>
<Key mask="SA" key="j">close</Key>
<Key mask="SA" key="k">exec:kill</Key>
<Key mask="SA" key="l">exec:cadi</Key>


<Key mask="SAC" key="h">ldesktop</Key>
<Key mask="SAC" key="j">ddesktop</Key>
<Key mask="SAC" key="k">udesktop</Key>
<Key mask="SAC" key="l">rdesktop</Key>



<Key mask="AC" key="F1">exec:d1</Key>
<Key mask="AC" key="F2">exec:d2</Key>
<Key mask="AC" key="F3">exec:d3</Key>	
<Key mask="AC" key="F4">exec:d4</Key>	
<Key mask="AC" key="F5">exec:d5</Key>	
<Key mask="AC" key="F6">exec:d6</Key>
<Key mask="AC" key="F7">exec:d7</Key>
<Key mask="AC" key="F8">exec:d8</Key>
<Key mask="AC" key="F9">exec:d9</Key>	
<Key mask="AC" key="F10">exec:d10</Key>
<Key mask="AC" key="F11">exec:d11</Key>
<Key mask="AC" key="F12">exec:d12</Key>	
<Key mask="SA" key="F1">exec:d13</Key>
<Key mask="SA" key="F2">exec:d14</Key>
<Key mask="SA" key="F3">exec:d15</Key>	
<Key mask="SA" key="F4">exec:d16</Key>	
<Key mask="SA" key="F5">exec:d17</Key>	
<Key mask="SA" key="F6">exec:d18</Key>
<Key mask="SA" key="F7">exec:d19</Key>
<Key mask="SA" key="F8">exec:d20</Key>
<Key mask="SA" key="F9">exec:d21</Key>	
<Key mask="SA" key="F10">exec:d22</Key>
<Key mask="SA" key="F11">exec:d23</Key>
<Key mask="SA" key="F12">exec:d24</Key>




<Key mask="SC" key="F1">exec:wmctrl -r :ACTIVE: -t0</Key>
<Key mask="SC" key="F2">exec:wmctrl -r :ACTIVE: -t1</Key>
<Key mask="SC" key="F3">exec:wmctrl -r :ACTIVE: -t2</Key>	
<Key mask="SC" key="F4">exec:wmctrl -r :ACTIVE: -t3</Key>	
<Key mask="SC" key="F5">exec:wmctrl -r :ACTIVE: -t4</Key>	
<Key mask="SC" key="F6">exec:wmctrl -r :ACTIVE: -t5</Key>
<Key mask="SC" key="F7">exec:wmctrl -r :ACTIVE: -t6</Key>
<Key mask="SC" key="F8">exec:wmctrl -r :ACTIVE: -t7</Key>
<Key mask="SC" key="F9">exec:wmctrl -r :ACTIVE: -t8</Key>	
<Key mask="SC" key="F10">exec:wmctrl -r :ACTIVE: -t9</Key>
<Key mask="SC" key="F11">exec:wmctrl -r :ACTIVE: -t10</Key>
<Key mask="SC" key="F12">exec:wmctrl -r :ACTIVE: -t11</Key>	
<Key mask="SAC" key="F1">exec:wmctrl -r :ACTIVE: -t12</Key>
<Key mask="SAC" key="F2">exec:wmctrl -r :ACTIVE: -t13</Key>
<Key mask="SAC" key="F3">exec:wmctrl -r :ACTIVE: -t14</Key>	
<Key mask="SAC" key="F4">exec:wmctrl -r :ACTIVE: -t15</Key>	
<Key mask="SAC" key="F5">exec:wmctrl -r :ACTIVE: -t16</Key>	
<Key mask="SAC" key="F6">exec:wmctrl -r :ACTIVE: -t17</Key>
<Key mask="SAC" key="F7">exec:wmctrl -r :ACTIVE: -t18</Key>
<Key mask="SAC" key="F8">exec:wmctrl -r :ACTIVE: -t19</Key>
<Key mask="SAC" key="F9">exec:wmctrl -r :ACTIVE: -t20</Key>	
<Key mask="SAC" key="F10">exec:wmctrl -r :ACTIVE: -t21</Key>
<Key mask="SAC" key="F11">exec:wmctrl -r :ACTIVE: -t22</Key>
<Key mask="SAC" key="F12">exec:wmctrl -r :ACTIVE: -t23</Key>





<Key mask="AC" key="m">move</Key>
<Key mask="AC" key="w">exec:window</Key>

<Key mask="AC" key="r">resize</Key>

<Key mask="AC" key="p">exec:/root/.Pup-Shots/.PupShots</Key>


<Key mask="AC" key="x">exec:xpad</Key>

<Key mask="AC" key="e">exec:mtpaint "/mnt/mmcblk0p2/Dropbox/small empty.png"</Key>
<Key mask="AC" key="d">exec:"/mnt/sda2/downloadsFFFsda2/GoldenDict 1.5.0-RC-154-gc7cc9e4-i386"</Key>
<Key mask="AC" key="n">exec:notecase /mnt/mmcblk0p2/Dropbox/ANCN/Scaffolding/ncdSCAFF01/ncdSCAFF01.ncd</Key>
<Key mask="AC" key="s">exec:sakura</Key>
<Key mask="AC" key="t">exec:rxvt</Key>

<Key mask="AC" key="b">exec:sd</Key>
<Key mask="AC" key="v">exec:partview</Key>
<Key mask="AC" key="u">exec:urxvt</Key>

<Key mask="AC" key="o">exec:libreoffice4.4 --writer /mnt/mmcblk0p2/Dropbox/ANCN/OOoODT1CLAMSILVER.odt /mnt/mmcblk0p2/Dropbox/ANCN/sc3.odt</Key>


<Key mask="SAC" key="d">showdesktop</Key>

<Key mask="SAC" key="c">exec:closeallrox</Key>
<Key mask="SAC" key="s">exec:s0a</Key>
<Key mask="SAC" key="r">exec:roxterm</Key>
<Key mask="SAC" key="m">move</Key>
<Key mask="SAC" key="p">exec:tas</Key>
<Key mask="SAC" key="w">window</Key>




<Key mask="A" key="1">root:1</Key>
<Key mask="A" key="2">root:2</Key>
<Key mask="A" key="3">root:3</Key>
<Key mask="A" key="4">root:4</Key>
<Key mask="A" key="5">root:5</Key>
<Key mask="A" key="6">root:6</Key>
<Key mask="A" key="7">root:</Key>
<Key mask="A" key="8">root:8</Key>
<Key mask="A" key="9">root:9</Key>
<Key mask="A" key="0">root:0</Key>

<Key mask="AC" key="1">exec:a1</Key>
<Key mask="AC" key="2">exec:a2</Key>
<Key mask="AC" key="3">exec:a3</Key>
<Key mask="AC" key="4">exec:a4</Key>
<Key mask="AC" key="5">exec:a5</Key>
<Key mask="AC" key="6">exec:a6</Key>
<Key mask="AC" key="7">exec:a7</Key>
<Key mask="AC" key="8">exec:a8</Key>
<Key mask="AC" key="9">exec:a9</Key>
<Key mask="AC" key="0">exec:a10</Key>

<Key mask="AS" key="1">exec:b1</Key>
<Key mask="AS" key="2">exec:b2</Key>
<Key mask="AS" key="3">exec:b3</Key>
<Key mask="AS" key="4">exec:b4</Key>
<Key mask="AS" key="5">exec:b5</Key>
<Key mask="AS" key="6">exec:b6</Key>
<Key mask="AS" key="7">exec:b7</Key>
<Key mask="AS" key="8">exec:b8</Key>
<Key mask="AS" key="9">exec:b9</Key>
<Key mask="AS" key="0">exec:b10</Key>



<Key mask="SC" key="1">exec:winswitcher</Key>
<Key mask="SC" key="2">exec:vgt</Key>
<Key mask="SC" key="3">exec:3but</Key>
<Key mask="SC" key="4">window</Key>
<Key mask="SC" key="5">move</Key>
<Key mask="SC" key="6">resize</Key>
<Key mask="SC" key="7">minimize</Key>
<Key mask="SC" key="8">maximize</Key>
<Key mask="SC" key="9">prev</Key>
<Key mask="SC" key="0">next</Key>	


<Key mask="SAC" key="1">exec:laa</Key>
<Key mask="SAC" key="2">exec:lma</Key>
<Key mask="SAC" key="3">exec:lba</Key>
<Key mask="SAC" key="4">exec:wmctrl -r :ACTIVE: -b add,sticky</Key>
<Key mask="SAC" key="5">exec:wmctrl -r :ACTIVE: -b remove,sticky</Key>
<Key mask="SAC" key="6">exec:wmctrl -r :ACTIVE: -b toggle,shaded</Key>
<Key mask="SAC" key="7">showdesktop</Key>
<Key mask="SAC" key="8">fullscreen</Key>
<Key mask="SAC" key="9">minimize</Key>
<Key mask="SAC" key="0">maximize</Key>




<Key mask="A" key="Tab">next</Key>
<Key mask="C" key="Tab">prev</Key>
<Key mask="AC" key="Tab">window</Key>
<Key mask="AS" key="Tab">exec:xdotool key alt+1 Down Return</Key>
<Key mask="CS" key="Tab">fullscreen</Key>
<Key mask="SAC" key="Tab">showdesktop</Key>


<Key mask="A" key="space">exec:rox</Key>
<Key mask="C" key="space">exec:winswitcher</Key>
<Key mask="S" key="space">exec:gexec</Key>
<Key mask="CA" key="space">exec:lxterminal</Key>
<Key mask="CS" key="space">exec:sd</Key>
<Key mask="AS" key="space">exec:rb</Key>
<Key mask="CAS" key="space">exec:closeallrox</Key>





<Key mask="A" key="Up">exec:supup</Key>
<Key mask="A" key="Down">exec:supdown</Key>
<Key mask="A" key="Right">exec:supright</Key>
<Key mask="A" key="Left">exec:supleft</Key>

<Key mask="AC" key="Up">exec:rb1</Key>
<Key mask="AC" key="Down">exec:sd</Key>
<Key mask="AC" key="Right">exec:rb</Key>
<Key mask="AC" key="Left">exec:rr</Key>

<Key mask="AS" key="Up">exec:xdotool click 2</Key>
<Key mask="AS" key="Down">showdesktop</Key>
<Key mask="AS" key="Right">exec:xdotool click 3</Key>
<Key mask="AS" key="Left">exec:xdotool click 1</Key>


<Key mask="SAC" key="Up">exec:xdotool mousemove_relative -- 0 -50</Key>
<Key mask="SAC" key="Down">exec:xdotool mousemove_relative -- 0 50</Key>
<Key mask="SAC" key="Right">exec:xdotool mousemove_relative -- 50 0</Key>
<Key mask="SAC" key="Left">exec:xdotool mousemove_relative -- -50 0</Key>


<Key mask="A" key="Escape">fullscreen</Key>
<Key mask="C" key="Escape">showdesktop</Key>
<Key mask="S" key="Escape">exec:3b</Key>
<Key mask="AC" key="Escape">exec:winswitcher</Key>
<Key mask="AS" key="Escape">exec:rox /usr/share/applications</Key>
<Key mask="CS" key="Escape">window</Key>   
<Key mask="SAC" key="Escape">exec:partview| rox /mnt</Key> 



      <Tray x="300" y="1">
      <Spacer width="1" height="1"/>
   </Tray>

   <Tray x="1" y="300">
      <Spacer width="1" height="1"/>
   </Tray>

   	<Group>
		<Name>roxterm</Name>
	<Option>sticky</Option>
		<Option>notitle</Option>
		<Option>noborder</Option>
	</Group>
	
<Group>
 <Name>xpad</Name>
 <Option>sticky</Option>
 </Group>
 
 <Group>
 <Name>libreoffice4.4 --writer</Name>
 <Option>sticky</Option>
 </Group>
 
 


</JWM>
here's the nwp and the single and double monitor submenus (comment out the appropriate one) that fit on it:

nwp:

Code: Select all

<JWM>
<Menu label="nwp" icon="" height="16">
<Program label="poetry" icon="">htmltemplatepref</Program>
<Program label="other" icon="">htmltxtwptemplate</Program>
<Program label="#!/bin/sh" icon="">scripttemplate</Program>
<Separator/>
<Program label="NWP/VGT help" icon="">geany /root/my-applications/bin/nwp.readme /root/my-applications/bin/vgt.readme</Program>
<Menu label="paste and place" icon="" height="16">
<Program label="Bold" icon="">swnwpb</Program>
<Program label="Italics" icon="">swnwpi</Program>
<Program label="Underline" icon="">swnwpu</Program>
<Program label="Subscript" icon="">swnwpsub</Program>
<Program label="Superscript" icon="">swnwpsup</Program>
<Program label="Strikethrough" icon="">swnwpstrk</Program>
<Program label="Big" icon="">swnwpbig</Program>
<Program label="Small" icon="">swnwpsm</Program>
<Program label="linebreak" icon="">linebreak</Program>
<Program label="comment" icon="">snwpcomment</Program>
<Separator/>
<Program label="preserved breaks and spaces" icon="">preotry</Program>
<Separator/>
<Program label="paragraph" icon="">paragraph</Program>
<Program label="parleft" icon="">parleft</Program>
<Program label="parright" icon="">parright</Program>
<Program label="parcenter" icon="">parcenter</Program>
<Program label="parjustify" icon="">parjustify</Program>
<Separator/>
<Program label="nwpbkmrk" icon="">nwpbkmrk</Program>
<Program label="blockquote" icon="">nwpblockquote</Program>
<Program label="quote" icon="">quote</Program>
<Separator/>
<Program label="heading1" icon="">snwph1</Program>
<Program label="heading2" icon="">snwph2</Program>
<Program label="heading3" icon="">snwph3</Program>
<Program label="heading4" icon="">snwph4</Program>
<Program label="heading5" icon="">snwph5</Program>
<Program label="heading6" icon="">snwph6</Program>
</Menu>
<Program label="get css codes" icon="">defaultbrowser http://www.w3schools.com/html/html_css.asp</Program>
<Separator/>
<Program label="5 copies template--directories">xdotool type 'for f in TTT{2..6} ; do cp -r TTT ; done'</Program>
<Program label="5 copies template">xdotool type 'for f in TTT{2..6}.txt ; do cp TTT.txt ; done'</Program>
<Separator/>
<Separator/>
<Menu label="highlight text then click to apply" icon="" height="16">
<Program label="preserved breaks and spaces" icon="">preformatted</Program>
<Program label="heading1" icon="">nwph1</Program>
<Program label="heading2" icon="">nwph2</Program>
<Program label="heading3" icon="">nwph3</Program>
<Program label="heading4" icon="">nwph4</Program>
<Program label="heading5" icon="">nwph5</Program>
<Program label="heading6" icon="">nwph6</Program>
<Separator/>
<Program label="comment" icon="">nwpcomment</Program>
<Program label="Bold" icon="">nwpb</Program>
<Program label="Italics" icon="">nwpi</Program>
<Program label="Underline" icon="">nwpu</Program>
<Program label="Subscript" icon="">nwpsub</Program>
<Program label="Superscript" icon="">nwpsup</Program>
<Program label="Strikethrough" icon="">nwpstrk</Program>
<Program label="Big" icon="">nwpbig</Program>
<Program label="Small" icon="">nwpsm</Program>
<Program label="paragraph" icon="">paragraphhl</Program>
<Program label="nwpleft" icon="">nwpleft</Program>
<Program label="nwpright" icon="">nwpright</Program>
<Program label="nwpcenter" icon="">nwpcenter</Program>
<Program label="nwpjustify" icon="">nwpjust</Program>
</Menu>
<Menu label="NWP supplemental" icon="" height="16">
<Program label="xpad--backup" icon="">xpad-backup</Program>
<Program label="xpad--clear" icon="">xpad-clear</Program>
<Program label="xpad" icon="">xpad</Program>
<Program label="geany" icon="">geany</Program>
<Program label="leafpad" icon="">leafpad</Program>
<Program label="Search_files_databases" icon="/usr/share/icons/sportsbag32-vert.png">/root/my-applications/SLocate/SrchFilesLst-01l.sh</Program>
<Program label="Update_files_databases" icon="/usr/share/icons/sportsbag32-vert.png">/root/my-applications/SLocate/MntFilesLst-01l.sh</Program>
<Program label="pfind" icon="">pfind</Program>
<Program label="recoll" icon="">recoll</Program>
<Program label="pm css" icon="">palemoon http://www.w3schools.com/html/html_css.asp</Program>
<Program label="ffdrive" icon="">firefox https://docs.google.com/document/u/0/</Program>
<Program label="pmdrive" icon="">palemoon https://docs.google.com/document/u/0/</Program>
<Program label="goldendict" icon="">goldendict</Program>
<Program label="gFnRenam" icon="">gfnrename</Program>
<Program label="gfontsel" icon="">gfontsel</Program>
<Program label="gcolor" icon="">gcolor2</Program>
<Program label="overview 1: mnt, partview, treesize" icon="">treesize| rox /mnt| partview</Program>
<Program label="overview2: lxtask, Pup Control" icon="">lxtask| PupControl</Program>
<Program label="hardinfo" icon="">hardinfo</Program>
</Menu>
<Menu label="menus submenu" icon="" height="16">
<Program label="VTG" icon="">vtg</Program>
<Program label="showdesktop" icon="" >xdotool key alt+shift+Down</Program>
<Program label="windows menu" icon="" >xdotool key alt+ctrl+shift+w</Program>
<Program label="winswitcher" icon="">winswitcher</Program>
<Include>/root/places_submenu</Include>
<Desktops></Desktops>
<Program label="r1" icon="" >xdotool key alt+1</Program>
<Program label="r2" icon="" >xdotool key alt+2</Program>
<Program label="r3" icon="" >xdotool key alt+3</Program>
<Program label="r4" icon="" >xdotool key alt+4</Program>
<Program label="r5" icon="" >xdotool key alt+5</Program>
<Program label="r6" icon="" >xdotool key alt+6</Program>
<Program label="r7" icon="" >xdotool key alt+7</Program>
<Program label="r8" icon="" >xdotool key alt+8</Program>
<Program label="r9" icon="" >xdotool key alt+9</Program>
<Program label="r0" icon="" >xdotool key alt+0</Program>
<Program label="3but" icon="">3but</Program>
<Menu label="jwm config switch" icon="" height="16">
<Program label="gjwm">gjwm</Program>
<Program label="my3">my3</Program>
<Program label="my30">my30</Program>
<Program label="my31">my31</Program>
<Program label="my32">my32</Program>
<Program label="my33">my33</Program>
<Program label="my34">my34</Program>
<Program label="my35">my35</Program>
<Program label="my36">my36</Program>
<Program label="my37">my37</Program>
<Program label="my38">my38</Program>
<Program label="my39">my39</Program>
<Program label="orig3">orig3</Program>
</Menu>
<Menu label="terminals and launchers" icon="" height="16">
<Program label="ROXTerm" icon="roxterm.xpm">roxterm</Program>
<Program label="lxterminal" icon="console.xpm">lxterm</Program>
<Program label="urxvt" icon="console.xpm">urxvt</Program>
<Program label="rxvt" icon="console.xpm">rxvt</Program>
<Program label="evilvte" icon="console.xpm">evilvte</Program>
<Program label="sakura" icon="console.xpm">sakura</Program>
<Program label="prun" icon="console.xpm">prun</Program>
<Program label="pupcontrol" icon="console.xpm">pcp</Program>
<Program label="grun" icon="console.xpm">grun</Program>
<Program label="gexec" icon="console.xpm">prun</Program>
<Program label="pexec" icon="console.xpm">pcp</Program>
<Program label="findnrun" icon="console.xpm">grun</Program>
<Program label="NWP/VGT help2" icon="">geany /root/my-applications/bin/nwp.readme /root/my-applications/bin/vgt.readme</Program>
<Program label="applications folder" icon="">rox /usr/share/applications</Program>
</Menu>
<Menu label="panels" icon="" height="16">
<Program label="p1">p1</Program>
<Program label="p2">p2</Program>
<Program label="p3">p3</Program>
<Program label="p4">p4</Program>
<Program label="p5">p5</Program>
<Program label="p6">p6</Program>
<Program label="p7">p7</Program>
<Program label="p8">p8</Program>
<Program label="p9">p9</Program>
</Menu>
<Menu label="pinboards" icon="" height="16">
<Program label="pp1">pp1</Program>
<Program label="pp2">pp2</Program>
<Program label="ppold">ppo</Program>
<Program label="pp3">pp3</Program>
<Program label="pp4">pp4</Program>
<Program label="pp5">pp5</Program>
<Program label="pp6">pp6</Program>
</Menu>
<Menu label="make bookmarks and launchables" icon="" height="16">
<Program label="template: list dir paths as txt" icon="">xdotool type 'find $PWD /root/my-applications/bin > /root/myapbin1; geany /root/myapbin1'</Program>
<Program label="template: list dir contents by name (all, w/ subdir)" icon="">xdotool type 'ls -a -R /usr/share/applications > /root/pupaps1; geany /root/pupaps1'</Program>
<Program label="template: list dir contents by name" icon="">xdotool type 'ls /usr/share/applications > /root/pupaps1; geany /root/pupaps1'</Program>
<Program label="to open with rox" icon="">rxmkr</Program>
<Program label="to open with geany" icon="">gmkr</Program>
<Program label="to open with leafpad" icon="">lpmkr</Program>
<Program label="to open with libreoffice--writer" icon="">lowmkr</Program>
<Program label="plain quotation marks around path" icon="">plainquotesmkr</Program>
<Program label="to open with firefox" icon="">ffmkr</Program>
<Program label="to open with palemoon" icon="">pmmkr</Program>
<Program label="to open with seamonkey " icon="">smmkr</Program>
<Program label="to open with mtpaint" icon="">mtmkr</Program>
<Program label="to open with viewnoir" icon="">vnmkr</Program>
<Program label="to open with vlc" icon="">vlcmkr</Program>
</Menu>
 <Menu label="Send To, Layer, Stick--SELECT"> 
 <Menu label="Send To">
 <Program label="1">wmctrl -r :SELECT: -t0</Program>
 <Program label="2">wmctrl -r :SELECT: -t1</Program>
 <Program label="3">wmctrl -r :SELECT: -t2</Program>
 <Program label="4">wmctrl -r :SELECT: -t3</Program>
 <Program label="5">wmctrl -r :SELECT: -t4</Program>
 <Program label="6">wmctrl -r :SELECT: -t5</Program>
 <Program label="7">wmctrl -r :SELECT: -t6</Program>
 <Program label="8">wmctrl -r :SELECT: -t7</Program>
 <Program label="9">wmctrl -r :SELECT: -t8</Program>
 <Program label="10">wmctrl -r :SELECT: -t9</Program>
 <Program label="11">wmctrl -r :SELECT: -t10</Program>
 <Program label="12">wmctrl -r :SELECT: -t11</Program>
 <Program label="13">wmctrl -r :SELECT: -t12</Program>
 <Program label="14">wmctrl -r :SELECT: -t13</Program>
 <Program label="15">wmctrl -r :SELECT: -t14</Program>
 <Program label="16">wmctrl -r :SELECT: -t15</Program>
 <Program label="17">wmctrl -r :SELECT: -t16</Program>
 <Program label="18">wmctrl -r :SELECT: -t17</Program>
 <Program label="19">wmctrl -r :SELECT: -t18</Program>
 <Program label="20">wmctrl -r :SELECT: -t19</Program>
 <Program label="21">wmctrl -r :SELECT: -t20</Program>
 <Program label="22">wmctrl -r :SELECT: -t21</Program>
 <Program label="23">wmctrl -r :SELECT: -t22</Program>
 <Program label="24">wmctrl -r :SELECT: -t23</Program>
 </Menu> 
 
 
 <Menu label="Layer">
 <Program label="below">wmctrl -r :SELECT: -b add,below</Program>
 <Program label="normal">wmctrl -r :SELECT: -b remove,above,below</Program>
 <Program label="above">wmctrl -r :SELECT: -b add,above</Program>
 </Menu>
 
<Program label="Stick/Unstick">wmctrl -r :SELECT: -b toggle,sticky</Program>
 <Program label="Stick">wmctrl -r :SELECT: -b add,sticky</Program>
 <Program label="Unstick">wmctrl -r :SELECT: -b remove,sticky</Program>
<Minimize/>
<Maximize/>
<Close/>
<Kill/>
</Menu>
<Menu label="Send To, Layer, Stick--ACTIVE" icon="" height="16">
<Program label="showdesktop" icon="" >xdotool key alt+shift+Down</Program>
<Program label="windows menu" icon="" >xdotool key alt+ctrl+shift+w</Program>
 <Menu label="Send To" icon="" height="16">
 <Program label="1">wmctrl -r :ACTIVE: -t0</Program>
 <Program label="2">wmctrl -r :ACTIVE: -t1</Program>
 <Program label="3">wmctrl -r :ACTIVE: -t2</Program>
 <Program label="4">wmctrl -r :ACTIVE: -t3</Program>
 <Program label="5">wmctrl -r :ACTIVE: -t4</Program>
 <Program label="6">wmctrl -r :ACTIVE: -t5</Program>
 <Program label="7">wmctrl -r :ACTIVE: -t6</Program>
 <Program label="8">wmctrl -r :ACTIVE: -t7</Program>
 <Program label="9">wmctrl -r :ACTIVE: -t8</Program>
 <Program label="10">wmctrl -r :ACTIVE: -t9</Program>
 <Program label="11">wmctrl -r :ACTIVE: -t10</Program>
 <Program label="12">wmctrl -r :ACTIVE: -t11</Program>
 <Program label="13">wmctrl -r :ACTIVE: -t12</Program>
 <Program label="14">wmctrl -r :ACTIVE: -t13</Program>
 <Program label="15">wmctrl -r :ACTIVE: -t14</Program>
 <Program label="16">wmctrl -r :ACTIVE: -t15</Program>
 <Program label="17">wmctrl -r :ACTIVE: -t16</Program>
 <Program label="18">wmctrl -r :ACTIVE: -t17</Program>
 <Program label="19">wmctrl -r :ACTIVE: -t18</Program>
 <Program label="20">wmctrl -r :ACTIVE: -t19</Program>
 <Program label="21">wmctrl -r :ACTIVE: -t20</Program>
 <Program label="22">wmctrl -r :ACTIVE: -t21</Program>
 <Program label="23">wmctrl -r :ACTIVE: -t22</Program>
 <Program label="24">wmctrl -r :ACTIVE: -t23</Program>
 
 <Program label="Stick/Unstick">wmctrl -r :ACTIVE: -b toggle,sticky</Program>
 </Menu> 
 <Program label="Stick">wmctrl -r :ACTIVE: -b add,sticky</Program>
 <Program label="Unstick">wmctrl -r :ACTIVE: -b remove,sticky</Program>
 
 <Menu label="Layer">
 <Program label="below">wmctrl -r :ACTIVE: -b add,below</Program>
 <Program label="normal">wmctrl -r :ACTIVE: -b remove,above,below</Program>
 <Program label="above">wmctrl -r :ACTIVE: -b add,above</Program>
 </Menu>
 </Menu>
</Menu>
<Program label="close all active instances of program" icon="">cadi</Program>
<Program label="close all current desktop's instances of program" icon="">ccdi</Program>
<Include>/root/singmon2</Include>
<!-- <Include>/root/singmon2</Include> -->
<!-- <Include>/root/dubmon2</Include> -->
<Program label="close all rox windows" icon="">rox -D /</Program>
</Menu>
</JWM>

User avatar
Puppus Dogfellow
Posts: 1667
Joined: Tue 08 Jan 2013, 01:39
Location: nyc

(updated) singmon and dubmon menus

#153 Post by Puppus Dogfellow »

dubmon:

Code: Select all

<JWM>

<Menu label="dub mon 2 Double Monitors Menu" icon="" height="16">
   <Menu label="for double monitors ACTIVE " icon="" height="16">

<Program label="upper left quadrant of left screen" icon="a1.png">a1</Program>
<Program label="upper right quadrant of left screen " icon="a2.png">a2</Program>
<Program label="lower left quadrant of left screen " icon="a3.png">a3</Program>
<Program label="lower right quadrant of left screen " icon="a4.png">a4</Program>
<Program label="quadrant-sized window placed at center of left screen " icon="a5.png">a5</Program>
 <Separator/>
<Program label="upper left quadrant of right screen" icon="a6.png">a6</Program>
<Program label="upper right quadrant of right screen" icon="a7.png">a7</Program>
<Program label="lower left quadrant of right screen " icon="a8.png">a8</Program>
<Program label="lower right quadrant of right screen" icon="a9.png">a9</Program>
<Program label="quadrant-sized window placed at center of right screen " icon="a10.png">a10</Program>
 <Separator/>
 
<Menu label="size and placement 2, active">
<Menu label="Left to Right" icon="" height="16">   
<Program label="x=0" icon="">x0a</Program>
<Program label="x=100" icon="">x100</Program>
<Program label="x=200" icon="">x200</Program>
<Program label="x=300" icon="">x300</Program>
<Program label="x=400" icon="">x400</Program>
<Program label="x=500" icon="">x500</Program>
<Program label="x=600" icon="">x600</Program>
<Program label="x=700" icon="">x700</Program>
<Program label="x=800" icon="">x800</Program>
<Program label="x=900" icon="">x900</Program>
<Menu label="more" icon="" height="16">
<Program label="x=1000" icon="">x1000</Program>
<Program label="x=1100" icon="">x1100</Program>
<Program label="x=1200" icon="">x1200</Program>
<Program label="x=1300" icon="">x1300</Program>
<Program label="x=1400" icon="">x1400</Program>
<Program label="x=1500" icon="">x1500</Program>
<Program label="x=1600" icon="">x1600</Program>
<Program label="x=1800" icon="">x1800</Program>
<Program label="x=2000" icon="">x2000</Program>
<Program label="x=2200" icon="">x2200</Program>
</Menu>
</Menu>
 
<Menu label="Top to Bottom" icon="" height="16">
<Program label="y=0" icon="">y0</Program>
<Program label="y=50" icon="">y50</Program>
<Program label="y=100" icon="">y100</Program>
<Program label="y=150" icon="">y150</Program>
<Program label="y=200" icon="">y200</Program>
<Program label="y=250" icon="">y250</Program>
<Program label="y=300" icon="">y300</Program>
<Program label="y=350" icon="">y350</Program>
<Program label="y=400" icon="">y400</Program>
<Program label="y=450" icon="">y450</Program>
<Menu label="more" icon="" height="16">
<Program label="y=550" icon="">y550</Program>
<Program label="y=650" icon="">y650</Program>
<Program label="y=750" icon="">y750</Program>
<Program label="y=850" icon="">y850</Program>
<Program label="y=950" icon="">y950</Program>
</Menu>
</Menu> 

 <Menu label="Square" icon="" height="16">
<Program label="250" icon="">250</Program>
<Program label="300" icon="">300</Program>
<Program label="350" icon="">350</Program>
<Program label="450" icon="">450</Program>
<Program label="500" icon="">500</Program>
<Program label="550" icon="">550</Program>
<Program label="650" icon="">650</Program>
<Program label="750" icon="">750</Program>
<Program label="850" icon="">850</Program>   
</Menu>
   
<Menu label="Landscape" icon="" height="16">
<Program label="w400h300" icon="">w400h300a</Program>
<Program label="w450h300" icon="">w450h300a</Program>
<Program label="w500h400" icon="">w500h400a</Program>
<Program label="w550h400" icon="">w550h400a</Program>
<Program label="w600h500" icon="">w600h500a</Program>
<Program label="w650h500" icon="">w650h500a</Program>
 </Menu> 
       
<Menu label="Portrait" icon="" height="16">
<Program label="w300h400" icon="">w300h400a</Program>
<Program label="w300h450" icon="">w300h450a</Program>
<Program label="w400h500" icon="">w400h500a</Program>
<Program label="w400h550" icon="">w400h550a</Program>
<Program label="w500h600" icon="">w500h600a</Program>
<Program label="w500h650" icon="">w500h650a</Program>
</Menu>
   
<Menu label="Window Size and Placement" icon="" height="16">
<Menu label="Left Side Placement" icon="" height="16">
<Program label="upper left /2" icon="">upl2a</Program>
<Program label="upper left /3" icon="">upl3a</Program>
<Program label="upper left /4" icon="">upl4a</Program>
<Program label="upper left /5" icon="">upl5a</Program>
<Program label="lower left /2" icon="">lwl2a</Program>
<Program label="lower left /3" icon="">lwl3a</Program>
<Program label="lower left /4" icon="">lwl4a</Program>
<Program label="lower left /5" icon="">lwl5a</Program>
</Menu>
<Menu label="Right Side Placement" icon="" height="16">
<Program label="upper right /2" icon="">upr2a</Program>
<Program label="upper right /3" icon="">upr3a</Program>
<Program label="upper right /4" icon="">upr4a</Program>
<Program label="upper right /5" icon="">upr5a</Program>
<Program label="lower right /2" icon="">lwr2a</Program>
<Program label="lower right /3" icon="">lwr3a</Program>
<Program label="lower right /4" icon="">lwr4a</Program>
<Program label="lower right /5" icon="">lwr5a</Program>
</Menu>

</Menu>
</Menu>

    <Separator/>
 
<Program label="left half of left screen" icon="b1.png">b1</Program>
<Program label="right half of left screen" icon="b2.png">b2</Program>
<Program label="top half of left screen" icon="b3.png">b3</Program>
<Program label="bottom half of left screen" icon="b4.png">b4</Program>
<Program label="full screen left " icon="b5.png">b5</Program>
 <Separator/>
<Program label="left half of right screen" icon="b6.png">b6</Program>
<Program label="right half of right screen" icon="b7.png">b7</Program>
<Program label="top half of right screen " icon="b8.png">b8</Program>
<Program label="bottom half of right screen" icon="b9.png">b9</Program>
<Program label="full screen right  " icon="b10.png">b10</Program>

<Menu label="Send To, Layer, Stick--ACTIVE" icon="" height="16">
 <Menu label="Send To" icon="" height="16">
   <Program label="1">wmctrl -r :ACTIVE: -t0</Program>
   <Program label="2">wmctrl -r :ACTIVE: -t1</Program>
      <Program label="3">wmctrl -r :ACTIVE: -t2</Program>
   <Program label="4">wmctrl -r :ACTIVE: -t3</Program>
      <Program label="5">wmctrl -r :ACTIVE: -t4</Program>
   <Program label="6">wmctrl -r :ACTIVE: -t5</Program>
      <Program label="7">wmctrl -r :ACTIVE: -t6</Program>
   <Program label="8">wmctrl -r :ACTIVE: -t7</Program>
      <Program label="9">wmctrl -r :ACTIVE: -t8</Program>
   <Program label="10">wmctrl -r :ACTIVE: -t9</Program>
         <Program label="11">wmctrl -r :ACTIVE: -t10</Program>
   <Program label="12">wmctrl -r :ACTIVE: -t11</Program>
      <Program label="13">wmctrl -r :ACTIVE: -t12</Program>
   <Program label="14">wmctrl -r :ACTIVE: -t13</Program>
      <Program label="15">wmctrl -r :ACTIVE: -t14</Program>
   <Program label="16">wmctrl -r :ACTIVE: -t15</Program>
      <Program label="17">wmctrl -r :ACTIVE: -t16</Program>
   <Program label="18">wmctrl -r :ACTIVE: -t17</Program>
      <Program label="19">wmctrl -r :ACTIVE: -t18</Program>
   <Program label="20">wmctrl -r :ACTIVE: -t19</Program>
   <Program label="21">wmctrl -r :ACTIVE: -t20</Program>
      <Program label="22">wmctrl -r :ACTIVE: -t21</Program>
   <Program label="23">wmctrl -r :ACTIVE: -t22</Program>
      <Program label="24">wmctrl -r :ACTIVE: -t23</Program>
   
    <Program label="Stick/Unstick">wmctrl -r :ACTIVE: -b toggle,sticky</Program>
 </Menu>   

 <Program label="Stick">wmctrl -r :ACTIVE: -b add,sticky</Program>
 <Program label="Unstick">wmctrl -r :ACTIVE: -b remove,sticky</Program>
 
 <Menu label="Layer">
   <Program label="below">wmctrl -r :ACTIVE: -b add,below</Program>
   <Program label="normal">wmctrl -r :ACTIVE: -b remove,above,below</Program>
   <Program label="above">wmctrl -r :ACTIVE: -b add,above</Program>
 </Menu>

 </Menu>
</Menu>
   
   
   
<Menu label="for double monitors: SELECT (crosshairs) version" icon="" height="16">

<Program label="upper left quadrant of left screen" icon="as1.png">as1</Program>
<Program label="upper right quadrant of left screen " icon="as2.png">as2</Program>
<Program label="lower left quadrant of left screen " icon="as3.png">as3</Program>
<Program label="lower right quadrant of left screen " icon="as4.png">as4</Program>
<Program label="quadrant-sized window placed at center of left screen " icon="as5.png">as5</Program>
   <Separator/>
<Program label="upper left quadrant of right screen" icon="as6.png">as6</Program>
<Program label="upper right quadrant of right screen" icon="as7.png">as7</Program>
<Program label="lower left quadrant of right screen " icon="as8.png">as8</Program>
<Program label="lower right quadrant of right screen" icon="as9.png">as9</Program>
<Program label="quadrant-sized window placed at center of right screen " icon="as10.png">as10</Program>
   <Separator/>
   
   
   
<Menu label="size and placement 2, select">



<Menu label="Left to Right" icon="" height="16">   
<Program label="x=0" icon="">x0</Program>
<Program label="x=100" icon="">x100s</Program>
<Program label="x=200" icon="">x200s</Program>
<Program label="x=300" icon="">x300s</Program>
<Program label="x=400" icon="">x400s</Program>
<Program label="x=500" icon="">x500s</Program>
<Program label="x=600" icon="">x600s</Program>
<Program label="x=700" icon="">x700s</Program>
<Program label="x=800" icon="">x800s</Program>
<Program label="x=900" icon="">x900s</Program>
<Menu label="more" icon="" height="16">
<Program label="x=1000" icon="">x1000s</Program>
<Program label="x=1100" icon="">x1100s</Program>
<Program label="x=1200" icon="">x1200s</Program>
<Program label="x=1300" icon="">x1300s</Program>
<Program label="x=1400" icon="">x1400s</Program>
<Program label="x=1500" icon="">x1500s</Program>
<Program label="x=1600" icon="">x1600s</Program>
<Program label="x=1800" icon="">x1800s</Program>
<Program label="x=2000" icon="">x2000s</Program>
<Program label="x=2200" icon="">x2200s</Program>
</Menu>
</Menu>
 
<Menu label="Top to Bottom" icon="" height="16">
<Program label="y=0" icon="">y0s</Program>
<Program label="y=50" icon="">y50s</Program>
<Program label="y=100" icon="">y100s</Program>
<Program label="y=150" icon="">y150s</Program>
<Program label="y=200" icon="">y200s</Program>
<Program label="y=250" icon="">y250s</Program>
<Program label="y=300" icon="">y300s</Program>
<Program label="y=350" icon="">y350s</Program>
<Program label="y=400" icon="">y400s</Program>
<Program label="y=450" icon="">y450s</Program>
<Menu label="more" icon="" height="16">
<Program label="y=550" icon="">y550s</Program>
<Program label="y=650" icon="">y650s</Program>
<Program label="y=750" icon="">y750s</Program>
<Program label="y=850" icon="">y850s</Program>
<Program label="y=950" icon="">y950s</Program>
</Menu>
</Menu> 

 <Menu label="Square" icon="" height="16">
<Program label="250" icon="">250s</Program>
<Program label="300" icon="">300s</Program>
<Program label="350" icon="">350s</Program>
<Program label="450" icon="">450s</Program>
<Program label="500" icon="">500s</Program>
<Program label="550" icon="">550s</Program>
<Program label="650" icon="">650s</Program>
<Program label="750" icon="">750s</Program>
<Program label="850" icon="">850s</Program>   
</Menu>
   
<Menu label="Landscape" icon="" height="16">
<Program label="w400h300" icon="">w400h300</Program>
<Program label="w450h300" icon="">w450h300</Program>
<Program label="w500h400" icon="">w500h400</Program>
<Program label="w550h400" icon="">w550h400</Program>
<Program label="w600h500" icon="">w600h500</Program>
<Program label="w650h500" icon="">w650h500</Program>
 </Menu> 
       
<Menu label="Portrait" icon="" height="16">
<Program label="w300h400" icon="">w300h400</Program>
<Program label="w300h450" icon="">w300h450</Program>
<Program label="w400h500" icon="">w400h500</Program>
<Program label="w400h550" icon="">w400h550</Program>
<Program label="w500h600" icon="">w500h600</Program>
<Program label="w500h650" icon="">w500h650</Program>
</Menu>
   
<Menu label="Window Size and Placement" icon="" height="16">
<Menu label="Left Side Placement" icon="" height="16">
<Program label="upper left /2" icon="">upl2</Program>
<Program label="upper left /3" icon="">upl3</Program>
<Program label="upper left /4" icon="">upl4</Program>
<Program label="upper left /5" icon="">upl5</Program>
<Program label="lower left /2" icon="">lwl2</Program>
<Program label="lower left /3" icon="">lwl3</Program>
<Program label="lower left /4" icon="">lwl4</Program>
<Program label="lower left /5" icon="">lwl5</Program>
</Menu>
<Menu label="Right Side Placement" icon="" height="16">
<Program label="upper right /2" icon="">upr2</Program>
<Program label="upper right /3" icon="">upr3</Program>
<Program label="upper right /4" icon="">upr4</Program>
<Program label="upper right /5" icon="">upr5</Program>
<Program label="lower right /2" icon="">lwr2</Program>
<Program label="lower right /3" icon="">lwr3</Program>
<Program label="lower right /4" icon="">lwr4</Program>
<Program label="lower right /5" icon="">lwr5</Program>
</Menu>   
<Separator/>

</Menu>
</Menu>
<Program label="left half of left screen" icon="bs1.png">bs1</Program>
<Program label="right half of left screen" icon="bs2.png">bs2</Program>
<Program label="top half of left screen" icon="bs3.png">bs3</Program>
<Program label="bottom half of left screen" icon="bs4.png">bs4</Program>
<Program label="full screen left " icon="bs5.png">bs5</Program>
   <Separator/>
<Program label="left half of right screen " icon="bs6.png">bs6</Program>
<Program label="right half of right screen" icon="bs7.png">bs7</Program>
<Program label="top half of right screen " icon="bs8.png">bs8</Program>
<Program label="bottom half of right screen" icon="bs9.png">bs9</Program>
<Program label="full screen right  " icon="bs10.png">bs10</Program>


 <Menu label="Send To, Layer, Stick--SELECT">   
 <Menu label="Send To">
   <Program label="1">wmctrl -r :SELECT: -t0</Program>
   <Program label="2">wmctrl -r :SELECT: -t1</Program>
    <Program label="3">wmctrl -r :SELECT: -t2</Program>
    <Program label="4">wmctrl -r :SELECT: -t3</Program>
    <Program label="5">wmctrl -r :SELECT: -t4</Program>
    <Program label="6">wmctrl -r :SELECT: -t5</Program>
     <Program label="7">wmctrl -r :SELECT: -t6</Program>
    <Program label="8">wmctrl -r :SELECT: -t7</Program>
    <Program label="9">wmctrl -r :SELECT: -t8</Program>
     <Program label="10">wmctrl -r :SELECT: -t9</Program>
      <Program label="11">wmctrl -r :SELECT: -t10</Program>
   <Program label="12">wmctrl -r :SELECT: -t11</Program>
    <Program label="13">wmctrl -r :SELECT: -t12</Program>
    <Program label="14">wmctrl -r :SELECT: -t13</Program>
    <Program label="15">wmctrl -r :SELECT: -t14</Program>
    <Program label="16">wmctrl -r :SELECT: -t15</Program>
     <Program label="17">wmctrl -r :SELECT: -t16</Program>
    <Program label="18">wmctrl -r :SELECT: -t17</Program>
    <Program label="19">wmctrl -r :SELECT: -t18</Program>
     <Program label="20">wmctrl -r :SELECT: -t19</Program>
         <Program label="21">wmctrl -r :SELECT: -t20</Program>
    <Program label="22">wmctrl -r :SELECT: -t21</Program>
    <Program label="23">wmctrl -r :SELECT: -t22</Program>
     <Program label="24">wmctrl -r :SELECT: -t23</Program>
  </Menu>   
     
   
      <Menu label="Layer">
   <Program label="below">wmctrl -r :SELECT: -b add,below</Program>
   <Program label="normal">wmctrl -r :SELECT: -b remove,above,below</Program>
   <Program label="above">wmctrl -r :SELECT: -b add,above</Program>
 </Menu>
 
<Program label="Stick/Unstick">wmctrl -r :SELECT: -b toggle,sticky</Program>
 <Program label="Stick">wmctrl -r :SELECT: -b add,sticky</Program>
 <Program label="Unstick">wmctrl -r :SELECT: -b remove,sticky</Program>

<Minimize/>
<Maximize/>
<Close/>
<Kill/>
</Menu>


</Menu>
</JWM>




singmon:

Code: Select all


	
<JWM>
<Menu label="Single Monitor Menu (alt version)" icon="" height="16">
<Menu label="for single monitors :ACTIVE:" icon="" height="16">
<Program label="top half" icon="tha.png">tophalf2</Program>
<Program label="bottom half" icon="bha.png">bottomhalf2</Program>
<Program label="left half" icon="lha.png">lefthalf2</Program>
<Program label="right half" icon="rha.png">righthalf2</Program>
<Program label="full" icon="fulla.png">fulla</Program>
<Separator/>


<Menu label="size and placement 2, active">
<Menu label="Left to Right" icon="" height="16">
<Program label="x=0" icon="">x0</Program>
<Program label="x=100" icon="">x100</Program>
<Program label="x=200" icon="">x200</Program>
<Program label="x=300" icon="">x300</Program>
<Program label="x=400" icon="">x400</Program>
<Program label="x=500" icon="">x500</Program>
<Program label="x=600" icon="">x600</Program>
<Program label="x=700" icon="">x700</Program>
<Program label="x=800" icon="">x800</Program>
<Program label="x=900" icon="">x900</Program>
<Menu label="more" icon="" height="16">
<Program label="x=1000" icon="">x1000</Program>
<Program label="x=1100" icon="">x1100</Program>
<Program label="x=1200" icon="">x1200</Program>
<Program label="x=1300" icon="">x1300</Program>
<Program label="x=1400" icon="">x1400</Program>
<Program label="x=1500" icon="">x1500</Program>
<Program label="x=1600" icon="">x1600</Program>
<Program label="x=1800" icon="">x1800</Program>
<Program label="x=2000" icon="">x2000</Program>
<Program label="x=2200" icon="">x2200</Program>
</Menu>
</Menu>

<Menu label="Top to Bottom" icon="" height="16">
<Program label="y=0" icon="">y0</Program>
<Program label="y=50" icon="">y50</Program>
<Program label="y=100" icon="">y100</Program>
<Program label="y=150" icon="">y150</Program>
<Program label="y=200" icon="">y200</Program>
<Program label="y=250" icon="">y250</Program>
<Program label="y=300" icon="">y300</Program>
<Program label="y=350" icon="">y350</Program>
<Program label="y=400" icon="">y400</Program>
<Program label="y=450" icon="">y450</Program>
<Menu label="more" icon="" height="16">
<Program label="y=550" icon="">y550</Program>
<Program label="y=650" icon="">y650</Program>
<Program label="y=750" icon="">y750</Program>
<Program label="y=850" icon="">y850</Program>
<Program label="y=950" icon="">y950</Program>
</Menu>
</Menu>

<Menu label="Square" icon="" height="16">
<Program label="250" icon="">250</Program>
<Program label="300" icon="">300</Program>
<Program label="350" icon="">350</Program>
<Program label="450" icon="">450</Program>
<Program label="500" icon="">500</Program>
<Program label="550" icon="">550</Program>
<Program label="650" icon="">650</Program>
<Program label="750" icon="">750</Program>
<Program label="850" icon="">850</Program>
</Menu>

<Menu label="Landscape" icon="" height="16">
<Program label="w400h300" icon="">w400h300a</Program>
<Program label="w450h300" icon="">w450h300a</Program>
<Program label="w500h400" icon="">w500h400a</Program>
<Program label="w550h400" icon="">w550h400a</Program>
<Program label="w600h500" icon="">w600h500a</Program>
<Program label="w650h500" icon="">w650h500a</Program>
</Menu>

<Menu label="Portrait" icon="" height="16">
<Program label="w300h400" icon="">w300h400a</Program>
<Program label="w300h450" icon="">w300h450a</Program>
<Program label="w400h500" icon="">w400h500a</Program>
<Program label="w400h550" icon="">w400h550a</Program>
<Program label="w500h600" icon="">w500h600a</Program>
<Program label="w500h650" icon="">w500h650a</Program>
</Menu>

<Menu label="Window Size and Placement" icon="" height="16">
<Menu label="Left Side Placement" icon="" height="16">
<Program label="upper left /2" icon="">upl2a</Program>
<Program label="upper left /3" icon="">upl3a</Program>
<Program label="upper left /4" icon="">upl4a</Program>
<Program label="upper left /5" icon="">upl5a</Program>
<Program label="lower left /2" icon="">lwl2a</Program>
<Program label="lower left /3" icon="">lwl3a</Program>
<Program label="lower left /4" icon="">lwl4a</Program>
<Program label="lower left /5" icon="">lwl5a</Program>
</Menu>
<Menu label="Right Side Placement" icon="" height="16">
<Program label="upper right /2" icon="">upr2a</Program>
<Program label="upper right /3" icon="">upr3a</Program>
<Program label="upper right /4" icon="">upr4a</Program>
<Program label="upper right /5" icon="">upr5a</Program>
<Program label="lower right /2" icon="">lwr2a</Program>
<Program label="lower right /3" icon="">lwr3a</Program>
<Program label="lower right /4" icon="">lwr4a</Program>
<Program label="lower right /5" icon="">lwr5a</Program>
</Menu>

</Menu>
</Menu>
<Separator/>


<Program label="upper left quadrant" icon="ul.png">upperleftquadrant2</Program>
<Program label="upper right quadrant" icon="ur.png">upperrightquadrant2</Program>
<Program label="lower left quadrant" icon="ll.png">lowerleftquadrant2</Program>
<Program label="lower right quadrant" icon="lr.png">lowerrightquadrant2</Program>
<Program label="centered" icon="c.png">lp5a</Program>




<Menu label="Send To, Layer, Stick--ACTIVE" icon="" height="16">
<Menu label="Send To" icon="" height="16">
<Program label="1">wmctrl -r :ACTIVE: -t0</Program>
<Program label="2">wmctrl -r :ACTIVE: -t1</Program>
<Program label="3">wmctrl -r :ACTIVE: -t2</Program>
<Program label="4">wmctrl -r :ACTIVE: -t3</Program>
<Program label="5">wmctrl -r :ACTIVE: -t4</Program>
<Program label="6">wmctrl -r :ACTIVE: -t5</Program>
<Program label="7">wmctrl -r :ACTIVE: -t6</Program>
<Program label="8">wmctrl -r :ACTIVE: -t7</Program>
<Program label="9">wmctrl -r :ACTIVE: -t8</Program>
<Program label="10">wmctrl -r :ACTIVE: -t9</Program>
<Program label="11">wmctrl -r :ACTIVE: -t10</Program>
<Program label="12">wmctrl -r :ACTIVE: -t11</Program>
<Program label="13">wmctrl -r :ACTIVE: -t12</Program>
<Program label="14">wmctrl -r :ACTIVE: -t13</Program>
<Program label="15">wmctrl -r :ACTIVE: -t14</Program>
<Program label="16">wmctrl -r :ACTIVE: -t15</Program>
<Program label="17">wmctrl -r :ACTIVE: -t16</Program>
<Program label="18">wmctrl -r :ACTIVE: -t17</Program>
<Program label="19">wmctrl -r :ACTIVE: -t18</Program>
<Program label="20">wmctrl -r :ACTIVE: -t19</Program>
<Program label="21">wmctrl -r :ACTIVE: -t20</Program>
<Program label="22">wmctrl -r :ACTIVE: -t21</Program>
<Program label="23">wmctrl -r :ACTIVE: -t22</Program>
<Program label="24">wmctrl -r :ACTIVE: -t23</Program>

<Program label="Stick/Unstick">wmctrl -r :ACTIVE: -b toggle,sticky</Program>
</Menu>

<Program label="Stick">wmctrl -r :ACTIVE: -b add,sticky</Program>
<Program label="Unstick">wmctrl -r :ACTIVE: -b remove,sticky</Program>

<Menu label="Layer">
<Program label="below">wmctrl -r :ACTIVE: -b add,below</Program>
<Program label="normal">wmctrl -r :ACTIVE: -b remove,above,below</Program>
<Program label="above">wmctrl -r :ACTIVE: -b add,above</Program>
</Menu>

</Menu>




</Menu>

<Menu label="for single monitors :SELECT:" icon="" height="16">
<Program label="top half" icon="th.png">tophalf</Program>
<Program label="bottom half" icon="bh.png">bottomhalf</Program>
<Program label="left half" icon="lh.png">lefthalf</Program>
<Program label="right half" icon="rh.png">righthalf</Program>
<Program label="full" icon="fulls.png">fulls</Program>

<Separator/>

<Menu label="size and placement 2, select">



<Menu label="Left to Right" icon="" height="16">
<Program label="x=0" icon="">x0s</Program>
<Program label="x=100" icon="">x100s</Program>
<Program label="x=200" icon="">x200s</Program>
<Program label="x=300" icon="">x300s</Program>
<Program label="x=400" icon="">x400s</Program>
<Program label="x=500" icon="">x500s</Program>
<Program label="x=600" icon="">x600s</Program>
<Program label="x=700" icon="">x700s</Program>
<Program label="x=800" icon="">x800s</Program>
<Program label="x=900" icon="">x900s</Program>
<Menu label="more" icon="" height="16">
<Program label="x=1000" icon="">x1000s</Program>
<Program label="x=1100" icon="">x1100s</Program>
<Program label="x=1200" icon="">x1200s</Program>
<Program label="x=1300" icon="">x1300s</Program>
<Program label="x=1400" icon="">x1400s</Program>
<Program label="x=1500" icon="">x1500s</Program>
<Program label="x=1600" icon="">x1600s</Program>
<Program label="x=1800" icon="">x1800s</Program>
<Program label="x=2000" icon="">x2000s</Program>
<Program label="x=2200" icon="">x2200s</Program>
</Menu>
</Menu>

<Menu label="Top to Bottom" icon="" height="16">
<Program label="y=0" icon="">y0s</Program>
<Program label="y=50" icon="">y50s</Program>
<Program label="y=100" icon="">y100s</Program>
<Program label="y=150" icon="">y150s</Program>
<Program label="y=200" icon="">y200s</Program>
<Program label="y=250" icon="">y250s</Program>
<Program label="y=300" icon="">y300s</Program>
<Program label="y=350" icon="">y350s</Program>
<Program label="y=400" icon="">y400s</Program>
<Program label="y=450" icon="">y450s</Program>
<Menu label="more" icon="" height="16">
<Program label="y=550" icon="">y550s</Program>
<Program label="y=650" icon="">y650s</Program>
<Program label="y=750" icon="">y750s</Program>
<Program label="y=850" icon="">y850s</Program>
<Program label="y=950" icon="">y950s</Program>
</Menu>
</Menu>

<Menu label="Square" icon="" height="16">
<Program label="250" icon="">250s</Program>
<Program label="300" icon="">300s</Program>
<Program label="350" icon="">350s</Program>
<Program label="450" icon="">450s</Program>
<Program label="500" icon="">500s</Program>
<Program label="550" icon="">550s</Program>
<Program label="650" icon="">650s</Program>
<Program label="750" icon="">750s</Program>
<Program label="850" icon="">850s</Program>
</Menu>

<Menu label="Landscape" icon="" height="16">
<Program label="w400h300" icon="">w400h300</Program>
<Program label="w450h300" icon="">w450h300</Program>
<Program label="w500h400" icon="">w500h400</Program>
<Program label="w550h400" icon="">w550h400</Program>
<Program label="w600h500" icon="">w600h500</Program>
<Program label="w650h500" icon="">w650h500</Program>
</Menu>

<Menu label="Portrait" icon="" height="16">
<Program label="w300h400" icon="">w300h400</Program>
<Program label="w300h450" icon="">w300h450</Program>
<Program label="w400h500" icon="">w400h500</Program>
<Program label="w400h550" icon="">w400h550</Program>
<Program label="w500h600" icon="">w500h600</Program>
<Program label="w500h650" icon="">w500h650</Program>
</Menu>

<Menu label="Window Size and Placement" icon="" height="16">
<Menu label="Left Side Placement" icon="" height="16">
<Program label="upper left /2" icon="">upl2</Program>
<Program label="upper left /3" icon="">upl3</Program>
<Program label="upper left /4" icon="">upl4</Program>
<Program label="upper left /5" icon="">upl5</Program>
<Program label="lower left /2" icon="">lwl2</Program>
<Program label="lower left /3" icon="">lwl3</Program>
<Program label="lower left /4" icon="">lwl4</Program>
<Program label="lower left /5" icon="">lwl5</Program>
</Menu>
<Menu label="Right Side Placement" icon="" height="16">
<Program label="upper right /2" icon="">upr2</Program>
<Program label="upper right /3" icon="">upr3</Program>
<Program label="upper right /4" icon="">upr4</Program>
<Program label="upper right /5" icon="">upr5</Program>
<Program label="lower right /2" icon="">lwr2</Program>
<Program label="lower right /3" icon="">lwr3</Program>
<Program label="lower right /4" icon="">lwr4</Program>
<Program label="lower right /5" icon="">lwr5</Program>
</Menu>
</Menu>


<Separator/>

</Menu>
<Program label="upper left quadrant" icon="uls.png">upperleftquadrant</Program>
<Program label="upper right quadrant" icon="urs.png">upperrightquadrant</Program>
<Program label="lower left quadrant" icon="lls.png">lowerleftquadrant</Program>
<Program label="lower right quadrant" icon="lrs.png">lowerrightquadrant</Program>
<Program label="centered" icon="cs.png">lp5</Program>



<Menu label="Send To, Layer, Stick--SELECT">
<Menu label="Send To">
<Program label="1">wmctrl -r :SELECT: -t0</Program>
<Program label="2">wmctrl -r :SELECT: -t1</Program>
<Program label="3">wmctrl -r :SELECT: -t2</Program>
<Program label="4">wmctrl -r :SELECT: -t3</Program>
<Program label="5">wmctrl -r :SELECT: -t4</Program>
<Program label="6">wmctrl -r :SELECT: -t5</Program>
<Program label="7">wmctrl -r :SELECT: -t6</Program>
<Program label="8">wmctrl -r :SELECT: -t7</Program>
<Program label="9">wmctrl -r :SELECT: -t8</Program>
<Program label="10">wmctrl -r :SELECT: -t9</Program>
<Program label="11">wmctrl -r :SELECT: -t10</Program>
<Program label="12">wmctrl -r :SELECT: -t11</Program>
<Program label="13">wmctrl -r :SELECT: -t12</Program>
<Program label="14">wmctrl -r :SELECT: -t13</Program>
<Program label="15">wmctrl -r :SELECT: -t14</Program>
<Program label="16">wmctrl -r :SELECT: -t15</Program>
<Program label="17">wmctrl -r :SELECT: -t16</Program>
<Program label="18">wmctrl -r :SELECT: -t17</Program>
<Program label="19">wmctrl -r :SELECT: -t18</Program>
<Program label="20">wmctrl -r :SELECT: -t19</Program>
<Program label="21">wmctrl -r :SELECT: -t20</Program>
<Program label="22">wmctrl -r :SELECT: -t21</Program>
<Program label="23">wmctrl -r :SELECT: -t22</Program>
<Program label="24">wmctrl -r :SELECT: -t23</Program>
</Menu>


<Menu label="Layer">
<Program label="below">wmctrl -r :SELECT: -b add,below</Program>
<Program label="normal">wmctrl -r :SELECT: -b remove,above,below</Program>
<Program label="above">wmctrl -r :SELECT: -b add,above</Program>
</Menu>

<Program label="Stick/Unstick">wmctrl -r :SELECT: -b toggle,sticky</Program>
<Program label="Stick">wmctrl -r :SELECT: -b add,sticky</Program>
<Program label="Unstick">wmctrl -r :SELECT: -b remove,sticky</Program>

<Minimize/>
<Maximize/>
<Close/>
<Kill/>
</Menu>





</Menu>
</JWM>

User avatar
Puppus Dogfellow
Posts: 1667
Joined: Tue 08 Jan 2013, 01:39
Location: nyc

single monitor setup's jwmrc-personal

#154 Post by Puppus Dogfellow »

dash-0.5.6.pet, which is required by pexec-001.pet.

gexec-0.4-pup1.pet

wmctrl-1.07-6_i386.pet

(check your package manager if you need the 64 bit wmctrl).

xdotool-2.20110530.1-3.pet

xdotool-2.20110530.1-3.1.2.x86_64.rpm

____

single monitor setup jwmrc-personal. vgt, ten menus, etc:

Code: Select all

<!-- Personally configurable options for JWM: these override default settings and theme settings -->

<JWM>
<!--<Include>/root/trayv67</Include>-->
<Include>/root/topright</Include>	
<!--<Include>/root/vtray2</Include>-->
<Include>/root/vtray1</Include>
<!--<Include>/root/topmid</Include>-->
<!--<Include>/root/topleft</Include>-->
<Include>/root/trayv6</Include>
<Include>/root/root0menu</Include>
<Include>/root/root1menu</Include>
<Include>/root/root2menu</Include>
<Include>/root/root4menu</Include>
<Include>/root/root5menu</Include>
<Include>/root/root6menu</Include>
<Include>/root/root7menu</Include>
<Include>/root/root8menu</Include>
<Include>/root/root9menu</Include>

<!-- <TrayButton label="1">root:1</TrayButton> -->
<!-- <TrayButton label="2">root:2</TrayButton> -->
<!-- <TrayButton label="4">root:4</TrayButton> -->
<!-- <TrayButton label="5">root:5</TrayButton> -->
<!-- <TrayButton label="6">root:6</TrayButton> -->
<!-- <TrayButton label="7">root:7</TrayButton> -->
<!-- <TrayButton label="8">root:8</TrayButton> -->
<!-- <TrayButton label="9">root:9</TrayButton> -->
<!-- <TrayButton label="0">root:0</TrayButton> --> 
<Key mask="CA" key="r">exec:prun</Key>

<Group>
     <Name>urxvt</Name>
        <Option>noborder</Option> 
        <Option>notitle</Option>
		<Option>sticky</Option>
    </Group>
    
  <Group>

     <Name>libreoffice4.3 --writer </Name>

		<Option>sticky</Option>
    </Group>  
    
  <Group>
     <Name>geany</Name>
         
       
		<Option>sticky</Option>
    </Group>     
    



<!-- Number of virtual desktops -->
<Desktops width="13" height="2"/>

<!-- Double click speed (in milliseconds) -->
<DoubleClickSpeed>400</DoubleClickSpeed>

<!-- Double click delta (in pixels) -->
<DoubleClickDelta>3</DoubleClickDelta>

<!-- The focus model (sloppy or click) -->
<FocusModel>click</FocusModel>

<!-- The snap mode (none, screen, or border) -->
<SnapMode distance="10">none</SnapMode>

<!-- The move mode (outline or opaque) -->
<MoveMode>outline</MoveMode>

<!-- The resize mode (outline or opaque) -->
<ResizeMode>outline</ResizeMode>

<WindowStyle>
  <Height>16</Height>
</WindowStyle>

<!-- Key bindings -->
<Key key="F1">window</Key>
<Key key="F2">exec:xdotool key alt+1 Down Return</Key>
<Key mask="A" key="z">exec:xdotool key alt+1 Down Return</Key> 
<Key mask="AC" key="z">exec:geany /usr/share/applications/aplist /root/.jwm/jwmrc-personal</Key> 
<Key key="F3">exec:geany /root/.jwm/jwmrc-personal /usr/share/applications/aplist</Key>
<Key key="Up">up</Key>
<Key key="Down">down</Key>
<Key key="Right">right</Key>
<Key key="Left">left</Key>
<Key key="h">left</Key>
<Key key="j">down</Key>
<Key key="k">up</Key>
<Key key="l">right</Key>
<Key key="Return">select</Key>
<Key key="Escape">escape</Key>	
<Key key="F12">root:3</Key>
<Key mask="A" key="BackSpace">exec:xdotool key alt+1 Down Return</Key>	
<Key mask="C" key="Tab">prev</Key>
<Key mask="A" key="Tab">next</Key>
<Key mask="A" key="F4">close</Key>

<Key mask="A" key="F1">root:3</Key>
<Key mask="SAC" key="w">window</Key>
<Key mask="A" key="F3">root:1</Key>
<Key mask="AC" key="w">window</Key>
<Key mask="S" key="F2">root:2</Key>
<Key mask="S" key="F1">showdesktop</Key>


 <Key mask="AC" key="r">resize</Key>
 <Key mask="AC" key="m">move</Key>
  <Key mask="SAC" key="r">resize</Key>
 <Key mask="SAC" key="m">move</Key>
 
 
 
<Key mask="C" key="F12">exec:lp25</Key
<Key mask="C" key="F11">exec:lp24</Key>
<Key mask="C" key="F10">exec:lp23</Key>
<Key mask="C" key="F9">exec:lp22</Key
<Key mask="C" key="F8">exec:lp21</Key>
<Key mask="C" key="F7">exec:righthalf2</Key>
<Key mask="C" key="F6">exec:lefthalf2</Key
<Key mask="C" key="F5">exec:bottomhalf2</Key>
<Key mask="C" key="F4">exec:tophalf2</Key>
<Key mask="C" key="F3">exec:sakura</Key
<Key mask="C" key="F2">exec:cr</Key>
<Key mask="C" key="F1">exec:3but</Key>
<Key mask="4" key="p">exec:partview</Key>
<Key mask="4" key="v">exec:xdotool key alt+1 Down Return</Key>

<Key mask="A" key="Escape">showdesktop</Key>
<Key mask="C" key="Escape">window</Key>
<Key mask="S" key="Escape">exec:xdotool key alt+1 Down Return</Key>
<Key mask="AC" key="Escape">root:6</Key>
<Key mask="AS" key="Escape">root:7</Key>
<Key mask="CS" key="Escape">root:8</Key>   
<Key mask="SAC" key="Escape">root:9</Key> 

<Key keycode="160">exec:amixer sset Master toggle</Key>
<Key keycode="176">exec:amixer sset Master 1+,1+</Key>
<Key keycode="174">exec:amixer sset Master 1-,1-</Key>
<Key keycode="178">exec:defaultbrowser</Key>
<Key keycode="236">exec:defaultbrowser</Key>
<Key keycode="111">exec:defaultscreenshot</Key>

<Key mask="A" key="Up">exec:supup</Key>
<Key mask="A" key="Down">exec:supdown</Key>
<Key mask="A" key="Right">exec:supright</Key>
<Key mask="A" key="Left">exec:supleft</Key> 

<Key mask="AC" key="Up">maximize</Key>
<Key mask="AC" key="Down">minimize</Key>
<Key mask="AC" key="Right">next</Key>
<Key mask="AC" key="Left">prev</Key> 

<Key mask="CAS" key="Up">fullscreen</Key>
<Key mask="CAS" key="Down">showdesktop</Key>
<Key mask="CAS" key="Right">resize</Key>
<Key mask="CAS" key="Left">move</Key> 

<Key mask="SA" key="Up">exec:xdotool mousemove_relative -- 0 -10</Key>
<Key mask="SA" key="Down">exec:xdotool mousemove_relative -- 0 10</Key>
<Key mask="SA" key="Right">exec:xdotool mousemove_relative -- 10 0</Key>
<Key mask="SA" key="Left">exec:xdotool mousemove_relative -- -10 0</Key> 


<Key mask="A" key="1">root:1</Key>
<Key mask="A" key="2">root:2</Key>
<Key mask="A" key="3">root:3</Key>
<Key mask="A" key="4">root:4</Key>
<Key mask="A" key="5">root:5</Key>
<Key mask="A" key="6">root:6</Key>
<Key mask="A" key="7">root:7</Key>
<Key mask="A" key="8">root:8</Key>
<Key mask="A" key="9">root:9</Key>
<Key mask="A" key="0">root:0</Key>



<Key mask="SA" key="1">exec:cr</Key>
<Key mask="SA" key="2">exec:sakura</Key>
<Key mask="SA" key="3">exec:3but</Key>
<Key mask="SA" key="4">exec:lma</Key>
<Key mask="SA" key="5">exec:laa</Key>
<Key mask="SA" key="6">exec:lba</Key>
<Key mask="SA" key="7">exec:ccdi</Key>
<Key mask="SA" key="8">close</Key>
<Key mask="SA" key="9">exec:kill</Key>
<Key mask="SA" key="0">exec:cadi</Key>


<Key mask="SC" key="1">exec:lefthalf2</Key>
<Key mask="SC" key="2">exec:righthalf2</Key>
<Key mask="SC" key="3">exec:tophalf2</Key>
<Key mask="SC" key="4">exec:bottomhalf2</Key>
<Key mask="SC" key="5">exec:fulla</Key>
<Key mask="SC" key="6">exec:lp21</Key>
<Key mask="SC" key="7">exec:lp22</Key>
<Key mask="SC" key="8">exec:lp23</Key>
<Key mask="SC" key="9">exec:lp24</Key>
<Key mask="SC" key="0">exec:lp25</Key>



<Key mask="SAC" key="1">exec:wmctrl -r :ACTIVE: -t0</Key>
<Key mask="SAC" key="2">exec:wmctrl -r :ACTIVE: -t1</Key>
<Key mask="SAC" key="3">exec:wmctrl -r :ACTIVE: -t2</Key>
<Key mask="SAC" key="4">exec:wmctrl -r :ACTIVE: -t3</Key>
<Key mask="SAC" key="5">exec:wmctrl -r :ACTIVE: -t4</Key>
<Key mask="SAC" key="6">exec:wmctrl -r :ACTIVE: -t5</Key>
<Key mask="SAC" key="7">exec:wmctrl -r :ACTIVE: -t6</Key>
<Key mask="SAC" key="8">exec:wmctrl -r :ACTIVE: -t7</Key>
<Key mask="SAC" key="9">exec:wmctrl -r :ACTIVE: -t8</Key>
<Key mask="SAC" key="0">exec:wmctrl -r :ACTIVE: -t9</Key>

#sendto d#



<Key key="h">left</Key>
<Key key="j">down</Key>
<Key key="k">up</Key>
<Key key="l">right</Key>

<Key mask="A" key="h">prev</Key>
<Key mask="A" key="j">next</Key>
<Key mask="A" key="k">move</Key>
<Key mask="A" key="l">resize</Key>

<Key mask="SC" key="h">exec:cr</Key>
<Key mask="SC" key="j">exec:winswitcher</Key>
<Key mask="SC" key="k">maximize</Key>
<Key mask="SC" key="l">minimize</Key>

<!-- exec:wmctrl -r :ACTIVE: -b add,sticky-->
<Key mask="AC" key="h">window</Key>
<Key mask="AC" key="j">exec:gexec</Key>
<Key mask="AC" key="k">showdesktop</Key>
<Key mask="AC" key="l">exec:leafpad</Key>


<Key mask="SA" key="h">exec:ccdi</Key>
<Key mask="SA" key="j">close</Key>
<Key mask="SA" key="k">exec:kill</Key>
<Key mask="SA" key="l">exec:cadi</Key>



<Key mask="SAC" key="h">fullscreen</Key>
<Key mask="SAC" key="j">exec:3but</Key>
<Key mask="SAC" key="k">maximize</Key>
<Key mask="SAC" key="l">minimize</Key> 



<Key mask="A" key="space">exec:rox</Key>
<Key mask="C" key="space">exec:winswitcher</Key>
<Key mask="S" key="space">exec:gexec</Key>
<Key mask="CA" key="space">window</Key>
<Key mask="CS" key="space">exec:sakura</Key>
<Key mask="AS" key="space">exec:closeallrox</Key>



<ButtonClose>/usr/share/pixmaps/close.png</ButtonClose>
<ButtonMax>/usr/share/pixmaps/max.png</ButtonMax>
<ButtonMaxActive>/usr/share/pixmaps/maxact.png</ButtonMaxActive>
<ButtonMin>/usr/share/pixmaps/min.png</ButtonMin>

   <Tray x="200" y="1">
      <Spacer width="1" height="1"/>
   </Tray>
#t



   <Tray x="1" y="200">
      <Spacer width="1" height="1"/>
   </Tray>
#l

   <Tray x="-1" y="200">
      <Spacer width="1" height="1"/>
   </Tray>
   #r

<!--<Tray x="200" y="-27">-->
 <!--      <Spacer width="1" height="1"/>-->
 <!--   </Tray> -->
#d


   <Tray x="200" y="-1">
      <Spacer width="1" height="1"/>
   </Tray>
#d

</JWM>
final :roll:/ :wink: / :? jwm tweak pack shortly after i get the trays and extra menus together/sorted out. change the personal files,menus, keys, scripts the keys and menus point to continually it seems. i spend an awful lot of time thinking of ways to save time...

:P

User avatar
greengeek
Posts: 5789
Joined: Tue 20 Jul 2010, 09:34
Location: Republic of Novo Zelande

#155 Post by greengeek »

I feel lost when I read your recent posts :-) I wish I could keep up with them but sadly my brain is too small. Anyhow, I keep watching them because something in my head tells me that your methods will help spawn some way that use of a mouse could be replaced by variations on mouseclicks represented by a finger press on a touchscreen.

Android works because a single touch on the screen is interpreted in more ways than a simple left click, and I feel that there may be some way to use your methods to make puppy interpret a leftclick as much more than just a leftclick - which I consider the major barrier to using touchsceens in puppy.

In my mind I see some method where a press on a touchscreen would trigger a script that would then interpret the next press as an 'argument' by which the first press would be defined (almost like the "NextClick" menu that appears when you rightclick the open space in a directory). Maybe the second press could be above, below, or to left or right of the first click and thereby trigger a selection of menus or functions depending on direction. (First tap = location, second tap = function etc etc).

It would be a new concept in driving a touchscreen without needing multitouch detection - and it could apply to mouse use aswell.

Maybe I'm not expressing this clearly, but oh well, never mind. I shouldn't be on the keyboard when I'm this tired :)
Time for bed...

Post Reply