summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/fonts/berenisadf/cfr.gwneud.cyhoeddus
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2013-11-22 00:11:18 +0000
committerKarl Berry <karl@freefriends.org>2013-11-22 00:11:18 +0000
commite3569f8b4ee7684194b890d75239c2e52357b092 (patch)
tree719d2387b982d6d8c4ad818534018a5afaf46a31 /Master/texmf-dist/doc/fonts/berenisadf/cfr.gwneud.cyhoeddus
parent4efb0e288e61307337a1593f83dead03178acc61 (diff)
berenisadf (22nov13)
git-svn-id: svn://tug.org/texlive/trunk@32205 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/fonts/berenisadf/cfr.gwneud.cyhoeddus')
-rwxr-xr-xMaster/texmf-dist/doc/fonts/berenisadf/cfr.gwneud.cyhoeddus564
1 files changed, 564 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/fonts/berenisadf/cfr.gwneud.cyhoeddus b/Master/texmf-dist/doc/fonts/berenisadf/cfr.gwneud.cyhoeddus
new file mode 100755
index 00000000000..d0d311a1e33
--- /dev/null
+++ b/Master/texmf-dist/doc/fonts/berenisadf/cfr.gwneud.cyhoeddus
@@ -0,0 +1,564 @@
+#!/bin/sh -
+#set -x
+PATH=/usr/local/bin:/usr/local/sbin:/usr/bin
+export PATH
+
+allan=0
+directory=./
+vendor=arkandis
+cfrtop=$(xdg-user-dir DOCUMENTS)/src/fonts/_cfr
+existencs=0
+docdir="doc"
+afmdir="fonts/afm"
+encdir="fonts/enc"
+mapdir="fonts/map"
+tfmdir="fonts/tfm"
+truetypedir="fonts/truetype"
+type1dir="fonts/type1"
+vfdir="fonts/vf"
+sourcedir="source"
+texdir="tex"
+
+usage="Usage: $0 [OPTION] [FILES]
+Prepare a flattened file hierarchy and install fonts and support files in it in preparation for the creation of an archive for upload to CTAN.
+Options:
+ -h --help print this message and exit
+ -a --adf file listing ADF files [after cd: ./adf or ../cfr/adf or hard-coded list]
+ -c --directory directory to switch to [current working directory]
+ -d --derived file listing derived files [after cd: ./der or ../cfr/der or hard-coded list]
+ -f --font specify font package name [truncated name of directory]
+ -m --manual specify manual name [font package name w/ or w/o adf appended]
+ -n --nonderived file listing nonderived files [after cd: ./nonder or ../cfr/nonder or hard-coded list]
+ -o --original file listing font vendor's files [after cd: ./ovend or ../cfr/ovend or hard-coded list]
+ -t --tool primary creation tool [after cd: guess fontinst or afm2pl or empty]
+ -v --vendor specify font vendor name [arkandis]
+If no files are specified, a list is constructed from the lists of derived, nonderived and ADF or other original vendor files."
+error () {
+ echo "$@" 1>&2
+ allan=$((allan+1))
+ usage_and_exit $allan
+}
+usage () {
+ printf %b "$usage\n"
+}
+usage_and_exit () {
+ usage
+ exit $1
+}
+
+ctaninst () {
+ ctaninstallan=0
+ while [ $# != 0 ]
+ do
+ if [ -e "$1" ]
+ then
+ grep -w "$1" $nonder > /dev/null
+ if [ $? == 0 ]
+ then
+ if [ -e "../cfr/$1" ]
+ then
+ diff "$1" "../cfr/$1" > /dev/null
+ if [ $? != 0 ]
+ then
+ printf %b "A non-duplicate copy of $1 already exists in ../cfr.\nUsing ../cfr.$$ for new versions.\nPlease examine manually.\n"
+ mkdir -p ../cfr.$$
+ cp -pR "$1" ../cfr.$$/
+ fi
+ else
+ cp -pR "$1" ../cfr/
+ fi
+ if [ -e "../cfr.$$/$1" ]
+ then
+ diff "./$1" "../cfr.$$/$1" > /dev/null
+ if [ $? != 0 ]
+ then
+ printf %b "A problem occurred when copying $1. This file will not be installed.\n"
+ problem=1
+ else
+ problem=0
+ fi
+ else
+ diff "./$1" "../cfr/$1" > /dev/null
+ if [ $? != 0 ]
+ then
+ printf %b "A problem occurred when copying $1. This file will not be installed.\n"
+ problem=1
+ else
+ problem=0
+ fi
+ fi
+ if [ $problem != 0 ]
+ then
+ allan=$((allan+1))
+ ctaninstallan=1
+ shift
+ continue
+ fi
+ else
+ grep -w "$1" $der > /dev/null
+ if [ $? != 0 ]
+ then
+ grep -w "$1" $adf $ovend > /dev/null
+ if [ $? != 0 ]
+ then
+ printf %b "$1 is not listed as a derived, non-derived or ADF/original vendor's file and will be ignored.\n"
+ allan=$((allan+1))
+ ctaninstallan=1
+ shift
+ continue
+ fi
+ fi
+ fi
+ ctansort "$1"
+ if [ $? != 0 ]
+ then
+ printf %b "A problem occurred sorting $1.\n"
+ allan=$((allan+1))
+ ctaninstallan=1
+ fi
+ else
+ printf %b "Cannot find $1. Skipping.\n"
+ allan=$((allan+1))
+ fi
+ shift
+ done
+ return $ctaninstallan
+}
+
+mvsubs () {
+ mvsubsallan=0
+ filestocopy=""
+ filestomove=""
+ while [ $# -gt 1 ]
+ do
+ file "$1" | grep "symbolic link" > /dev/null
+ if [ $? == 0 ]
+ then
+ filestocopy="$filestocopy $1"
+ else
+ filestomove="$filestomove $1"
+ fi
+ shift
+ done
+ if [ "$filestomove" != "" ]
+ then
+ mv $filestomove "$1"
+ if [ $? != 0 ]
+ then
+ printf %b "There was a problem moving $filestomove to $1.\n"
+ allan=$((allan+1))
+ mvsubsallan=1
+ fi
+ fi
+ if [ "$filestocopy" != "" ]
+ then
+ cp -p $filestocopy "$1"
+ if [ $? != 0 ]
+ then
+ printf %b "There was a problem copying $filestocopy to $1.\n"
+ allan=$((allan+1))
+ mvsubsallan=1
+ fi
+ fi
+ return $mvsubsallan
+}
+
+ctansort () {
+ if [ $# != 1 ]
+ then
+ printf %b "ctansort takes exactly one argument.\n"
+ return 1
+ else
+ if [ "$@" = "Makefile" ] || [ "$@" = "com" ] || [ "$@" = "cfr.gwneud.cyhoeddus" ]
+ then
+ mvsubs "$@" "$sourcedir/"
+ return $?
+ fi
+ j="${@##*\-}"
+ if [ "$j" = "drv.tex" ] || [ "$j" = "map.tex" ]
+ then
+ mvsubs "$@" "$sourcedir/"
+ return $?
+ fi
+ j="${@##*\.}"
+ case "$j" in
+ "afm")
+ mvsubs "$@" "$afmdir/"
+ return $?
+ ;;
+ "enc")
+ mvsubs "$@" "$encdir/"
+ return $?
+ ;;
+ "map")
+ mvsubs "$@" "$mapdir/"
+ return $?
+ ;;
+ "tfm")
+ mvsubs "$@" "$tfmdir/"
+ return $?
+ ;;
+ "pfb" | "pfm")
+ mvsubs "$@" "$type1dir/"
+ return $?
+ ;;
+ "ttf")
+ mvsubs "$@" "$truetypedir/"
+ return $?
+ ;;
+ "vf")
+ mvsubs "$@" "$vfdir/"
+ return $?
+ ;;
+ "fd" | "sty")
+ mvsubs "$@" "$texdir/"
+ return $?
+ ;;
+ "etx" | "lig" | "nam" | "pe" | "sfd" | "otf")
+ mvsubs "$@" "$sourcedir/"
+ return $?
+ ;;
+ "txt")
+ mvsubs "$@" "$docdir/"
+ return $?
+ ;;
+ *)
+ ;;
+ esac
+ j="${@%\.*}"
+ case "$j" in
+ COPYING | NOTICE | README | manifest | "$manual")
+ mvsubs "$@" "$docdir/"
+ return $?
+ ;;
+ *)
+ ;;
+ esac
+ j="${@%%\-*}"
+ case "$j" in
+ reglyph | reset | build)
+ mvsubs "$@" "$sourcedir/"
+ return $?
+ ;;
+ *)
+ ;;
+ esac
+ printf %b "ctansort does not recognise $@. This file will not be installed.\n"
+ return 1
+ fi
+}
+
+trymkdir () {
+ while [ $# != 0 ]
+ do
+ mkdir -p "$1"
+ if [ $? != 0 ]
+ then
+ error Could not create "$1".
+ fi
+ shift
+ done
+ return 0
+}
+
+tempargs=$(getopt -o a:c:d:f:hm:n:o:t:v: --long adf:,directory:,derived:,font:,help,manual:,nonderived:,original:,tool:,vendor: -- "$@")
+if [ $? != 0 ];
+then
+ usage_and_exit
+fi
+eval set -- "$tempargs"
+
+while true
+do
+ case "$1"
+ in
+ -a | --adf)
+ if [ -f "$2" ]
+ then
+ adf="$2"
+ else
+ error "$2" is not a regular file.
+ fi
+ shift;
+ shift;;
+ -c | --directory)
+ directory="$2";
+ shift;
+ shift;;
+ -d | --der | --derive | --derived)
+ if [ -f "$2" ]
+ then
+ der="$2"
+ else
+ error "$2" is not a regular file.
+ fi
+ shift;
+ shift;;
+ -f | --font)
+ font="$2"
+ shift;
+ shift;;
+ -h | --help)
+ usage;
+ exit $allan;;
+ -m | --manual)
+ manual="${2%%\.*}";
+ shift;
+ shift;;
+ -n | --nonder | --nonderive | --nonderived)
+ if [ -f "$2" ]
+ then
+ nonder="$2"
+ else
+ error "$2" is not a regular file.
+ fi
+ shift;
+ shift;;
+ -o | --orig | --original)
+ if [ -f "$2" ]
+ then
+ ovend="$2"
+ else
+ error "$2" is not a regular file.
+ fi
+ shift;
+ shift;;
+ -t | --tool)
+ tool="$2"
+ shift;
+ shift;;
+ -v | --vendor)
+ vendor="$2";
+ shift;
+ shift;;
+ --)
+ shift;
+ break;;
+ *)
+ error Unrecognised option "$1".
+ esac
+done
+
+args="$@"
+
+
+
+cd "$directory"
+if [ $? != 0 ]
+then
+ error Could not switch to "$directory".
+fi
+
+if [ "$font" = "" ]
+then
+ thisdir=$(gbasename $(pwd))
+ font=${thisdir%%\-*}
+ echo Setting font directory to "$font".
+fi
+
+if [ "$manual" = "" ]
+then
+ if [ -f "./${font}.tex" ]
+ then
+ manual="${font}"
+ echo Setting manual to "$manual".
+ elif [ -f "./${font}adf.tex" ]
+ then
+ manual="${font}adf"
+ echo Setting manual to "$manual".
+ else
+ printf %b "Warning! No manual found.\n"
+ allan=$((allan+1))
+ fi
+fi
+
+if [ "$(ls manifest* 2> /dev/null)" = "" ]
+then
+ printf %b "Creating manifest.\n"
+ touch manifest.txt
+ if [ -f $cfrtop/manifest.top ]
+ then
+ cat $cfrtop/manifest.top >> manifest.txt
+ createmanifest=1
+ else
+ printf %b "Cannot create manifest.txt. No manifest.top found.\n"
+ rm manifest.txt
+ allan=$((allan+1))
+ createmanifest=0
+ fi
+else
+ createmanifest=0
+fi
+
+if [ "$tool" = "" ]
+then
+ if [ "$(ls *-drv.tex 2> /dev/null)" != "" ] || [ "$(ls *-map.tex 2> /dev/null)" != "" ]
+ then
+ tool="fontinst"
+ printf %b "Guessing you used fontinst for this one.\n"
+ elif [ "$(ls *.lig 2> /dev/null)" != "" ] || [ "$(ls Makefile 2> /dev/null)" != "" ] || [ "$(ls com 2> /dev/null)" != "" ]
+ then
+ tool="afm2pl"
+ printf %b "Guessing you used afm2pl for this one.\n"
+ else
+ printf %b "Cannot guess the tool used. Please specify.\n"
+ allan=$((allan+1))
+ fi
+fi
+
+
+if [ "$der" = "" ]
+then
+ if [ -e "./der" ]
+ then
+ der=./der
+ elif [ -e "../cfr/der" ]
+ then
+ der=../cfr/der
+ else
+ printf %b "Using default list for derived files.\nPlease check ./der.\n"
+ if [ "$tool" = "fontinst" ]
+ then
+ ls *.enc *.tfm *.vf *.fd *.map >> ./der 2> /dev/null
+ elif [ "$tool" = "afm2pl" ]
+ then
+ ls *.tfm *.vf *.map >> ./der 2> /dev/null
+ else
+ printf %b "Creation tool is either unrecognised or unguessable. If the former, please populate der manually - the file I create will certainly be radically incomplete. If the latter, please specify the tool.\n"
+ fi
+ if [ -f "$manual.pdf" ]
+ then
+ echo "$manual.pdf" >> ./der
+ fi
+ der=./der
+ fi
+fi
+
+if [ "$nonder" = "" ]
+then
+ if [ -e "./nonder" ]
+ then
+ nonder=./nonder
+ elif [ -e "../cfr/nonder" ]
+ then
+ nonder=../cfr/nonder
+ else
+ printf %b "Using default list for non-derived files.\nPlease check ./nonder.\n"
+ if [ "$tool" = "fontinst" ]
+ then
+ ls *[^~]*.etx reglyph*.tex reset*.mtx build*.mtx *-drv.tex *-drv.map >> ./nonder 2> /dev/null
+ elif [ "$tool" = "afm2pl" ]
+ then
+ ls *[^~]*.enc *[^~]*.fd *[^~]*.lig Makefile com >> ./nonder 2> /dev/null
+ else
+ printf %b "Creation tool is either unrecognised or unguessable. If the former, please populate nonder manually - the file I create will certainly be radically incomplete. If the latter, please specify the tool.\n"
+ fi
+ ls *[^~]*.nam *.pe manifest* README *.sty >> ./nonder 2> /dev/null
+ if [ -f "$manual.tex" ]
+ then
+ echo "$manual.tex" >> ./nonder
+ fi
+ nonder=./nonder
+ fi
+fi
+
+if [ "$adf" = "" ] && [ "$ovend" = "" ]
+then
+ if [ -e "./adf" ]
+ then
+ adf=./adf
+ elif [ -e "../cfr/adf" ]
+ then
+ adf=../cfr/adf
+ elif [ -e "./ovend" ]
+ then
+ ovend=./ovend
+ elif [ -e "../cfr/ovend" ]
+ then
+ ovend=../cfr/ovend
+ elif [ "$vendor" = "arkandis" ]
+ then
+ printf %b "Using default list for ADF files.\nPlease check ./adf.\n"
+ ls COPYING* NOTICE* *.afm *.pfb *.pfm *.otf *.sfd >> ./adf 2> /dev/null
+ adf=./adf
+ else
+ printf %b "Using default list for original vendor's files.\nPlease check ./ovend.\n"
+ ls COPYING* NOTICE* [A-Z][A-Z\-]*[A-Z].txt *.afm *.pfb *.pfm *.otf *.ttf *.sfd >> ./ovend 2> /dev/null
+ ovend=./ovend
+ fi
+fi
+
+if [ $createmanifest == 1 ]
+then
+ grep manifest.txt $nonder > /dev/null
+ if [ $? != 0 ]
+ then
+ printf %b "Adding manifest to list of nonderived files.\n"
+ echo manifest.txt >> $nonder
+ fi
+ cat $nonder >> manifest.txt
+ if [ -f $cfrtop/manifest.mid ]
+ then
+ cat $cfrtop/manifest.mid >> manifest.txt
+ else
+ printf %b "\nDerived files:\n" >> manifest.txt
+ fi
+ cat $der >> manifest.txt
+fi
+
+if [ $# == 0 ]
+then
+ files=$(cat $der $nonder $adf $ovend)
+ if [ "$files" = "" ]
+ then
+ error Could not determine any files to install.
+ fi
+else
+ files=$args
+fi
+
+trymkdir $docdir $texdir $afmdir $mapdir $tfmdir ../cfr
+if [ "$(echo "$files" | grep '\.pfb' 2> /dev/null)" != "" ]
+then
+ trymkdir $type1dir
+fi
+if [ "$(echo "$files" | grep '\.ttf' 2> /dev/null)" != "" ]
+then
+ trymkdir $truetypedir
+fi
+for i in "\.etx" "\-drv\.tex" "\-map\.tex" "reglyph.*\.tex" "reset.*\.mtx" "build*\.mtx" "Makefile" "^com$" "^com " " com$" " com " "\.lig" "\.nam" "\.pe" "\.sfd" "\.otf"
+do
+ if [ "$(echo "$files" | grep "$i" 2> /dev/null)" != "" ]
+ then
+ trymkdir $sourcedir
+ break
+ fi
+done
+if [ "$(echo "$files" | grep '\.enc' 2> /dev/null)" != "" ]
+then
+ existencs=1
+ trymkdir $encdir
+fi
+if [ "$(echo "$files" | grep '\.vf' 2> /dev/null)" != "" ]
+then
+ trymkdir $vfdir
+fi
+
+ctaninst $@ $files
+
+if [ -e "$docdir/README" ]
+then
+ ln -s "$docdir/"README ./
+else
+ printf %b "Warning! No README found.\n"
+ allan=$((allan+1))
+fi
+
+if [ $existencs==1 ]
+then
+ printf %b "Did you uniquify the .enc files?\nDid you add the .enc files to finstmsc.rc?\n"
+fi
+
+exit $allan
+
+# vim: set nospell: