From: Victor Wagner Date: Thu, 14 Nov 2013 17:30:01 +0000 (+0400) Subject: added fb2-related stuff to .gitignore and make clean. Added version of Tex2fb2 which... X-Git-Url: http://wagner.pp.ru/gitweb/?a=commitdiff_plain;h=871e2a219f6f86d618577850a35f45d1ee4248d9;p=fiction%2FKate-the-Empress.git added fb2-related stuff to .gitignore and make clean. Added version of Tex2fb2 which handles spacians --- diff --git a/.gitignore b/.gitignore index 2b77885..f9e76d3 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,10 @@ Kate-the-Empress.pdf Kate-the-Empress.epub Kate-the-Empress.html +Kate-the-Empress.fb2 +Kate-the-Empress.fb2.zip onefile.tex +fb2lint *.aux *.toc *.log diff --git a/Makefile b/Makefile index bef816b..6d28215 100644 --- a/Makefile +++ b/Makefile @@ -25,4 +25,4 @@ onefile.tex: joinfiles.awk $(wildcard *.tex) awk -f joinfiles.awk book.tex > $@ clean: - rm -f onefile.tex book.log book.aux book.out book.toc + rm -f onefile.tex book.log book.aux book.out book.toc Kate-the-Empress.fb2 fb2lint diff --git a/Tex2fb2 b/Tex2fb2 index 22d8343..3098808 100755 --- a/Tex2fb2 +++ b/Tex2fb2 @@ -22,7 +22,7 @@ open F,"<",$metadata; while () { # Replace empty date with current date if (// || /\s*<\/date>/) { - $_ = "".strftime("%Y-%m-%d",localtime())."\">". + $_ = "". strftime("%d/%m/%Y",localtime())."\n"; } # Add current to date as fractional part to version @@ -77,6 +77,12 @@ if (/\\vspace{/) { next LINE; } next LINE if /\\pagebreak\b/; +#replace ' and " with entities +s/&/&/g; +s/'/'/g; +s/"/"/g; +s//>/g; #normal mode: if (!$verbatim) { #strip TeX comments @@ -92,21 +98,26 @@ s/\s+$//; s/(\s)\s+/$1/g; #replace TeX ligatures ~ --- << >> \% with appropriate unicode symbols s/~/\xA0/g; +s/\\-/\xAD/g; s/---/—/g; s/<>/»/g; s/\\%/%/g; s/\\dots/\x{2026}/g; +s/\\verb(.)(.*)\1/$2<\/code>/; } -#replace ' and " with entities -s/&/&/g; -s/'/'/g; -s/"/"/g; -s//>/g; if ($poetry) { chomp; + if ($poetic_buffer) { + $_ = $poetic_buffer." ".$_; + $poetic_buffer = undef; + } + if (/{[^}]+$/) { + $poetic_buffer=$_; + next LINE; + } + s/\\footnote{(.*)}/push_footnote($1)/e; s/\s*\\\\$//; $buffer.=tag($_,'v')."\n"; } elsif ($verbatim) {