#!/bin/sh
# run this file to launch GoldEd
# it also contains workaround for Russian language in UTF-8 encoding
# $Id$

GEDLNX=`which gedlnx`
if [ ! -x $GEDLNX ]; then
    echo gedlnx is not avaiabled, sorry
    exit 1
fi
CMD="$GEDLNX $*"

# Special solution for german umlauts
if [ `grep -c ^de_DE@euro /etc/locale.gen` -gt 0 ]
then
  export LANG=de_DE@euro
  export LANGUAGE=
  export LC_CTYPE="de_DE@euro"
  export LC_NUMERIC="de_DE@euro"
  export LC_TIME="de_DE@euro"
  export LC_COLLATE="de_DE@euro"
  export LC_MONETARY="de_DE@euro"
  export LC_MESSAGES="de_DE@euro"
  export LC_PAPER="de_DE@euro"
  export LC_NAME="de_DE@euro"
  export LC_ADDRESS="de_DE@euro"
  export LC_TELEPHONE="de_DE@euro"
  export LC_MEASUREMENT="de_DE@euro"
  export LC_IDENTIFICATION="de_DE@euro"
  export LC_ALL=
  exec $CMD
  exit
fi

# unconditionally bypass all tests for non-Russian locales
echo "$LC_ALL $LC_CTYPE $LANG" | grep -q "ru_" \
	|| exec $CMD || exit

# same for ru_RU.KOI8-R
echo "$LC_ALL $LC_CTYPE $LANG" | grep -q "ru_RU.KOI8-R" \
	&& exec $CMD && exit

for SRCG in ~/.golded/screenrc_koi8r ~/.fido/screenrc_koi8r ./screenrc_koi8r /usr/share/golded-plus/screenrc_koi8r ]; do
  if [ -f $SRCG ] ; then
    SCREENRC_GOLDED="$SRCG"
    break
  fi
done

SCREEN=`which screen`
LUIT=`which luit`
KOI8RXTERM=`which koi8rxterm`
if [ -n $SCREEN -a -s $SCREENRC_GOLDED ]; then
  CMD_UTF8="$SCREEN -c ${SCREENRC_GOLDED}"
else if [ -n "$LUIT" ]; then
       CMD_UTF8="export LC_ALL=ru_RU.KOI8-R ; exec $LUIT -x -encoding koi8-r -- $CMD"
else if [ -n "$KOI8RXTERM" ]; then
       CMD_UTF8=$KOI8RXTERM -geometry 130x33 $CMD &
else
       CMD_UTF8=$CMD
fi ; fi ; fi

echo "$LC_ALL $LC_CTYPE $LANG" | grep -q "ru_RU.UTF-8" \
 && ($CMD_UTF8) \
 || exec $CMD
