remembering -u option and a new non remembering option -U, same functionality as before, Patch from Han
This commit is contained in:
parent
b3b8b01ce4
commit
1f0a30eb0a
1 changed files with 43 additions and 21 deletions
64
util/fbsetbg
64
util/fbsetbg
|
@ -23,7 +23,7 @@
|
|||
# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||
# SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
#
|
||||
# $Id: fbsetbg,v 1.23 2003/11/23 01:19:01 rathnor Exp $
|
||||
# $Id: fbsetbg,v 1.24 2003/12/08 19:31:40 fluxgen Exp $
|
||||
|
||||
# Portability notes:
|
||||
# To guarantee this script works on all platforms that support fluxbox
|
||||
|
@ -59,8 +59,8 @@ command="`basename \"$0\"`"
|
|||
# Functions
|
||||
display_usage() {
|
||||
cat << EOF
|
||||
Usage: $command [-u wallpapersetter] [-fFcCtTaA /path/to/wallpaper] [-l] [-h] [-i] [-p]
|
||||
Use $command -h for a complete help message.
|
||||
Usage: $command [-u/-U [wallpapersetter]] [-fFcCtTaA /path/to/wallpaper] [-l] [-h] [-i] [-p]
|
||||
Use \`\`$command -h'' for a complete help message.
|
||||
|
||||
EOF
|
||||
}
|
||||
|
@ -77,8 +77,9 @@ Options:
|
|||
-a Set maximized wallpaper, preserving aspect.
|
||||
( if your bgsetter doesn't support this
|
||||
we fall back to -f )
|
||||
-u Use specified wallpapersetter, use no argument to forget
|
||||
|
||||
-F,-C,-T,-A same as uncapsed but without remembering.
|
||||
-F,-C,-T,-A,-U same as uncapsed but without remembering.
|
||||
|
||||
-h Display this help
|
||||
|
||||
|
@ -87,7 +88,7 @@ Options:
|
|||
-i Information about selected wallpaper command
|
||||
-d (deprecated, use -i) Debug info
|
||||
-p Tips
|
||||
-u Use specified wallpapersetter
|
||||
|
||||
|
||||
Files:
|
||||
|
||||
|
@ -120,7 +121,7 @@ Common tips to use with $command:
|
|||
session.screen0.rootCommand: $command -l
|
||||
|
||||
3) Use $command -i to find out what wallpapersetter $command will be
|
||||
used and what I think about it.
|
||||
used and what $command thinks about it.
|
||||
|
||||
EOF
|
||||
}
|
||||
|
@ -178,19 +179,37 @@ debugfbsetbg() {
|
|||
|
||||
if [ $# -eq 0 ]; then
|
||||
message "no options given"
|
||||
display_help
|
||||
display_usage
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
||||
unset debug
|
||||
|
||||
unset debug setterfromcommandline
|
||||
# Parse command-line options
|
||||
while [ $# -gt 0 ]; do
|
||||
case "$1" in
|
||||
-u)
|
||||
if find_it "$2"; then
|
||||
wpsetters=$2
|
||||
grep -v wpsetters $lastwallpaper > ${lastwallpaper}.tmp
|
||||
echo "wpsetters $2" >> ${lastwallpaper}.tmp
|
||||
mv ${lastwallpaper}.tmp $lastwallpaper
|
||||
WPSETTER=$2
|
||||
setterfromcommandline=true
|
||||
elif [ -z "$2" ]; then
|
||||
grep -v wpsetters $lastwallpaper > ${lastwallpaper}.tmp
|
||||
mv ${lastwallpaper}.tmp $lastwallpaper
|
||||
message "wpsetter removed from historyfile"
|
||||
exit 0
|
||||
else
|
||||
message "Couldn't find \"$2\" for wallpapersetter"
|
||||
display_usage
|
||||
exit 1
|
||||
fi
|
||||
shift 2 ;;
|
||||
-U)
|
||||
if find_it "$2"; then
|
||||
WPSETTER=$2
|
||||
setterfromcommandline=true
|
||||
else
|
||||
message "Couldn't find \"$2\" for wallpapersetter"
|
||||
display_usage
|
||||
|
@ -242,22 +261,22 @@ while [ $# -gt 0 ]; do
|
|||
-p) display_tips ; exit 0 ;;
|
||||
-h) display_help ; exit 0 ;;
|
||||
--)
|
||||
echo "$command doesn't recognize -- gnu-longopts."
|
||||
echo 'Use $command -h for a help message.'
|
||||
message "$command doesn't recognize -- gnu-longopts."
|
||||
message 'Use $command -h for a help message.'
|
||||
display_usage
|
||||
exit 1 ;;
|
||||
-*)
|
||||
echo 1>&2 "$command: unrecognized option "\`"$1'"
|
||||
message "unrecognized option "\`"$1'"
|
||||
display_usage
|
||||
exit 1
|
||||
;;
|
||||
*)
|
||||
if [ ! -r "$1" ]; then
|
||||
echo "$1 isn't an existing wallpaper or a valid option." >&2
|
||||
message "$1 isn't an existing wallpaper or a valid option."
|
||||
display_usage
|
||||
exit 1
|
||||
elif [ -z "$1" ]; then
|
||||
message 'No wallpaper to set' >&2
|
||||
message 'No wallpaper to set'
|
||||
display_usage
|
||||
exit 1
|
||||
else
|
||||
|
@ -269,12 +288,15 @@ while [ $# -gt 0 ]; do
|
|||
done
|
||||
|
||||
# Find the default wallpapersetter
|
||||
for wpsetter in $wpsetters; do
|
||||
if find_it $wpsetter; then
|
||||
WPSETTER=$wpsetter
|
||||
break
|
||||
fi
|
||||
done
|
||||
if [ "$setterfromcommandline" != true ]; then
|
||||
wpsetters="`awk '/wpsetters/ {print $2}' $lastwallpaper` $wpsetters"
|
||||
for wpsetter in $wpsetters; do
|
||||
if find_it $wpsetter; then
|
||||
WPSETTER=$wpsetter
|
||||
break
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
standardrant=\
|
||||
"$WPSETTER sets the 'wrong' wallpaper. Transparency for fluxbox and
|
||||
|
|
Loading…
Reference in a new issue