From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp11.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms5.migadu.com with LMTPS id iOClBaOiFWNxIQEAbAwnHQ (envelope-from ) for ; Mon, 05 Sep 2022 09:17:55 +0200 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp11.migadu.com with LMTPS id gCt3BaOiFWMwsgAA9RJhRA (envelope-from ) for ; Mon, 05 Sep 2022 09:17:55 +0200 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id B87EDE5F4 for ; Mon, 5 Sep 2022 09:17:54 +0200 (CEST) Received: from localhost ([::1]:42922 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oV6Mj-0001ub-4m for larch@yhetil.org; Mon, 05 Sep 2022 03:17:53 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:47712) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oV6Ks-0001qb-Hi for emacs-orgmode@gnu.org; Mon, 05 Sep 2022 03:16:00 -0400 Received: from ciao.gmane.io ([116.202.254.214]:43394) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oV6Kq-0002LT-At for emacs-orgmode@gnu.org; Mon, 05 Sep 2022 03:15:57 -0400 Received: from list by ciao.gmane.io with local (Exim 4.92) (envelope-from ) id 1oV6Ko-000AAS-2C for emacs-orgmode@gnu.org; Mon, 05 Sep 2022 09:15:54 +0200 X-Injected-Via-Gmane: http://gmane.org/ To: emacs-orgmode@gnu.org From: Max Nikulin Subject: [PATCH] org.el: Preserve case for link subgroups from `org-file-apps' Date: Mon, 5 Sep 2022 14:15:46 +0700 Message-ID: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------0tncnbUnIYrTZiof5KZ9zkiE" User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.11.0 Content-Language: en-US Received-SPF: pass client-ip=116.202.254.214; envelope-from=geo-emacs-orgmode@m.gmane-mx.org; helo=ciao.gmane.io X-Spam_score_int: 53 X-Spam_score: 5.3 X-Spam_bar: +++++ X-Spam_report: (5.3 / 5.0 requ) BAYES_00=-1.9, DKIM_ADSP_CUSTOM_MED=0.001, FORGED_GMAIL_RCVD=1, FORGED_MUA_MOZILLA=2.309, FREEMAIL_FORGED_FROMDOMAIN=0.25, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.25, NML_ADSP_CUSTOM_MED=0.9, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, TO_NO_BRKTS_PCNT=2.499, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=no autolearn_force=no X-Spam_action: reject X-BeenThere: emacs-orgmode@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+larch=yhetil.org@gnu.org Sender: "Emacs-orgmode" X-Migadu-Flow: FLOW_IN X-Migadu-To: larch@yhetil.org X-Migadu-Country: US ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1662362274; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type:list-id:list-help:list-unsubscribe: list-subscribe:list-post; bh=LgqLMbqYHCW9U9SsUIm1PdSAVHAFV2je/+vztR744kA=; b=mwMn0p8uZYdguywCM431em9ymRT9VQY/ViBHkokHRYmbCOA2yT5x8Q5+x/DMmyzFhF1QVA zCYDHrRpCqlRjdJ/E6dCNedQRcev0/bqbioQ8gCYdQwQgjKLd505DKYNMTMOXNxWHHoVab mphit+IOxDj063cXtAjFa13crhnlY04sQLvu8/2gKNUuLFrgANZdRnGsiKszOiIGDkklKW Ftde67/5SzRhgPYK7fTT0nHY7WNT/Soj+r21SZ25ewBWIzfUDWn5xdzRAlEogXkGgm7IrZ SxktYsIr87ZWif1Q9TjRM5G36aNSzFfRDmrmEuGBp5lqn7Q/ZiAG6zcKMhWSyw== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1662362274; a=rsa-sha256; cv=none; b=ERFGAiJdbtQLb1TMp459Rgk8w7iVt8tcnefTyHPYi2yc1SLs7JUzAx/vOeth/1sIIXzSLE kBoUDmTqwmNcnv2V1SCJBv7eb0H2H4QLjTiZL9BO6rw/EDAJiuWRsGlSfPSBH+Rz/eVyEA wvqWmDXlHgx9pv2ltT5qGU6wVJrp6LdbAwX30BJIHf9HUY8z/KB+a0Mu1z1tV1eIbvBkq3 GjKHLNevJOlkB3wAD3lzpgGOI0IOAWfgJZoV9A8x4D3Wi/91ZkvPoimZq9LCA1SjhDTjN2 dFsA/fWaNCUCjV5URTdrN4/iQ/CMZmRWZh1Q09xBz18x0CJHxvOBnNIyrdA1Jw== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=none; dmarc=fail reason="SPF not aligned (relaxed), No valid DKIM" header.from=gmail.com (policy=none); spf=pass (aspmx1.migadu.com: domain of "emacs-orgmode-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="emacs-orgmode-bounces+larch=yhetil.org@gnu.org" X-Migadu-Spam-Score: 4.02 Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=fail reason="SPF not aligned (relaxed), No valid DKIM" header.from=gmail.com (policy=none); spf=pass (aspmx1.migadu.com: domain of "emacs-orgmode-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="emacs-orgmode-bounces+larch=yhetil.org@gnu.org" X-Migadu-Queue-Id: B87EDE5F4 X-Spam-Score: 4.02 X-Migadu-Scanner: scn0.migadu.com X-TUID: HmK3A+y3trNQ This is a multi-part message in MIME format. --------------0tncnbUnIYrTZiof5KZ9zkiE Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, Debugging `org-file-apps' and `org-open-file' regexp subgroups I noticed an issue: the code distorts case of the link components making them invalid. The patch to fix the bug is attached, the commit message contains an example of the problem. Maybe I break some use case, but I am unaware when namely downcased link must be used. --------------0tncnbUnIYrTZiof5KZ9zkiE Content-Type: text/x-patch; charset=UTF-8; name="0001-org.el-Preserve-case-for-link-subgroups-from-org-fil.patch" Content-Disposition: attachment; filename*0="0001-org.el-Preserve-case-for-link-subgroups-from-org-fil.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSBjN2M1MTRkNjJhOGIyMTUwY2ZiYzFiZmE5Mjc0MjI3OTBiYjYxN2NmIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBNYXggTmlrdWxpbiA8bWFuaWt1bGluQGdtYWlsLmNv bT4KRGF0ZTogTW9uLCA1IFNlcCAyMDIyIDEzOjU0OjI1ICswNzAwClN1YmplY3Q6IFtQQVRD SF0gb3JnLmVsOiBQcmVzZXJ2ZSBjYXNlIGZvciBsaW5rIHN1Ymdyb3VwcyBmcm9tIGBvcmct ZmlsZS1hcHBzJwoKKiBsaXNwL29yZy5lbCAob3JnLW9wZW4tZmlsZSk6IEF2b2lkIG1hdGNo aW5nIG9mIGBvcmctZmlsZS1hcHBzJyByZWNvcmRzCmFnYWluc3QgdGhlIGxpbmsgY29udmVy dGVkIHRvIGRvd25jYXNlIHNpbmNlIGl0IGNhdXNlZCBpbmNvcnJlY3QKc3Vic3RpdHV0aW9u cyB0byB0aGUgY29tbWFuZC4KCkNvbnNpZGVyIHRoZSBmb2xsb3dpbmcgZW50cnkKCiAgICAo YWRkLXRvLWxpc3QKICAgICAnb3JnLWZpbGUtYXBwcwogICAgICcoIlxcLlBERlxcKD86XFwu W2d4XXpcXHxcXC5iejJcXCk/OjpcXCgjW146XSpcXCk6OlxcKC4rXFwpXFwnIgogICAgICAu ICJva3VsYXIgLS1maW5kICUyICVzJTEiKSkKCmFuZCB0aGUgbGluawo8ZmlsZTovLy91c3Iv c2hhcmUvZG9jL2Jhc2gvYmFzaHJlZi5wZGY6OiNSZWRpcmVjdGlvbnM6OmJlZm9yZT4KV2l0 aG91dCB0aGUgcGF0Y2gKCiAgICBva3VsYXIgLS1maW5kIGJlZm9yZSAvdXNyL3NoYXJlL2Rv Yy9iYXNoL2Jhc2hyZWYucGRmXCNyZWRpcmVjdGlvbnMKCmNvbW1hbmQgaXMgZXhlY3V0ZWQg YW5kIHRoZSBhcHBsaWNhdGlvbiBjYW4gbm90IHJlc29sdmUgaW50ZXJuYWwKY3Jvc3MtcmVm ZXJlbmNlIGFuY2hvci4KCkluIGh0dHBzOi8vbGlzdC5vcmdtb2RlLm9yZy80QjUxRDEwNC45 MDkwNTAyQGpib2Vja2VyLmRlL1QvI3UKaHR0cHM6Ly9saXN0Lm9yZ21vZGUub3JnL2syamZi MmViNjgxMTAwNDA0MTczM3pmMTc2ZTBhcTgzNjc5MjQ3NDZkYjgxZjVAbWFpbC5nbWFpbC5j b20vVC8jdQp0aGUgcHVycG9zZSBvZiBgZGxpbmsnIGlzIG5vdCBjbGFyaWZpZWQsIHNvIEkg YXNzdW1lIHRoYXQgdGhlIG9ubHkKcHVycG9zZSBpcyB0byBhbGxvdyBtYXRjaGluZyBmaWxl IHN1ZmZpeGVzLCBlLmcuICIucGRmIiB2cyAiLlBERiIuCi0tLQogbGlzcC9vcmcuZWwgfCA4 ICsrKystLS0tCiAxIGZpbGUgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9u cygtKQoKZGlmZiAtLWdpdCBhL2xpc3Avb3JnLmVsIGIvbGlzcC9vcmcuZWwKaW5kZXggZjMx NzA1M2M0Li42NzcyMWNjOGQgMTAwNjQ0Ci0tLSBhL2xpc3Avb3JnLmVsCisrKyBiL2xpc3Av b3JnLmVsCkBAIC04MTM0LDcgKzgxMzQsNiBAQCBJZiB0aGUgZmlsZSBkb2VzIG5vdCBleGlz dCwgdGhyb3cgYW4gZXJyb3IuIgogCSAobGluayAoY29uZCAobGluZSAoY29uY2F0IGZpbGUg Ijo6IiAobnVtYmVyLXRvLXN0cmluZyBsaW5lKSkpCiAJCSAgICAgKHNlYXJjaCAoY29uY2F0 IGZpbGUgIjo6IiBzZWFyY2gpKQogCQkgICAgICh0IGZpbGUpKSkKLQkgKGRsaW5rIChkb3du Y2FzZSBsaW5rKSkKIAkgKGV4dAogCSAgKGFuZCAoc3RyaW5nLW1hdGNoICJcXGAuKj9cXC5c XChbYS16QS1aMC05XStcXChcXC5nelxcKT9cXClcXCciIGRmaWxlKQogCSAgICAgICAobWF0 Y2gtc3RyaW5nIDEgZGZpbGUpKSkKQEAgLTgxNTksOCArODE1OCw5IEBAIElmIHRoZSBmaWxl IGRvZXMgbm90IGV4aXN0LCB0aHJvdyBhbiBlcnJvci4iCiAJCSAgICA7OyBGaXJzdCwgdHJ5 IG1hdGNoaW5nIGFnYWluc3QgYXBwcy1kbGluayBpZiB3ZQogCQkgICAgOzsgZ2V0IGEgbWF0 Y2ggaGVyZSwgc3RvcmUgdGhlIG1hdGNoIGRhdGEgZm9yCiAJCSAgICA7OyBsYXRlci4KLQkJ ICAgIChsZXQgKChtYXRjaCAoYXNzb2MtZGVmYXVsdCBkbGluayBhcHBzLWRsaW5rCi0JCQkJ CQknc3RyaW5nLW1hdGNoKSkpCisJCSAgICAobGV0KiAoKGNhc2UtZm9sZC1zZWFyY2ggdCkK KyAgICAgICAgICAgICAgICAgICAgICAgICAgIChtYXRjaCAoYXNzb2MtZGVmYXVsdCBsaW5r IGFwcHMtZGxpbmsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAnc3RyaW5nLW1hdGNoKSkpCiAJCSAgICAgIChpZiBtYXRjaAogCQkJICAocHJv Z24gKHNldHEgbGluay1tYXRjaC1kYXRhIChtYXRjaC1kYXRhKSkKIAkJCQkgbWF0Y2gpCkBA IC04MTkxLDcgKzgxOTEsNyBAQCBJZiB0aGUgZmlsZSBkb2VzIG5vdCBleGlzdCwgdGhyb3cg YW4gZXJyb3IuIgogICAgICAgKHVzZXItZXJyb3IgIk5vIHN1Y2ggZmlsZTogJXMiIGZpbGUp KQogICAgIChjb25kCiAgICAgICgob3JnLXN0cmluZy1udy1wIGNtZCkKLSAgICAgIChzZXRx IGNtZCAob3JnLS1vcGVuLWZpbGUtZm9ybWF0LWNvbW1hbmQgY21kIGZpbGUgZGxpbmsgbGlu ay1tYXRjaC1kYXRhKSkKKyAgICAgIChzZXRxIGNtZCAob3JnLS1vcGVuLWZpbGUtZm9ybWF0 LWNvbW1hbmQgY21kIGZpbGUgbGluayBsaW5rLW1hdGNoLWRhdGEpKQogCiAgICAgICAoc2F2 ZS13aW5kb3ctZXhjdXJzaW9uCiAJKG1lc3NhZ2UgIlJ1bm5pbmcgJXMuLi5kb25lIiBjbWQp Ci0tIAoyLjI1LjEKCg== --------------0tncnbUnIYrTZiof5KZ9zkiE--