Sha256: 1fe29ab1b08a8724e2b505fd9328751ac8a6372ed5b03756cd5028be7aefa2a5

Contents?: true

Size: 1.29 KB

Versions: 17

Compression:

Stored size: 1.29 KB

Contents

#!/usr/bin/env ruby

require "fileutils"

rgettext = "rgettext"
xgettext = "xgettext"
msgmerge = "msgmerge"

po_dir = "po/"
appname = "rabbit"

tmp_dir = "#{po_dir}tmp"
top_dir = "./" + ("../" * tmp_dir.split("/").size)
pot = "#{top_dir}#{po_dir}#{appname}.pot"
current_dir = Dir.pwd

FileUtils.mkdir_p(tmp_dir)
Dir.chdir(tmp_dir)

targets = Dir.glob("#{top_dir}lib/**/*.rb")
targets += Dir.glob("#{top_dir}bin/*")
targets += Dir.glob("#{top_dir}data/**/*.rb")


FileUtils.rm_f(pot)
rgettext_args = targets + ["-o", pot]
unless system(rgettext, *rgettext_args)
  STDERR.puts("Can't run: #{rgettext} #{rgettext_args.join(' ')}")
  exit(1)
end

targets = Dir.glob("#{top_dir}lib/**/*.erb")
xgettext_args = [
  "-L", "PHP", "-k_", "-kN_", "-j", "-o", pot, *targets
]
unless system(xgettext, *xgettext_args)
  STDERR.puts("Can't run: #{xgettext} #{xgettext_args.join(' ')}")
  exit(1)
end

Dir.glob("#{top_dir}#{po_dir}*") do |dir|
  if File.directory?(dir)
    next if File.expand_path(dir) == File.expand_path(tmp_dir)
    po = "#{dir}/#{appname}.po"
    if File.exist?(po)
      args = ["-s", "-U", po, pot]
      unless system(msgmerge, *args)
        STDERR.puts("Can't run: #{msgmerge} #{args.join(' ')}")
      end
    else
      FileUtils.cp(pot, po)
    end
  end
end

Dir.chdir(current_dir)
FileUtils.rm_rf(tmp_dir)

Version data entries

17 entries across 17 versions & 1 rubygems

Version Path
rabbit-1.0.9 update-po.rb
rabbit-1.0.8 update-po.rb
rabbit-1.0.7 update-po.rb
rabbit-1.0.6 update-po.rb
rabbit-1.0.5 update-po.rb
rabbit-1.0.4 update-po.rb
rabbit-1.0.3 update-po.rb
rabbit-1.0.2 update-po.rb
rabbit-1.0.1 update-po.rb
rabbit-1.0.0 update-po.rb
rabbit-0.9.3 update-po.rb
rabbit-0.9.2 update-po.rb
rabbit-0.9.1 update-po.rb
rabbit-0.9.0 update-po.rb
rabbit-0.6.4 update-po.rb
rabbit-0.6.3 update-po.rb
rabbit-0.6.2 update-po.rb