Remove `string-slice' -- it's not very well defined
* doc/lispref/strings.texi (Creating Strings): Ditto. * lisp/emacs-lisp/subr-x.el (string-slice): Remove.
This commit is contained in:
parent
d63ccde966
commit
269cec13a2
5 changed files with 1 additions and 36 deletions
|
|
@ -381,17 +381,6 @@ The default value of @var{separators} for @code{split-string}. Its
|
|||
usual value is @w{@code{"[ \f\t\n\r\v]+"}}.
|
||||
@end defvar
|
||||
|
||||
@defun string-slice string regexp
|
||||
Split @var{string} into a list of strings on @var{regexp} boundaries.
|
||||
As opposed to @code{split-string}, the boundaries are included in the
|
||||
result set:
|
||||
|
||||
@example
|
||||
(string-slice " two words " " +")
|
||||
@result{} (" two" " words" " ")
|
||||
@end example
|
||||
@end defun
|
||||
|
||||
@defun string-clean-whitespace string
|
||||
Clean up the whitespace in @var{string} by collapsing stretches of
|
||||
whitespace to a single space character, as well as removing all
|
||||
|
|
|
|||
2
etc/NEWS
2
etc/NEWS
|
|
@ -1467,7 +1467,7 @@ This can be set to nil to inhibit hiding passwords in .authinfo files.
|
|||
+++
|
||||
*** A number of new string manipulation functions have been added.
|
||||
'string-clean-whitespace', 'string-fill', 'string-limit',
|
||||
'string-lines', 'string-pad', 'string-chop-newline' and 'string-slice'.
|
||||
'string-lines', 'string-pad' and 'string-chop-newline'.
|
||||
|
||||
+++
|
||||
*** New variable 'current-minibuffer-command'.
|
||||
|
|
|
|||
|
|
@ -154,9 +154,6 @@ There can be any number of :example/:result elements."
|
|||
:eval (split-string "foo bar")
|
||||
:eval (split-string "|foo|bar|" "|")
|
||||
:eval (split-string "|foo|bar|" "|" t))
|
||||
(string-slice
|
||||
:eval (string-slice "foo-bar" "-")
|
||||
:eval (string-slice "foo-bar--zot-" "-+"))
|
||||
(string-lines
|
||||
:eval (string-lines "foo\n\nbar")
|
||||
:eval (string-lines "foo\n\nbar" t))
|
||||
|
|
|
|||
|
|
@ -310,19 +310,6 @@ than this function."
|
|||
If OMIT-NULLS, empty lines will be removed from the results."
|
||||
(split-string string "\n" omit-nulls))
|
||||
|
||||
(defun string-slice (string regexp)
|
||||
"Split STRING at REGEXP boundaries and return a list of slices.
|
||||
The boundaries that match REGEXP are included in the result.
|
||||
|
||||
Also see `split-string'."
|
||||
(if (zerop (length string))
|
||||
(list "")
|
||||
(let ((i (string-match-p regexp string 1)))
|
||||
(if i
|
||||
(cons (substring string 0 i)
|
||||
(string-slice (substring string i) regexp))
|
||||
(list string)))))
|
||||
|
||||
(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
|
||||
|
|
|
|||
|
|
@ -604,14 +604,6 @@
|
|||
(should (equal (string-lines "foo") '("foo")))
|
||||
(should (equal (string-lines "foo \nbar") '("foo " "bar"))))
|
||||
|
||||
(ert-deftest subr-string-slice ()
|
||||
(should (equal (string-slice "foo-bar" "-") '("foo" "-bar")))
|
||||
(should (equal (string-slice "foo-bar-" "-") '("foo" "-bar" "-")))
|
||||
(should (equal (string-slice "-foo-bar-" "-") '("-foo" "-bar" "-")))
|
||||
(should (equal (string-slice "ooo" "lala") '("ooo")))
|
||||
(should (equal (string-slice "foo bar" "\\b") '("foo" " " "bar" "")))
|
||||
(should (equal (string-slice "foo bar" "\\b\\|a") '("foo" " " "b" "ar" ""))))
|
||||
|
||||
(ert-deftest subr-string-pad ()
|
||||
(should (equal (string-pad "foo" 5) "foo "))
|
||||
(should (equal (string-pad "foo" 5 ?-) "foo--"))
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue