Statistics
| Branch: | Revision:

root / scripts / hxtool @ f53ec699

History | View | Annotate | Download (2.3 kB)

1 5824d651 blueswir1
#!/bin/sh
2 5824d651 blueswir1
3 5824d651 blueswir1
hxtoh()
4 5824d651 blueswir1
{
5 5824d651 blueswir1
    flag=1
6 fb21ced7 blueswir1
    while read -r str; do
7 5824d651 blueswir1
        case $str in
8 5824d651 blueswir1
            HXCOMM*)
9 5824d651 blueswir1
            ;;
10 b40292e7 Jan Kiszka
            STEXI*|ETEXI*|SQMP*|EQMP*) flag=$(($flag^1))
11 5824d651 blueswir1
            ;;
12 5824d651 blueswir1
            *)
13 004efc96 blueswir1
            test $flag -eq 1 && printf "%s\n" "$str"
14 5824d651 blueswir1
            ;;
15 5824d651 blueswir1
        esac
16 5824d651 blueswir1
    done
17 5824d651 blueswir1
}
18 5824d651 blueswir1
19 5824d651 blueswir1
hxtotexi()
20 5824d651 blueswir1
{
21 5824d651 blueswir1
    flag=0
22 6c913ba5 Jan Kiszka
    line=1
23 fb21ced7 blueswir1
    while read -r str; do
24 5824d651 blueswir1
        case "$str" in
25 5824d651 blueswir1
            HXCOMM*)
26 5824d651 blueswir1
            ;;
27 6c913ba5 Jan Kiszka
            STEXI*)
28 6c913ba5 Jan Kiszka
            if test $flag -eq 1 ; then
29 6c913ba5 Jan Kiszka
                echo "line $line: syntax error: expected ETEXI, found $str" >&2
30 6c913ba5 Jan Kiszka
                exit 1
31 6c913ba5 Jan Kiszka
            fi
32 6c913ba5 Jan Kiszka
            flag=1
33 6c913ba5 Jan Kiszka
            ;;
34 6c913ba5 Jan Kiszka
            ETEXI*)
35 6c913ba5 Jan Kiszka
            if test $flag -ne 1 ; then
36 6c913ba5 Jan Kiszka
                echo "line $line: syntax error: expected STEXI, found $str" >&2
37 6c913ba5 Jan Kiszka
                exit 1
38 6c913ba5 Jan Kiszka
            fi
39 6c913ba5 Jan Kiszka
            flag=0
40 5824d651 blueswir1
            ;;
41 b40292e7 Jan Kiszka
            SQMP*|EQMP*)
42 b40292e7 Jan Kiszka
            if test $flag -eq 1 ; then
43 b40292e7 Jan Kiszka
                echo "line $line: syntax error: expected ETEXI, found $str" >&2
44 b40292e7 Jan Kiszka
                exit 1
45 b40292e7 Jan Kiszka
            fi
46 b40292e7 Jan Kiszka
            ;;
47 5824d651 blueswir1
            DEFHEADING*)
48 7d69c52e Stefan Weil
            echo "$(expr "$str" : "DEFHEADING(\(.*\))")"
49 5824d651 blueswir1
            ;;
50 a3adb7ad Michael Ellerman
            ARCHHEADING*)
51 a3adb7ad Michael Ellerman
            echo "$(expr "$str" : "ARCHHEADING(\(.*\),.*)")"
52 a3adb7ad Michael Ellerman
            ;;
53 5824d651 blueswir1
            *)
54 7d69c52e Stefan Weil
            test $flag -eq 1 && echo "$str"
55 5824d651 blueswir1
            ;;
56 5824d651 blueswir1
        esac
57 6c913ba5 Jan Kiszka
        line=$((line+1))
58 5824d651 blueswir1
    done
59 5824d651 blueswir1
}
60 5824d651 blueswir1
61 b40292e7 Jan Kiszka
hxtoqmp()
62 b40292e7 Jan Kiszka
{
63 b40292e7 Jan Kiszka
    IFS=
64 b40292e7 Jan Kiszka
    flag=0
65 02e95918 Jan Kiszka
    line=1
66 b40292e7 Jan Kiszka
    while read -r str; do
67 b40292e7 Jan Kiszka
        case "$str" in
68 b40292e7 Jan Kiszka
            HXCOMM*)
69 b40292e7 Jan Kiszka
            ;;
70 b40292e7 Jan Kiszka
            SQMP*)
71 b40292e7 Jan Kiszka
            if test $flag -eq 1 ; then
72 b40292e7 Jan Kiszka
                echo "line $line: syntax error: expected EQMP, found $str" >&2
73 b40292e7 Jan Kiszka
                exit 1
74 b40292e7 Jan Kiszka
            fi
75 b40292e7 Jan Kiszka
            flag=1
76 b40292e7 Jan Kiszka
            ;;
77 b40292e7 Jan Kiszka
            EQMP*)
78 b40292e7 Jan Kiszka
            if test $flag -ne 1 ; then
79 b40292e7 Jan Kiszka
                echo "line $line: syntax error: expected SQMP, found $str" >&2
80 b40292e7 Jan Kiszka
                exit 1
81 b40292e7 Jan Kiszka
            fi
82 b40292e7 Jan Kiszka
            flag=0
83 b40292e7 Jan Kiszka
            ;;
84 b40292e7 Jan Kiszka
            STEXI*|ETEXI*)
85 b40292e7 Jan Kiszka
            if test $flag -eq 1 ; then
86 b40292e7 Jan Kiszka
                echo "line $line: syntax error: expected EQMP, found $str" >&2
87 b40292e7 Jan Kiszka
                exit 1
88 b40292e7 Jan Kiszka
            fi
89 b40292e7 Jan Kiszka
            ;;
90 b40292e7 Jan Kiszka
            *)
91 b40292e7 Jan Kiszka
            test $flag -eq 1 && echo "$str"
92 b40292e7 Jan Kiszka
            ;;
93 b40292e7 Jan Kiszka
        esac
94 02e95918 Jan Kiszka
        line=$((line+1))
95 b40292e7 Jan Kiszka
    done
96 b40292e7 Jan Kiszka
}
97 b40292e7 Jan Kiszka
98 5824d651 blueswir1
case "$1" in
99 5824d651 blueswir1
"-h") hxtoh ;;
100 5824d651 blueswir1
"-t") hxtotexi ;;
101 b40292e7 Jan Kiszka
"-q") hxtoqmp ;;
102 5824d651 blueswir1
*) exit 1 ;;
103 5824d651 blueswir1
esac
104 5c2f8d2d blueswir1
105 5c2f8d2d blueswir1
exit 0