спасибо Трей Джексон. я не знал, что вы опубликовали решение, поэтому я обратился за помощью к #emacs на экране. после некоторого исследования я придумал следующее:
(defun ess-R-wrap-content-vqn ()
"Wrap marked region with a specified PREFIX and closing parentheses."
(interactive)
(set (make-local-variable 'prefix) (read-from-minibuffer "function: "))
(set (make-local-variable 'prefix) (concat prefix "("))
(save-excursion (goto-char (region-beginning)) (insert prefix))
(save-excursion (goto-char (region-end)) (insert ")"))
)
(define-key ess-mode-map "\C-c\M-w" 'ess-R-wrap-content-vqn) ;; w is for wrap
я думал, что stackoverflow собирается уведомить меня, когда будет опубликовано решение. еще раз спасибо. узнав немного больше об элиспе из этого.