From de192642ea009e9b8e16f54209575536538869e2 Mon Sep 17 00:00:00 2001 From: Luke Shumaker Date: Mon, 12 Nov 2012 16:29:07 -0500 Subject: touch up libremessages --- src/libremessages | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'src/libremessages') diff --git a/src/libremessages b/src/libremessages index 68badb8..756e19a 100755 --- a/src/libremessages +++ b/src/libremessages @@ -1,3 +1,4 @@ +#!/bin/bash # Copyright (c) 2006-2010 Pacman Development Team # Copyright (c) 2002-2006 by Judd Vinet # Copyright (c) 2005 by Aurelien Foret @@ -105,3 +106,10 @@ in_array() { return 1 # Not Found } + +if [[ "${0##*/}" = libremessages ]]; then + _libremessages_cmd=$1 + shift + "$_libremessages_cmd" "$@" + unset _libremessages_cmd +fi -- cgit v1.2.3-2-g168b From 066c7716e69817af9e08782a7fbfc3dc2eb6356b Mon Sep 17 00:00:00 2001 From: Luke Shumaker Date: Mon, 26 Nov 2012 01:30:54 -0500 Subject: libremessages: term_title: learn about xterm/rxvt --- src/libremessages | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'src/libremessages') diff --git a/src/libremessages b/src/libremessages index 756e19a..ff7476b 100755 --- a/src/libremessages +++ b/src/libremessages @@ -88,9 +88,13 @@ stat_done() { } # Set the terminal title -# TODO test on several terms - it works on screen/tmux term_title() { - printf "\033k%s\033\\" "$@" + local fmt='' + case "$TERM" in + screen|tmux) fmt='\ek%s\e\\';; + xterm*|rxvt*) fmt='\e]0;%s\a';; + esac + printf "$fmt" "$*" } # usage : in_array( $needle, $haystack ) -- cgit v1.2.3-2-g168b From 00d67a5051e5d4163acffa80b7ef85f81f7e548f Mon Sep 17 00:00:00 2001 From: Luke Shumaker Date: Wed, 28 Nov 2012 15:20:59 -0500 Subject: take (some) advantage of chroottools, fix some compatability things mkarchroot/archroot's option parsing is a little less flexible (but a lot more understandable) than it was before. --- src/libremessages | 96 ++++++++++++++++++------------------------------------- 1 file changed, 31 insertions(+), 65 deletions(-) (limited to 'src/libremessages') diff --git a/src/libremessages b/src/libremessages index ff7476b..ccb5fb4 100755 --- a/src/libremessages +++ b/src/libremessages @@ -1,11 +1,11 @@ #!/bin/bash -# Copyright (c) 2006-2010 Pacman Development Team # Copyright (c) 2002-2006 by Judd Vinet +# Copyright (c) 2006-2010 Pacman Development Team # Copyright (c) 2005 by Aurelien Foret -# Copyright (c) 2006 by Miklos Vajna # Copyright (c) 2005 by Christian Hamar # Copyright (c) 2006 by Alex Smith # Copyright (c) 2006 by Andras Voroskoi +# Copyright (c) 2006 by Miklos Vajna # Copyright (c) 2011 by Joshua Haase # # This program is free software; you can redistribute it and/or modify @@ -21,70 +21,46 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see . -# gettext initialization -export TEXTDOMAIN='libretools' -export TEXTDOMAINDIR='/usr/share/locale' +################################################################################ +# Inherit most functions from devtools # +################################################################################ -# check if messages are to be printed using color -unset ALL_OFF BOLD BLUE GREEN RED YELLOW -if [[ -t 2 ]]; then - # prefer terminal safe colored and bold text when tput is supported - if tput setaf 0 &>/dev/null; then - ALL_OFF="$(tput sgr0)" - BOLD="$(tput bold)" - PURPLE="${ALL_OFF}$(tput setaf 5)" - BLUE="${BOLD}$(tput setaf 4)" - GREEN="${BOLD}$(tput setaf 2)" - RED="${BOLD}$(tput setaf 1)" - YELLOW="${BOLD}$(tput setaf 3)" - else - ALL_OFF="\e[1;0m" - BOLD="\e[1;1m" - BLUE="${BOLD}\e[1;34m" - GREEN="${BOLD}\e[1;32m" - RED="${BOLD}\e[1;31m" - YELLOW="${BOLD}\e[1;33m" - PURPLE="${BOLD}\033[1;30;40m" - fi -fi -readonly ALL_OFF BOLD BLUE GREEN RED YELLOW PURPLE +# This is only installed in Parabola's distribution of devtools, not Arch's +. /usr/share/devtools/common.sh -stdnull() { - eval "$@ >/dev/null 2>&1" -} +################################################################################ +# gettext initialization # +################################################################################ -plain() { - local mesg=$1; shift - printf "${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&2 -} +export TEXTDOMAIN='libretools' +export TEXTDOMAINDIR='/usr/share/locale' -msg() { - local mesg=$1; shift - printf "${GREEN}==>${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&2 -} +################################################################################ +# Devtools overrides # +################################################################################ -msg2() { - local mesg=$1; shift - printf "${BLUE} ->${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&2 -} +# Override several functions with built-in text to uses gettext warning() { - local mesg=$1; shift - printf "${YELLOW}==> $(gettext "WARNING:")${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&2 + local mesg=$1; shift + printf "${YELLOW}==> $(gettext "WARNING:")${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&2 } error() { - local mesg=$1; shift - printf "${RED}==> $(gettext "ERROR:")${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&2 -} - -stat_busy() { local mesg=$1; shift - printf "${GREEN}==>${ALL_OFF}${BOLD} ${mesg}...${ALL_OFF}" >&2 + printf "${RED}==> $(gettext "ERROR:")${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&2 } stat_done() { - printf "${BOLD}done${ALL_OFF}\n" >&2 + printf "${BOLD}$(gettext "done")${ALL_OFF}\n" >&2 +} + +################################################################################ +# Own functions # +################################################################################ + +stdnull() { + eval "$@ >/dev/null 2>&1" } # Set the terminal title @@ -97,19 +73,9 @@ term_title() { printf "$fmt" "$*" } -# usage : in_array( $needle, $haystack ) -in_array() { - [[ $2 ]] || return 1 # Not found - - local needle=$1; shift - local item - - for item in "$@"; do - [[ ${item#@} = $needle ]] && return 0 # Found - done - - return 1 # Not Found -} +################################################################################ +# Run one of the defined functions if invoked directly # +################################################################################ if [[ "${0##*/}" = libremessages ]]; then _libremessages_cmd=$1 -- cgit v1.2.3-2-g168b