Autoload some string functions

These functions are documented in both `(elisp) Creating Strings' and
'M-x shortdoc RET string RET', so users will expect them to be available
without having to require 'subr-x'.

* lisp/emacs-lisp/subr-x.el (string-fill, string-limit, string-pad)
(string-chop-newline): Autoload.
This commit is contained in:
Stefan Kangas 2024-07-01 05:14:25 +02:00
parent b534183135
commit d64396b8e4

View file

@ -158,6 +158,7 @@ removed."
(string-trim (replace-regexp-in-string blank " " string t t)
blank blank)))
;;;###autoload
(defun string-fill (string length)
"Try to word-wrap STRING so that no lines are longer than LENGTH.
Wrapping is done where there is whitespace. If there are
@ -172,6 +173,7 @@ result will have lines that are longer than LENGTH."
(fill-region (point-min) (point-max)))
(buffer-string)))
;;;###autoload
(defun string-limit (string length &optional end coding-system)
"Return a substring of STRING that is (up to) LENGTH characters long.
If STRING is shorter than or equal to LENGTH characters, return the
@ -253,6 +255,7 @@ than this function."
(end (substring string (- (length string) length)))
(t (substring string 0 length)))))
;;;###autoload
(defun string-pad (string length &optional padding start)
"Pad STRING to LENGTH using PADDING.
If PADDING is nil, the space character is used. If not nil, it
@ -272,6 +275,7 @@ the string."
(start (concat (make-string pad-length (or padding ?\s)) string))
(t (concat string (make-string pad-length (or padding ?\s)))))))
;;;###autoload
(defun string-chop-newline (string)
"Remove the final newline (if any) from STRING."
(declare (pure t) (side-effect-free t))