Skip to content

Instantly share code, notes, and snippets.

@rolandcrosby
Last active March 27, 2023 18:34
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 2 You must be signed in to fork a gist
  • Save rolandcrosby/c26571bf4e263f695d2f to your computer and use it in GitHub Desktop.
Save rolandcrosby/c26571bf4e263f695d2f to your computer and use it in GitHub Desktop.
Convert rich text on the clipboard to Markdown
if encoded=`osascript -e 'the clipboard as «class HTML»'` 2>/dev/null; then echo $encoded | perl -ne 'print chr foreach unpack("C*",pack("H*",substr($_,11,-3)))' | pandoc --no-wrap -f HTML -t markdown; else; pbpaste; fi
# for my .vimrc:
# command PasteMarkdown :read !if encoded=`osascript -e 'the clipboard as «class HTML»'` 2>/dev/null; then echo $encoded | perl -ne 'print chr foreach unpack("C*",pack("H*",substr($_,11,-3)))' | pandoc --no-wrap -f HTML -t markdown; else; pbpaste; fi
# nnoremap ,pmd :PasteMarkdown<CR>
@martinmts
Copy link

Also pandoc changed its arguments and seems to prefer --wrap=none instead of --no-wrap now.
Yes. I also made the change to that after seeing the error message.

Thanks again for sharing. I spent hours and hours searching for a solution and yours is the only one that worked for me.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment