X-Git-Url: https://cgit.sxemacs.org/?p=riece;a=blobdiff_plain;f=lisp%2Friece-compat.el;h=5e4c2a0acd1885ded4b2c8a72d0deb313fe7224e;hp=ef41c107392f4c93d74d746147cc6397aacda2f3;hb=6a3367eb76ce4834e00da30bcee740e17de8f83a;hpb=005a2a7642c9f43d699922799801124a77d56f5d diff --git a/lisp/riece-compat.el b/lisp/riece-compat.el index ef41c10..5e4c2a0 100644 --- a/lisp/riece-compat.el +++ b/lisp/riece-compat.el @@ -48,17 +48,24 @@ (end-of-line) (point))) -(defvar riece-read-passwd nil) +(autoload 'read-passwd "passwd") +(defvar riece-read-passwd #'read-passwd) (defun riece-read-passwd (prompt) - (if (not riece-read-passwd) - (if (functionp 'read-passwd) - (setq riece-read-passwd 'read-passwd) - (if (load "passwd" t) - (setq riece-read-passwd 'read-passwd) - (autoload 'ange-ftp-read-passwd "ange-ftp") - (setq riece-read-passwd 'ange-ftp-read-passwd)))) (funcall riece-read-passwd prompt)) +(if (string-match "0\\{0\\}" "") + (defun riece-make-interval-regexp (regexp min &optional max) + (if max + (format "%s\\{%d,%d\\}" regexp min max) + (format "%s\\{%d\\}" regexp min))) + ;; Emacs 20.7 doesn't support \{...\} in regexps. + (defun riece-make-interval-regexp (regexp min &optional max) + (mapconcat #'identity + (nconc (make-list min regexp) + (if max + (make-list (- max min) (concat regexp "?")))) + ""))) + (provide 'riece-compat) ;;; riece-compat.el ends here