disciple
Joined: 20 May 2006 Posts: 6180 Location: Auckland, New Zealand
Posted: Sat 18 Sep 2010, 10:08 Post subject:
Bookmarks viewer Subject description: Show Rox filer and GTK bookmarks
Forum administrators - feel free to move this to a subcategory... I really don't know whether it belongs in Desktop or Filesystem or Utilities or wherever...
------------------------
This script shows all your GTK and Rox Filer bookmarks(see screenshot below).
Change the FILER variable at the top if you want them to open in something other than Rox when you click on them.
Put it in the menu, on a taskbar button, or wherever.
What should we call it? Pbookmark?
Code:
#!/bin/sh
# Todo:
# Ability to edit the bookmarks? (or at least open the relevant file)
# Make code more elegant/faster
# Make filer an input argument - this could also enable it to be called e.g. instead of a drop-down bookmarks menu (e.g. pburn)
# Only show folders that exist?
# this would be consistent with the way the GTK open/save dialogue works,
# but not the rox bookmarks menu. And it might be GOOD to discover broken bookmarks.
# Which filer shall we use?
FILER="rox"
# Should we close the dialogue after calling the filer?
EXIT_ON_CLICK="no"
if [ "$EXIT_ON_CLICK" = "yes" ]
then ACTION="<action type=\"exit\">done</action>"
else ACTION=""
fi
if [ -d "$HOME/Desktop" ]
then DESKTOP="
<button xalign=\"0\" tooltip-text=\"$HOME\/Desktop\">
<label>Desktop</label>
<action>"$FILER" \"$HOME/Desktop\"</action>
$ACTION
</button>"
else DESKTOP=""
fi
# Rox Filer bookmarks
if [ -r "$HOME/.config/rox.sourceforge.net/ROX-Filer/Bookmarks.xml" ]; then
if [ "`grep -m1 title \"$HOME/.config/rox.sourceforge.net/ROX-Filer/Bookmarks.xml\"`" = "" ]
then BOOKMARK_LIST="$BOOKMARK_LIST
<text>
<label>No bookmarks in $HOME/.config/rox.sourceforge.net/ROX-Filer/Bookmarks.xml</label>
</text>"
else
# Make sure each bookmark is on a new line
sed 's/></>\n</g' "$HOME/.config/rox.sourceforge.net/ROX-Filer/Bookmarks.xml" >/dev/null
# Buttons for each bookmark
while read I
do if [ "`echo $I|grep title`" != "" ]
then FILE_PATH=`echo $I |cut -d \> -f 2|cut -d \< -f 1`
FILE_NAME=`echo $I |cut -d \" -f 2`
BOOKMARK_LIST="$BOOKMARK_LIST
<button xalign=\"0\" tooltip-text=\"$FILE_PATH\">
<label>$FILE_NAME</label>
<action>"$FILER" \"$FILE_PATH\"</action>
$ACTION
</button>"
fi
done < "$HOME/.config/rox.sourceforge.net/ROX-Filer/Bookmarks.xml"
fi
# NO ROX Filer bookmarks
else
BOOKMARK_LIST="$BOOKMARK_LIST
<text>
<label>$HOME/.config/rox.sourceforge.net/ROX-Filer/Bookmarks.xml does not exist</label>
</text>"
fi
# End of dialogue
export BOOKMARK_LIST="$BOOKMARK_LIST
</frame></hbox>
</window>"
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum You cannot attach files in this forum You can download files in this forum