diff --git a/script/update-docs.rb b/script/update-docs.rb index b441e78899..da1f45202d 100644 --- a/script/update-docs.rb +++ b/script/update-docs.rb @@ -81,12 +81,14 @@ def wrap_front_matter(front_matter) end def expand_l10n(path, content, get_f_content, categories, ext) - content.gsub!(/include::({build_dir}\/)?(\S+)\.#{ext}/) do |line| - line.gsub!("include::", "") - if categories[line] - new_content = categories[line] + content.gsub!(/include::({build_dir}\/)?(\S+)\.#{ext}/) do + match = Regexp.last_match + target = "#{match[2]}.#{ext}" + base = match[1] ? path.split("/", 2).first : File.dirname(path) + if categories[target] + new_content = categories[target] else - new_content, new_path = get_f_content.call(path, line) + new_content, new_path = get_f_content.call(base, target) end if new_content expand_l10n(new_path, new_content, get_f_content, categories, ext) @@ -230,8 +232,8 @@ def index_l10n_doc(filter_tags, doc_list, get_content) puts "Found #{doc_files.size} entries" - get_content_f = proc do |source, target| - name = File.join(File.dirname(source), target) + get_content_f = proc do |base, target| + name = File.join(base, target) content_file = tag_files.detect { |ent| ent.first == name } if content_file new_content = get_content.call(content_file[1])