From: Petter Reinholdtsen Date: Fri, 9 Feb 2018 13:41:40 +0000 (+0100) Subject: Add code to check if all notes exist and are used. X-Git-Tag: es-printed~496 X-Git-Url: https://pere.pagekite.me/gitweb/text-madewithcc.git/commitdiff_plain/f5da4648eb303e8bd53f343bfe19b59810f0ec72?ds=sidebyside Add code to check if all notes exist and are used. --- diff --git a/fixup.rb b/fixup.rb index e67f25f..4561ab7 100644 --- a/fixup.rb +++ b/fixup.rb @@ -275,6 +275,27 @@ data.each_with_index do |lin, idx| end end +log 0, 'verify every footnote/endnote is unique and used' +notes = Hash.new +data.each_with_index do |lin, idx| + if lin =~ /(\[\^[^\]]+\])(:)?/ +# log 0, "*** found %s %s" % [$1, $2] + if not notes.has_key?($1) + notes[$1] = Hash.new + end + if $2 == ':' + notes[$1]['def'] = true + else + notes[$1]['ref'] = true + end + end +end +notes.each do |key, val| + if val.has_key?('def') != val.has_key?('ref') + log 0, "error: check use of footnote %s" % key + end +end + log 0, 'Turn indented block after use cases into block quotes' inscope=false quote=false