SpeedDials - a comprehensive bookmark gallery

Window managers, icon programs, widgets, etc.
Post Reply
Message
Author
User avatar
MochiMoppel
Posts: 2084
Joined: Wed 26 Jan 2011, 09:06
Location: Japan

SpeedDials - a comprehensive bookmark gallery

#1 Post by MochiMoppel »

SpeedDials combines bookmarks from 5 different sources in one list.
Originally developed as a simple tool to visualize ROX group selections and introduced in the HOWTO forum, the script gradually grew into a more advanced application and may now be better suited for the software forum.
Image
Features:
- Supports
. * ROX group selections ("speed dials")
. * ROX bookmarks
. * Gtk bookmarks
. * Recently Used files
. * Custom bookmarks & commands
- Can be opened/closed with same desktop/keyboard shortcut.
- Remembers position, dimension and source selection
- Portable: Creates no config or temporary files

Installation:
Just copy the file anywhere and use your favourite tool (keyboard shortcut, desktop link, tray icon etc.)to open it.

Custom bookmarks & commands:
Creating a Custom bookmarks & commands file allows to
- bookmark files, not just directories
- bookmark multiple files/directories, each opened in separate ROX windows
- "bookmark" and run bash commands

Step 1)
Right-click CM button. Leafpad will open with a (not yet created) file custom_bm.txt.
Input bookmarks with format <icon-name>|<ID>|bookmark
<icon-name> and <ID> are optional, the 2 vertical bars are mandatory. The <ID> determines the position in the (alphabetically) ordered ID column. If no ID is given, bookmarks will be placed above ROX speed dials.
All bookmarks must start with "/". Multiple files or directories must be separated by at least 1 space. No quotation marks allowed, even for files containing spaces.
Lines not starting with "/" are treated as commands. Multiple commands are allowed, but must be separated by ";".

Examples (remove trailing descriptions before use):

Code: Select all

gtk-edit||/root/my-documents                                    <= 1 directory
gtk-edit||/root /usr /tmp                                       <= 3 directories
gtk-edit||/root/.jwm/jwmrc-personal /root/.jwmrc-tray           <= 2 files
gtk-edit||geany /root/.jwm/jwmrc-personal /root/.jwmrc-tray     <= Open 2 files in Geany
Step 2)
The default path is /root/custom_bm.txt . To change the path open the script with a text editor, find the line that starts with export PATH_CM= and edit the path.

Dependencies: gtkdialog4

Notes:
- SpeedDials can NOT display unicode characters contained in ROX bookmarks and ROX speed dials (ROX encodes them as HTML entities). No problems though with UTF-8 encoding used in GTK bookmarks and Recently Used files.
- Rightclicking on GT and CM buttons allows to edit the bookmarks.
- Rightclicking on any item opens a gxmessage with the (copiable) item content. Suggestions for a better use of the right mouse button welcome ;-)
Attachments
speeddials.zip
(2.92 KiB) Downloaded 380 times

Jasper

#2 Post by Jasper »

Hi MochiMoppel,

It's superb. Especially the button/display choices.

Do you think it might be worth adding an automatic "close after use" option box to tick/untick?

Alternatively, perhaps right click to action and close - though I like the current right click with the copy opportunity.

My regards and thanks

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

#3 Post by MochiMoppel »

Jasper wrote:Do you think it might be worth adding an automatic "close after use" option box to tick/untick?
I had this in one of the first versions, then I figured that nobody would use it.
Alternatively, perhaps right click to action and close - though I like the current right click with the copy opportunity.
Well, if you have a mouse with a middle button you can have your pizza with everything:

Replace line 116

Code: Select all

<action signal="button-release-event">[ $PTR_BTN -eq 1 ] && funcProcessDir "$vDIR"|| xmessage -center "$vDIR"</action>
with following 3 lines:

Code: Select all

<action signal="button-release-event">[[ $PTR_BTN =~ 1|3 ]] && funcProcessDir   "$vDIR"</action>
<action signal="button-release-event">[  $PTR_BTN -eq 2   ] && xmessage -center "$vDIR"</action>
<action signal="button-release-event" condition="command_is_true([ $PTR_BTN -eq 3 ] && echo true )">exit:0</action>
If everything goes well your right mouse button will open the bookmark & close SpeedDials, your middle button will trigger the xmessage with the bookmark path.

