File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / rsync / tweak_manpage
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Fri Feb 17 15:09:30 2012 UTC (12 years, 3 months ago) by misho
Branches: rsync, MAIN
CVS tags: v3_1_2p5, rsync3_0_9p0, RSYNC3_1_0, RSYNC3_0_9, HEAD
rsync

#!/usr/bin/perl -i -p

use strict;
use warnings;

# We only need to use "\&'" or "\&." at the start of a line.
s/(?<=.)\\\&(['.])/$1/g;

# Some quotes turn into open/close quotes.
s/'(.)'/\\(oq$1\\(cq/g;
s/(^|[ (])"(?!( |$))/$1\\(lq/gm;
s/(?<! )"([.,:;! )]|$)/\\(rq$1/gm;
s/(\\\(lq[^(]*) "( |$)/$1 \\(rq$2/gm;
s/(^| )" ([^(]*\\\(rq)/$1\\(lq $2/gm;

# And some don't.
s/^([. ])(.*)/ $1 . realquotes($2) /egm;
s/(\\f(B|\(CW).*?\\fP)/ realquotes($1) /egs;

s/^\\\&(\\\(oq)/$1/gm;

sub realquotes
{
    my($txt) = @_;
    $txt =~ s/\\\([lr]q/"/g;
    $txt =~ s/\\\([oc]q/'/g;
    $txt;
}

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>