I have some text, that is actually an XML snippet, which I want to display in an MS Word document. I really don't want to laboriously style every element and attribute by hand - is there some auto-style I can apply? Is there another solution?
Use an external highlighter such as
pygmentize to generate HTML, then copy and paste that into the document.
Create a new style that formats the XML the way you want. The style will likely need to include:
- setting the font to a monospaced font like Courier New
- setting the language to No Proofing (Word 2003 and older) or Do Not Check Spelling or Grammar (Word 2007 and newer)
- setting the font size to something smaller; often XML or other code won't fit well on a page unless you make it smaller
To use this, select the XML text and change the style. All the formatting attributes will be applied at once.
The upside is that XML is text in the document. You can edit it like any other text if you need to make corrections; search for it, etc. The downside of this method is that syntax colouring won't be applied to the text unless it was already there when the text was pasted.
Save the style in the normal.dot template (the default) so that it's available in all documents.
If you need to do this often, you can assign a keyboard shortcut to the text so you don't have to select the style from the style menu.