def compile(template) #:nodoc:
      template.gsub(/:[a-z0-9_]+/) do |match|
        position = TEMPLATE_ARGUMENT_ORDER.index(match)
        if position
          "%#{position + 1}$s"
        else
          match
        end
      end
    end
def compile(template) #:nodoc:
      template.gsub(/:[a-z0-9_]+/) do |match|
        position = TEMPLATE_ARGUMENT_ORDER.index(match)
        if position
          "%#{position + 1}$s"
        else
          match
        end
      end
    end
Compile the template string into a value that can be used with sprintf.