(global-set-key "\C-xt" 'perltidy-region) (defun perltidy-region () "Run perltidy on the current region or the whole buffer." (interactive) (save-excursion (let ((beg (if mark-active (point) (point-min))) (end (if mark-active (mark) (point-max)))) (shell-command-on-region beg end "perltidy -q" nil t))))