Module: Localio

Defined in:
lib/localio.rb,
lib/localio/version.rb

Constant Summary collapse

VERSION =
"0.1.1"

Class Method Summary collapse

Class Method Details

.apply_filtersObject



45
46
47
48
49
# File 'lib/localio.rb', line 45

def self.apply_filters
  @localizables[:segments] = Filter.apply_filter @localizables[:segments],
                                                 @configuration.only,
                                                 @configuration.except
end

.build_localizablesObject



51
52
53
54
55
56
57
58
59
60
# File 'lib/localio.rb', line 51

def self.build_localizables
  @configuration.platform_options[:default_language] = @localizables[:default_language]
  LocalizableWriter.write @configuration.platform_name,
                          @localizables[:languages],
                          @localizables[:segments],
                          @configuration.output_path,
                          @configuration.formatting,
                          @configuration.platform_options
  puts 'Done!'.green
end

.from_cmdline(args) ⇒ Object



9
10
11
12
13
14
15
16
17
18
19
# File 'lib/localio.rb', line 9

def self.from_cmdline(args)
  if ARGV.empty?
    if File.exist? 'Locfile'
      process_locfile('Locfile')
    else
      raise ArgumentError, 'Locfile not found in current directory, and no compatible file supplied in arguments.'
    end
  else
    process_locfile(ARGV.shift)
  end
end

.from_configuration(configuration) ⇒ Object



21
22
23
24
# File 'lib/localio.rb', line 21

def self.from_configuration(configuration)
  @configuration = configuration
  generate_localizables
end

.generate_localizablesObject



33
34
35
36
37
# File 'lib/localio.rb', line 33

def self.generate_localizables
  process_to_memory
  apply_filters
  build_localizables
end

.process_locfile(path) ⇒ Object



28
29
30
31
# File 'lib/localio.rb', line 28

def self.process_locfile(path)
  @configuration = Locfile.load(path)
  generate_localizables
end

.process_to_memoryObject



39
40
41
42
43
# File 'lib/localio.rb', line 39

def self.process_to_memory
  @localizables = Processor.load_localizables @configuration.platform_options,
                                              @configuration.source_service,
                                              @configuration.source_options
end