* lisp/progmodes/cperl-mode.el: Merge from Jonathan Rockway's version
commit1bcbcb7e486008d4fc449088e49da6c52ba88bee
authorStefan Monnier <monnier@iro.umontreal.ca>
Fri, 22 Dec 2017 04:22:59 +0000 (21 23:22 -0500)
committerStefan Monnier <monnier@iro.umontreal.ca>
Fri, 22 Dec 2017 04:22:59 +0000 (21 23:22 -0500)
treecb1f426a3666dbad6e7e3c8c6995e49c3fd16036
parent9ced53ae8b381afbdd465081c7f82ebfd03be47b
* lisp/progmodes/cperl-mode.el: Merge from Jonathan Rockway's version

(cperl-indent-subs-specially): New var.
(cperl-mode-abbrev-table): Add '=begin'.  Obey cperl-electric-keywords.
(cperl-sub-keywords, cperl-sub-regexp): New vars.
(cperl-char-ends-sub-keyword-p): New function.
(cperl-mode): Use them.
(cperl-db): Pass `-d` arg to perl.
(cperl-electric-keyword, cperl-linefeed): Accept also '=end'.
(cperl-sniff-for-indent): Obey cperl-indent-parens-as-block and
cperl-indent-subs-specially.
(cperl-calculate-indent): Fix handling of numbers in
cperl-indent-rules-alist, and add a case for functions.
(cperl-find-pods-heres): Use cperl-sub-regexp and allow =begin/=end.
Also recognize 'say'.
(cperl-block-p): Use cperl-sub-regexp
(cperl-after-block-p): Use cperl-char-ends-sub-keyword-p and
cperl-sub-regexp.
(cperl-after-block-and-statement-beg): Accept 'say'.
(cperl-indent-exp): Accept 'state'.
(cperl-fix-line-spacing): Accept 'state'.
(cperl-init-faces): Add 'given', 'when', 'default', 'break', 'try',
'catch', 'finally', 'evalbytes', 'state', '__SUB__', 'fc', 'sysseek'.
Use cperl-sub-regexp.
(cperl-etags): Use cperl-sub-regexp.
(cperl-not-bad-style-regexp): Add '//'.
(cperl-short-docs): Add ~~, UNITCHECK, 'break', 'default', 'evalbytes',
'given', 'say', 'state', //, 'fc', 'prototype', =begin', and '=end'.
lisp/progmodes/cperl-mode.el