Take the 2-minute tour ×

In Emacs, how to define a keyboard shortcut to quickly enclose highlighted text with <tag> and </tag>, optionally prompting for inputting the tag name tag?

share|improve this question

1 Answer 1

up vote 2 down vote accepted
(defun my-tagger (tag)
  (interactive "sTag: ")
  (if (not (use-region-p))
      (error "no region is highlighted")

    (let ((text (buffer-substring (region-beginning) (region-end))))
      (insert (format "<%s>%s</%s>" tag text tag)))))

(global-set-key (kbd "<f7>") 'my-tagger)
share|improve this answer

Your Answer


