So what you're proposing is to extend the functionality described in https://github.com/jgm/pandoc/issues/2542 to: - not only cover DOCX, but also ODT and ICML
- and not only Inlines but also Blocks (i.e. not only "character styles" but also "paragraph styles")

You're welcome to add your comments to that issue!

You suggest using a Span for Inlines, so using a Div for Blocks would be consequent. Also, as you mentioned  Para currently unfortunately doesn't support attributes in Pandoc's AST anyway.

Btw, you can also always write your own filter (see http://pandoc.org/scripting.html) to modify Pandoc's AST and insert for example Raw ICML, like: [RawBlock (Format "icml") "<ParagraphStyleRange ... </ParagraphStyleRange>"]


On Tuesday, December 29, 2015 at 4:07:15 PM UTC+1, massifrg wrote:
I try to reformulate and simplify the question.
Example:

A <span class="myStyle">word</span> with a custom style.

Convert it from markdown to HTML (pandoc -f markdown -t html) and you get:

<p>A <span class="myStyle">word</span> with a custom style.</p>

Convert it from markdown to ICML (pandoc -f markdown -t icml) and you get:

<ParagraphStyleRange AppliedParagraphStyle="ParagraphStyle/Paragraph">
 
<CharacterStyleRange AppliedCharacterStyle="$ID/NormalCharacterStyle">
   
<Content>A </Content>
 
</CharacterStyleRange>
 
<CharacterStyleRange AppliedCharacterStyle="$ID/NormalCharacterStyle">
   
<Content>word</Content>
 
</CharacterStyleRange>
 
<CharacterStyleRange AppliedCharacterStyle="$ID/NormalCharacterStyle">
   
<Content> with a custom style.</Content>
 
</CharacterStyleRange><Br />
</ParagraphStyleRange>

The styled word is put in a CharacterStyleRange of its own, but there's no trace of the class attribute.
Is there a way to get this:

<ParagraphStyleRange AppliedParagraphStyle="ParagraphStyle/Paragraph">
 
<CharacterStyleRange AppliedCharacterStyle="$ID/NormalCharacterStyle">
   
<Content>A </Content>
 
</CharacterStyleRange>
 
<CharacterStyleRange AppliedCharacterStyle="$ID/myStyle">
   
<Content>word</Content>
 
</CharacterStyleRange>
 
<CharacterStyleRange AppliedCharacterStyle="$ID/NormalCharacterStyle">
   
<Content> with a custom style.</Content>
 
</CharacterStyleRange><Br />
</ParagraphStyleRange>

This way, when you import the ICML in InDesign, in a document with myStyle previously defined as a character style, you get the right formatting.
The same could be thought for DOCX and ODT, with reference documents that contain the styles you need.
I have used the class attribute to map the style, but another attribute could be used: it's only conventional.
I think this "style mapping" should be disabled by default, but enabled by a command line option.

--
You received this message because you are subscribed to the Google Groups "pandoc-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to pandoc-discuss+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
To post to this group, send email to pandoc-discuss-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
To view this discussion on the web visit https://groups.google.com/d/msgid/pandoc-discuss/984a8c71-60cd-4766-83d3-219d178ab923%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.