Sha256: a87cc2c4ea51c7e01b283c3de2e11d389914253c50ce4d48028048ccbdc2bc20
Contents?: true
Size: 1.72 KB
Versions: 1
Compression:
Stored size: 1.72 KB
Contents
#!/usr/bin/env ruby # Copyright (c) 2010-2016 Kenshi Muto # # This program is free software # You can distribute or modify this program under the terms of # the GNU LGPL, Lesser General Public License version 2.1. # For details of the GNU LGPL, see the file "COPYING". # # simple validator for Re:VIEW block = nil maxcolcount = 0 colcount = 0 ln = 0 ARGF.each {|line| ln += 1 if line =~ /\A\/\/([a-z]+)\{\s*\Z/ || line =~ /\A\/\/([a-z]+)\[.+?\{\s*\Z/ # block _block = $1 puts "#{ln}: block #{_block} started, but previous block #{block} didn't close yet." unless block.nil? block = _block elsif line =~ /\A\/\/\}/ puts "#{ln}: block ended, but not opened." if block.nil? block = nil maxcolcount = 0 colcount = 0 elsif line =~ /\A(\d+\.)\s+/ # number unless ["list", "emlist", "listnum", "emlistnum", "cmd", "image", "table"].include?(block) puts "#{ln}: found '#{$1}' without the head space. Is it correct?" end elsif line =~ /\A\*\s+/ # itemize unless ["list", "emlist", "listnum", "emlistnum", "cmd", "image", "table"].include?(block) puts "#{ln}: found '*' without the head space. Is it correct?" end elsif line =~ /\A\s+(\d+\.)\s+/ && line =~ /\A\s+\*\s+/ unless ["list", "emlist", "listnum", "emlistnum", "cmd", "image", "table"].include?(block) puts "#{ln}: found itemized list or numbered list in #{block}. Is it correct?" end elsif block == "table" next if line.start_with?('#@') if line !~ /\A\-\-\-\-\-/ # table colcount = line.split("\t").size maxcolcount = colcount if maxcolcount == 0 puts "#{ln}: the number of table columns seems mismatch. (#{maxcolcount} != #{colcount})" if colcount != maxcolcount end end }
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
review-2.1.0 | bin/review-validate |