File: make-nofallbacks

package info (click to toggle)
console-data 2%3A1.12-9
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, forky, sid, trixie
  • size: 6,388 kB
  • sloc: sh: 3,272; pascal: 472; makefile: 233; perl: 168
file content (37 lines) | stat: -rwxr-xr-x 754 bytes parent folder | download | duplicates (7)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#!/bin/bash
# -*- sh -*-

# Takes on stdin a file formated like the official UnicodeData list;
# Writes on stdout a list of chars that don't get a fallback

if [ $# != 2 ]
then
    echo >&2 "Usage: $(basename $0) FULL_PATTERN HOPEFULL_PATTERN"
    echo >&2 "          < /usr/share/unicode/UnicodeData.txt >out.nofallback"
    exit 1
fi

FULL_PATTERN=$1
HOPEFULL_PATTERN=$2

FILE=/tmp/file.$$
cut -d\; -f1,2 >$FILE

cat << EOF
#
# List of characters matching:
# '${HOPEFULL_PATTERN}'
# that don't get a fallback using:
# FULL_PATTERN='${FULL_PATTERN}'
#
# Auto-generated by $(basename $0) from UnicodeData list 
#
# ** DO NOT EDIT MANUALLY **
#

EOF

egrep < $FILE -f <(echo ";${HOPEFULL_PATTERN}") |
    egrep -v -f <(echo ";${FULL_PATTERN}$")

rm $FILE