Copy markdown input to the clipboard as rich text

As it turns out, the link in the question hinted at a working solution in the form of xclip:

pandoc -S file.mkd | xclip -t text/html

...and then I can paste it straight into the document in libreoffice, properly formatted. This works with the versions of the programs in the Ubuntu 13.04 repositories (pandoc 1.10.1 and xclip 0.12) -- the -t option for xclip especially is only in version 0.12 or above. The -S option of pandoc makes it produce 'typographically correct output', so -- is turned into an en-dash, --- is turned into an em-dash, and a few other things.

If you want to use the ctrl-v clipboard, use:

pandoc -S file.mkd | xclip -t text/html -selection clipboard

Edit: if you're running OS X (with pbcopy rather than xclip), use:

pandoc -S file.mkd | textutil -stdin -format html -convert rtf -stdout | pbcopy

To transform selected text without creating a file, you can use:

xclip -o | pandoc -S | xclip -t text/html

...this can, of course, be mapped to a keyboard shortcut.

This can work well with a number of text markup formats as input, see the pandoc guide for some more information on how to accomplish this (you might need to use the -f/--from/-r/--read option, especially if you're using the xclip|pandoc|xclip version).

As a side note, you can also read an already-existing HTML file into xclip:

xclip -t text/html <file.html

or

<file.html xclip -t text/html