29 lines
618 B
Ruby
Executable file
29 lines
618 B
Ruby
Executable file
#!/usr/bin/env ruby
|
|
# frozen_string_literal: true
|
|
|
|
require_relative '../lib/tooling/gettext_extractor'
|
|
|
|
pot_file = ARGV.shift
|
|
|
|
if !pot_file || !Dir.exist?(File.dirname(pot_file))
|
|
abort <<~MSG
|
|
Please provide a target file name as the first argument, e.g.
|
|
#{$PROGRAM_NAME} locale/gitlab.pot
|
|
MSG
|
|
end
|
|
|
|
puts <<~MSG
|
|
Extracting translatable strings from source files...
|
|
MSG
|
|
|
|
root_dir = File.expand_path('../../', __dir__)
|
|
|
|
extractor = Tooling::GettextExtractor.new(
|
|
glob_base: root_dir
|
|
)
|
|
|
|
File.write(pot_file, extractor.generate_pot)
|
|
|
|
puts <<~MSG
|
|
All done. Please commit the changes to `#{pot_file}`.
|
|
MSG
|