diff options
author | Vincenzo Pupillo <v.pupillo@gmail.com> | 2024-10-10 16:06:37 +0200 |
---|---|---|
committer | Eli Zaretskii <eliz@gnu.org> | 2024-10-19 16:11:32 +0300 |
commit | 4e0cb960dbd95c8001b08c62682b085292184b87 (patch) | |
tree | 3f825cdc913e491a570e669e4e80641882c4f899 /lisp/emacs-lisp/ert-font-lock.el | |
parent | 902029b1410ef9128380f9a307721ea6ab008529 (diff) | |
download | emacs-4e0cb960dbd95c8001b08c62682b085292184b87.tar.gz emacs-4e0cb960dbd95c8001b08c62682b085292184b87.tar.bz2 emacs-4e0cb960dbd95c8001b08c62682b085292184b87.zip |
Fix 'php-ts-mode': better indentation and font locking
Incomplete compound_statement or colon_block (statement-group
without a closing brace or closing keyword) that are not inside
a function or method are not recognized as such by tree-sitter-php.
A new function 'php-ts-mode--open-statement-group-heuristic'
handles this case. Font locking of magic methods and better
support for alternative control structure syntax.
Support for latest grammar version.
* lisp/progmodes/php-ts-mode.el
(php-ts-mode--language-source-alist): Updated grammar version.
(php-ts-mode--possibly-braceless-keyword-re): Regular expression
for braceless keyword.
(php-ts-mode--open-statement-group-heuristic): New function.
(php-ts-mode--parent-html-bol): Use the new function and doc fix.
(php-ts-mode--parent-html-heuristic): Use the new function and doc
fix.
(php-ts-mode--indent-styles): Use the new function and add
'colon_block' support.
(php-ts-mode--class-magic-methods): New predefined magic methods
list.
(php-ts-mode--test-namespace-name-as-prefix-p): Doc fix.
(php-ts-mode--test-namespace-aliasing-clause-p): Fix the test and
doc.
(php-ts-mode--test-namespace-use-group-clause-p): Doc fix.
(php-ts-mode--test-visibility-modifier-operation-clause-p): New
function for the new asymmetric property visibility feature of
PHP 8.4.
(php-ts-mode--font-lock-settings): Font lock for class magic methods
and alternative syntax. Better font lock for 'instanceof'. Use
'font-lock-function-call-face' for scoped and member call expression.
(bug#73779)
Diffstat (limited to 'lisp/emacs-lisp/ert-font-lock.el')
0 files changed, 0 insertions, 0 deletions