Add A JWM Bookmarks Menu or Submenu/Messing Around With JWM
- Puppus Dogfellow
- Posts: 1667
- Joined: Tue 08 Jan 2013, 01:39
- Location: nyc
a winning solution for rox bookmarks on the JWM menu
for any who've been following this thread, or for any new to it, MochiMoppel's second script atop the previous page beautifully and simply adds a bookmarks menu to your existing JWM menu. easiest way to implement it is probably to just change the "/path/to/places_submenu" part of it to "/root/places_submenu".
copy the script to a leafpad or geany document, name it mbm or something similarly brief, and put it in a bin folder of some sort or another. right click it to change permissions (if text is not already green). you can then activate it again (to update the list should you modify your existing bookmarks in some way) by typing that brevity into a terminal and pressing enter, or by simply clicking on it. i gave my copy a little icon after dragging it to the desktop. it's unobtrusive and updates the list in the amount of time it takes to move from a left click on the file to a right click off of it (on blank desktop real estate).
helpful hint: mtpaint can make invisible icons. you can set one up in a corner or between your drive icons for this purpose.
here's a template for an invisible icon, which you can doodle up and resize if you like.
copy the script to a leafpad or geany document, name it mbm or something similarly brief, and put it in a bin folder of some sort or another. right click it to change permissions (if text is not already green). you can then activate it again (to update the list should you modify your existing bookmarks in some way) by typing that brevity into a terminal and pressing enter, or by simply clicking on it. i gave my copy a little icon after dragging it to the desktop. it's unobtrusive and updates the list in the amount of time it takes to move from a left click on the file to a right click off of it (on blank desktop real estate).
helpful hint: mtpaint can make invisible icons. you can set one up in a corner or between your drive icons for this purpose.
here's a template for an invisible icon, which you can doodle up and resize if you like.
- MochiMoppel
- Posts: 2084
- Joined: Wed 26 Jan 2011, 09:06
- Location: Japan
The King of Keyboard Shortcuts using desktop icons? But you are right: There has to be something on the desktop with all these directory icons gone...
You can also put the shortcut into be "Places" submenu. Might come handy when the desktop icon is buried under a pile of open windows.
Just add one line to the script:
s|</bookmark>|"</Program>\n|g
s|\(<Program label[^>]*>\)|\1rox "|g
s|</Menu>|<Separator/>\n<Program label="Refresh me!" icon="mini-turn.xpm">\"'$(realpath $0)'\"</Program>\n</Menu>|
' > "$MENUPATH"
jwm -reload
The line replaces the </Menu> tag with 2 new menu items ( a separator line and a <Program..../Program> part which links to the script ), then reattaches the </Menu> tag. The $(realpath $0) stuff will be replaced by the script with its own path. You don't have to change anything here.
If everything went well and you named your script mbm, the resulting file /root/places_submenu would look like this:
You can also put the shortcut into be "Places" submenu. Might come handy when the desktop icon is buried under a pile of open windows.
Just add one line to the script:
s|</bookmark>|"</Program>\n|g
s|\(<Program label[^>]*>\)|\1rox "|g
s|</Menu>|<Separator/>\n<Program label="Refresh me!" icon="mini-turn.xpm">\"'$(realpath $0)'\"</Program>\n</Menu>|
' > "$MENUPATH"
jwm -reload
The line replaces the </Menu> tag with 2 new menu items ( a separator line and a <Program..../Program> part which links to the script ), then reattaches the </Menu> tag. The $(realpath $0) stuff will be replaced by the script with its own path. You don't have to change anything here.
If everything went well and you named your script mbm, the resulting file /root/places_submenu would look like this:
Code: Select all
<?xml version="1.0"?>
<JWM>
<Menu label="Places" icon="/usr/local/PupControl/icons/gtkicons20.png">
<Program label="/usr/share">rox "/usr/share"</Program>
<Program label="/usr/local">rox "/usr/local"</Program>
<Program label="/usr/local/bin">rox "/usr/local/bin"</Program>
<Separator/>
<Program label="Refresh me!" icon="mini-turn.xpm">"/usr/bin/mbm"</Program>
</Menu>
</JWM>
- Attachments
-
- places_submenu_refresh.png
- (12.73 KiB) Downloaded 608 times
- Puppus Dogfellow
- Posts: 1667
- Joined: Tue 08 Jan 2013, 01:39
- Location: nyc
Nice tweak, Mochi, and a better and more elegant solution than the desktop icon, i must say. as to the shortcut king title and its implications and practicality--alt+space bar (/mnt and the rox bookmarks pull down itself) and F2 (disciple's script) both get me into already updated lists in their own ways so i saw no need to make this into a two step affair--it seemed to defeat the purpose somewhat, though i suppose the updating could be done on the fly and at one's leisure, or in lieu or augmentation of tapping one's fingers, etc.MochiMoppel wrote:The King of Keyboard Shortcuts using desktop icons? But you are right: There has to be something on the desktop with all these directory icons gone...
You can also put the shortcut into be "Places" submenu. Might come handy when the desktop icon is buried under a pile of open windows.
Just add one line to the script:
s|</bookmark>|"</Program>\n|g
s|\(<Program label[^>]*>\)|\1rox "|g
s|</Menu>|<Separator/>\n<Program label="Refresh me!" icon="mini-turn.xpm">"'$(realpath $0)'"</Program>\n</Menu>|
' > "$MENUPATH"
jwm -reload
The line replaces the </Menu> tag with 2 new menu items ( a separator line and a <Program..../Program> part which links to the script ), then reattaches the </Menu> tag. The $(realpath $0) stuff will be replaced by the script with its own path. You don't have to change anything here.
If everything went well and you named your script mbm, the resulting file /root/places_submenu would look like this:Code: Select all
<?xml version="1.0"?> <JWM> <Menu label="Places" icon="/usr/local/PupControl/icons/gtkicons20.png"> <Program label="/usr/share">rox "/usr/share"</Program> <Program label="/usr/local">rox "/usr/local"</Program> <Program label="/usr/local/bin">rox "/usr/local/bin"</Program> <Separator/> <Program label="Refresh me!" icon="mini-turn.xpm">"/usr/bin/mbm"</Program> </Menu> </JWM>
nicely integrated and pleasant to look at, and also a convenient reminder. as usual, well done, Mochi.
[just tried it out. works well of course. and yes, just copy and paste that line and the program line with the accurate location and title is automatically added... amazing.]
- MochiMoppel
- Posts: 2084
- Joined: Wed 26 Jan 2011, 09:06
- Location: Japan
Not sure if I understand you correctly. It always is a two step affair. Running the update script is always a separate process which needs to be done before you can enjoy an up-to-date menu. I don't see which purpose is defeated. Unfortunately JWM's methods to show menus can't be combined with bash commands, so there is no way to update the menu on-the-fly - only one reason why I would never use any of above MochiMoppel scriptsPuppus Dogfellow wrote:alt+space bar (/mnt and the rox bookmarks pull down itself) and F2 (disciple's script) both get me into already updated lists in their own ways so i saw no need to make this into a two step affair--it seemed to defeat the purpose somewhat
- Puppus Dogfellow
- Posts: 1667
- Joined: Tue 08 Jan 2013, 01:39
- Location: nyc
MochiMoppel wrote:Not sure if I understand you correctly. It always is a two step affair. Running the update script is always a separate process which needs to be done before you can enjoy an up-to-date menu. I don't see which purpose is defeated. Unfortunately JWM's methods to show menus can't be combined with bash commands, so there is no way to update the menu on-the-fly - only one reason why I would never use above MochiMoppel scriptsPuppus Dogfellow wrote:alt+space bar (/mnt and the rox bookmarks pull down itself) and F2 (disciple's script) both get me into already updated lists in their own ways so i saw no need to make this into a two step affair--it seemed to defeat the purpose somewhat
I meant to make a shortcut key to update the list is an extra step from an updated list for me because i already have a key that gives me an updated list; it's not using the JWM menu to do it, but it contains a pop up with the same bookmarks, so to have a key update when i could just press the key to get there would eventually--regardless of my enthusiasm for the way the menu has been improved--lead me to wonder why i didn't just click the button that took me to an updated list. if i didn't have keys set up to get me to the filer windows or the gtk box with the combined gtk and rox bookmarks, i would without hesitation make the update script a key. i'm backing off on the keys for a bit because i'm trying to think of a core ten or twenty i could consistently use on all my machines and maybe that had something to do with my response. trying to not have the keys step on the toes of existing or embedded shortcuts, and trying to figure out which i really need and sort out the relative ease of access and ergonomics based on some sort of "logical" hierarchy has apparently distracted me from just doling out shortcuts. at least for the time being.
just ran jwm -p and man are my menus messed up. i should've listened to you, Mochi. new installs will have less foolishness.
as far as i'm concerned, there's no reason in the world not to use your script. if jwm had come with it in the first place, there's no way i would have spent even a second trying to find out how to improve the menu-bookmark integration situation, though i'm glad to have what i've found and learned from the journey.
how would i go about changing the location of the "Refresh me!" in the menu itself? manually moving it about in the menu file didn't seem to do it and i'm hesitant to touch the script itself. (though the bottom is really only an arrow press from the top, it's a long list and i think i'd rather have it at the top position. top quarter, anyway.)
once again, thank you, MochiMoppel.
- Puppus Dogfellow
- Posts: 1667
- Joined: Tue 08 Jan 2013, 01:39
- Location: nyc
Mochi, since the editing of the list is done through Rox, maybe the JWM reflection of that should be done through Rox as well. Could you modify the the top of the Rox bookmarks menu itself (the part with Add, Edit, and Recent separated from the rest) to include something like "Update The JWM Places"? Or even a button on that toolbar, since there's always room for it. It would get rid of the last (JWM) flaw regarding this--you're there clicking about anyway when you do the updating/editing, and this way the list is already taken care of for the next time you need it.
whatcha think?
the flaw is certainly not with your scripts, and this would give the illusion (or in practicality, make it true) that the scripts have been updated on the fly. any perceived clunkiness or lag would be eradicated this way, i think.MochiMoppel wrote:
Unfortunately JWM's methods to show menus can't be combined with bash commands, so there is no way to update the menu on-the-fly - only one reason why I would never use above MochiMoppel scripts Embarassed
whatcha think?
- MochiMoppel
- Posts: 2084
- Joined: Wed 26 Jan 2011, 09:06
- Location: Japan
If you are running out of key combinations you could run both scripts with one shortcut, the one for disciple's script. Not neat, but doesn't hurt either:
<Key key="F2">exec:mbm;bm</Key>
As for" Refresh me!" on top try this:
s|\(<Program label[^>]*>\)|\1rox "|g
0,/<Program/s||<Program label="Refresh me!" icon="mini-turn.xpm">\"'$(realpath $0)'\"</Program>\n<Separator/>\n<Program|
' > "$MENUPATH"
<Key key="F2">exec:mbm;bm</Key>
As for" Refresh me!" on top try this:
s|\(<Program label[^>]*>\)|\1rox "|g
0,/<Program/s||<Program label="Refresh me!" icon="mini-turn.xpm">\"'$(realpath $0)'\"</Program>\n<Separator/>\n<Program|
' > "$MENUPATH"
- Puppus Dogfellow
- Posts: 1667
- Joined: Tue 08 Jan 2013, 01:39
- Location: nyc
good thing about being a noob is all the cool simple stuff you learn--semicolons rock! (i had no idea you could do that. very cool).MochiMoppel wrote:If you are running out of key combinations you could run both scripts with one shortcut, the one for disciple's script. Not neat, but doesn't hurt either:
<Key key="F2">exec:mbm;bm</Key>
As for" Refresh me!" on top try this:
s|\(<Program label[^>]*>\)|\1rox "|g
0,/<Program/s||<Program label="Refresh me!" icon="mini-turn.xpm">"'$(realpath $0)'"</Program>\n<Separator/>\n<Program|
' > "$MENUPATH"
will try the alternate location after a nap. i'm falling over.
also, i have no doubt it will work so it's not like there's any suspense or anything.
[edit five minutes later because i couldn't resist: does in fact/of course work].
[couple of days later i end up adding ";mbm" to three or four keys i use fairly frequently]
- Puppus Dogfellow
- Posts: 1667
- Joined: Tue 08 Jan 2013, 01:39
- Location: nyc
the following uses Rox to accomplish much of what this thread sought to do through JWM:
more atthis thread, but the idea is you get an on-off button for a speed dial screen that surrounds your working area. scripts, files, folders, programs--whatever you want to drag there. the script (or multiple versions of it for different sets of panels) can be added to the main JWM menu, the taskbar, the desktop, or, as a convenient way to shut off the panels, the panels themselves (though for most, one button added to one panel'll probably suffice). lots of real estate to fill with new shortcuts, including (as in my example screenshot at the link) programs and scripts which are themselves shortcuts.
name the script something short like "p1" and drag it to a bin folder and p1 entered into a terminal will open that set of panels/close that set of panels.
etc.
Code: Select all
#!/bin/sh
ROXCONF="/root/.config/rox.sourceforge.net/ROX-Filer"
[ "`grep left $ROXCONF/panels`" ] && rox -l= || rox -l=left
[ "`grep right $ROXCONF/panels`" ] && rox -r= || rox -r=right
[ "`grep top $ROXCONF/panels`" ] && rox -t= || rox -t=top
[ "`grep bottom $ROXCONF/panels`" ] && rox -b= || rox -b=bottom
# comment out (place a # before) line(s) to make it a 3, 2, or 1 panel toggle.
# rename the script and the text after "grep" (matching the latter to
# the text after each line's second equals sign) to have alternate
# sets of (1-4) panels as toggles.
#(thanks to musher0 for the base code and cleanup)
name the script something short like "p1" and drag it to a bin folder and p1 entered into a terminal will open that set of panels/close that set of panels.
etc.
- Puppus Dogfellow
- Posts: 1667
- Joined: Tue 08 Jan 2013, 01:39
- Location: nyc
Puppy Panel Pack
Puppy_Panel_Pack.tar.gz
an easy way to get a menu of six four panel toggles is to unpack the above gz. and move the Puppy Panel Pack folder into root. then add:
to your [custom].jwmrc or /etc/xdg/templates/_root_.jwmrc and restart JWM.
(default panels except for the toggle panel (P5) script entry)
****
helpful hint:
you can use
around the block of code in /etc/xdg/templates/_root_.jwmrc that looks like this:
to squash as much of the original puppy menu as you like down into one line. (personally i divide it in two: shutdown remains out, everything else goes inside. i place the "original puppy menu" inside the panel pack menu, and place the desktop switcher slot between those entries so that the pointer can just continue to cut across. this leaves plenty of room for future additions and, after some reasonably careful consideration, is the way i would recommend to begin messing around with JWM.)
an easy way to get a menu of six four panel toggles is to unpack the above gz. and move the Puppy Panel Pack folder into root. then add:
Code: Select all
<Menu label="Puppy Panel Pack" icon="/root/Puppy Panel Pack/pnls.png" height="16">
<Program label="4p" icon="/root/Puppy Panel Pack/panel icons/awlp.png" >"/root/Puppy Panel Pack/awlpnels"</Program>
<Program label="p1" icon="/root/Puppy Panel Pack/panel icons/p1.png" >"/root/Puppy Panel Pack/p1"</Program>
<Program label="p2" icon="/root/Puppy Panel Pack/panel icons/p2.png" >"/root/Puppy Panel Pack/p2"</Program>
<Program label="p3" icon="/root/Puppy Panel Pack/panel icons/p3.png" >"/root/Puppy Panel Pack/p3"</Program>
<Program label="p4" icon="/root/Puppy Panel Pack/panel icons/p4.png" >"/root/Puppy Panel Pack/p4"</Program>
<Program label="p5" icon="/root/Puppy Panel Pack/panel icons/p5.png" >"/root/Puppy Panel Pack/p5"</Program>
</Menu>
(default panels except for the toggle panel (P5) script entry)
****
helpful hint:
you can use
Code: Select all
<Menu label="original puppy menu" icon="" height="16">
</Menu>
Code: Select all
PUPPYMENU jwm-xdgmenu /etc/xdg/menus/puppy-desktop.menu
PUPPYMENU jwm-xdgmenu /etc/xdg/menus/puppy-system.menu
PUPPYMENU jwm-xdgmenu /etc/xdg/menus/puppy-setup.menu
- Puppus Dogfellow
- Posts: 1667
- Joined: Tue 08 Jan 2013, 01:39
- Location: nyc
Puppy Panel Pack
the above gz file (160k unpacked) contains wmctrl.pet, bm.sh, cadi, ccdi, closeallrox,mbm, mmrx3, MRUD-lst.sh, six sets of panel toggles, and an explanatory text, "for the menu":
because it just makes sense to me to have access to each of them without having to hunt out a corner of the desktop.
the blank menu would function and give four slots: one dead, one labeled "Desktops" and giving you a pipe menu to access yours, one a duplicate result of the ROX bookmarks on the JWM Menu script, and one a terminal window (pretty useful and perhaps should be on the main real estate of the menu's initial popup phase). use the functioning entry as a guide, fill in, duplicate, embed, ...copy stuff from .jwmrc....
or just drag stuff to the panels. give a slot to a text file to open up the secret to the shortcut keys you can only remember when you change them less frequently...
edit: forgot to include the dependencies for mrud: replaceit-1.0.0.pet and aemenu-1.2.12.pet
the above gz file (160k unpacked) contains wmctrl.pet, bm.sh, cadi, ccdi, closeallrox,mbm, mmrx3, MRUD-lst.sh, six sets of panel toggles, and an explanatory text, "for the menu":
this gives you disciple's bookmarks script, musher0's recently used documents script, and the following by MochiMoppel: close all active instances (of a given program on all desktops), close all active instances (current desktop), close all rox (everywhere), rox bookmarks on the JWM menu, and Rox speed dial. my own panel scripts (based on musher0's code) are also included. i added oneunpack zip and move the Puppy Panel Pack folder to /root and then just copy the following text to your custom.jwmrc or (preferred) /etc/xdg/templates/_root_.jwmrc to get the menu entries for the panel toggles. click on the wmcrl pet and the mbm script, run fixmenus and restart jwm. for a condensed menu with more room for later additions, either enclose all the PUPPYMENU type stuff in between
<Menu label="original puppy menu" icon="" height="16">
and
</Menu>
or move the text entries themselves in between
<Menu label="Puppy Panel Pack" icon="/root/Puppy Panel Pack/pnls.png" height="16">
and
</Menu>
and/or between
<Menu label="Shutdown" icon="shutdown24.png" height="16">
and
</Menu>
[you can also move the entire menu if encapsulated with the new "...original...menu.../menu> entry...]
.....
the following will give you the programs in their own menu with the applications folder as the first entry--you get programs and files and a template you can change...
llllllllllllstart of menu pastablelllllllllll
<Program label="applications" icon="/root/puppy-reference/midi-icons/folder48.png">rox "/usr/share/applications"</Program>
<Menu label="Puppy Panel Pack" icon="/root/Puppy Panel Pack/pnls.png" height="16">
<Include>/root/places_submenu</Include>
<Program label="4p" icon="/root/Puppy Panel Pack/panel icons/awlp.png" >"/root/Puppy Panel Pack/awlpnels"</Program>
<Program label="p1" icon="/root/Puppy Panel Pack/panel icons/p1.png" >"/root/Puppy Panel Pack/p1"</Program>
<Desktops label="Desktops"> </Desktops>
<Program label="p2" icon="/root/Puppy Panel Pack/panel icons/p2.png" >"/root/Puppy Panel Pack/p2"</Program>
<Program label="Puppy Panel Pack" icon="/root/Puppy Panel Pack/pnls.png">rox "/root/Puppy Panel Pack"</Program>
<Program label="close all rox" icon="/root/Puppy Panel Pack/progicons/crx.png" >"/root/Puppy Panel Pack/closeallrox"</Program>
<Program label="rox and gtk bookmarks" icon="/root/Puppy Panel Pack/progicons/bookmarks.png" >"/root/Puppy Panel Pack/bm.sh"</Program>
<Program label="recent documents" icon="/root/Puppy Panel Pack/progicons/mudicon.png" >"/root/Puppy Panel Pack/MRUD-lst.sh"</Program>
<Program label="Rox Speed Dial" icon="/root/Puppy Panel Pack/progicons/mmr3icn.png" >"/root/Puppy Panel Pack/mmrx3"</Program>
<Program label="Close All on Current" icon="/root/Puppy Panel Pack/progicons/ccdi.png" >"/root/Puppy Panel Pack/ccdi"</Program>
<Program label="Close All on All" icon="/root/Puppy Panel Pack/progicons/cadi.png" >"/root/Puppy Panel Pack/cadi"</Program>
<Program label="p3" icon="/root/Puppy Panel Pack/panel icons/p3.png" >"/root/Puppy Panel Pack/p3"</Program>
<Program label="p4" icon="/root/Puppy Panel Pack/panel icons/p4.png" >"/root/Puppy Panel Pack/p4"</Program>
<Program label="p5" icon="/root/Puppy Panel Pack/panel icons/p5.png" >"/root/Puppy Panel Pack/p5"</Program>
</Menu>
lllllllllllllllend menu pastablellllllllllllll
i recommend dragging the panel scripts to their respective panels and/or dragging the pup panel pack folder to one (you can access the other panel sets or close the current one very easily that way). MochiMoppel's Close scripts work well off the panels, menus, and desktop, but cannot be run from their containing rox folder or terminal (will just close down those windows).
move around the entries, substitute other programs or icons, use .jwmrc for entries you can easily copy and paste into new shortcut and favorites menus.
have fun...
Code: Select all
<Desktops label="Desktops"> </Desktops>
Code: Select all
reminder/templates for menu use:
<Menu label="" icon="" height="16">
<Program label="" icon="" >""</Program>
<Desktops label="Desktops"> </Desktops>
<Include>/root/places_submenu</Include>
<Program label="Urxvt terminal emulator" icon="mini-sh.xpm">urxvt</Program>
</Menu>
or just drag stuff to the panels. give a slot to a text file to open up the secret to the shortcut keys you can only remember when you change them less frequently...
edit: forgot to include the dependencies for mrud: replaceit-1.0.0.pet and aemenu-1.2.12.pet
Last edited by Puppus Dogfellow on Sun 29 Jun 2014, 06:44, edited 1 time in total.
- Puppus Dogfellow
- Posts: 1667
- Joined: Tue 08 Jan 2013, 01:39
- Location: nyc
the windows menu on the main menu
if you have wmctrl installed, you can place the windows menu on your main menu with:
[you need to put in all ten desktops (or the max you think you'll ever use) for Send To even if you've got only two. this way you're covered in the event you go as high as ten--it doesn't auto detect the amount. not at the moment at least.]
the commands Move, Minimize, Resize, and Maximize (maybe others, but these are confirmed to work; SendTo/Send To is confirmed not to) can also be bound to shortcut keys. for example,
.
the built in windows menu is Alt + F2; main menu can be accessed with F12 or Alt + F1.
Code: Select all
<Menu label="windows menu">
<Move/>
<Resize/>
<Desktops/>
<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>
</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>
<Minimize/>
<Maximize/>
<Close/>
<Kill/>
</Menu>
the commands Move, Minimize, Resize, and Maximize (maybe others, but these are confirmed to work; SendTo/Send To is confirmed not to) can also be bound to shortcut keys. for example,
Code: Select all
<Key mask="A" key="m">move</Key>
the built in windows menu is Alt + F2; main menu can be accessed with F12 or Alt + F1.
- Puppus Dogfellow
- Posts: 1667
- Joined: Tue 08 Jan 2013, 01:39
- Location: nyc
one pixel spacer x3
Code: Select all
<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="-29">
# <Spacer width="1" height="1"/>
# </Tray>
#d
you can click a desktop icon (you'd have to move it to an edge of your screen) or access the panels or click menus with the mouse easily with this, even on a single screen setup with maximized windows. you can also set windows behind the (essentially) maximized ones for easy access/ to augment a function of their taskbar representations.
cost: three unobtrusive little black dots. adjust the "200" number to reposition the little (i guess they're really squares more than) dots along their planes. they can serve as visual cues for the placement of icons or windows you may want to click but would be unable to see without revealing the desktop.
***
edit: on the subject of the taskbar representations,
to get smaller task list items change
<!-- Additional TaskList attribute: maxwidth -->
<TaskList/>
to
<!-- Additional TaskList attribute: maxwidth -->
<TaskList maxwidth="25"/>
(~lines 14-15 in jwmrc-tray. thanks to Jasper for the info. you'd need to restart jwm to see the change, and i suppose a little trial and error to adjust the 25 to what suits you best.)
Last edited by Puppus Dogfellow on Sun 29 Jun 2014, 05:46, edited 1 time in total.
- Puppus Dogfellow
- Posts: 1667
- Joined: Tue 08 Jan 2013, 01:39
- Location: nyc
getting back to shortcut keys
keycode 115 apparently works on most machines and enables you assign programs, files, or folders to the windows button. for example, will open the directory containing most of your systems applications when you click it. that same key made into a modifier ("mask" in jwm lingo) is known as "4":
seems that using the windows key as the primary method of assigning shortcuts is a good idea on a linux system--you can be sure you're not overriding any existing shortcuts that way.
i've tried this in two machines so far as i've read it works for most. in my case, my logitech keyboard refuses to acknowledge the keys even though an internal program called xev correctly identifies/registers their actions (this is also true of the number pad, whose keys are identified as distinct from their duplicates elsewhere on the keyboard). i'm not sure if there's a way around it, but so far assigning a shortcut to the 115 on its own makes it also launch when every combo is used. the work around would probably be to find a program (xdotool and xbindkeys may be worth checking out) that can differentiate between press, release, and press-and-release. as a modifier, 4 can be used in combination with the others, i.e. 4C, 4AS, 4CS--haven't seen anything that says you can't use four at a time, though if you're contorting and choreographing five fingers to run something, you may just find it easier to type its name into a terminal. (you can make a script to launch one or ten documents called "14" and 14 entered into a terminal would launch it. plus nearly all the programs can be run by name that way.)
the machine this works on has only one windows key. the machine it doesn't identifies the right side windows key as 116.
similarly, on the little dell that could, i was able to map the media keys, identifying them with xev. on the gateway that won't, they are identified but jwm ignores them.
Code: Select all
<Key keycode="115">exec:rox /usr/share/applications</Key>
Code: Select all
<Key mask="4" key="x">exec:xpad</Key>
<Key mask="4" key="a">exec:rox /usr/share/applications</Key>
<Key mask="4" key="l">exec:leafpad</Key>
<Key mask="4" key="s">exec:sakura</Key>
<Key mask="4" key="p">exec:exec:/root/.Pup-Shots/.PupShots</Key>
<Key mask="4" key="w">window</Key>
<Key mask="4" key="d">exec:goldendict</Key>
<Key mask="4" key="f">exec:pfind</Key>
<Key mask="4" key="g">exec:geany</Key>
<Key mask="4C" key="r">exec:recoll</Key>
<Key mask="4" key="r">resize</Key>
<Key mask="4" key="m">move</Key>
<Key mask="4" key="1">desktop#1</Key>
<Key mask="4" key="2">desktop#2</Key>
<Key mask="4" key="3">desktop#3</Key>
<Key mask="4" key="4">desktop#4</Key>
<Key mask="4" key="5">desktop#5</Key>
<Key mask="4" key="6">desktop#6</Key>
<Key mask="4" key="7">minimize</Key>
<Key mask="4" key="8">maximize</Key>
<Key mask="4" key="9">prev</Key>
<Key mask="4" key="0">next</Key>
i've tried this in two machines so far as i've read it works for most. in my case, my logitech keyboard refuses to acknowledge the keys even though an internal program called xev correctly identifies/registers their actions (this is also true of the number pad, whose keys are identified as distinct from their duplicates elsewhere on the keyboard). i'm not sure if there's a way around it, but so far assigning a shortcut to the 115 on its own makes it also launch when every combo is used. the work around would probably be to find a program (xdotool and xbindkeys may be worth checking out) that can differentiate between press, release, and press-and-release. as a modifier, 4 can be used in combination with the others, i.e. 4C, 4AS, 4CS--haven't seen anything that says you can't use four at a time, though if you're contorting and choreographing five fingers to run something, you may just find it easier to type its name into a terminal. (you can make a script to launch one or ten documents called "14" and 14 entered into a terminal would launch it. plus nearly all the programs can be run by name that way.)
the machine this works on has only one windows key. the machine it doesn't identifies the right side windows key as 116.
similarly, on the little dell that could, i was able to map the media keys, identifying them with xev. on the gateway that won't, they are identified but jwm ignores them.
Hi Puppus Dogfellow,
If the winkey/115/4 method fails on any of your computers and you have the desired app/folder icons (as you listed) on your desktop you could right click those icons and then use Edit to assign the winkey + [the individual choices in your list]. You might then, as you have before, make all or any of those icons invisible.
Personally, I prefer using ROXoff (or Swapicons) for a totally clean desktop - so any assigned shortcuts (as made above) would fail temporarily until my "normal" desktop is restored.
My regards
If the winkey/115/4 method fails on any of your computers and you have the desired app/folder icons (as you listed) on your desktop you could right click those icons and then use Edit to assign the winkey + [the individual choices in your list]. You might then, as you have before, make all or any of those icons invisible.
Personally, I prefer using ROXoff (or Swapicons) for a totally clean desktop - so any assigned shortcuts (as made above) would fail temporarily until my "normal" desktop is restored.
My regards
- MochiMoppel
- Posts: 2084
- Joined: Wed 26 Jan 2011, 09:06
- Location: Japan
If the method fails, why would the winkey codes work with ROX icons, but not with JWM?Jasper wrote:If the winkey/115/4 method fails on any of your computers and you have the desired app/folder icons (as you listed) on your desktop you could right click those icons and then use Edit to assign the winkey + [the individual choices in your list]
Hi MochiMoppel,
I have some experience of some aspects, but no expertise.
I have found that my desktop shortcuts have worked using winkey[Hyper or Super] via the icon right click then Edit method.
Perhaps I used a poor choice of words and created confusion.
Anyway, my personal "thank you" for your star contributions.
My regards
I have some experience of some aspects, but no expertise.
I have found that my desktop shortcuts have worked using winkey[Hyper or Super] via the icon right click then Edit method.
Perhaps I used a poor choice of words and created confusion.
Anyway, my personal "thank you" for your star contributions.
My regards
- Puppus Dogfellow
- Posts: 1667
- Joined: Tue 08 Jan 2013, 01:39
- Location: nyc
thanks for the tip, Jasper.Jasper wrote:Hi Puppus Dogfellow,
If the winkey/115/4 method fails on any of your computers and you have the desired app/folder icons (as you listed) on your desktop you could right click those icons and then use Edit to assign the winkey + [the individual choices in your list]. You might then, as you have before, make all or any of those icons invisible.
Personally, I prefer using ROXoff (or Swapicons) for a totally clean desktop - so any assigned shortcuts (as made above) would fail temporarily until my "normal" desktop is restored.
My regards
it's been a while, so i may be thinking of my experience with an earlier pup, and i was even more of a noob at the time, but i've failed to make the winkey useful on the keyboard in question with that method as well.
i'll try again when my wife relinquishes the machine. i'm also trying to scrounge up some other keyboards to make sure it's not a hardware issue, though half the usb ports on that tower appear to be dead, or are frequently so, possibly pointing to another cause, one that would make the scavenger hunt pointless. (i think the machine's about ten years old; it's got a host of peripheral related maladies--mouse pointer disappears every five days or so, or refuses to move from a corner, etc.)
anyway, thanks again for your input.
-d.
- Puppus Dogfellow
- Posts: 1667
- Joined: Tue 08 Jan 2013, 01:39
- Location: nyc
it may not be necessary, Jasper--your advice worked.Jasper wrote:Hi again,
Perhaps try:
Menu/Setup/Mouse keyboard wizard/Advanced Xorg .../Options/ AltWin ...
My regards
the first time i tried it, it told me Hyper + Super_L was the combo i chose regardless of what winkey combo i actually pressed, which is the reason i abandoned the function to begin with. this time, same result. but i tried it again anyway, just a little more deliberately and slowly than before. problem solved--worked for a folder (applications) and a program (pup-shots).
Cheers.
***
decided to go back to jwmrc-personal in the hopes that i had somehow woken the rest of the machine up to the existence of the key, but no luck. the rox way may not be as convenient as just pasting a slew of keycuts into a file, but it's nice to know it's there as a backup plan.
many thanks.