lib/packnga/reference-task.rb in packnga-0.9.0 vs lib/packnga/reference-task.rb in packnga-0.9.1

- old
+ new

@@ -31,10 +31,11 @@ @spec = spec @base_dir = nil @translate_languages = nil @supported_languages = nil @html_files = nil + @htaccess = nil @po_dir = nil @pot_file = nil if block_given? yield(self) define @@ -45,20 +46,23 @@ def define set_default_values define_tasks end + # path of .htaccess. + def htaccess + html_reference_dir + ".htaccess" + end + private def set_default_values @base_dir ||= Pathname.new("doc") @translate_languages ||= [:ja] @supported_languages = [:en, *@translate_languages] @html_files = FileList[(doc_en_dir + "**/*.html").to_s].to_a - @po_dir = "doc/po" @pot_file = "#{@po_dir}/#{@spec.name}.pot" - end def reference_base_dir @base_dir + "reference" end @@ -87,11 +91,14 @@ def define_pot_tasks namespace :pot do directory @po_dir file @pot_file => [@po_dir, *@html_files] do |t| - sh("xml2po", "--keep-entities", "--output", t.name, *@html_files) + sh("xml2po", + "--keep-entities", + "--output", t.name, + *@html_files) end desc "Generates pot file." task :generate => @pot_file do |t| end @@ -104,11 +111,14 @@ namespace language do po_file = "#{@po_dir}/#{language}.po" if File.exist?(po_file) file po_file => @html_files do |t| - sh("xml2po", "--keep-entities", "--update", t.name, *@html_files) + sh("xml2po", + "--keep-entities", + "--update", t.name, + *@html_files) end else file po_file => @pot_file do |t| sh("msginit", "--input=#{@pot_file}", @@ -220,16 +230,16 @@ cp(path.to_s, prepared_path.to_s) end end end end - File.open("#{html_reference_dir}/.htaccess", "w") do |file| - file.puts("Redirect permanent /#{@spec.name}/text/TUTORIAL_ja_rdoc.html " + - "#{@spec.homepage}#{@spec.name}/ja/file.tutorial.html") + File.open(htaccess, "w") do |file| file.puts("RedirectMatch permanent ^/#{@spec.name}/$ " + "#{@spec.homepage}#{@spec.name}/en/") end end + + task :generate => ["reference:generate", "reference:publication:prepare"] end end def apply_template(content, paths, templates, language) content = content.sub(/lang="en"/, "lang=\"#{language}\"")