1
0
Fork 0
mirror of https://github.com/fmap/muflax65ngodyewp.onion synced 2024-07-03 11:00:42 +02:00
muflax65ngodyewp.onion/commands/dups.rb

33 lines
730 B
Ruby
Raw Normal View History

usage 'dups'
summary 'find all duplicate links'
description 'Finds all duplicate links in the reference files.'
run do |opts, args, cmd|
references = []
Dir["content/references/*.mkd"].each do |ref|
File.open(ref).each_line do |l|
if m = l.match(/^ \*? \[ (?<link>.+?) \] : /x)
references << {
link: m[:link],
full_link: l.strip,
file: ref,
}
end
end
end
2012-04-16 01:34:53 +02:00
ret = 0
last_ref = nil
references.sort_by{|x| x[:link]}.each do |ref|
if not last_ref.nil? and ref[:link] == last_ref[:link]
puts "Duplicate link '#{ref[:link]}' in '#{ref[:file]}' <-> '#{last_ref[:file]}'!"
2012-04-16 01:34:53 +02:00
ret = 1
end
last_ref = ref
end
2012-04-16 01:34:53 +02:00
exit ret
end