BEGIN { print "--[[" print "These are default_keys dictionary" print "This file is automatically generated from default_keys.h - DON'T EDIT MANUALLY." print "--]]" print "local _keys = {" } $1 ~ /^[A-Fa-f0-9]+/ { sub(/\r/, ""); print " '"substr($1,1,12)"'," } END { print "}" print "---" print "-- The keys above have just been pasted in, for completeness sake. They contain duplicates. " print "-- We need to weed the duplicates out before we expose the list to someone who actually wants to use them" print "-- @param list a list to do 'uniq' on" print "" print "local function uniq(list)" print "" print " local foobar = {}" print " for _, value in pairs(list) do" print " value = value:lower()" print " if not foobar[value] then" print " foobar[value] = true" print " table.insert(foobar, value);" print " end" print " end" print " return foobar" print "end" print "return uniq(_keys)" }