バグ #629 » makepot.patch
| Gemfile | ||
|---|---|---|
|
gem 'delayer'
|
||
|
end
|
||
|
group :test do
|
||
|
group :translation do
|
||
|
gem 'rake'
|
||
|
end
|
||
|
group :test do
|
||
|
gem 'watch'
|
||
|
gem 'mocha'
|
||
|
gem 'webmock'
|
||
| core/boot/shell/makepot.rb | ||
|---|---|---|
|
# 全プラグインにpot作成
|
||
|
miquire :core, "miquire_plugin"
|
||
|
require 'gettext/tools'
|
||
|
require 'gettext/tools/task'
|
||
|
require 'rake'
|
||
|
mo_root = File.join(CHIConfig::CACHE, "uitranslator", "locale")
|
||
| ... | ... | |
|
(defined?(spec[:depends][:plugin]) and spec[:depends][:plugin].include? "uitranslator")
|
||
|
po_root = File.join spec[:path], "po"
|
||
|
begin
|
||
|
GetText.update_pofiles(spec[:slug].to_s,
|
||
|
Dir.glob("#{spec[:path]}/**/*.rb"),
|
||
|
"#{spec[:slug]} #{spec[:version]}",
|
||
|
po_root: po_root)
|
||
|
GetText::Tools::Task.define do |task|
|
||
|
task.spec = Gem::Specification.new do |s|
|
||
|
s.name = spec[:slug].to_s
|
||
|
s.version = spec[:version].to_s
|
||
|
s.files = Dir.glob("#{spec[:path]}/**/*.rb")
|
||
|
end
|
||
|
task.locales = ["ja"]
|
||
|
task.po_base_directory = po_root
|
||
|
end
|
||
|
rescue Exception => e
|
||
|
failed_plugins << spec[:slug]
|
||
|
end
|
||
|
end
|
||
|
end
|
||
|
notice Rake::Task.tasks.join("\n")
|
||
|
# gettext:po:updateがいちいち翻訳者名とか聞いてきてうざいので潰す。
|
||
|
# 本来はgettextにパッチを送るとかするべきな気がする。
|
||
|
class GetText::Tools::MsgInit
|
||
|
def translator_full_name
|
||
|
""
|
||
|
end
|
||
|
def translator_mail
|
||
|
""
|
||
|
end
|
||
|
end
|
||
|
Rake::Task["gettext:pot:create"].invoke
|
||
|
Rake::Task["gettext:po:update"].invoke
|
||
|
puts "failed plugins: #{failed_plugins}" unless failed_plugins.empty?
|
||