From: Sebastian Rose <sebastian_rose@gmx.de>
To: David Maus <dmaus@ictsoc.de>
Cc: "Sébastien Vauban" <wxhgmqzgwmuf@spammotel.com>, emacs-orgmode@gnu.org
Subject: Re: [bug] org-link-escape and (wrong-type-argument stringp nil)
Date: Mon, 20 Sep 2010 21:31:18 +0200 [thread overview]
Message-ID: <87sk14rz3t.fsf@gmx.de> (raw)
In-Reply-To: <87mxrc1bwj.wl%dmaus@ictsoc.de> (David Maus's message of "Mon, 20 Sep 2010 20:57:00 +0200")
David Maus <dmaus@ictsoc.de> writes:
> Sébastien Vauban wrote:
>>Hello,
>
>>With current git pull, and such an Org file (in UTF-8 encoding):
>
>> ...
>
>>I get the following error when trying to export it via PDFLaTeX:
>
> The problem is, that the 'É' character is not in Org's default list
> for link escapes but `string-match' matches for the lower case
> character. Adding more chars to `org-link-escape-chars' would solve
> the problem, but this seems to be a broder issue:
>
> Regular links (URIs) are restricted to a special set of ASCII
> characters and non-ascii chars are hex-encoded. Currently Org escapes
> links to Org mode headlines using the table mentioned above. But Org
> files and hence Org headlines might be Unicode, containing multibyte
> characters that cannot be hex-escaped in the normal fashion.
>
> Maybe something like this would be a solution:
>
> - Org only escapes square brackets when escaping a link to an Org
> mode headline
> - `org-link-escape' uses a shotgun-approach: Every char that is not
> allowed according to the specs (Cf. RFC3986) is percent encoded if
> the link sequence does not contain multibyte chars; If the sequence
> does contain multibyte chars, `org-link-escape' produces an IRI
> (Cf. RFC3987).
Is there a reason for this distinction between multibyte and unibyte?
I favour the "shotgun-approach" if not. It's bullet-proof.
The JavaScript function `encodeURIComponent()' encodes the German Umlaut
`ü' as `%C3%B6' regardless of the sources encoding actually. That's why
I wrote the two functions `org-protocol-unhex-string' and
`org-protocol-unhex-compound' (s. org-protocol.el).
I'll have to take a look at that RFC you mentioned :)
Best wishes
Sebastian
next prev parent reply other threads:[~2010-09-20 19:31 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-09-20 12:42 [bug] org-link-escape and (wrong-type-argument stringp nil) Sébastien Vauban
2010-09-20 18:57 ` David Maus
2010-09-20 19:31 ` Sebastian Rose [this message]
2010-09-22 7:19 ` David Maus
2010-09-22 14:25 ` Sebastian Rose
2010-09-23 18:40 ` David Maus
2010-09-23 19:57 ` Sebastian Rose
2010-09-26 18:22 ` David Maus
2010-09-26 21:23 ` Sebastian Rose
2010-09-26 22:43 ` Sebastian Rose
2010-09-26 22:47 ` Sebastian Rose
2010-09-26 22:51 ` Sebastian Rose
2010-09-27 5:36 ` [PATCH] " David Maus
2010-09-27 12:43 ` Sebastian Rose
2010-09-29 15:48 ` Carsten Dominik
2010-09-27 5:36 ` [PATCH] Decode single byte sequence if decoding unicode failed David Maus
2010-11-04 20:35 ` [bug] org-link-escape and (wrong-type-argument stringp nil) David Maus
2010-09-20 19:49 ` Sébastien Vauban
2010-09-22 7:20 ` David Maus
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.orgmode.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87sk14rz3t.fsf@gmx.de \
--to=sebastian_rose@gmx.de \
--cc=dmaus@ictsoc.de \
--cc=emacs-orgmode@gnu.org \
--cc=wxhgmqzgwmuf@spammotel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).