(defun formatted-copy (start end) "Export region to HTML, and copy it to the clipboard." (interactive "r") (let* ((region-string (buffer-substring-no-properties start end)) (shell-command "pandoc -f gfm -t html5 | pbcopy_html") (output-buffer (generate-new-buffer "*Shell Command Output*"))) (with-current-buffer output-buffer (erase-buffer) (insert region-string) (shell-command-on-region (point-min) (point-max) shell-command t t)) (kill-buffer output-buffer))) (global-set-key (kbd "C-M-c") 'formatted-copy)