User:Digitalme/alphabetize.rb

Purpose
alphabetize.rb can take a list of words, including words that are wikilinked, and alphabetize them. It will sort wikilinks right along with the rest of the words, unlike most alphabetizers, which would just dump the wikilinks at the end.

Use
$>ruby alphabetize.rb infile outfile infile is the file you want to alphabetize, outfile is the file you want the alphabetized contents of infile to be outputed into.

The code

 * 1) alphabetize.rb
 * 2) By digital_me
 * 3) http://en.wikipedia.org/wiki/User:Digitalme
 * 4) You may use this script freely, as long as you give me appropriate credit.

items = IO.readlines(ARGV[0]) wiki = []

items.each do |word| if word =~ /.*\[\[.*\]\]/ wiki << word word.gsub!("", "")       word.gsub!("" , "") end end sorted = items.sort

sorted.each do |word| if wiki.include?(word) word.insert(1, "")       word.insert(-2, "") end end

File.open(ARGV[1], "w") do |file| file.puts sorted end