Jasper

#4 Post by Jasper »

Hi MochiMoppel,

Thank you for your star amendment. For me, a middle click (simultaneous left and right click) works as you expect.

However, my right mouse button now closes SpeedDials, but without first opening the bookmark (also, the left mouse button no longer opens the bookmark).

My regards

PS I'll try your new "JWM WinSwitcher" later today and report in that thread.

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

#5 Post by MochiMoppel »

Jasper wrote:However, my right mouse button now closes SpeedDials, but without first opening the bookmark (also, the left mouse button no longer opens the bookmark).
The problem is the very old bash version 3.0 used by your Precise 5.6. It should work if you add 2 quotation marks ("1|3" ). The requirement for the quotation marks was dropped with version 3.2, but now it's the other extreme: No quotation marks allowed. So here is a solution that should make everybody happy (except me :cry: ):

Code: Select all

<action signal="button-release-event">[ $PTR_BTN -eq 1 ] && funcProcessDir   "$vDIR"</action>
<action signal="button-release-event">[ $PTR_BTN -eq 2 ] && xmessage -center "$vDIR"</action>
<action signal="button-release-event">[ $PTR_BTN -eq 3 ] && funcProcessDir   "$vDIR"</action>
<action signal="button-release-event" condition="command_is_true([ $PTR_BTN -eq 3 ] && echo true )">exit:0</action>
Let me know if it works.

Jasper

#6 Post by Jasper »

Now it works with Precise 5.6.

@ MochiMoppel

My regards and special thanks

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

#7 Post by Puppus Dogfellow »

MochiMoppel wrote:
Well, if you have a mouse with a middle button you can have your pizza with everything:
i've noticed you've brought up the lack of a middle mouse button before. have you ever considered mapping it to the keyboard with xdotool click 2? it's useless when mapped to the menu because the pointer automatically moves to it, but it works pretty well on the keyboard. left and right are click 1 and click 3, but you'd need to sacrifice more keys if you want to be able to keep the virtual buttons depressed.

anyway, you may not have a use for my advice, but i have a use for your scripts, so again, thank you for this, MochiMoppel.


edit: Mochi, it doesn't remember size or position for me on either precise 5.6.1 or 5.7.1 (all i've tested so far.)

edit2: my mistake--i didn't realize it was no longer automatic and that you have to click the save icon.
Last edited by Puppus Dogfellow on Mon 15 Sep 2014, 17:14, edited 1 time in total.

Jasper

#8 Post by Jasper »

Hi Puppus Dogfellow,

I have no idea how to fix anything - except as directed by MochiMoppel.

If you type "bash --version" in your Precise 5.61 and 5.71 terminals - what are the respective outputs?

Also, are your chosen buttons retained in either 5.6.1 or 5.7.1 even though your window sizes and positions are not?

I don't have a middle mouse button, but a simultaneous left and right click works.

This is a five star+ app and it seems, to me, as wholly useful as it is ingenius.

My regards

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

#9 Post by Puppus Dogfellow »

Jasper wrote:Hi Puppus Dogfellow,

I have no idea how to fix anything - except as directed by MochiMoppel.

If you type "bash --version" in your Precise 5.61 and 5.71 terminals - what are the respective outputs?

Also, are your chosen buttons retained in either 5.6.1 or 5.7.1 even though your window sizes and positions are not?

I don't have a middle mouse button, but a simultaneous left and right click works.

This is a five star+ app and it seems, to me, as wholly useful as it is ingenius.

My regards
Hi Jasper, thanks for the response.


i know it's an old bash on my 5.5 and 5.6, not sure about the 5.7.1 i'm away from at the moment. i have an earlier version of the script that does remember the positions with the old bash, so i'm not sure that's the issue.

and now that i've checked it on 5.5, i'm a bit embarrassed. i took for granted some things would carry over, specifically the position, size and button configuration being remembered automatically. i didn't click on that save icon--didn't even bother to find out what it was for because the previous, basically perfect version didn't have it and i didn't feel like i was missing anything. i guess i figured it was a hot link to the custom bookmarks file you'd want to edit from time to time.

it works perfectly. thanks and sorry for my oversight.

Post Reply