git.iko.soy/typeable/pandoc
on master help sign in
OpenDocument writer: handle tables with no headers.

git-svn-id: https://pandoc.googlecode.com/svn/trunk@1882 788f1e2b-df1e-0410-8736-df70ead52e1b

commita35af5db295b0e0c598b1ff68f52fc14a4d3911e authorfiddlosopher <fiddlosopher@788f1e2b-df1e-0410-8736-df70ead52e1b> dateSat 13 Mar 2010, 03:19 (17 years ago) parent533dd14
2 files changed+87−1
src/Text/Pandoc/Writers/OpenDocument.hs+3−1 tests/tables.opendocument+84
src/Text/Pandoc/Writers/OpenDocument.hs+3−1
@@ -313,7 +313,9 @@ blockToOpenDocument o bs
313313 captionDoc <- if null c
314314 then return empty
315315 else withParagraphStyle o "Caption" [Para c]
316− th <- colHeadsToOpenDocument o name (map fst paraHStyles) h
316+ th <- if all null h
317+ then return empty
318+ else colHeadsToOpenDocument o name (map fst paraHStyles) h
317319 tr <- mapM (tableRowToOpenDocument o name (map fst paraStyles)) r
318320 return $ inTags True "table:table" [ ("table:name" , name)
319321 , ("table:style-name", name)
tests/tables.opendocument+84
@@ -298,3 +298,87 @@
298298 </table:table-cell>
299299 </table:table-row>
300300</table:table>
301+<text:p text:style-name="Text_20_body">Table without column headers:</text:p>
302+<table:table table:name="Table6" table:style-name="Table6">
303+ <table:table-column table:style-name="Table6.A" />
304+ <table:table-column table:style-name="Table6.B" />
305+ <table:table-column table:style-name="Table6.C" />
306+ <table:table-column table:style-name="Table6.D" />
307+ <table:table-row>
308+ <table:table-cell table:style-name="Table6.A1" office:value-type="string">
309+ <text:p text:style-name="P24">12</text:p>
310+ </table:table-cell>
311+ <table:table-cell table:style-name="Table6.A1" office:value-type="string">
312+ <text:p text:style-name="Table_20_Contents">12</text:p>
313+ </table:table-cell>
314+ <table:table-cell table:style-name="Table6.A1" office:value-type="string">
315+ <text:p text:style-name="P25">12</text:p>
316+ </table:table-cell>
317+ <table:table-cell table:style-name="Table6.A1" office:value-type="string">
318+ <text:p text:style-name="P26">12</text:p>
319+ </table:table-cell>
320+ </table:table-row>
321+ <table:table-row>
322+ <table:table-cell table:style-name="Table6.A1" office:value-type="string">
323+ <text:p text:style-name="P24">123</text:p>
324+ </table:table-cell>
325+ <table:table-cell table:style-name="Table6.A1" office:value-type="string">
326+ <text:p text:style-name="Table_20_Contents">123</text:p>
327+ </table:table-cell>
328+ <table:table-cell table:style-name="Table6.A1" office:value-type="string">
329+ <text:p text:style-name="P25">123</text:p>
330+ </table:table-cell>
331+ <table:table-cell table:style-name="Table6.A1" office:value-type="string">
332+ <text:p text:style-name="P26">123</text:p>
333+ </table:table-cell>
334+ </table:table-row>
335+ <table:table-row>
336+ <table:table-cell table:style-name="Table6.A1" office:value-type="string">
337+ <text:p text:style-name="P24">1</text:p>
338+ </table:table-cell>
339+ <table:table-cell table:style-name="Table6.A1" office:value-type="string">
340+ <text:p text:style-name="Table_20_Contents">1</text:p>
341+ </table:table-cell>
342+ <table:table-cell table:style-name="Table6.A1" office:value-type="string">
343+ <text:p text:style-name="P25">1</text:p>
344+ </table:table-cell>
345+ <table:table-cell table:style-name="Table6.A1" office:value-type="string">
346+ <text:p text:style-name="P26">1</text:p>
347+ </table:table-cell>
348+ </table:table-row>
349+</table:table>
350+<text:p text:style-name="Text_20_body">Multiline table without column headers:</text:p>
351+<table:table table:name="Table7" table:style-name="Table7">
352+ <table:table-column table:style-name="Table7.A" />
353+ <table:table-column table:style-name="Table7.B" />
354+ <table:table-column table:style-name="Table7.C" />
355+ <table:table-column table:style-name="Table7.D" />
356+ <table:table-row>
357+ <table:table-cell table:style-name="Table7.A1" office:value-type="string">
358+ <text:p text:style-name="P29">First</text:p>
359+ </table:table-cell>
360+ <table:table-cell table:style-name="Table7.A1" office:value-type="string">
361+ <text:p text:style-name="Table_20_Contents">row</text:p>
362+ </table:table-cell>
363+ <table:table-cell table:style-name="Table7.A1" office:value-type="string">
364+ <text:p text:style-name="P30">12.0</text:p>
365+ </table:table-cell>
366+ <table:table-cell table:style-name="Table7.A1" office:value-type="string">
367+ <text:p text:style-name="Table_20_Contents">Example of a row that spans multiple lines.</text:p>
368+ </table:table-cell>
369+ </table:table-row>
370+ <table:table-row>
371+ <table:table-cell table:style-name="Table7.A1" office:value-type="string">
372+ <text:p text:style-name="P29">Second</text:p>
373+ </table:table-cell>
374+ <table:table-cell table:style-name="Table7.A1" office:value-type="string">
375+ <text:p text:style-name="Table_20_Contents">row</text:p>
376+ </table:table-cell>
377+ <table:table-cell table:style-name="Table7.A1" office:value-type="string">
378+ <text:p text:style-name="P30">5.0</text:p>
379+ </table:table-cell>
380+ <table:table-cell table:style-name="Table7.A1" office:value-type="string">
381+ <text:p text:style-name="Table_20_Contents">Here's another one. Note the blank line between rows.</text:p>
382+ </table:table-cell>
383+ </table:table-row>
384+</table:table>