Commit 02807c95 authored by Richard M. Stallman's avatar Richard M. Stallman

(bounds-of-thing-at-point): Allow the end

to be at the same place as ORIG.
Try harder to find a thing that ends at ORIG.

(url): Move forward over colons.
Move back over colons at the end.
(thing-at-point-file-name-chars): Include @.
parent 79062c6c
......@@ -85,8 +85,22 @@ of the textual entity that was found."
(or (get thing 'beginning-op)
(function (lambda () (forward-thing thing -1)))))
(point))))
(if (and beg end (<= beg orig) (< orig end))
(cons beg end))))
(if (and beg end (<= beg orig) (<= orig end))
(cons beg end)
;; Try a second time, moving backward first and forward after,
;; so that we can find a thing that ends at ORIG.
(let ((beg (progn
(funcall
(or (get thing 'beginning-op)
(function (lambda () (forward-thing thing -1)))))
(point)))
(end (progn
(funcall
(or (get thing 'end-op)
(function (lambda () (forward-thing thing 1)))))
(point))))
(if (and beg end (<= beg orig) (<= orig end))
(cons beg end))))))
(error nil))))
;;;###autoload
......@@ -156,12 +170,12 @@ a symbol as a valid THING."
(put 'filename 'beginning-op
'(lambda () (skip-chars-backward thing-at-point-file-name-chars)))
(defvar thing-at-point-url-chars "~/A-Za-z0-9---_$%&=.,"
(defvar thing-at-point-url-chars "~/A-Za-z0-9---_@$%&=.,"
"Characters allowable in a URL.")
(put 'url 'end-op
'(lambda () (skip-chars-forward thing-at-point-url-chars)
(skip-chars-backward ".,")))
'(lambda () (skip-chars-forward (concat ":" thing-at-point-url-chars))
(skip-chars-backward ".,:")))
(put 'url 'beginning-op
'(lambda ()
(skip-chars-backward thing-at-point-url-chars)
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment