From 0476eba5c8e976cf1bd927e4d2ed992136ece269 Mon Sep 17 00:00:00 2001 From: USAMI Kenta Date: Mon, 12 Jul 2021 13:49:43 +0900 Subject: [PATCH 1/3] Remove php-mode-disable-c-mode-hook --- lisp/php-mode.el | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/lisp/php-mode.el b/lisp/php-mode.el index 9fc2b7b7..c795c595 100644 --- a/lisp/php-mode.el +++ b/lisp/php-mode.el @@ -271,13 +271,6 @@ In that case set to `NIL'." :tag "PHP Mode Disable c-auto-align-backslashes" :type 'boolean) -(define-obsolete-variable-alias 'php-mode-disable-parent-mode-hooks 'php-mode-disable-c-mode-hook "1.21.0") -(defcustom php-mode-disable-c-mode-hook t - "When set to `T', do not run hooks of parent modes (`java-mode', `c-mode')." - :group 'php-mode - :tag "PHP Mode Disable C Mode Hook" - :type 'boolean) - (defcustom php-mode-enable-project-local-variable t "When set to `T', apply project local variable to buffer local variable." :group 'php-mode @@ -1120,9 +1113,6 @@ After setting the stylevars run hooks according to STYLENAME "Please run `M-x package-reinstall php-mode' command." "Please byte recompile PHP Mode files."))) - (when php-mode-disable-c-mode-hook - (setq-local c-mode-hook nil) - (setq-local java-mode-hook nil)) (c-initialize-cc-mode t) (c-init-language-vars php-mode) (c-common-init 'php-mode) From ed9f3bb3c79c3d9544186f6f97f4e5359b83d15a Mon Sep 17 00:00:00 2001 From: USAMI Kenta Date: Mon, 12 Jul 2021 13:50:07 +0900 Subject: [PATCH 2/3] Make inherit prog-mode instead of c-mode --- lisp/php-mode.el | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/lisp/php-mode.el b/lisp/php-mode.el index c795c595..5fbf9396 100644 --- a/lisp/php-mode.el +++ b/lisp/php-mode.el @@ -299,6 +299,7 @@ In that case set to `NIL'." (defvar php-mode-map (let ((map (make-sparse-keymap "PHP Mode"))) + (set-keymap-parent map c-mode-base-map) ;; Remove menu item for c-mode (define-key map [menu-bar C] nil) @@ -1099,13 +1100,13 @@ After setting the stylevars run hooks according to STYLENAME table)) ;;;###autoload -(define-derived-mode php-mode c-mode "PHP" +(define-derived-mode php-mode prog-mode "PHP" "Major mode for editing PHP code. \\{php-mode-map}" + :group 'php-mode :syntax-table php-mode-syntax-table - ;; :after-hook (c-update-modeline) - ;; (setq abbrev-mode t) + :after-hook (c-update-modeline) (unless (string= php-mode-cc-vertion c-version) (user-error "CC Mode has been updated. %s" From 3bd8eb7bc7adc810d5ecfae9aa62bd9a896fc205 Mon Sep 17 00:00:00 2001 From: USAMI Kenta Date: Mon, 12 Jul 2021 13:59:02 +0900 Subject: [PATCH 3/3] Update CHANGELOG --- CHANGELOG.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 15274baf..a1fb3323 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,6 +14,9 @@ All notable changes of the PHP Mode 1.19.1 release series are documented in this ### Changed + * `php-mode` no longer inherits `c-mode` + * The keymap continues to inherit from `c-mode-base-map`. + * This change has no effect on other CC Mode features * Optimized propertize process ([#669]) * Reimoplement `php-syntax-propertize-function` using `syntax-propertize-rules` * Make propertize PHP 8 `#[Attribute]` always enabled