From mboxrd@z Thu Jan 1 00:00:00 1970 From: Michael Brand Subject: [PATCH] Escape double quotes in URL passed to browse-url Date: Sun, 5 May 2013 17:04:40 +0200 Message-ID: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary=e89a8f6435644f6ab204dbf9e705 Return-path: Received: from eggs.gnu.org ([208.118.235.92]:58204) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UZ0UW-0002l1-GI for emacs-orgmode@gnu.org; Sun, 05 May 2013 11:04:46 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UZ0UV-0000Qe-1Y for emacs-orgmode@gnu.org; Sun, 05 May 2013 11:04:44 -0400 Received: from mail-la0-x22e.google.com ([2a00:1450:4010:c03::22e]:51506) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UZ0UU-0000QR-ML for emacs-orgmode@gnu.org; Sun, 05 May 2013 11:04:42 -0400 Received: by mail-la0-f46.google.com with SMTP id fk20so2696092lab.19 for ; Sun, 05 May 2013 08:04:41 -0700 (PDT) List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: Org Mode --e89a8f6435644f6ab204dbf9e705 Content-Type: text/plain; charset=ISO-8859-1 Escape double quotes in URL passed to browse-url * lisp/org.el (org-link-escape-chars-browser): Add char double quote. * lisp/org.el (org-open-at-point): Make use of the constant `org-link-escape-chars-browser'. * testing/lisp/test-org.el (test-org/org-link-unescape-ascii-extended-char): Fill paragraph. (test-org/org-link-escape-url-with-escaped-char): Fill paragraph and typo. (test-org/org-link-escape-chars-browser): New test. This is to make work to open the Org link [[http://some.host.com/search?q="Org mode"]] in a browser. --e89a8f6435644f6ab204dbf9e705 Content-Type: text/plain; charset=UTF-8; name="0001-Escape-double-quotes-in-URL-passed-to-browse-url.patch.txt" Content-Disposition: attachment; filename="0001-Escape-double-quotes-in-URL-passed-to-browse-url.patch.txt" Content-Transfer-Encoding: base64 X-Attachment-Id: f_hgccr7es0 RnJvbSAyODcyNmJjYzdiN2M0NDBkNzBlMmQ5NWVhNWE2MWQwY2Q1ZjA4NGVhIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBNaWNoYWVsIEJyYW5kIDxtaWNoYWVsLmNoLmJyYW5kQGdtYWls LmNvbT4KRGF0ZTogU3VuLCA1IE1heSAyMDEzIDE3OjAyOjE4ICswMjAwClN1YmplY3Q6IFtQQVRD SF0gRXNjYXBlIGRvdWJsZSBxdW90ZXMgaW4gVVJMIHBhc3NlZCB0byBicm93c2UtdXJsCgoqIGxp c3Avb3JnLmVsIChvcmctbGluay1lc2NhcGUtY2hhcnMtYnJvd3Nlcik6IEFkZCBjaGFyIGRvdWJs ZSBxdW90ZS4KKiBsaXNwL29yZy5lbCAob3JnLW9wZW4tYXQtcG9pbnQpOiBNYWtlIHVzZSBvZiB0 aGUgY29uc3RhbnQKYG9yZy1saW5rLWVzY2FwZS1jaGFycy1icm93c2VyJy4KKiB0ZXN0aW5nL2xp c3AvdGVzdC1vcmcuZWwKKHRlc3Qtb3JnL29yZy1saW5rLXVuZXNjYXBlLWFzY2lpLWV4dGVuZGVk LWNoYXIpOiBGaWxsIHBhcmFncmFwaC4KKHRlc3Qtb3JnL29yZy1saW5rLWVzY2FwZS11cmwtd2l0 aC1lc2NhcGVkLWNoYXIpOiBGaWxsIHBhcmFncmFwaCBhbmQKdHlwby4KKHRlc3Qtb3JnL29yZy1s aW5rLWVzY2FwZS1jaGFycy1icm93c2VyKTogTmV3IHRlc3QuCgpUaGlzIGlzIHRvIG1ha2Ugd29y ayB0byBvcGVuIHRoZSBPcmcgbGluawpbW2h0dHA6Ly9zb21lLmhvc3QuY29tL3NlYXJjaD9xPSJP cmcgbW9kZSJdXSBpbiBhIGJyb3dzZXIuCi0tLQogbGlzcC9vcmcuZWwgICAgICAgICAgICAgIHwg ICAyNiArKysrKysrKysrKysrKysrKy0tLS0tLS0tLQogdGVzdGluZy9saXNwL3Rlc3Qtb3JnLmVs IHwgICAxNiArKysrKysrKysrKysrLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDMwIGluc2VydGlvbnMo KyksIDEyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2xpc3Avb3JnLmVsIGIvbGlzcC9vcmcu ZWwKaW5kZXggYWUwMTEwZi4uYjgzOWE4ZiAxMDA2NDQKLS0tIGEvbGlzcC9vcmcuZWwKKysrIGIv bGlzcC9vcmcuZWwKQEAgLTk2OTMsNyArOTY5Myw3IEBAIGFjY29yZGluZyB0byBGTVQgKGRlZmF1 bHQgZnJvbSBgb3JnLWVtYWlsLWxpbmstZGVzY3JpcHRpb24tZm9ybWF0JykuIgogVGhpcyBpcyB0 aGUgbGlzdCB0aGF0IGlzIHVzZWQgZm9yIGludGVybmFsIHB1cnBvc2VzLiIpCiAKIChkZWZjb25z dCBvcmctbGluay1lc2NhcGUtY2hhcnMtYnJvd3NlcgotICAnKD9cICkKKyAgJyg/XCAgP1wiKQog ICAiTGlzdCBvZiBlc2NhcGVzIGZvciBjaGFyYWN0ZXJzIHRoYXQgYXJlIHByb2JsZW1hdGljIGlu IGxpbmtzLgogVGhpcyBpcyB0aGUgbGlzdCB0aGF0IGlzIHVzZWQgYmVmb3JlIGhhbmRpbmcgb3Zl ciB0byB0aGUgYnJvd3Nlci4iKQogCkBAIC0xMDQyMywxNiArMTA0MjMsMjQgQEAgYXBwbGljYXRp b24gdGhlIHN5c3RlbSB1c2VzIGZvciB0aGlzIGZpbGUgdHlwZS4iCiAJICAgICAgKGFwcGx5IGNt ZCAobnJldmVyc2UgYXJnczEpKSkpCiAKIAkgICAoKG1lbWJlciB0eXBlICcoImh0dHAiICJodHRw cyIgImZ0cCIgIm5ld3MiKSkKLQkgICAgKGJyb3dzZS11cmwgKGNvbmNhdCB0eXBlICI6IiAoaWYg KG9yZy1zdHJpbmctbWF0Y2gtcCAiW1s6bm9uYXNjaWk6XSBdIiBwYXRoKQotCQkJCQkgICAgIChv cmctbGluay1lc2NhcGUKLQkJCQkJICAgICAgcGF0aCBvcmctbGluay1lc2NhcGUtY2hhcnMtYnJv d3NlcikKLQkJCQkJICAgcGF0aCkpKSkKKwkgICAgKGJyb3dzZS11cmwKKwkgICAgIChjb25jYXQg dHlwZSAiOiIKKwkJICAgICAoaWYgKG9yZy1zdHJpbmctbWF0Y2gtcAorCQkJICAoY29uY2F0ICJb Wzpub25hc2NpaTpdIgorCQkJCSAgb3JnLWxpbmstZXNjYXBlLWNoYXJzLWJyb3dzZXIgIl0iKQor CQkJICBwYXRoKQorCQkJIChvcmctbGluay1lc2NhcGUgcGF0aCBvcmctbGluay1lc2NhcGUtY2hh cnMtYnJvd3NlcikKKwkJICAgICAgIHBhdGgpKSkpCiAKIAkgICAoKHN0cmluZz0gdHlwZSAiZG9p IikKLQkgICAgKGJyb3dzZS11cmwgKGNvbmNhdCBvcmctZG9pLXNlcnZlci11cmwgKGlmIChvcmct c3RyaW5nLW1hdGNoLXAgIltbOm5vbmFzY2lpOl0gXSIgcGF0aCkKLQkJCQkJCSAgICAgICAob3Jn LWxpbmstZXNjYXBlCi0JCQkJCQkJcGF0aCBvcmctbGluay1lc2NhcGUtY2hhcnMtYnJvd3NlcikK LQkJCQkJCSAgICAgcGF0aCkpKSkKKwkgICAgKGJyb3dzZS11cmwKKwkgICAgIChjb25jYXQgb3Jn LWRvaS1zZXJ2ZXItdXJsCisJCSAgICAgKGlmIChvcmctc3RyaW5nLW1hdGNoLXAKKwkJCSAgKGNv bmNhdCAiW1s6bm9uYXNjaWk6XSIKKwkJCQkgIG9yZy1saW5rLWVzY2FwZS1jaGFycy1icm93c2Vy ICJdIikKKwkJCSAgcGF0aCkKKwkJCSAob3JnLWxpbmstZXNjYXBlIHBhdGggb3JnLWxpbmstZXNj YXBlLWNoYXJzLWJyb3dzZXIpCisJCSAgICAgICBwYXRoKSkpKQogCiAJICAgKChtZW1iZXIgdHlw ZSAnKCJtZXNzYWdlIikpCiAJICAgIChicm93c2UtdXJsIChjb25jYXQgdHlwZSAiOiIgcGF0aCkp KQpkaWZmIC0tZ2l0IGEvdGVzdGluZy9saXNwL3Rlc3Qtb3JnLmVsIGIvdGVzdGluZy9saXNwL3Rl c3Qtb3JnLmVsCmluZGV4IDI1OWRjMDQuLjZhYTBkZTcgMTAwNjQ0Ci0tLSBhL3Rlc3RpbmcvbGlz cC90ZXN0LW9yZy5lbAorKysgYi90ZXN0aW5nL2xpc3AvdGVzdC1vcmcuZWwKQEAgLTM5NSwxNSAr Mzk1LDI1IEBACiAgIChzaG91bGQKICAgIChzdHJpbmc9CiAgICAgIsOgw6LDp8Oow6nDqsOuw7TD ucO7IgotICAgICAgICAoZGVjb2RlLWNvZGluZy1zdHJpbmcgKG9yZy1saW5rLXVuZXNjYXBlICIl RTAlRTIlRTclRTglRTklRUElRUUlRjQlRjklRkIiKSAnbGF0aW4tMSkpKSkKKyAgICAgICAgKGRl Y29kZS1jb2Rpbmctc3RyaW5nCisJIChvcmctbGluay11bmVzY2FwZSAiJUUwJUUyJUU3JUU4JUU5 JUVBJUVFJUY0JUY5JUZCIikgJ2xhdGluLTEpKSkpCiAKIChlcnQtZGVmdGVzdCB0ZXN0LW9yZy9v cmctbGluay1lc2NhcGUtdXJsLXdpdGgtZXNjYXBlZC1jaGFyICgpCi0gICJFc2NhcGUgYW5kIHVu c2NhcGUgYSBVUkwgdGhhdCBpbmNsdWRlcyBhbiBlc2NhcGVkIGNoYXIuCisgICJFc2NhcGUgYW5k IHVuZXNjYXBlIGEgVVJMIHRoYXQgaW5jbHVkZXMgYW4gZXNjYXBlZCBjaGFyLgogaHR0cDovL2Fy dGljbGUuZ21hbmUub3JnL2dtYW5lLmVtYWNzLm9yZ21vZGUvMjE0NTkvIgogICAoc2hvdWxkCiAg ICAoc3RyaW5nPQogICAgICJodHRwOi8vc29tZS5ob3N0LmNvbS9mb3JtPyZpZD1ibGFoJTJCYmxh aDI1IgotICAgIChvcmctbGluay11bmVzY2FwZSAob3JnLWxpbmstZXNjYXBlICJodHRwOi8vc29t ZS5ob3N0LmNvbS9mb3JtPyZpZD1ibGFoJTJCYmxhaDI1IikpKSkpCisgICAgKG9yZy1saW5rLXVu ZXNjYXBlCisgICAgIChvcmctbGluay1lc2NhcGUgImh0dHA6Ly9zb21lLmhvc3QuY29tL2Zvcm0/ JmlkPWJsYWglMkJibGFoMjUiKSkpKSkKKworKGVydC1kZWZ0ZXN0IHRlc3Qtb3JnL29yZy1saW5r LWVzY2FwZS1jaGFycy1icm93c2VyICgpCisgICJFc2NhcGUgYSBVUkwgdG8gcGFzcyB0byBgYnJv d3NlLXVybCcuIgorICAoc2hvdWxkCisgICAoc3RyaW5nPQorICAgICJodHRwOi8vc29tZS5ob3N0 LmNvbS9zZWFyY2g/cT0lMjJPcmclMjBtb2RlJTIyIgorICAgIChvcmctbGluay1lc2NhcGUgImh0 dHA6Ly9zb21lLmhvc3QuY29tL3NlYXJjaD9xPVwiT3JnIG1vZGVcIiIKKwkJICAgICBvcmctbGlu ay1lc2NhcGUtY2hhcnMtYnJvd3NlcikpKSkKIAogCiAMCi0tIAoxLjcuNC4yCgo= --e89a8f6435644f6ab204dbf9e705--