summaryrefslogtreecommitdiffstats
path: root/scripts/MarkdownBook/Document/txt.pm
diff options
context:
space:
mode:
authorP. J. McDermott <pjm@nac.net>2012-08-12 16:38:48 (EDT)
committer P. J. McDermott <pjm@nac.net>2012-08-12 16:38:48 (EDT)
commit8f4cc803a74728b07532a6c2ff2788b63b012d3c (patch)
tree2b7f018fead897b18a6ee94715519b942f71a5ef /scripts/MarkdownBook/Document/txt.pm
parenta5d1ce13172e8d91d24ede48f28cc269e3d1aa23 (diff)
parent37555e439fc99e0f14fa9d6c65c3a9db2de1b9da (diff)
Merge branch 'markdown-book' of git://git.os.pehjota.net/users/pehjota/doc/policies
Diffstat (limited to 'scripts/MarkdownBook/Document/txt.pm')
-rw-r--r--scripts/MarkdownBook/Document/txt.pm46
1 files changed, 46 insertions, 0 deletions
diff --git a/scripts/MarkdownBook/Document/txt.pm b/scripts/MarkdownBook/Document/txt.pm
new file mode 100644
index 0000000..f150477
--- /dev/null
+++ b/scripts/MarkdownBook/Document/txt.pm
@@ -0,0 +1,46 @@
+# Copyright (C) 2012 Patrick "P. J." McDermott
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program 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 General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+use strict;
+use warnings;
+
+use MarkdownBook::Document;
+use Carp;
+
+package MarkdownBook::Document::txt;
+
+our @ISA = qw(MarkdownBook::Document);
+
+sub output
+{
+ my ($self) = @_;
+ my $out_fh;
+
+ open($out_fh, '>',
+ $self->{'book'}->dir() . '/' . $self->{'file'} . '.txt')
+ or Carp::croak('Cannot open "' . $self->{'file'} .
+ '" destination document');
+
+ # Print document title.
+ print($out_fh $self->{'title'} . "\n" .
+ '*' x length($self->{'title'}) . "\n\n\n");
+
+ # Print document text with macro substitutions.
+ print($out_fh $self->{'book'}->subst_macros($self->{'source_text'}));
+
+ close($out_fh);
+}
+
+1;