#!/usr/bin/perl -pi.bak -w

BEGIN { $ENV{OOO_VENDOR} ||= "unknown"; $helpsans = 0; $helpfixed = 0; }

# This does a partial substitution of the really
# mechanical bits of our fonts in help content.

    # add URW fonts
    s/Arial,/Arial,\"Nimbus Sans L\",/g;
    s/\"Courier New\",/\"Courier New\",\"Nimbus Mono L\",/g;
    s/\"Times New Roman\",/\"Times New Roman\",\"Nimbus Roman No9 L\",/g;

    # make sure Albany, Cumberland, and Thorndale are there
    s/Arial,/Albany,Arial,/g;
    s/\"Courier New\",/Cumberland,\"Courier New\",/g;
    s/\"Times New Roman\",/Thorndale,\"Times New Roman\",/g;

    # make sure that Albany and Arial are preferred over Helvetica
    s/(Helvetica\,.*)Albany\,/Albany\,$1/;
    s/(Helvetica\,.*)Arial\,/Arial\,$1/;

    # add AMT fonts
    s/Albany,/\"Albany AMT\",Albany,/g;
    s/Cumberland,/\"Cumberland AMT\",Cumberland,/g;
    s/Thorndale,/\"Thorndale AMT\",Thorndale,/g;

    # move Bitstream Vera fonts after better fonts
    s/\"Bitstream Vera Sans\"\,(.*Albany\,)/$1\"Bitstream Vera Sans\"\,/;
    s/\"Bitstream Vera Sans\"\,(.*\"Albany AMT\"\,)/$1\"Bitstream Vera Sans\"\,/;
    s/\"Bitstream Vera Sans\"\,(.*Arial\,)/$1\"Bitstream Vera Sans\"\,/;
    s/\"Bitstream Vera Sans\"\,(.*\"Nimbus Sans L\"\,)/$1\"Bitstream Vera Sans\"\,/;

    s/\"Bitstream Vera Sans Mono\"\,(.*Cumberland\,)/$1\"Bitstream Vera Sans Mono\"\,/;
    s/\"Bitstream Vera Sans Mono\"\,(.*\"Courier New\"\,)/$1\"Bitstream Vera Sans Mono\"\,/;
    s/\"Bitstream Vera Sans Mono\"\,(.*\"Cumberland AMT\"\,)/$1\"Bitstream Vera Sans Mono\"\,/;
    s/\"Bitstream Vera Sans Mono\"\,(.*\"Nimbus Mono L\"\,)/$1\"Bitstream Vera Sans Mono\"\,/;

    s/\"Bitstream Vera Serif\"\,(.*Thorndale\,)/$1\"Bitstream Vera Serif\"\,/;
    s/\"Bitstream Vera Serif\"\,(.*\"Thorndale AMT\"\,)/$1\"Bitstream Vera Serif\"\,/;
    s/\"Bitstream Vera Serif\"\,(.*\"Times New Roman\"\,)/$1\"Bitstream Vera Serif\"\,/;
    s/\"Bitstream Vera Serif\"\,(.*\"Nimbus Roman No9 L\"\,)/$1\"Bitstream Vera Serif\"\,/;

    # prune duplicates
    s/Albany,(.*)Albany,/Albany,$1/;
    s/Cumberland,(.*)Cumberland,/Cumberland,$1/;
    s/Thorndale,(.*)Thorndale,/Thorndale,$1/;

    s/\"Albany AMT\",(.*)\"Albany AMT\",/\"Albany AMT\",$1/;
    s/\"Cumberland AMT\",(.*)\"Cumberland AMT\",/\"Cumberland AMT\",$1/;
    s/\"Thorndale AMT\",(.*)\"Thorndale AMT\",/\"Thorndale AMT\",$1/;

    s/\"Nimbus Sans L\",(.*)\"Nimbus Sans L\",/\"Nimbus Sans L\",$1/;
    s/\"Nimbus Mono L\",(.*)\"Nimbus Mono L\",/\"Nimbus Mono L\",$1/;
    s/\"Nimbus Roman No9 L\",(.*)\"Nimbus Roman No9 L\",/\"Nimbus Roman No9 L\",$1/;

    # push SansSerif to the end of the list, some Tamil fonts don't
    # have all ISO-8859-1 characters defined
    s/sans-serif,(.*);/$1,sans-serif;/;

    if ($ENV{OOO_VENDOR} =~ /buntu/) {
      # prefer DejaVu for the Help
      if ($helpsans) { s/font-family: */font-family: DejaVuSans,/; };
      if (/^body/) { $helpsans = 1; } else { $helpsans = 0; };
      if ($helpfixed) { s/font-family: */font-family: DejaVuMonoSans,/; };
      if (/^\.code/) { $helpfixed = 1; } else { $helpfixed = 0; };
    };
