aboutsummaryrefslogtreecommitdiff
path: root/maketpl
diff options
context:
space:
mode:
Diffstat (limited to 'maketpl')
-rwxr-xr-xmaketpl55
1 files changed, 0 insertions, 55 deletions
diff --git a/maketpl b/maketpl
deleted file mode 100755
index 7908f3b..0000000
--- a/maketpl
+++ /dev/null
@@ -1,55 +0,0 @@
-#!/usr/bin/env perl
-
-# `maketpl' translates a template file (.t) to a C program (.tc)
-# that prints that template with the desired interpolations.
-
-use strict;
-use warnings;
-
-my $buf;
-
-while (<STDIN>) {
- if (/(.*)\<%=(.+)%\>(.*)/) {
- $buf .= $1;
- flsh();
- print qq(printf("%s", $2);\n);
- if ($3) {
- $buf .= "$3\n";
- }
- } elsif (/(.*)\<%/) {
- my $code;
- $buf .= $1;
- flsh();
- if (/\<%(.*)%\>(.*)/) {
- $code = $1;
- $buf .= $2;
- $buf .= "\n";
- } else {
- /\<%(.*)/;
- $code = $1;
- while (<STDIN>) {
- if (/(.*)%\>(.*)/) {
- $code .= $1;
- $buf .= $2;
- $buf .= "\n";
- last;
- }
- $code .= $_;
- }
- }
- print $code;
- } else {
- $buf .= $_;
- }
-}
-
-flsh();
-
-sub flsh {
- return if not $buf;
- $buf =~ s/\\/\\\\/g;
- $buf =~ s/"/\\"/g;
- $buf =~ s/\n/\\n/g;
- print qq(printf("$buf");\n);
- $buf = '';
-} \ No newline at end of file