From d7cc388e15647f87b0e5c02301e6a9b20cddea16 Mon Sep 17 00:00:00 2001 From: Gianni Ceccarelli Date: Wed, 26 Jun 2019 16:48:25 +0100 Subject: smarter perl indent in POD sections --- init.el | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/init.el b/init.el index 3426903..13842eb 100755 --- a/init.el +++ b/init.el @@ -389,3 +389,27 @@ ; https://www.emacswiki.org/emacs/ELPA (add-hook 'after-init-hook 'unicode-fonts-setup) (add-hook 'after-init-hook 'gnu-elpa-keyring-update) + +(defun dakkar/perl-indent (beg end) + (interactive "r") + (if (use-region-p) + (cond ((get-text-property beg 'in-pod) + (let* ( + (text (buffer-substring beg end)) + (indented-text (with-temp-buffer + (insert text) + (cperl-mode) + (cperl-indent-region 0 (buffer-size)) + (indent-rigidly 0 (buffer-size) cperl-indent-level) + (buffer-string)))) + (delete-region beg end) + (insert indented-text))) + (t (cperl-indent-region beg end))))) + +(defun dakkar/setup-cperl-mode () + (setq indent-region-function 'dakkar/perl-indent) + (substitute-key-definition + 'indent-region 'dakkar/perl-indent + cperl-mode-map global-map)) + +(add-hook 'cperl-mode-hook 'dakkar/setup-cperl-mode) -- cgit v1.2.3