X-Git-Url: https://pere.pagekite.me/gitweb/text-madewithcc.git/blobdiff_plain/9d55ca3ba50492daaadc71d92e6d38026f9fddcf..ec1f99bc5a8174d85f26b89a7c86bfa895e35662:/fixup.rb diff --git a/fixup.rb b/fixup.rb index e67f25f..7127318 100644 --- a/fixup.rb +++ b/fixup.rb @@ -258,8 +258,8 @@ data.each_with_index do |lin, idx| scope=$1.gsub(" ", "-") end # First, mark note reference - lin.sub!(/([a-z]\.["”]?)(\d+)(\s)/, "\\1[^" + scope + "-\\2]\\3") - lin.sub!(/([a-z]\.["”]?)(\d+)$/, "\\1[^" + scope + "-\\2]") + lin.sub!(/([a-z][\.\)]+["”]?)(\d+)(\s)/, "\\1[^" + scope + "-\\2]\\3") + lin.sub!(/([a-z][\.\)]+["”]?)(\d+)$/, "\\1[^" + scope + "-\\2]") # Next, mark note content, only between /Web Links?|Notes/ and next heading if noteblock lin.sub!(/^(\d+)\. /, "[^" + scope + "-\\1]: ") @@ -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