class MissingTranslations::TemplatesParser
Public Class Methods
new(files)
click to toggle source
# File lib/templates_parser.rb, line 3 def initialize(files) @files = files end
Public Instance Methods
keys()
click to toggle source
# File lib/templates_parser.rb, line 7 def keys keys = @files.map do |template| puts "Searching in #{template}" file = File.basename(template).gsub /^_?(.+?)\..+$/, '\1' dir = template.split('/')[-2] context = "#{dir}.#{file}" File.readlines(template).map { |line| line_keys(line, context) } end puts keys.compact.flatten.compact.uniq end
Private Instance Methods
line_keys(line, context)
click to toggle source
# File lib/templates_parser.rb, line 29 def line_keys(line, context) line.scan(/\W+t(ranslate)?\s*\(?['"]([^#]+?)['"]/i).map do |m| arg = m[1] if arg != '.' arg[0] == '.' ? "#{locale}.#{context}#{arg}" : "#{locale}.#{arg}" end end end
locale()
click to toggle source
# File lib/templates_parser.rb, line 25 def locale 'en'.freeze end