› Foros › PC › Software libre
#!/bin/sh
#
# run_firefox.sh: arranca firefox según la configuración de las locales
#
# Por defecto, el idioma original (siempre presente)
UILocale_default="en-US"
contentLocale_default="US"
LOCALE=`which locale`
# Si no has instalado firefox con un paquete de tu distribución,
# asegúrate de que "which firefox" te devuelve el ejecutable.
FIREFOX=`which firefox`
# En caso contrario, comenta la línea anterior, busca el ejecutable,
# descomenta la siguiente línea y pon la ruta apropiada.
#FIREFOX="$HOME/firefox/firefox"
# Averiguamos el valor de las locales.
if test -n "$LOCALE"; then
UILocale=`$LOCALE | sed -n '/^LC_MESSAGES/!b;s/^.*="\([^"]\{0,5\}\).*$/\1/;y/_/-/;p;q'`
contentLocale=`echo $UILocale | cut -d "-" -f2`
fi
# Ejecutamos firefox con la local. En caso de que no esté instalada esa local
# arrancamos el idioma por defecto.
$FIREFOX -UILocale $UILocale -contentLocale $contentLocale || \
$FIREFOX -UILocale $UILocale_default -contentLocale $contentLocale_default
#!/bin/sh
lang_default="en"
country_default="US"
function locales() {
lang=`echo $1 | cut -c1,2`
country=`echo $1 | cut -c4,5`
UILocale=$lang-$country
contentLocale=$country
}
LOCALE=`which locale`
FIREFOX=`which firefox`
#FIREFOX="$HOME/firefox/firefox"
if test -n "$LANGUAGE"; then
language=`echo $LANGUAGE | tr ":" " "`
elif test -n "$LOCALE"; then
language=`$LOCALE | grep '^LC_MESSAGES' | cut -c14-18`
fi
for i in ${language} ${lang_default}-${country_default}; do
locales $i
EXE="$EXE $FIREFOX -UILocale $UILocale -contentLocale $contentLocale || "
done
eval $EXE test
bpeople escribió:Así mirándolo me he dado cuenta de que tengo pendiente una buena lectura de tu manual de sed.
UILocale=`$LOCALE | cut -c14-18 | sed '7!d;y/_/-/;q'`