* [PATCH] lisp/org.el: make org-open-at-point handle parens in encoded urls correctly
@ 2017-08-10 20:25 Marc Ihm
2017-08-11 16:10 ` Nicolas Goaziou
0 siblings, 1 reply; 3+ messages in thread
From: Marc Ihm @ 2017-08-10 20:25 UTC (permalink / raw)
To: emacs-orgmode
[-- Attachment #1: Type: text/plain, Size: 1265 bytes --]
Hi,
the attached patch changes org-open-at-point in org.el:
Currently, when opening an url the function org-open-at-point uses the
variable path, which is the result of applying org-link-unescape on the
original url. Thus, all special chars like '() "' etc. which were
originally encoded like %20%28 etc. are reverted to their clear text
form. This worked for me in most cases, but gives me errors when my url
contains encoded chars like '()', i.e. %28%29.
The submitted patch fixes this by simply using the original url with all
special chars still encoded.
Please consider applying it, if fit.
Thanks,
Marc
--- a/lisp/org.el
+++ b/lisp/org.el
@@ -10707,7 +10707,7 @@ a timestamp or a link."
(t (list nil
(org-link-unescape
option)))))))))
((functionp (org-link-get-parameter type :follow))
- (funcall (org-link-get-parameter type :follow) path))
+ (funcall (org-link-get-parameter type :follow)
(org-element-property :path link)))
((member type '("coderef" "custom-id" "fuzzy" "radio"))
(unless (run-hook-with-args-until-success
'org-open-link-functions path)
--
[-- Attachment #2: 0001-make-org-open-at-point-handle-parens-in-encoded-urls.patch --]
[-- Type: application/x-empty, Size: 896 bytes --]
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] lisp/org.el: make org-open-at-point handle parens in encoded urls correctly
2017-08-10 20:25 [PATCH] lisp/org.el: make org-open-at-point handle parens in encoded urls correctly Marc Ihm
@ 2017-08-11 16:10 ` Nicolas Goaziou
2017-08-11 18:24 ` Marc Ihm
0 siblings, 1 reply; 3+ messages in thread
From: Nicolas Goaziou @ 2017-08-11 16:10 UTC (permalink / raw)
To: Marc Ihm; +Cc: emacs-orgmode
Hello,
Marc Ihm <marc@ihm.name> writes:
> the attached patch changes org-open-at-point in org.el:
>
> Currently, when opening an url the function org-open-at-point uses the
> variable path, which is the result of applying org-link-unescape on
> the original url. Thus, all special chars like '() "' etc. which were
> originally encoded like %20%28 etc. are reverted to their clear text
> form. This worked for me in most cases, but gives me errors when my
> url contains encoded chars like '()', i.e. %28%29.
>
> The submitted patch fixes this by simply using the original url with
> all special chars still encoded.
>
> Please consider applying it, if fit.
Thank you.
The problem here is that Org could introduce additional percent-encoding
upon creating a link. This additional layer needs to be removed before
opening the link.
I think there's a deeper issue to solve here. Your patch is likely to
move the problem elsewhere.
Regards,
--
Nicolas Goaziou
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] lisp/org.el: make org-open-at-point handle parens in encoded urls correctly
2017-08-11 16:10 ` Nicolas Goaziou
@ 2017-08-11 18:24 ` Marc Ihm
0 siblings, 0 replies; 3+ messages in thread
From: Marc Ihm @ 2017-08-11 18:24 UTC (permalink / raw)
To: Nicolas Goaziou; +Cc: emacs-orgmode
Am 11.08.2017 um 18:10 schrieb Nicolas Goaziou:
> Hello,
>
> Marc Ihm <marc@ihm.name> writes:
>
>> the attached patch changes org-open-at-point in org.el:
>>
>> Currently, when opening an url the function org-open-at-point uses the
>> variable path, which is the result of applying org-link-unescape on
>> the original url. Thus, all special chars like '() "' etc. which were
>> originally encoded like %20%28 etc. are reverted to their clear text
>> form. This worked for me in most cases, but gives me errors when my
>> url contains encoded chars like '()', i.e. %28%29.
>>
>> The submitted patch fixes this by simply using the original url with
>> all special chars still encoded.
>>
>> Please consider applying it, if fit.
>
> Thank you.
>
> The problem here is that Org could introduce additional percent-encoding
> upon creating a link. This additional layer needs to be removed before
> opening the link.
>
> I think there's a deeper issue to solve here. Your patch is likely to
> move the problem elsewhere.
>
> Regards,
>
Hi Nicolas,
well the code which I tried to patch is indeed convoluted and changing
things might indeed have side effects; so I keep this fix for myself and
see how it behaves on the long run :-)
Thanx for explaining !
regards
Marc
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2017-08-11 18:24 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-08-10 20:25 [PATCH] lisp/org.el: make org-open-at-point handle parens in encoded urls correctly Marc Ihm
2017-08-11 16:10 ` Nicolas Goaziou
2017-08-11 18:24 ` Marc Ihm
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).