fix: Preserve bullet lists in desktop Word
CI Pipeline / build (pull_request) Successful in 35s

This commit is contained in:
2026-10-08 14:50:22 +02:00
parent f3e566364f
commit 022c52eef6
2 changed files with 14 additions and 5 deletions
+10 -5
View File
@@ -16,11 +16,8 @@ module Notare
xml.numbering("xmlns:w" => NAMESPACE) do
xml.parent.namespace = xml.parent.namespace_definitions.find { |ns| ns.prefix == "w" }
@lists.each do |list|
render_abstract_num(xml, list)
render_num(xml, list)
end
render_abstract_nums(xml)
render_nums(xml)
end
end
builder.to_xml
@@ -28,6 +25,14 @@ module Notare
private
def render_abstract_nums(xml)
@lists.each { |list| render_abstract_num(xml, list) }
end
def render_nums(xml)
@lists.each { |list| render_num(xml, list) }
end
def render_abstract_num(xml, list)
xml["w"].abstractNum("w:abstractNumId" => list.num_id.to_s) do
9.times do |level|
+4
View File
@@ -115,6 +115,10 @@ class ListTest < Minitest::Test
assert_includes doc_xml, "List 1 Item 1"
assert_includes doc_xml, "List 2 Item 1"
assert_includes doc_xml, "Separator paragraph"
numbering_xml = Nokogiri::XML(xml_files["word/numbering.xml"])
child_names = numbering_xml.root.element_children.map(&:name)
assert_equal %w[abstractNum abstractNum num num], child_names
end
def test_mixed_list_types