* nnwfm.el (nnwfm-create-mapping): Use gnus-url-unhex-string.
* gnus-util.el (gnus-url-unhex-string): Move here.
+2001-12-07 10:00:00 ShengHuo ZHU <zsh@cs.rochester.edu>
+
+ * nnwfm.el (nnwfm-create-mapping): Use gnus-url-unhex-string.
+
+ * gnus-util.el (gnus-url-unhex-string): Move here.
+
2001-12-07 09:00:00 ShengHuo ZHU <zsh@cs.rochester.edu>
* nnrss.el (nnrss-decode-entities-unibyte-string): Use
(setq retval (cons (list key val) retval)))))
retval))
-(defun gnus-url-unhex (x)
- (if (> x ?9)
- (if (>= x ?a)
- (+ 10 (- x ?a))
- (+ 10 (- x ?A)))
- (- x ?0)))
-
-(defun gnus-url-unhex-string (str &optional allow-newlines)
- "Remove %XXX embedded spaces, etc in a url.
-If optional second argument ALLOW-NEWLINES is non-nil, then allow the
-decoding of carriage returns and line feeds in the string, which is normally
-forbidden in URL encoding."
- (setq str (or (mm-subst-char-in-string ?+ ? str) ""))
- (let ((tmp "")
- (case-fold-search t))
- (while (string-match "%[0-9a-f][0-9a-f]" str)
- (let* ((start (match-beginning 0))
- (ch1 (gnus-url-unhex (elt str (+ start 1))))
- (code (+ (* 16 ch1)
- (gnus-url-unhex (elt str (+ start 2))))))
- (setq tmp (concat
- tmp (substring str 0 start)
- (cond
- (allow-newlines
- (char-to-string code))
- ((or (= code ?\n) (= code ?\r))
- " ")
- (t (char-to-string code))))
- str (substring str (match-end 0)))))
- (setq tmp (concat tmp str))
- tmp))
-
(defun gnus-url-mailto (url)
;; Send mail to someone
(when (string-match "mailto:/*\\(.*\\)" url)
If you find some problem with the directory separator character, try
\"[/\\\\\]\" for some systems.")
+(defun gnus-url-unhex (x)
+ (if (> x ?9)
+ (if (>= x ?a)
+ (+ 10 (- x ?a))
+ (+ 10 (- x ?A)))
+ (- x ?0)))
+
+(defun gnus-url-unhex-string (str &optional allow-newlines)
+ "Remove %XXX embedded spaces, etc in a url.
+If optional second argument ALLOW-NEWLINES is non-nil, then allow the
+decoding of carriage returns and line feeds in the string, which is normally
+forbidden in URL encoding."
+ (setq str (or (mm-subst-char-in-string ?+ ? str) ""))
+ (let ((tmp "")
+ (case-fold-search t))
+ (while (string-match "%[0-9a-f][0-9a-f]" str)
+ (let* ((start (match-beginning 0))
+ (ch1 (gnus-url-unhex (elt str (+ start 1))))
+ (code (+ (* 16 ch1)
+ (gnus-url-unhex (elt str (+ start 2))))))
+ (setq tmp (concat
+ tmp (substring str 0 start)
+ (cond
+ (allow-newlines
+ (char-to-string code))
+ ((or (= code ?\n) (= code ?\r))
+ " ")
+ (t (char-to-string code))))
+ str (substring str (match-end 0)))))
+ (setq tmp (concat tmp str))
+ tmp))
+
(provide 'gnus-util)
;;; gnus-util.el ends here
(maybe-fbind '(babel-fetch
babel-wash create-image decode-coding-string display-graphic-p
+ replace-regexp-in-string
bbdb-complete-name
display-time-event-handler
find-image font-create-object gnus-mule-get-coding-system
make-overlay mouse-minibuffer-check mouse-movement-p
mouse-scroll-subr overlay-buffer overlay-end
overlay-get overlay-lists overlay-put
+ overlays-in
overlay-start posn-point posn-window
read-event read-event run-with-idle-timer
set-buffer-multibyte set-char-table-range
(when (re-search-forward "href=\"\\(Thread.*DateLast=\\([^\"]+\\)\\)"
nil t)
(setq url (match-string 1)
- time (nnwfm-date-to-time (url-unhex-string (match-string 2))))
+ time (nnwfm-date-to-time (gnus-url-unhex-string
+ (match-string 2))))
(when (and (nnwfm-new-threads-p group time)
(not (member
(setq url (concat