* liece-misc.el: Don't require pccl and broken.
[elisp/liece.git] / lisp / liece-url.el
index c02065b..d7d3abe 100644 (file)
   (let ((browse-url-browser-function liece-url-browser-function))
     (browse-url (widget-value widget))))
 
-(defvar liece-url-add-hook nil)
+(defvar liece-add-url-functions nil)
 
 (defun liece-url-add-buttons (start end)
   (save-excursion
     (goto-char start)
     (while (re-search-forward liece-url-regexp end t)
-      (if liece-highlight-mode
-         (liece-widget-convert-button 'url-link
-                                      (match-beginning 0)(match-end 0)
-                                      (match-string 0)))
-      (unless (assoc url liece-url-alist)
-       (push (list url) liece-url-alist)
-       (run-hook-with-args 'liece-url-add-hook url)))))
+      (let ((url (match-string 0)))
+       (if liece-highlight-mode
+           (liece-widget-convert-button
+            'url-link (match-beginning 0)(match-end 0) url))
+       (unless (assoc url liece-url-alist)
+         (push (list url) liece-url-alist)
+         (run-hook-with-args 'liece-add-url-functions url))))))
 
 (defun liece-command-browse-url (&optional url)
   (interactive
    (let (url)
      (if (and current-prefix-arg (eq current-prefix-arg '-))
         (setq url (caar liece-url-alist))
-       (setq url (liece-minibuffer-completing-default-read
-                 (_ "Open URL:") liece-url-alist)))
+       (setq url (completing-read (_ "Open URL:") liece-url-alist)))
      (list url)))
   (let ((browse-url-browser-function liece-url-browser-function))
     (browse-url url)))