Revision b40292e7 hxtool
b/hxtool | ||
---|---|---|
7 | 7 |
case $str in |
8 | 8 |
HXCOMM*) |
9 | 9 |
;; |
10 |
STEXI*|ETEXI*) flag=$(($flag^1)) |
|
10 |
STEXI*|ETEXI*|SQMP*|EQMP*) flag=$(($flag^1))
|
|
11 | 11 |
;; |
12 | 12 |
*) |
13 | 13 |
test $flag -eq 1 && printf "%s\n" "$str" |
... | ... | |
38 | 38 |
fi |
39 | 39 |
flag=0 |
40 | 40 |
;; |
41 |
SQMP*|EQMP*) |
|
42 |
if test $flag -eq 1 ; then |
|
43 |
echo "line $line: syntax error: expected ETEXI, found $str" >&2 |
|
44 |
exit 1 |
|
45 |
fi |
|
46 |
;; |
|
41 | 47 |
DEFHEADING*) |
42 | 48 |
echo "$(expr "$str" : "DEFHEADING(\(.*\))")" |
43 | 49 |
;; |
... | ... | |
49 | 55 |
done |
50 | 56 |
} |
51 | 57 |
|
58 |
hxtoqmp() |
|
59 |
{ |
|
60 |
IFS= |
|
61 |
flag=0 |
|
62 |
while read -r str; do |
|
63 |
case "$str" in |
|
64 |
HXCOMM*) |
|
65 |
;; |
|
66 |
SQMP*) |
|
67 |
if test $flag -eq 1 ; then |
|
68 |
echo "line $line: syntax error: expected EQMP, found $str" >&2 |
|
69 |
exit 1 |
|
70 |
fi |
|
71 |
flag=1 |
|
72 |
;; |
|
73 |
EQMP*) |
|
74 |
if test $flag -ne 1 ; then |
|
75 |
echo "line $line: syntax error: expected SQMP, found $str" >&2 |
|
76 |
exit 1 |
|
77 |
fi |
|
78 |
flag=0 |
|
79 |
;; |
|
80 |
STEXI*|ETEXI*) |
|
81 |
if test $flag -eq 1 ; then |
|
82 |
echo "line $line: syntax error: expected EQMP, found $str" >&2 |
|
83 |
exit 1 |
|
84 |
fi |
|
85 |
;; |
|
86 |
*) |
|
87 |
test $flag -eq 1 && echo "$str" |
|
88 |
;; |
|
89 |
esac |
|
90 |
done |
|
91 |
} |
|
92 |
|
|
52 | 93 |
case "$1" in |
53 | 94 |
"-h") hxtoh ;; |
54 | 95 |
"-t") hxtotexi ;; |
96 |
"-q") hxtoqmp ;; |
|
55 | 97 |
*) exit 1 ;; |
56 | 98 |
esac |
57 | 99 |
|
Also available in: Unified diff