diff options
author | Nick Roberts <nickrob@snap.net.nz> | 2007-07-08 06:49:02 +0000 |
---|---|---|
committer | Nick Roberts <nickrob@snap.net.nz> | 2007-07-08 06:49:02 +0000 |
commit | d0b15d36793fd0ecb79f8dec78afb46b7e674af1 (patch) | |
tree | ba0505097bde3cc6c184c6c837bbff87aa08cb74 /lisp/pcvs-util.el | |
parent | a80a334ec31740354c57622739c681431830ade4 (diff) | |
download | emacs-d0b15d36793fd0ecb79f8dec78afb46b7e674af1.tar.gz |
* pcvs-util.el (cvs-strings->string, cvs-string->strings):
Rename and move to...
* subr.el (strings->string, string->strings): ...here.
Diffstat (limited to 'lisp/pcvs-util.el')
-rw-r--r-- | lisp/pcvs-util.el | 31 |
1 files changed, 1 insertions, 30 deletions
diff --git a/lisp/pcvs-util.el b/lisp/pcvs-util.el index 3945d7ba67c..58c605a19d2 100644 --- a/lisp/pcvs-util.el +++ b/lisp/pcvs-util.el @@ -186,35 +186,6 @@ arguments. If ARGS is not a list, no argument will be passed." "Tell whether STR1 is a prefix of STR2." (eq t (compare-strings str2 nil (length str1) str1 nil nil))) -;; (string->strings (strings->string X)) == X -(defun cvs-strings->string (strings &optional separator) - "Concatenate the STRINGS, adding the SEPARATOR (default \" \"). -This tries to quote the strings to avoid ambiguity such that - (cvs-string->strings (cvs-strings->string strs)) == strs -Only some SEPARATORs will work properly." - (let ((sep (or separator " "))) - (mapconcat - (lambda (str) - (if (string-match "[\\\"]" str) - (concat "\"" (replace-regexp-in-string "[\\\"]" "\\\\\\&" str) "\"") - str)) - strings sep))) - -;; (string->strings (strings->string X)) == X -(defun cvs-string->strings (string &optional separator) - "Split the STRING into a list of strings. -It understands elisp style quoting within STRING such that - (cvs-string->strings (cvs-strings->string strs)) == strs -The SEPARATOR regexp defaults to \"\\s-+\"." - (let ((sep (or separator "\\s-+")) - (i (string-match "[\"]" string))) - (if (null i) (split-string string sep t) ; no quoting: easy - (append (unless (eq i 0) (split-string (substring string 0 i) sep t)) - (let ((rfs (read-from-string string i))) - (cons (car rfs) - (cvs-string->strings (substring string (cdr rfs)) - sep))))))) - ;;;; ;;;; file names ;;;; @@ -240,7 +211,7 @@ The SEPARATOR regexp defaults to \"\\s-+\"." (defconst cvs-qtypedesc-string1 (cvs-qtypedesc-create 'identity 'identity t)) (defconst cvs-qtypedesc-string (cvs-qtypedesc-create 'identity 'identity)) (defconst cvs-qtypedesc-strings - (cvs-qtypedesc-create 'cvs-string->strings 'cvs-strings->string nil)) + (cvs-qtypedesc-create 'string->strings 'strings->string nil)) (defun cvs-query-read (default prompt qtypedesc &optional hist-sym) (let* ((qtypedesc (or qtypedesc cvs-qtypedesc-strings)) |