summaryrefslogtreecommitdiff
path: root/mkmd2mdwn-default
blob: 588b61ea778ebe4a70231373ebd90cacf601459c (plain)
  1. #!/usr/bin/perl
  2. # normalize Markdown
  3. use Getopt::Long;
  4. use File::Slurp;
  5. use Lingua::Sentence;
  6. use strict;
  7. use warnings;
  8. # setup sentence splitter
  9. my $splitter = Lingua::Sentence->new("en");
  10. my $force;
  11. GetOptions ("force|f");
  12. my $stem = shift;
  13. $_ = read_file( $stem . '.md' );
  14. # join non-headline multi-lines
  15. s/([^\n=])\n/$1 /g;
  16. #s/(?<=[\S^=])\h*\n(?=[\S^=])/ /g;
  17. # split into sentences
  18. $_ = $splitter->split($_);
  19. # split after comma, and before and after ellipsis
  20. #s/,\s(?=[^\v=]*\v)/,\n/mg;
  21. s/\h+(\(…\))/\n$1/mg;
  22. s/(\(…\))\h+/$1\n/mg;
  23. write_file( $stem . '.mdwn', $_ );
  24. print "DONE: $0 stem $stem\n";