Sha256: 8ac6fc28d283f41d3e6330aa4630fba8044002d2ff97b42348f07ce61fb5a8d3

Contents?: true

Size: 1.13 KB

Versions: 18

Compression:

Stored size: 1.13 KB

Contents

require 'gettext/utils'
begin
  require 'gettext/tools/rgettext'
rescue LoadError #version prior to 2.0
  require 'gettext/rgettext'
end

module GettextI18nRails
  class BaseParser
    def self.target?(file)
      File.extname(file) == ".#{extension}"
    end

    def self.parse(file, msgids = [])
      return msgids unless load_library
      code = convert_to_code(File.read(file))
      RubyGettextExtractor.parse_string(code, file, msgids)
    rescue Racc::ParseError => e
      $stderr.puts "file ignored: ruby_parser cannot read #{extension} files with 1.9 syntax --- (#{e.message})"
      return msgids
    end

    def self.load_library
      return true if @library_loaded

      begin
        require "#{::Rails.root.to_s}/vendor/plugins/#{extension}/lib/#{extension}"
      rescue LoadError
        begin
          require extension # From gem
        rescue LoadError
          puts "A #{extension} file was found, but #{extension} library could not be found, so nothing will be parsed..."
          return false
        end
      end

      require 'gettext_i18n_rails/ruby_gettext_extractor'
      @library_loaded = true
    end
  end
end

Version data entries

18 entries across 18 versions & 2 rubygems

Version Path
gettext_i18n_rails-0.6.5 lib/gettext_i18n_rails/base_parser.rb
gettext_i18n_rails-0.6.4 lib/gettext_i18n_rails/base_parser.rb
gettext_i18n_rails-0.6.3 lib/gettext_i18n_rails/base_parser.rb
gettext_i18n_rails-0.6.2 lib/gettext_i18n_rails/base_parser.rb
gettext_i18n_rails-0.6.1 lib/gettext_i18n_rails/base_parser.rb
gettext_i18n_rails-0.5.4 lib/gettext_i18n_rails/base_parser.rb
nulogy-gettext_i18n_rails-0.5.3.2 lib/gettext_i18n_rails/base_parser.rb
nulogy-gettext_i18n_rails-0.5.3.1 lib/gettext_i18n_rails/base_parser.rb
gettext_i18n_rails-0.5.3 lib/gettext_i18n_rails/base_parser.rb
nulogy-gettext_i18n_rails-0.5.0.3 lib/gettext_i18n_rails/base_parser.rb
gettext_i18n_rails-0.5.2 lib/gettext_i18n_rails/base_parser.rb
nulogy-gettext_i18n_rails-0.5.0.2 lib/gettext_i18n_rails/base_parser.rb
gettext_i18n_rails-0.5.1 lib/gettext_i18n_rails/base_parser.rb
nulogy-gettext_i18n_rails-0.5.0.1 lib/gettext_i18n_rails/base_parser.rb
gettext_i18n_rails-0.5.0 lib/gettext_i18n_rails/base_parser.rb
nulogy-gettext_i18n_rails-0.4.6.2 lib/gettext_i18n_rails/base_parser.rb
nulogy-gettext_i18n_rails-0.4.6.1 lib/gettext_i18n_rails/base_parser.rb
gettext_i18n_rails-0.4.6 lib/gettext_i18n_rails/base_parser.rb