blob: 0b3568adbf473333a0e20df2638e505d9e7cb50d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
|
#!/bin/bash
# vim:et:ai:ts=4:sts=4:sw=4
DESTDIR='locale'
LS_BIN='/usr/bin/ls'
FIND_BIN='/usr/bin/find'
TOUCH_BIN='/usr/bin/touch'
SED_BIN='/usr/bin/sed'
MKDIR_BIN='/usr/bin/mkdir'
MSGFMT_BIN='/usr/bin/msgfmt'
REALPATH_BIN="/usr/bin/realpath"
DIRNAME_BIN="/usr/bin/dirname"
BASENAME_BIN="/usr/bin/basename"
SLEEP_BIN="/usr/bin/sleep"
MYDIR="$(${DIRNAME_BIN} $(${REALPATH_BIN} $0))"
DEVDIR="$(${DIRNAME_BIN} $(${DIRNAME_BIN} $(${REALPATH_BIN} $0)))"
FULLDESTDIR="${DEVDIR}/${DESTDIR}"
[ "x$1" == "x--watch" ] && echo "Watching po dir for .po files updates..."
function updateLang () {
[ ! -f "${FULLDESTDIR}/.timestamp" ] && ${TOUCH_BIN} "${FULLDESTDIR}/.timestamp"
while [ 1 ]
do
_update=0
for _langfile in $(${FIND_BIN} ${DEVDIR}/po -name "*.po" -newer "${FULLDESTDIR}/.timestamp")
do
_lang="$(${BASENAME_BIN} $_langfile | ${SED_BIN} -e "s/\.po$//")"
${MKDIR_BIN} -p ${FULLDESTDIR}/${_lang}/LC_MESSAGES
[ "x$1" == "x--watch" ] && [ $_update -eq 0 ] && echo ""
echo "updating ${DESTDIR}/${_lang}/LC_MESSAGES/urpmi.mo"
$MSGFMT_BIN "$DEVDIR/po/${_lang}.po" -o "${FULLDESTDIR}/${_lang}/LC_MESSAGES/urpmi.mo"
_update=1
done
[ $_update -eq 1 ] && ${TOUCH_BIN} "${FULLDESTDIR}/.timestamp"
[ "x$1" != "x--watch" ] && exit
echo -n "."
${SLEEP_BIN} 2
done
}
updateLang "$@"
|