| # liblouis Braille Translation and Back-Translation Library |
| # |
| # Copyright (C) 2017 Bert Frees |
| # |
| # This file is part of liblouis. |
| # |
| # liblouis is free software: you can redistribute it and/or modify it |
| # under the terms of the GNU Lesser General Public License as published |
| # by the Free Software Foundation, either version 2.1 of the License, or |
| # (at your option) any later version. |
| # |
| # liblouis is distributed in the hope that it will be useful, but |
| # WITHOUT ANY WARRANTY; without even the implied warranty of |
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| # Lesser General Public License for more details. |
| # |
| # You should have received a copy of the GNU Lesser General Public |
| # License along with liblouis. If not, see <http://www.gnu.org/licenses/>. |
| # |
| |
| CURDIR=$(cd $(dirname "$0") && pwd) |
| WORKING_FILE=${1} |
| CONTRACTIONS_TABLE=${2} |
| BASE_TABLE=${3} |
| RULE_GREP="^[ \t]*[+-]\?\(nocross\|syllable\*\|always\|word\|begword\|endword\|midword\|begmidword\|midendword\|prfword\|sufword\)" |
| set -e |
| [[ $VERBOSE == true ]] && set -x |
| if [ -e $WORKING_FILE ]; then |
| cat $WORKING_FILE | grep -v "^$" | grep -v "^#" > tmp || true |
| mv tmp $WORKING_FILE |
| if cat $WORKING_FILE | grep "$RULE_GREP" > tmp; then |
| python3 $CURDIR/submit_rules.py -t $BASE_TABLE tmp $CONTRACTIONS_TABLE > tmp2 |
| mv tmp2 tmp |
| cat <<- EOF > $CONTRACTIONS_TABLE |
| ################################## |
| # don't edit this file directly! # |
| ################################## |
| EOF |
| cat tmp >> $CONTRACTIONS_TABLE |
| cat $WORKING_FILE | grep -v "$RULE_GREP" > tmp || true |
| mv tmp $WORKING_FILE |
| else |
| rm -f tmp |
| fi |
| [ -s $WORKING_FILE ] || rm $WORKING_FILE |
| fi |