-;;; thingatpt.el --- Get the `thing' at point
+;;; thingatpt.el --- get the `thing' at point
;; Copyright (C) 1991,92,93,94,95,96,97,1998,2000
;; Free Software Foundation, Inc.
(defvar thing-at-point-url-path-regexp
"[^]\t\n \"'()<>[^`{}]*[^]\t\n \"'()<>[^`{}.,;]+"
- "A regular expression probably matching the host, path or e-mail part of a URL.")
+ "A regular expression probably matching the host and filename or e-mail part of a URL.")
(defvar thing-at-point-short-url-regexp
(concat "[-A-Za-z0-9.]+" thing-at-point-url-path-regexp)
Hostname matching is stricter in this case than for
``thing-at-point-url-regexp''.")
+(defvar thing-at-point-uri-schemes
+ ;; Officials from http://www.iana.org/assignments/uri-schemes
+ '("ftp://" "http://" "gopher://" "mailto:" "news:" "nntp:"
+ "telnet://" "wais://" "file:/" "prospero:" "z39.50s:" "z39.50r:"
+ "cid:" "mid:" "vemmi:" "service:" "imap:" "nfs:" "acap:" "rtsp:"
+ "tip:" "pop:" "data:" "dav:" "opaquelocktoken:" "sip:" "tel:" "fax:"
+ "modem:" "ldap:" "https://" "soap.beep:" "soap.beeps:" "urn:" "go:"
+ "afs:" "tn3270:" "mailserver:"
+ ;; Compatibility
+ "snews:")
+ "Uniform Resource Identifier (URI) Schemes")
+
(defvar thing-at-point-url-regexp
- (concat
- "\\<\\(https?://\\|ftp://\\|gopher://\\|telnet://\\|wais://\\|file:/\\|s?news:\\|mailto:\\)"
- thing-at-point-url-path-regexp)
+ (concat "\\<\\(" (mapconcat 'identity thing-at-point-uri-schemes "\\|") "\\)"
+ thing-at-point-url-path-regexp)
"A regular expression probably matching a complete URL.")
(defvar thing-at-point-markedup-url-regexp
(let* ((read-data (read-from-string str))
(more-left
(condition-case nil
- (progn (read-from-string (substring str (cdr read-data)))
+ ;; The call to `ignore' suppresses a compiler warning.
+ (progn (ignore (read-from-string (substring str (cdr read-data))))
t)
(end-of-file nil))))
(if more-left
;;;###autoload
(defun list-at-point () (form-at-point 'list 'listp))
-;; thingatpt.el ends here.
+;;; thingatpt.el ends here