def self.load_custom_commands
self.recursive_contents_of('commands').each do |filename|
command = Nanoc::CLI.load_command_at(filename)
pieces = filename.gsub(/^commands\/|\.rb$/, '').split('/')
pieces = pieces[0, pieces.size-1] || []
root = Nanoc::CLI.root_command
supercommand = pieces.inject(root) do |cmd, piece|
cmd.nil? ? nil : cmd.command_named(piece)
end
if supercommand.nil?
raise "Cannot load command at #{filename} because its supercommand cannot be found"
end
supercommand.add_command(command)
end
end