X-Git-Url: https://projects.mako.cc/source/beamer-mako/blobdiff_plain/e39ee174e2f26655e6e094f7703f0b38a4294909..ab41ccc423093246578a5c7ae5348e9980ccef4d:/template/extract-notes?ds=sidebyside diff --git a/template/extract-notes b/template/extract-notes new file mode 100755 index 0000000..0d11083 --- /dev/null +++ b/template/extract-notes @@ -0,0 +1,48 @@ +#!/usr/bin/perl -w + +foreach $filename (@ARGV) { + chomp $filename; + open(TEXFILE, "<$filename"); + + $notes_filename = $filename; + $notes_filename =~ s/\.tex$/.pdfpc/; + + $pdf_filename = $filename; + $pdf_filename =~ s/\.tex$/.pdf/; + + open(NOTESFILE, "\>$notes_filename"); + print NOTESFILE "[file]\n$pdf_filename\n[notes]\n"; + + $note_record = 0; + $slide_counter = 1; + while ($line = ) { + # if this is a new frame + if ($line =~ /^\\begin\{frame\}/) { + $slide_counter++; + } + + if ($line =~ /^\% pdfpc\:end/) { + $note_record = 0; + $note_text =~ s/^\s*(.*?)\s*$/$1/; + print NOTESFILE "\#\#\# $slide_counter\n$note_text\n"; + } + + # record if we're between a begin and an end + if ($note_record) { + $line_tmp = $line; + $line_tmp =~ s/^\%\s*//; + $note_text = $note_text . $line_tmp; + } + + # if this a new note + if ($line =~ /^\% pdfpc\:begin/) { + $note_text = ""; + $note_record = 1; + } + } + + close(TEXFILE); + close(NOTESFILE); + +} +