]> git.eshelyaron.com Git - emacs.git/commit
cperl-mode.el: Update for the current Perl version 5.040
authorHarald Jörg <haj@posteo.de>
Mon, 10 Jun 2024 10:19:04 +0000 (12:19 +0200)
committerEshel Yaron <me@eshelyaron.com>
Wed, 12 Jun 2024 09:23:30 +0000 (11:23 +0200)
commit87cb39a670224e69b8899b968854935ba9e167d6
tree803543cc5acf0fca1586e459a71567faa7fe338b
parentdb10f1b1a45b37890410d6391f10f78e93585ff3
cperl-mode.el: Update for the current Perl version 5.040

* etc/NEWS: Announce new features of cperl-mode.

* lisp/progmodes/cperl-mode.el (cperl-menu): Add toggle for extra
paired delimiters.
(defconst): new rx expressions `cperl--sub-name-generated-rx' and
`cperl--field-declaration-rx'
(cperl--imenu-entries-rx): Use the new expressions
(cperl--extra-paired-delimiters): New variable holding the paired
delimiters for Perl 5.36 and newer
(cperl-imenu-sub-keywords): Add autogenerated methods to imenu
(cperl-init-faces): Add the __CLASS__ token, builtin constants,
and attributes for field declarations.
(cperl-short-docs): Add __CLASS__ to one-line docs.
(cperl-extra-paired-delimiters-mode): new minor mode to handle
non-ASCII paired delimiters.

* test/lisp/progmodes/cperl-mode-tests.el
(cperl-test-fontify-builtin-constants): new test.
(cperl-test-fontify-class): New test clauses for attributes.
(cperl-test-field-declaration-rx): new test.
(cperl-test-autogenerated-reader-rx): new unit test for the rx
expression.
(cperl-test-extra-delimiters): new test.
(cperl-test-imenu-index): new clauses for imenu capture of
autogenerated methods.

* test/lisp/progmodes/cperl-mode-resources/grammar.pl: Add
examples for Perl 5.40 syntax.

* test/lisp/progmodes/cperl-mode-resources/extra-delimiters.pl:
New resource for non-ASCII paired delimiters.

(cherry picked from commit 060c48435f49eb03019cc9eb7f1657f756f56ceb)
etc/NEWS
lisp/progmodes/cperl-mode.el
test/lisp/progmodes/cperl-mode-resources/extra-delimiters.pl [new file with mode: 0644]
test/lisp/progmodes/cperl-mode-resources/grammar.pl
test/lisp/progmodes/cperl-mode-resources/perl-class.pl
test/lisp/progmodes/cperl-mode-tests.el