From ca6db7290cacee0d3b5ba836e6acea76ea314e50 Mon Sep 17 00:00:00 2001 From: Luke Shumaker Date: Sun, 26 May 2013 22:11:51 -0400 Subject: redo the library system; avoid hard-coded paths * install all library files to $(libexecdir)/libretools, instead of - $(bindir) - $(datadir)/libretools - $(datadir)/devtools * symlink the executable library files into $(bindir) * add the tool `librelib` * instead of ". /path/to/lib.sh", use ". $(librelib lib.sh)" * mark all libraries with shebangs of what options they support * move blacklist.sh to libreblacklist --- src/lib/libremessages | 70 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) create mode 100755 src/lib/libremessages (limited to 'src/lib/libremessages') diff --git a/src/lib/libremessages b/src/lib/libremessages new file mode 100755 index 0000000..c9b6b83 --- /dev/null +++ b/src/lib/libremessages @@ -0,0 +1,70 @@ +#!/bin/bash -euE +#!/bin/bash +# Copyright (c) 2002-2006 by Judd Vinet +# Copyright (c) 2006-2010 Pacman Development Team +# Copyright (c) 2005 by Aurelien Foret +# 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 +# Copyright (c) 2012-2013 by Luke Shumaker +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +################################################################################ +# Inherit most functions from devtools # +################################################################################ + +. $(librelib common.sh) + +################################################################################ +# gettext initialization # +################################################################################ + +export TEXTDOMAIN='libretools' +export TEXTDOMAINDIR='/usr/share/locale' + +################################################################################ +# Own functions # +################################################################################ + +# Usage: print fmt arg1 arg2... +# Like printf, but gettext-aware, and prints a trailing newline +print() { + local fmt=$1 + shift + printf -- "$(gettext "$fmt")\n" "$@" +} + +# Usage: term_title This will be the term title +# Sets the terminal title +term_title() { + local fmt='' + case "$TERM" in + screen|tmux) fmt='\ek%s\e\\';; + xterm*|rxvt*) fmt='\e]0;%s\a';; + esac + printf "$fmt" "$*" +} + +################################################################################ +# Run one of the defined functions if invoked directly # +################################################################################ + +if [[ "${0##*/}" == libremessages ]]; then + _libremessages_cmd=$1 + shift + "$_libremessages_cmd" "$@" +fi -- cgit v1.2.3