Merge from origin/emacs-30

e6b4c0bceb lisp/emacs-lisp/cl-macs.el (cl-labels): Fix docstring (bu...
7a976d1aaf Fix minor issues in documentation of `use-package'
99ff59bd66 PHP should be in the PATH, either locally or remotely. (b...
26873d5028 Avoid warning when loading 'go-ts-mode'
a702f29a00 ; Fix package-version values
a1fbc51dc7 ; * lisp/which-key.el (which-key-idle-delay): Fix package...

# Conflicts:
#	lisp/progmodes/php-ts-mode.el
#	lisp/which-key.el
This commit is contained in:
Michael Albinus 2025-03-30 16:17:00 +02:00
commit faa3fbe010
6 changed files with 47 additions and 31 deletions

View file

@ -2276,9 +2276,10 @@ Like `cl-flet' but the definitions can refer to previous ones.
(defmacro cl-labels (bindings &rest body)
"Make local (recursive) function definitions.
BINDINGS is a list of definitions of the form (FUNC ARGLIST BODY...)
where FUNC is the function name, ARGLIST its arguments, and BODY the
forms of the function body.
Each definition can take the form (FUNC EXP) where FUNC is the function
name, and EXP is an expression that returns the function value to which
it should be bound, or it can take the more common form (FUNC ARGLIST
BODY...) which is a shorthand for (FUNC (lambda ARGLIST BODY)).
FUNC is defined in any BODY, as well as FORM, so you can write recursive
and mutually recursive function definitions. See Info node

View file

@ -601,7 +601,7 @@ what the parent of the node would be if it were a node."
(derived-mode-add-parents 'go-mod-ts-mode '(go-mod-mode))
(if (treesit-ready-p 'gomod)
(if (treesit-ready-p 'gomod t)
(add-to-list 'auto-mode-alist '("/go\\.mod\\'" . go-mod-ts-mode)))
;;;; go.work support.

View file

@ -131,12 +131,16 @@ Works like `css--fontify-region'."
:type 'boolean
:safe 'booleanp)
(defcustom php-ts-mode-php-executable (or (executable-find "php") "/usr/bin/php")
"The location of PHP executable."
(defcustom php-ts-mode-php-default-executable (or (executable-find "php") "/usr/bin/php")
"The default PHP executable."
:tag "PHP Executable"
:version "30.1"
:type 'file)
(defvar-local php-ts-mode-alternative-php-program-name nil
"An alternative to the usual `php' program name.
In non-nil, `php-ts-mode--executable' try to find this executable.")
(defcustom php-ts-mode-php-config nil
"The location of php.ini file.
If nil the default one is used to run the embedded webserver or
@ -267,7 +271,7 @@ Calls REPORT-FN directly."
:noquery t
:connection-type 'pipe
:buffer (generate-new-buffer " *php-ts-mode-flymake*")
:command `(,php-ts-mode-php-executable
:command `(,(php-ts-mode--executable)
"-l" "-d" "display_errors=0")
:sentinel
(lambda (proc _event)
@ -303,6 +307,16 @@ Calls REPORT-FN directly."
;;; Utils
(defun php-ts-mode--executable ()
"Return the absolute filename of the php executable.
If the `default-directory' is remote, search on a remote host, otherwise
it searches locally. If `php-ts-mode-alternative-php-program-name' is
non-zero, it searches for this program instead of the usual `php'.
If the search fails, it returns `php-ts-mode-php-default-executable'."
(or (executable-find
(or php-ts-mode-alternative-php-program-name "php") t)
php-ts-mode-php-default-executable))
(defun php-ts-mode--get-indent-style ()
"Helper function to set indentation style.
MODE can be `psr2', `pear', `drupal', `wordpress', `symfony', `zend'."
@ -593,11 +607,11 @@ doesn't have a child.
PARENT is NODE's parent, BOL is the beginning of non-whitespace
characters of the current line."
(when-let* ((prev-sibling
(or (treesit-node-prev-sibling node t)
(treesit-node-prev-sibling
(treesit-node-first-child-for-pos parent bol) t)
(treesit-node-child parent -1 t)))
(continue t))
(or (treesit-node-prev-sibling node t)
(treesit-node-prev-sibling
(treesit-node-first-child-for-pos parent bol) t)
(treesit-node-child parent -1 t)))
(continue t))
(save-excursion
(while (and prev-sibling continue)
(goto-char (treesit-node-start prev-sibling))
@ -1234,7 +1248,7 @@ Return nil if the NODE has no field “name” or if NODE is not a defun node."
`treesit-defun-type-regexp' defines what constructs to indent."
(interactive "*")
(when-let* ((orig-point (point-marker))
(node (treesit-defun-at-point)))
(node (treesit-defun-at-point)))
(indent-region (treesit-node-start node)
(treesit-node-end node))
(goto-char orig-point)))
@ -1641,7 +1655,7 @@ CONFIG."
(message "Run PHP built-in web server with args %s into buffer %s"
(string-join args " ")
buf-name)
(apply #'make-comint name php-ts-mode-php-executable nil args))
(apply #'make-comint name (php-ts-mode--executable) nil args))
(funcall
(if (called-interactively-p 'interactive) #'display-buffer #'get-buffer)
buf-name)))
@ -1733,18 +1747,19 @@ Prompt for CMD if `php-ts-mode-php-executable' is nil.
Optional CONFIG, if supplied, is the php.ini file to use."
(interactive (when current-prefix-arg
(list
(read-string "Run PHP: " php-ts-mode-php-executable)
(read-string "Run PHP: " (php-ts-mode--executable))
(expand-file-name
(read-file-name "With config: " php-ts-mode-php-config)))))
(let ((buffer (get-buffer-create php-ts-mode-inferior-php-buffer))
(cmd (or
cmd
php-ts-mode-php-executable
(read-string "Run PHP: " php-ts-mode-php-executable)))
(config (or
config
(and php-ts-mode-php-config
(expand-file-name php-ts-mode-php-config)))))
(let* ((php-prog (php-ts-mode--executable))
(buffer (get-buffer-create php-ts-mode-inferior-php-buffer))
(cmd (or
cmd
php-prog
(read-string "Run PHP: " php-prog)))
(config (or
config
(and php-ts-mode-php-config
(expand-file-name php-ts-mode-php-config)))))
(unless (comint-check-proc buffer)
(with-current-buffer buffer
(inferior-php-ts-mode-startup cmd config)

View file

@ -4178,7 +4178,7 @@ string)) to be used for converting the document."
(const :tag "No options" nil)
(string :tag "Options"))))
:group 'rst-compile
:package-version "1.2.0")
:package-version '(rst . "1.2.0"))
;; FIXME: Must be defcustom.
(defvar rst-compile-primary-toolset 'html

View file

@ -1849,11 +1849,11 @@ Usage:
:magic-fallback Form to be added to `magic-fallback-mode-alist'.
:interpreter Form to be added to `interpreter-mode-alist'.
:commands Define autoloads for commands that will be defined by the
package. This is useful if the package is being lazily
loaded, and you wish to conditionally call functions in your
:commands Define autoloads for commands defined by the package.
This is useful if the package is being lazily loaded,
and you wish to conditionally call functions in your
`:init' block that are defined in the package.
:autoload Similar to :commands, but it for no-interactive one.
:autoload Similar to `:commands', but used for non-interactive functions.
:hook Specify hook(s) to attach this package to.
:bind Bind keys, and define autoloads for the bound commands.

View file

@ -61,8 +61,8 @@ This variable should be set before activating `which-key-mode'.
A value of zero might lead to issues, so a non-zero value is
recommended
(see https://github.com/justbur/emacs-which-key/issues/134)."
:type 'number
:package-version "1.0" :version "30.1")
:type 'float
:package-version '(which-key . "1.0") :version "30.1")
(defcustom which-key-idle-secondary-delay nil
"Seconds to wait for which-key to pop up after initial display.