GNU bug report logs -
#572
thing-at-point 'url gets confused if url has paren
Previous Next
Reported by: xah lee <xah <at> xahlee.org>
Date: Fri, 18 Jul 2008 12:50:03 UTC
Severity: normal
Done: joakim <at> verona.se
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
This is an automatic notification regarding your bug report
which was filed against the emacs package:
#572: thing-at-point 'url gets confused if url has paren
It has been closed by joakim <at> verona.se.
Their explanation is attached below along with your original report.
If this explanation is unsatisfactory and you have not received a
better one in a separate message then please contact joakim <at> verona.se by
replying to this email.
--
572: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=572
Emacs Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
Thanks for the thorough bug report!
--
Joakim Verona
[Message part 3 (message/rfc822, inline)]
(thing-at-point 'url) gets confused if the url contains a
parenthesis such as in
http://en.wikipedia.org/wiki/Oz_(programming_language)
Note that, according to
http://en.wikipedia.org/wiki/Percent-encoding
parenthesis in uri do not necessarily needs to be percent encoded,
depending on the context the uri is used. Quote: «When a character
from the reserved set (a "reserved character") has special meaning (a
"reserved purpose") in a certain context, and a URI scheme says that
it is necessary to use that character for some other purpose, then
the character must be percent-encoded.»
But anyhow, practically speaking, often uri will contain parens. e.g.
Wikipedia has lots of article with url containing paren, and in
browser they are shown as paren, and this is often copied and pasted
as is to editors.
the above should be the complete bug description.
The following are supplementary to this bug report.
--------------------------------------------
Here's a sample code
(defun wrap-url ()
"Make the url at cursor point into a html link.
If there is a region, use the region as url instead.
This function is interface wrapper for `wrap-url-string'.
See that function for detail."
(interactive)
(let (bds p1 p2 url)
(if (and transient-mark-mode mark-active)
(progn
(setq p1 (region-beginning))
(setq p2 (region-end))
)
(progn
(setq bds (bounds-of-thing-at-point 'url))
(setq p1 (car bds))
(setq p2 (cdr bds))
)
)
(setq url (buffer-substring-no-properties p1 p2))
(delete-region p1 p2)
(goto-char p1)
(insert (wrap-url-string url))
)
)
the error from the above code when the cursor is on the following line:
http://en.wikipedia.org/wiki/Oz_(programming_language)
is:
setq: Wrong type argument: integer-or-marker-p, nil
presumably because the boundary p1 or p2 is not a integer or marker.
-----------------
In GNU Emacs 22.2.1 (powerpc-apple-darwin8.11.0, Carbon Version 1.6.0)
of 2008-04-05 on g5.tokyo.stp.isas.jaxa.jp
Windowing system distributor `Apple Inc.', version 10.4.11
Xah
∑ http://xahlee.org/
☄
☄
This bug report was last modified 16 years and 290 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.