I can handle the external program. With suitable options it takes input from stdin, writes out to stdout and stderr.
E.g. the following works:
cat foo.md | multimarkdown | wc
(But why would you want to count html kibbles?)
If it helps, assume that I'm filtering through cut, or sort or sed or awk.
WHICH external program is irrelevant to the discussion.
Indeed, what I think I'm looking for is a generic pipe module that can be renamed and used with a single line edit, or that the command to be run is passed as a parameter.
The part you breeze over is the part I'm having trouble with.
Below is the content of Template/Plugin/MultiMarkdown.pm
It in turn makes reference to Text::MultiMarkdown
#$Id: MultiMarkdown.pm 4103 2009-03-02 20:41:50Z andrew $ package Template::Plugin::MultiMarkdown; use strict; use base qw (Template::Plugin::Filter); use Text::MultiMarkdown; our $VERSION = 0.03; sub init { my $self = shift; $self->{_DYNAMIC} = 1; $self->install_filter($self->{_ARGS}->[0] || 'multimarkdown'); return $self; } sub filter { my ($self, $text, $args, $config) = @_; my $m = Text::MultiMarkdown->new(%{$config || {}}); return $m->markdown($text); } <readmore> 1; __END__ =head1 NAME Template::Plugin::MultiMarkdown - TT plugin for Text::MultiMarkdown =head1 SYNOPSIS [% USE MultiMarkdown -%] [% FILTER multimarkdown %] #Foo Bar --- *Italic* blah blah **Bold** foo bar baz [%- END %] =head1 DESCRIPTION Template::Plugin::MultiMarkdown is a plugin for TT, which will format your text with MultiMarkdown Style. =head1 SUBROUTINES/METHODS There are two methods required by the TT plugin API: =over 4 =item C<init()> =item C<filter()> =back =head1 VERSION This man page describes version 0.03. =head1 SEE ALSO L<Template>, L<Text::MultiMarkdown>, L<http://fletcherpenney.net/multi +markdown/> =head1 AUTHOR Andrew Ford E<lt>A.Ford@ford-mason.co.ukE<gt> (based on the L<Template::Plugin::Markdown> TT plugin by Naoya Ito E<lt>naoya@bloghackers.netE<gt>). =head1 LICENSE AND COPYRIGHT Copyright (C) 2009 Andrew Ford This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. =cut </readmore>
So, I copy this to MultiMarkdownBin
It no longer uses Text::Markdown so I can eliminate that.
I need something from one of the 284 different IPC modules.
Which one?
WHAT do I replace in the above code?
I am so far from enlightenment, that I'm waiting between photons.
In reply to Re^4: Replacing perl module with external program
by sgbotsford
in thread Replacing perl module with external program
by sgbotsford
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |