cvpod.pl
上传用户:woshihumen
上传日期:2013-07-18
资源大小:484k
文件大小:1k
源码类别:

Email服务器

开发平台:

Visual C++

  1. #!/usr/bin/perl
  2. #-----------------------------------------
  3. # cvpod - simple script to involk pod2html
  4. #         and pod2text
  5. #
  6. # a single argument gives the input file
  7. # name; the outputs are <rootname>.html
  8. # and <rootname>.txt.
  9. #
  10. # Beau E, Cox, BeauCox.com
  11. # <beau@beaucox.com>
  12. # <http://beaucox.com>
  13. #
  14. # October 13, 2002
  15. #-----------------------------------------
  16. use strict;
  17. use warnings;
  18. my $infn = shift @ARGV;
  19. $infn || die "no input file specifiedn";
  20. (-T $infn) || die "input file $infn not found or invalidn";
  21. my @in;
  22. open (IN, $infn) or die "unable to open $infn:n$!n";
  23. while (<IN>) {
  24. super_chomp ();
  25. $_ || next;
  26. last if /^=begins+cvpod/i;
  27. }
  28. while (<IN>) {
  29. super_chomp ();
  30. $_ || next;
  31. last if /^=ends+cvpod/i;
  32. push @in, $_;
  33. }
  34. unless (@in) {
  35. print "'=begin cvpod' directive found in $infn, no action takenn";
  36. exit 1;
  37. }
  38. close IN;
  39. while (1) {
  40. $_ = shift @in;
  41. $_ || last;
  42. my ($cssfn) = /^:begins+csss+(.+)/i;
  43. if ($cssfn) {
  44. open (CSS, ">$cssfn")
  45. or die "unable to open $infn:n$!n";
  46. while (1) {
  47. $_ = shift @in;
  48. $_ || last;
  49. last if (/^:/);
  50. print CSS "$_n";
  51. }
  52. close CSS;
  53. }
  54. $_ || last;
  55. my ($cmd) = /^:runs+(.+)/i;
  56. $cmd || next;
  57. print "$cmdn";
  58. system $cmd;
  59. }
  60. my $cmd = ($^O =~ m/win32/i) ? "del" : "rm";
  61. $cmd .= " pod2h*.x~~";
  62. print "$cmdn";
  63. system $cmd;
  64. exit 0;
  65. sub super_chomp
  66. {
  67. $_ = shift if (@_);
  68. s/x0D//g;
  69. s/x0A//g;
  70. $_;
  71. }