[devel] XFS - кому он нужен? или продожение шрифтовой темы
Sergey Vlasov
=?iso-8859-1?q?vsu_=CE=C1_altlinux=2Eru?=
Пт Мар 24 14:20:08 MSK 2006
On Fri, Mar 24, 2006 at 01:35:58PM +0300, Valery V. Inozemtsev wrote:
> > > #!/bin/sh
> > >
> > > PROG="${0##*/}"
> > >
> > > XFS=
> > > USEXFS=0
> > > XSET=
> > > ADD=0
> > > FONTPATH=
> > > CHKFONTPATH=
> > >
> > > Usage()
> > > {
> > > [ "$1" = 0 ] || exec >&2
> > > cat <<EOF
> > > Usage: $PROG option[s] directory
> > >
> > > Valid options are:
> > > -a, --add=DIRECTORY Add directory to font path
> > > -r, --remove=DIRECTORY Remove directory from font path
> >
> > Именно так - с параметром? Или всё-таки --add или --remove для задания
> > режима работы, а каталог отдельно?
>
> не думаю что это принципиально
Тогда Usage неправильный - каталог не указывается как отдельный параметр.
Ну и можно придраться к отсутствию обработки ситуации, когда опция --add
или --remove (или вообще обе) присутствует в командной строке несколько
раз.
> > > -f, --first Make --add to put the directory first (not last)
> > > in the path
> > > EOF
> > >
> > > [ -n "$1" ] && exit "$1" || exit
> > > }
> > >
> > > [ -n "$*" ] || Usage
> > >
> > > TEMP=`getopt -n "$PROG" -o a:r:f -l add:,remove:,first -- "$@"` || Usage
> > > eval set -- "$TEMP"
> > >
> > > if [ -r /etc/sysconfig/xfs ]; then
> > > source /etc/sysconfig/xfs
> > > case "$XFS" in
> > > yes|Yes|YES|true|True|TRUE|on|On|ON|Y|y|1)
> > > USEXFS=1
> > > ;;
> > > esac
> > > fi
> > >
> > > while :; do
> > > case "$1" in
> > > -a|--add)
> > > shift
> > > [ -n "$XSET" ] || XSET="fp+"
> > > ADD=1
> > > [ -n "$CHKFONTPATH" ] || CHKFONTPATH="-q -a"
> > > FONTPATH="$1"
> > > shift
> > > ;;
> > > -r|--remove)
> > > shift
> > > XSET="-fp"
> > > ADD=0
> > > CHKFONTPATH="-q -r"
> > > FONTPATH="$1"
> > > shift
> > > ;;
> > > -f|--first)
> > > XSET="+fp"
> > > ADD=1
> > > CHKFONTPATH="-q -fa"
> > > shift
> > > ;;
> > > --)
> > > shift
> > > break
> > > ;;
> > > esac
> > > done
> > >
> > > eval /usr/sbin/chkfontpath "$CHKFONTPATH" "$FONTPATH" >/dev/null 2>&1
> > >
> > > if [ "$USEXFS" = 0 ]; then
> > > XPID=`pidof X`
> > > if [ -n "$XPID" ]; then
> > > for n in $XPID; do
> > > SERVER=`awk -F: '{print(substr($2,1,1))}' /proc/$n/cmdline`
> > > [ -n "$SERVER" ] || continue
> > > AUTH=`awk -F-auth '{print($2)}' /proc/$n/cmdline`
> > > [ -r "$AUTH" ] || continue
> > > export XAUTHORITY="$AUTH"
> > > FP=`xset -display :"$SERVER" q | grep -q "$FONTPATH"; echo $?`
> > > if [ "$FP" = 1 -o "$ADD" = 0 ]; then
> > > xset -display :"$SERVER" "$XSET" "$FONTPATH" > /dev/null 2>&1
> > > fi
> > > xdpyinfo -display :"$SERVER" | grep -q FontCache &&
> > > xset -display :"$SERVER" fp rehash
> > > done
> > > fi
> > > fi
> >
> > Выглядит как набор кривых хаков :(
>
> мне оно тоже не нравится, поэтому я и предлагал не заморачиваться с
> доступностью шрифтов скразу после установки в прогах не поддерживающих
> fontconfig. однако оно работает
Надо будет придумать, как сделать при запуске X что-нибудь такое, чтобы
это работать перестало ;)
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип : application/pgp-signature
Размер : 189 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url : <http://lists.altlinux.org/pipermail/devel/attachments/20060324/24f20f78/attachment-0001.bin>
Подробная информация о списке рассылки Devel