From unknown Sat Aug 09 09:35:53 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22147: Obsolete search-forward-lax-whitespace Resent-From: Juri Linkov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 11 Dec 2015 23:54:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 22147 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: 22147@debbugs.gnu.org X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.14498779972786 (code B ref -1); Fri, 11 Dec 2015 23:54:02 +0000 Received: (at submit) by debbugs.gnu.org; 11 Dec 2015 23:53:17 +0000 Received: from localhost ([127.0.0.1]:35193 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1a7XUz-0000ir-KM for submit@debbugs.gnu.org; Fri, 11 Dec 2015 18:53:17 -0500 Received: from eggs.gnu.org ([208.118.235.92]:59055) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1a7XUx-0000if-PU for submit@debbugs.gnu.org; Fri, 11 Dec 2015 18:53:16 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1a7XUr-0006yA-PR for submit@debbugs.gnu.org; Fri, 11 Dec 2015 18:53:10 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50 autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:56251) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1a7XUr-0006y4-M5 for submit@debbugs.gnu.org; Fri, 11 Dec 2015 18:53:09 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:40824) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1a7XUq-0005Wz-My for bug-gnu-emacs@gnu.org; Fri, 11 Dec 2015 18:53:09 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1a7XUl-0006xf-My for bug-gnu-emacs@gnu.org; Fri, 11 Dec 2015 18:53:08 -0500 Received: from sub3.mail.dreamhost.com ([69.163.253.7]:39536 helo=homiemail-a21.g.dreamhost.com) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1a7XUl-0006xb-Hr for bug-gnu-emacs@gnu.org; Fri, 11 Dec 2015 18:53:03 -0500 Received: from homiemail-a21.g.dreamhost.com (localhost [127.0.0.1]) by homiemail-a21.g.dreamhost.com (Postfix) with ESMTP id 76FD5300072 for ; Fri, 11 Dec 2015 15:53:01 -0800 (PST) Received: from localhost.linkov.net (m83-180-31-224.cust.tele2.ee [83.180.31.224]) (Authenticated sender: jurta@jurta.org) by homiemail-a21.g.dreamhost.com (Postfix) with ESMTPA id BF1D530006C for ; Fri, 11 Dec 2015 15:53:00 -0800 (PST) From: Juri Linkov Organization: LINKOV.NET Date: Sat, 12 Dec 2015 01:52:03 +0200 Message-ID: <87wpsk7dcs.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -5.0 (-----) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -5.0 (-----) After commit e5ece322 that removed a layer of indirection for lax-whitesp= ace it's not possible anymore to override search-forward-lax-whitespace with own implementation to ignore all possible whitespace instead of just spaces in the search string. For example, such customization as this one: (setq search-whitespace-regexp "\\(\\s-\\|\n\\)+") (defun search-whitespace-regexp (string) "Return a regexp which ignores all possible whitespace in search string= . Uses the value of the variable `search-whitespace-regexp'." (if (or (not (stringp search-whitespace-regexp)) (null (if isearch-regexp isearch-regexp-lax-whitespace isearch-lax-whitespace))) string (replace-regexp-in-string search-whitespace-regexp search-whitespace-regexp string nil t))) (defun search-forward-lax-whitespace (string &optional bound noerror coun= t) (re-search-forward (search-whitespace-regexp (regexp-quote string)) bou= nd noerror count)) (defun search-backward-lax-whitespace (string &optional bound noerror cou= nt) (re-search-backward (search-whitespace-regexp (regexp-quote string)) bo= und noerror count)) (defun re-search-forward-lax-whitespace (regexp &optional bound noerror c= ount) (re-search-forward (search-whitespace-regexp regexp) bound noerror coun= t)) (defun re-search-backward-lax-whitespace (regexp &optional bound noerror = count) (re-search-backward (search-whitespace-regexp regexp) bound noerror cou= nt)) allowed to search for a string with a newline like =E2=80=98C-s abc C-q C= -j def=E2=80=99 and match the text =E2=80=9Cabc def=E2=80=9D. It's not clear what to do with this customization now using a replacement recommended in (make-obsolete old "instead, use (let ((search-spaces-regexp search-whitespace-regexp)) (re-search-... ...))" From debbugs-submit-bounces@debbugs.gnu.org Fri Dec 11 19:00:42 2015 Received: (at control) by debbugs.gnu.org; 12 Dec 2015 00:00:42 +0000 Received: from localhost ([127.0.0.1]:35198 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1a7XcA-0000up-C4 for submit@debbugs.gnu.org; Fri, 11 Dec 2015 19:00:42 -0500 Received: from eggs.gnu.org ([208.118.235.92]:60930) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1a7Xc8-0000ub-K7 for control@debbugs.gnu.org; Fri, 11 Dec 2015 19:00:40 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1a7Xc2-0000H7-NG for control@debbugs.gnu.org; Fri, 11 Dec 2015 19:00:35 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,T_RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:35291) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1a7Xc2-0000H1-IJ for control@debbugs.gnu.org; Fri, 11 Dec 2015 19:00:34 -0500 Received: from rgm by fencepost.gnu.org with local (Exim 4.82) (envelope-from ) id 1a7Xc2-0000Zv-4U for control@debbugs.gnu.org; Fri, 11 Dec 2015 19:00:34 -0500 Subject: control message for bug 19759 To: X-Mailer: mail (GNU Mailutils 2.99.98) Message-Id: From: Glenn Morris Date: Fri, 11 Dec 2015 19:00:34 -0500 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -5.0 (-----) block 19759 by 22147 From unknown Sat Aug 09 09:35:53 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22147: Obsolete search-forward-lax-whitespace Resent-From: Artur Malabarba Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 12 Dec 2015 00:45:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22147 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Juri Linkov Cc: 22147@debbugs.gnu.org Reply-To: bruce.connor.am@gmail.com Received: via spool by 22147-submit@debbugs.gnu.org id=B22147.144988106714309 (code B ref 22147); Sat, 12 Dec 2015 00:45:02 +0000 Received: (at 22147) by debbugs.gnu.org; 12 Dec 2015 00:44:27 +0000 Received: from localhost ([127.0.0.1]:35207 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1a7YIV-0003ij-Kv for submit@debbugs.gnu.org; Fri, 11 Dec 2015 19:44:27 -0500 Received: from mail-lb0-f173.google.com ([209.85.217.173]:33704) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1a7YIT-0003iW-UE for 22147@debbugs.gnu.org; Fri, 11 Dec 2015 19:44:26 -0500 Received: by lbbkw15 with SMTP id kw15so79405777lbb.0 for <22147@debbugs.gnu.org>; Fri, 11 Dec 2015 16:44:20 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:reply-to:sender:in-reply-to:references:date:message-id :subject:from:to:cc:content-type; bh=27qenI9T49X8rFu/fDS0ozMEr2Qel+FyNU6C04qU4AE=; b=KLf1ktwsR8UWBPXohQ3t1u5WYCGfIEpk+/E6PtQbPeDna3TsD54qBJpooTzKA7k1It EdP1DQJSazw7PsigQ3+6GcMtqQXAPmCmCfPzBP+ohPelCZ/pZKz2l6g8e83BXZ9KeZHW LsI9TFqu+O9ZckE7Ez7MQLr6nGobVL5icR3uZaYm90xH2A7Vt808pYPJEn5myuALw+43 EiBqZeapqTig96lE/k6cSqxGFMWA1dJuM3IdivUiy0tD4JNYTWOkHXKlrGC5ILIeJQAu AsYBmggOwIx/sc+i1nsTMAJ3SePMuF+KAD9IQFfCfz35/BngHF/hP/QaAQpOlapzvya2 sW3g== MIME-Version: 1.0 X-Received: by 10.112.161.33 with SMTP id xp1mr8974877lbb.141.1449881059982; Fri, 11 Dec 2015 16:44:19 -0800 (PST) Received: by 10.112.202.99 with HTTP; Fri, 11 Dec 2015 16:44:19 -0800 (PST) Received: by 10.112.202.99 with HTTP; Fri, 11 Dec 2015 16:44:19 -0800 (PST) In-Reply-To: <87wpsk7dcs.fsf@mail.linkov.net> References: <87wpsk7dcs.fsf@mail.linkov.net> Date: Sat, 12 Dec 2015 00:44:19 +0000 X-Google-Sender-Auth: HVmfCkYTjktZOjYvg7QUXhiBX-g Message-ID: From: Artur Malabarba Content-Type: multipart/alternative; boundary=001a11c348748c07240526a8bd67 X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) --001a11c348748c07240526a8bd67 Content-Type: text/plain; charset=UTF-8 On 11 Dec 2015 11:52 pm, "Juri Linkov" wrote: > > It's not clear what to do with this customization now using > a replacement recommended in (make-obsolete old "instead, use (let > ((search-spaces-regexp search-whitespace-regexp)) (re-search-... ...))" The obsoletion message tells you what to use instead of search-forward-lax-whitespace, but that doesn't help you because you weren't using this function, you were overriding it (IIUC). Fortunately, I think you don't need to override anything at all. You can just set search-default-regexp-function to your #'search-whitespace-regexp. IIUC, that should have the same effect. --001a11c348748c07240526a8bd67 Content-Type: text/html; charset=UTF-8

On 11 Dec 2015 11:52 pm, "Juri Linkov" <juri@linkov.net> wrote:
>
> It's not clear what to do with this customization now using
> a replacement recommended in (make-obsolete old "instead, use (let
> ((search-spaces-regexp search-whitespace-regexp)) (re-search-... ...))"

The obsoletion message tells you what to use instead of search-forward-lax-whitespace, but that doesn't help you because you weren't using this function, you were overriding it (IIUC).

Fortunately, I think you don't need to override anything at all. You can just set search-default-regexp-function to your #'search-whitespace-regexp. IIUC, that should have the same effect.

--001a11c348748c07240526a8bd67-- From unknown Sat Aug 09 09:35:53 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22147: Obsolete search-forward-lax-whitespace Resent-From: Juri Linkov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 12 Dec 2015 23:49:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22147 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Artur Malabarba Cc: 22147@debbugs.gnu.org Received: via spool by 22147-submit@debbugs.gnu.org id=B22147.144996409526771 (code B ref 22147); Sat, 12 Dec 2015 23:49:02 +0000 Received: (at 22147) by debbugs.gnu.org; 12 Dec 2015 23:48:15 +0000 Received: from localhost ([127.0.0.1]:49788 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1a7ttf-0006xi-AG for submit@debbugs.gnu.org; Sat, 12 Dec 2015 18:48:15 -0500 Received: from sub3.mail.dreamhost.com ([69.163.253.7]:34224 helo=homiemail-a23.g.dreamhost.com) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1a7ttd-0006xb-W2 for 22147@debbugs.gnu.org; Sat, 12 Dec 2015 18:48:14 -0500 Received: from homiemail-a23.g.dreamhost.com (localhost [127.0.0.1]) by homiemail-a23.g.dreamhost.com (Postfix) with ESMTP id 055194B0063; Sat, 12 Dec 2015 15:48:13 -0800 (PST) Received: from localhost.linkov.net (m83-180-31-224.cust.tele2.ee [83.180.31.224]) (Authenticated sender: jurta@jurta.org) by homiemail-a23.g.dreamhost.com (Postfix) with ESMTPA id 0CBE54B0062; Sat, 12 Dec 2015 15:48:11 -0800 (PST) From: Juri Linkov Organization: LINKOV.NET References: <87wpsk7dcs.fsf@mail.linkov.net> Date: Sun, 13 Dec 2015 01:31:10 +0200 In-Reply-To: (Artur Malabarba's message of "Sat, 12 Dec 2015 00:44:19 +0000") Message-ID: <87d1ubz3w9.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) > Fortunately, I think you don't need to override anything at all. You can > just set search-default-regexp-function to your #'search-whitespace-regexp. > IIUC, that should have the same effect. Thanks, setting search-default-regexp-mode to #'search-whitespace-regexp gives the same effect. One drawback is that then it removes char-fold search. Do you have a plan to combine lax-whitespace search with char-fold search? From unknown Sat Aug 09 09:35:53 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22147: Obsolete search-forward-lax-whitespace Resent-From: Artur Malabarba Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 13 Dec 2015 00:30:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22147 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Juri Linkov Cc: 22147@debbugs.gnu.org Reply-To: bruce.connor.am@gmail.com Received: via spool by 22147-submit@debbugs.gnu.org id=B22147.144996657030244 (code B ref 22147); Sun, 13 Dec 2015 00:30:02 +0000 Received: (at 22147) by debbugs.gnu.org; 13 Dec 2015 00:29:30 +0000 Received: from localhost ([127.0.0.1]:49800 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1a7uXa-0007rk-JH for submit@debbugs.gnu.org; Sat, 12 Dec 2015 19:29:30 -0500 Received: from mail-lb0-f182.google.com ([209.85.217.182]:33219) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1a7uXZ-0007rX-8a for 22147@debbugs.gnu.org; Sat, 12 Dec 2015 19:29:29 -0500 Received: by lbbkw15 with SMTP id kw15so88780856lbb.0 for <22147@debbugs.gnu.org>; Sat, 12 Dec 2015 16:29:23 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:reply-to:sender:in-reply-to:references:date:message-id :subject:from:to:cc:content-type; bh=d6qbFyEFZ/puMV7XmESFCOU3/W2bLwrXKVfAVVWy83w=; b=OYC9SHNYUCuDomdblriowD+MiqhvSfLNNHmC+VvYhBt8rtijZmLoKO9TFgQeL247wF 1tL8oXyoiC2zde4hBYuKE26ax6UHXXJV8Xb4BkSMowaST6mShkS6/TmSFbDf/PNpRRl1 lDyQngHpAb37hV5W8TcLWTb4LY3UY2Q2cp+01PSp+Yh7UH+sXpk2zq5D0QGcusHSal6t jnT7sOY+RSHN5C1j0Q6WQwKYrZN4SKLhdC4yIQsVMIrUI03jWJfyjWtCgQGiBG/pJD+0 l7fezQ/+mi+hOq3KUiEgyeZb2Bn7v3UH5rURvYhNdOpcvJCZ09NVl6HA3UHF1CMc4Q0r D7Qg== MIME-Version: 1.0 X-Received: by 10.112.13.66 with SMTP id f2mr8927131lbc.79.1449966563521; Sat, 12 Dec 2015 16:29:23 -0800 (PST) Received: by 10.112.202.99 with HTTP; Sat, 12 Dec 2015 16:29:23 -0800 (PST) Received: by 10.112.202.99 with HTTP; Sat, 12 Dec 2015 16:29:23 -0800 (PST) In-Reply-To: <87d1ubz3w9.fsf@mail.linkov.net> References: <87wpsk7dcs.fsf@mail.linkov.net> <87d1ubz3w9.fsf@mail.linkov.net> Date: Sun, 13 Dec 2015 00:29:23 +0000 X-Google-Sender-Auth: biWDjAtXMEDnZUpJnP2EGY5w5HE Message-ID: From: Artur Malabarba Content-Type: multipart/alternative; boundary=001a11c3b13ef47d500526bca527 X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) --001a11c3b13ef47d500526bca527 Content-Type: text/plain; charset=UTF-8 On 12 Dec 2015 11:31 pm, "Juri Linkov" wrote: > > Thanks, setting search-default-regexp-mode to #'search-whitespace-regexp > gives the same effect. > > One drawback is that then it removes char-fold search. True. I think it might also be possible to get what you want by just setting the search-whitespace-regexp variable to "[ \t\r\n]+". That would have the advantage of not removing char folding (and would reduce everything to one line). > Do you have a plan to combine lax-whitespace search > with char-fold search? Char-folding is perfectly compatible with the regular lax-whitespace. --001a11c3b13ef47d500526bca527 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable

On 12 Dec 2015 11:31 pm, "Juri Linkov" <juri@linkov.net> wrote:
>
> Thanks, setting search-default-regexp-mode to #'search-whitespace-= regexp
> gives the same effect.
>
> One drawback is that then it removes char-fold search.

True. I think it might also be possible to get what you want= by just setting the search-whitespace-regexp variable to "[ \t\r\n]+&= quot;. That would have the advantage of not removing char folding (and woul= d reduce everything to one line).

> Do you have a plan to combine lax-whitespace search
> with char-fold search?

Char-folding is perfectly compatible with the regular lax-wh= itespace.

--001a11c3b13ef47d500526bca527-- From unknown Sat Aug 09 09:35:53 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22147: Obsolete search-forward-lax-whitespace Resent-From: Juri Linkov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 14 Dec 2015 00:44:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22147 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Artur Malabarba Cc: 22147@debbugs.gnu.org Received: via spool by 22147-submit@debbugs.gnu.org id=B22147.145005381216385 (code B ref 22147); Mon, 14 Dec 2015 00:44:02 +0000 Received: (at 22147) by debbugs.gnu.org; 14 Dec 2015 00:43:32 +0000 Received: from localhost ([127.0.0.1]:50751 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1a8HEi-0004GC-Ja for submit@debbugs.gnu.org; Sun, 13 Dec 2015 19:43:32 -0500 Received: from sub3.mail.dreamhost.com ([69.163.253.7]:37406 helo=homiemail-a18.g.dreamhost.com) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1a8HEg-0004G4-KT for 22147@debbugs.gnu.org; Sun, 13 Dec 2015 19:43:31 -0500 Received: from homiemail-a18.g.dreamhost.com (localhost [127.0.0.1]) by homiemail-a18.g.dreamhost.com (Postfix) with ESMTP id 7B97925006C; Sun, 13 Dec 2015 16:43:29 -0800 (PST) Received: from localhost.linkov.net (m83-180-31-224.cust.tele2.ee [83.180.31.224]) (Authenticated sender: jurta@jurta.org) by homiemail-a18.g.dreamhost.com (Postfix) with ESMTPA id 93500250069; Sun, 13 Dec 2015 16:43:28 -0800 (PST) From: Juri Linkov Organization: LINKOV.NET References: <87wpsk7dcs.fsf@mail.linkov.net> <87d1ubz3w9.fsf@mail.linkov.net> Date: Mon, 14 Dec 2015 02:23:34 +0200 In-Reply-To: (Artur Malabarba's message of "Sun, 13 Dec 2015 00:29:23 +0000") Message-ID: <87r3ipoofk.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) >> Thanks, setting search-default-regexp-mode to #'search-whitespace-regexp >> gives the same effect. >> >> One drawback is that then it removes char-fold search. > > True. I think it might also be possible to get what you want by just > setting the search-whitespace-regexp variable to "[ \t\r\n]+". That would > have the advantage of not removing char folding (and would reduce > everything to one line). This still doesn't allow ^J in the search string to match a newline. I often paste multi-line texts into the search string and need to ignore differences in newlines usually caused by text re-filling. What the mentioned regexp function does is replacing all whitespace in the search string with the regexp that matches whitespace (also it's possible to replace whitespace with a space character and then use search-spaces-regexp to match this space character using the regexp in search-whitespace-regexp). By analogy with char-folding, this means symmetric whitespace folding. When char-fold-symmetric causes all members of a folding equivalence class to be treated equivalently, lax-whitespace-symmetric could treat only whitespace character equivalently. >> Do you have a plan to combine lax-whitespace search with char-fold search? > > Char-folding is perfectly compatible with the regular lax-whitespace. Could char-folding already do the described above (maybe simpler would be to normalize the search string by turning all whitespace into space characters), or better first implement char-fold-symmetric and then use it for whitespace characters? From unknown Sat Aug 09 09:35:53 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22147: Obsolete search-forward-lax-whitespace Resent-From: Artur Malabarba Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 14 Dec 2015 01:13:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22147 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Juri Linkov Cc: 22147@debbugs.gnu.org Reply-To: bruce.connor.am@gmail.com Received: via spool by 22147-submit@debbugs.gnu.org id=B22147.145005552818903 (code B ref 22147); Mon, 14 Dec 2015 01:13:02 +0000 Received: (at 22147) by debbugs.gnu.org; 14 Dec 2015 01:12:08 +0000 Received: from localhost ([127.0.0.1]:50770 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1a8HgO-0004up-23 for submit@debbugs.gnu.org; Sun, 13 Dec 2015 20:12:08 -0500 Received: from mail-lf0-f46.google.com ([209.85.215.46]:33811) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1a8HgM-0004uI-22 for 22147@debbugs.gnu.org; Sun, 13 Dec 2015 20:12:06 -0500 Received: by lfcy184 with SMTP id y184so36884981lfc.1 for <22147@debbugs.gnu.org>; Sun, 13 Dec 2015 17:12:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:reply-to:sender:in-reply-to:references:date:message-id :subject:from:to:cc:content-type; bh=s98PIj3gFxLFm5Y+9guXs+X0HZP2UiQMxhY/beD692U=; b=ZEz50YDdsve8DXeqWtTduf887BbKcJ97zAVrXFSLWKmYdkJVAd/sUbsuntPNq9VJgY F9MhX2q53Ra9Z+cvTxQtqVden2EJ1xogtCvHUULw6DjvoBEWL0Z2Hjm/U5mI7efZD9At yqtY0VctzEv++C6hsN4LA6Np/NfJ/D9KmlEBALq74tmfAzwHsom8kAC98eidYOsQDm0R SvFigWDKNHOhPMO2SmfX4c6eTnQ7YGdBVYnhSBl7YZ/Ad2URRzibt7HBQQcu+WmBJ+E/ BigV8JkF5uqvVIMX2GtiBmybuu3lSEcWlhfP2Q3PqNFIG1LnsgP6ZjoeCTg8KGogS0/b JVnQ== MIME-Version: 1.0 X-Received: by 10.25.23.201 with SMTP id 70mr2528798lfx.164.1450055520039; Sun, 13 Dec 2015 17:12:00 -0800 (PST) Received: by 10.112.202.99 with HTTP; Sun, 13 Dec 2015 17:11:59 -0800 (PST) Received: by 10.112.202.99 with HTTP; Sun, 13 Dec 2015 17:11:59 -0800 (PST) In-Reply-To: <87r3ipoofk.fsf@mail.linkov.net> References: <87wpsk7dcs.fsf@mail.linkov.net> <87d1ubz3w9.fsf@mail.linkov.net> <87r3ipoofk.fsf@mail.linkov.net> Date: Mon, 14 Dec 2015 01:11:59 +0000 X-Google-Sender-Auth: _hx5HgkCYouqliQt5tknr_ZpNAk Message-ID: From: Artur Malabarba Content-Type: multipart/alternative; boundary=001a11406bce2d3d9c0526d15c32 X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) --001a11406bce2d3d9c0526d15c32 Content-Type: text/plain; charset=UTF-8 On 14 Dec 2015 12:23 am, "Juri Linkov" wrote: > > > > True. I think it might also be possible to get what you want by just > > setting the search-whitespace-regexp variable to "[ \t\r\n]+". That would > > have the advantage of not removing char folding (and would reduce > > everything to one line). > > This still doesn't allow ^J in the search string to match a newline. Right. I always get confused about that variable. > (maybe simpler > would be to normalize the search string by turning all whitespace > into space characters), Yes, I think this should give you the behaviour you're looking for. Try setting search-default-regexp-function to #'my-lax-with-char-fold, where (defun my-lax-with-char-fold (s &optional l) (character-fold-to-regexp (replace-regexp-in-string "\t\n\r\s+" " " s) l)) And then also set search-whitespace-regexp like above. --001a11406bce2d3d9c0526d15c32 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable

On 14 Dec 2015 12:23 am, "Juri Linkov" <juri@linkov.net> wrote:
> >
> > True. I think it might also be possible to get what you want by j= ust
> > setting the search-whitespace-regexp variable to "[ \t\r\n]+= ". That would
> > have the advantage of not removing char folding (and would reduce=
> > everything to one line).
>
> This still doesn't allow ^J in the search string to match a newlin= e.

Right. I always get confused about that variable.

> (maybe simpler
> would be to normalize the search string by turning all whitespace
> into space characters),

Yes, I think this should give you the behaviour you're l= ooking for.
Try setting search-default-regexp-function to #'my-lax-with-char-fold, = where

(defun my-lax-with-char-fold (s &optional l)
=C2=A0 (character-fold-to-regexp (replace-regexp-in-string "\t\n\r\s+&= quot; " " s) l))

And then also set search-whitespace-regexp like above.

--001a11406bce2d3d9c0526d15c32-- From unknown Sat Aug 09 09:35:53 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22147: Obsolete search-forward-lax-whitespace Resent-From: Juri Linkov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 15 Dec 2015 00:34:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22147 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Artur Malabarba Cc: 22147@debbugs.gnu.org Received: via spool by 22147-submit@debbugs.gnu.org id=B22147.14501396401505 (code B ref 22147); Tue, 15 Dec 2015 00:34:01 +0000 Received: (at 22147) by debbugs.gnu.org; 15 Dec 2015 00:34:00 +0000 Received: from localhost ([127.0.0.1]:52020 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1a8dZ2-0000OD-8p for submit@debbugs.gnu.org; Mon, 14 Dec 2015 19:34:00 -0500 Received: from sub3.mail.dreamhost.com ([69.163.253.7]:38467 helo=homiemail-a100.g.dreamhost.com) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1a8dYz-0000O5-TB for 22147@debbugs.gnu.org; Mon, 14 Dec 2015 19:33:58 -0500 Received: from homiemail-a100.g.dreamhost.com (localhost [127.0.0.1]) by homiemail-a100.g.dreamhost.com (Postfix) with ESMTP id D98EC31A070; Mon, 14 Dec 2015 16:33:56 -0800 (PST) Received: from localhost.linkov.net (m83-180-31-224.cust.tele2.ee [83.180.31.224]) (Authenticated sender: jurta@jurta.org) by homiemail-a100.g.dreamhost.com (Postfix) with ESMTPA id ECB9E31A061; Mon, 14 Dec 2015 16:33:55 -0800 (PST) From: Juri Linkov Organization: LINKOV.NET References: <87wpsk7dcs.fsf@mail.linkov.net> <87d1ubz3w9.fsf@mail.linkov.net> <87r3ipoofk.fsf@mail.linkov.net> Date: Tue, 15 Dec 2015 01:58:11 +0200 In-Reply-To: (Artur Malabarba's message of "Mon, 14 Dec 2015 01:11:59 +0000") Message-ID: <87zixcblno.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) >> (maybe simpler >> would be to normalize the search string by turning all whitespace >> into space characters), > > Yes, I think this should give you the behaviour you're looking for. > Try setting search-default-regexp-function to #'my-lax-with-char-fold, search-default-regexp-mode definitely needs to be renamed to search-default-regexp-function ;-) > where > > (defun my-lax-with-char-fold (s &optional l) > (character-fold-to-regexp (replace-regexp-in-string "\t\n\r\s+" " " s= ) > l)) > > And then also set search-whitespace-regexp like above. Thanks for the suggestion. Since it works, then maybe better generalize it to allow a mode that supports normalization of the search string, that also will do symmetric char-folding, where e.g. searching for =E2=80=9C=C3=A4=E2=80=9D will match =E2=80=9Ca=E2= =80=9D, etc. From unknown Sat Aug 09 09:35:53 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22147: Obsolete search-forward-lax-whitespace Resent-From: Artur Malabarba Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 15 Dec 2015 10:17:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22147 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Juri Linkov Cc: 22147@debbugs.gnu.org Reply-To: bruce.connor.am@gmail.com Received: via spool by 22147-submit@debbugs.gnu.org id=B22147.145017456420166 (code B ref 22147); Tue, 15 Dec 2015 10:17:01 +0000 Received: (at 22147) by debbugs.gnu.org; 15 Dec 2015 10:16:04 +0000 Received: from localhost ([127.0.0.1]:52215 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1a8meK-0005FB-J1 for submit@debbugs.gnu.org; Tue, 15 Dec 2015 05:16:04 -0500 Received: from mail-lb0-f169.google.com ([209.85.217.169]:34965) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1a8meI-0005EP-Hq for 22147@debbugs.gnu.org; Tue, 15 Dec 2015 05:16:03 -0500 Received: by mail-lb0-f169.google.com with SMTP id u9so2517525lbp.2 for <22147@debbugs.gnu.org>; Tue, 15 Dec 2015 02:16:02 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:reply-to:sender:in-reply-to:references:date:message-id :subject:from:to:cc:content-type:content-transfer-encoding; bh=jPwqd+preRZXrWxGo2Mo28HmBku6yjFze8j6BVER1J0=; b=XpYO2pJKAuuoZVkVgxo89liqb0hoy98F195AKiJ+/7hpCrMe7tRnzZDXE7QYUqBXZJ QmBfGQEp9raQaGcj0k+qnZZhaI4Fpk9p9Sgca8XOPRckox9l4fgdnHRy2Okk+OGKyRdi fuDZdsrfdA4mXCqg8MBd8+Par98Ty8Ho4cuJRqk7xTwh3Fexhu30NsfuDPrE6plyMB8+ GeCpUokLSCSoXYhdJTG9sNeG1pVf7SZw+hpTci+2UXHFc3yYtwAVeeVQo9vgVtnMwhO6 EIYc0ORmMxcUsxoa3vVcK28xfC9SKbw+GheXr0WBsIpmx9lqRwjMfiFph71FDQQJtat5 1lNA== MIME-Version: 1.0 X-Received: by 10.112.168.133 with SMTP id zw5mr15244974lbb.95.1450174556735; Tue, 15 Dec 2015 02:15:56 -0800 (PST) Received: by 10.112.202.99 with HTTP; Tue, 15 Dec 2015 02:15:56 -0800 (PST) In-Reply-To: <87zixcblno.fsf@mail.linkov.net> References: <87wpsk7dcs.fsf@mail.linkov.net> <87d1ubz3w9.fsf@mail.linkov.net> <87r3ipoofk.fsf@mail.linkov.net> <87zixcblno.fsf@mail.linkov.net> Date: Tue, 15 Dec 2015 10:15:56 +0000 X-Google-Sender-Auth: x71ecHuSJr30qhsKUFPN1jcOLjA Message-ID: From: Artur Malabarba Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) 2015-12-14 23:58 GMT+00:00 Juri Linkov : >>> (maybe simpler >>> would be to normalize the search string by turning all whitespace >>> into space characters), >> >> Yes, I think this should give you the behaviour you're looking for. >> Try setting search-default-regexp-function to #'my-lax-with-char-fold, > > search-default-regexp-mode definitely needs to be renamed to > search-default-regexp-function ;-) Like I said on the devel thread, not sure about this. The only reason I got this wrong on all the above messages is that I wrote every single one of them from my phone. :-) >> where >> >> (defun my-lax-with-char-fold (s &optional l) >> (character-fold-to-regexp (replace-regexp-in-string "\t\n\r\s+" " " s) >> l)) >> >> And then also set search-whitespace-regexp like above. > > Thanks for the suggestion. Since it works, then maybe better > generalize it to allow a mode that supports normalization of > the search string, that also will do symmetric char-folding, > where e.g. searching for =E2=80=9C=C3=A4=E2=80=9D will match =E2=80=9Ca= =E2=80=9D, etc. I don't know what you mean. IIUC, the current framework already supports a "normalizing mode", which is what we just did here, isn't it? From unknown Sat Aug 09 09:35:53 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22147: Obsolete search-forward-lax-whitespace Resent-From: Juri Linkov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 16 Dec 2015 01:29:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22147 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Artur Malabarba Cc: 22147@debbugs.gnu.org Received: via spool by 22147-submit@debbugs.gnu.org id=B22147.14502292908722 (code B ref 22147); Wed, 16 Dec 2015 01:29:02 +0000 Received: (at 22147) by debbugs.gnu.org; 16 Dec 2015 01:28:10 +0000 Received: from localhost ([127.0.0.1]:53072 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1a90t0-0002Gb-4Y for submit@debbugs.gnu.org; Tue, 15 Dec 2015 20:28:10 -0500 Received: from sub3.mail.dreamhost.com ([69.163.253.7]:49034 helo=homiemail-a18.g.dreamhost.com) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1a90sx-0002GT-Nv for 22147@debbugs.gnu.org; Tue, 15 Dec 2015 20:28:08 -0500 Received: from homiemail-a18.g.dreamhost.com (localhost [127.0.0.1]) by homiemail-a18.g.dreamhost.com (Postfix) with ESMTP id 5EB4D25006B; Tue, 15 Dec 2015 17:28:04 -0800 (PST) Received: from localhost.linkov.net (m83-180-31-224.cust.tele2.ee [83.180.31.224]) (Authenticated sender: jurta@jurta.org) by homiemail-a18.g.dreamhost.com (Postfix) with ESMTPA id 71848250069; Tue, 15 Dec 2015 17:28:03 -0800 (PST) From: Juri Linkov Organization: LINKOV.NET References: <87wpsk7dcs.fsf@mail.linkov.net> <87d1ubz3w9.fsf@mail.linkov.net> <87r3ipoofk.fsf@mail.linkov.net> <87zixcblno.fsf@mail.linkov.net> Date: Wed, 16 Dec 2015 02:57:42 +0200 In-Reply-To: (Artur Malabarba's message of "Tue, 15 Dec 2015 10:15:56 +0000") Message-ID: <874mfjchp1.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) >>> (defun my-lax-with-char-fold (s &optional l) >>> (character-fold-to-regexp (replace-regexp-in-string "\t\n\r\s+" " "= s) >>> l)) >>> >>> And then also set search-whitespace-regexp like above. >> >> Thanks for the suggestion. Since it works, then maybe better >> generalize it to allow a mode that supports normalization of >> the search string, that also will do symmetric char-folding, >> where e.g. searching for =E2=80=9C=C3=A4=E2=80=9D will match =E2=80=9C= a=E2=80=9D, etc. > > I don't know what you mean. IIUC, the current framework already > supports a "normalizing mode", which is what we just did here, isn't > it? I mean a char-folding customization that allows a search for =E2=80=9C=C3=A4=E2=80=9D match =E2=80=9Ca=E2=80=9D. Is this already = possible? If yes, then it should be easy to customize it in such a way that =E2=80=9C\n=E2=80=9D will match space =E2=80=9C\s=E2=80=9D to avoid the n= eed to write own functions that define an intersection of the existing functions char-folding and lax-whitespace. IOW, to customize a char-folding option instead of search-default-regexp-mode? From unknown Sat Aug 09 09:35:53 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22147: Obsolete search-forward-lax-whitespace Resent-From: Drew Adams Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 16 Dec 2015 01:48:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22147 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Juri Linkov , Artur Malabarba Cc: 22147@debbugs.gnu.org Received: via spool by 22147-submit@debbugs.gnu.org id=B22147.145023043610373 (code B ref 22147); Wed, 16 Dec 2015 01:48:02 +0000 Received: (at 22147) by debbugs.gnu.org; 16 Dec 2015 01:47:16 +0000 Received: from localhost ([127.0.0.1]:53078 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1a91BT-0002hD-Ns for submit@debbugs.gnu.org; Tue, 15 Dec 2015 20:47:15 -0500 Received: from aserp1040.oracle.com ([141.146.126.69]:24844) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1a91BR-0002h0-0x for 22147@debbugs.gnu.org; Tue, 15 Dec 2015 20:47:13 -0500 Received: from aserv0021.oracle.com (aserv0021.oracle.com [141.146.126.233]) by aserp1040.oracle.com (Sentrion-MTA-4.3.2/Sentrion-MTA-4.3.2) with ESMTP id tBG1l6oV019032 (version=TLSv1 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Wed, 16 Dec 2015 01:47:07 GMT Received: from aserv0121.oracle.com (aserv0121.oracle.com [141.146.126.235]) by aserv0021.oracle.com (8.13.8/8.13.8) with ESMTP id tBG1l61I010678 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=FAIL); Wed, 16 Dec 2015 01:47:06 GMT Received: from abhmp0008.oracle.com (abhmp0008.oracle.com [141.146.116.14]) by aserv0121.oracle.com (8.13.8/8.13.8) with ESMTP id tBG1l6I9020918; Wed, 16 Dec 2015 01:47:06 GMT MIME-Version: 1.0 Message-ID: Date: Tue, 15 Dec 2015 17:47:05 -0800 (PST) From: Drew Adams References: <87wpsk7dcs.fsf@mail.linkov.net> <87d1ubz3w9.fsf@mail.linkov.net> <87r3ipoofk.fsf@mail.linkov.net> <87zixcblno.fsf@mail.linkov.net> <874mfjchp1.fsf@mail.linkov.net> In-Reply-To: <874mfjchp1.fsf@mail.linkov.net> X-Priority: 3 X-Mailer: Oracle Beehive Extensions for Outlook 2.0.1.9 (901082) [OL 12.0.6691.5000 (x86)] Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Source-IP: aserv0021.oracle.com [141.146.126.233] X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.3 (--) > I mean a char-folding customization that allows a search > for =E2=80=9C=C3=A4=E2=80=9D match =E2=80=9Ca=E2=80=9D. Is this already = possible? It sounds like you are asking for symmetric char folding: being able to use any of the various A's that make up the A-characters equivalence class as a search pattern and find any of those characters. If so, I implemented that (one way, at least), and in emacs-devel I proposed such behavior as a togglable option. It is trivial to try it, if you like: character-fold+.el. http://www.emacswiki.org/emacs/download/character-fold%2b.el (A toggle command for it, `isearchp-toggle-symmetric-char-fold', is defined in isearch+.el: http://www.emacswiki.org/emacs/download/isearch%2b.el.) > If yes, then it should be easy to customize it in such a way that > =E2=80=9C\n=E2=80=9D will match space =E2=80=9C\s=E2=80=9D to avoid the n= eed to write own > functions that define an intersection of the existing functions > char-folding and lax-whitespace. IOW, to customize a char-folding > option instead of search-default-regexp-mode? Not sure if it answers the need you just described, but the same library has an option, `char-fold-ad-hoc', that lets users add their own equivalence classes. (Caveat: I think that Artur made some changes to character-fold.el recently. It's possible that character-fold+.el is not up-to-date wrt those changes, in which case it might not work with the most recent versions of character-fold.el. Maybe check the dates, if you are interested.) From unknown Sat Aug 09 09:35:53 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22147: Obsolete search-forward-lax-whitespace Resent-From: Artur Malabarba Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 16 Dec 2015 11:00:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22147 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Juri Linkov Cc: 22147@debbugs.gnu.org Reply-To: bruce.connor.am@gmail.com Received: via spool by 22147-submit@debbugs.gnu.org id=B22147.145026358125774 (code B ref 22147); Wed, 16 Dec 2015 11:00:03 +0000 Received: (at 22147) by debbugs.gnu.org; 16 Dec 2015 10:59:41 +0000 Received: from localhost ([127.0.0.1]:53232 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1a99o5-0006he-9x for submit@debbugs.gnu.org; Wed, 16 Dec 2015 05:59:41 -0500 Received: from mail-lf0-f46.google.com ([209.85.215.46]:34684) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1a99o2-0006hP-Sj for 22147@debbugs.gnu.org; Wed, 16 Dec 2015 05:59:39 -0500 Received: by mail-lf0-f46.google.com with SMTP id y184so26440234lfc.1 for <22147@debbugs.gnu.org>; Wed, 16 Dec 2015 02:59:38 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:reply-to:sender:in-reply-to:references:date:message-id :subject:from:to:cc:content-type; bh=JkzHLEtkzjugob7yoLiPH5Ufg/+Vz9GZw4myMEx3OkE=; b=sSFDJ71wLMG6nSoyL4/cMpQh22yFIbD5C0cBXf9AE5g13xEC1Jsit+W5YffESgxQRR 5jN73czJtObeV5inIsKzNOwalXN+T9w/RFKqObXm5Blkhre4NTfWf1RgkpwWJDH/Nggr Z6rHe7bVqZCdxof0u/PAXmRMMSLbywu8EpG1wsN+Jbk+jDFQgrVlKDmrH95xcsu5eOD4 u6H1U9n3n9cfMmOP6edkEmB3+LsBbzb57zsH8+8vg3udkOrpU6NWI7g3voTVXCzFbmZ0 ndYJDivBNWk+pLDMcEAe3WaFIztsTZx8dfJMrbNr53t7oz9tLkT9p5A4S17ArQbwBhPM 4Vdg== MIME-Version: 1.0 X-Received: by 10.25.147.84 with SMTP id v81mr18175276lfd.119.1450263572912; Wed, 16 Dec 2015 02:59:32 -0800 (PST) Received: by 10.112.202.99 with HTTP; Wed, 16 Dec 2015 02:59:32 -0800 (PST) Received: by 10.112.202.99 with HTTP; Wed, 16 Dec 2015 02:59:32 -0800 (PST) In-Reply-To: <874mfjchp1.fsf@mail.linkov.net> References: <87wpsk7dcs.fsf@mail.linkov.net> <87d1ubz3w9.fsf@mail.linkov.net> <87r3ipoofk.fsf@mail.linkov.net> <87zixcblno.fsf@mail.linkov.net> <874mfjchp1.fsf@mail.linkov.net> Date: Wed, 16 Dec 2015 10:59:32 +0000 X-Google-Sender-Auth: VyvcKWH0miv5BFYlTUVU0plB3io Message-ID: From: Artur Malabarba Content-Type: multipart/alternative; boundary=001a11401752182602052701cd1b X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) --001a11401752182602052701cd1b Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On 16 Dec 2015 12:57 am, "Juri Linkov" wrote: > > I mean a char-folding customization that allows a search > for =E2=80=9C=C3=A4=E2=80=9D match =E2=80=9Ca=E2=80=9D. Is this already = possible? Not yet. I do want to expose more char folding options, but I want to wait for emacs-25 to come out first, to see if and how people will use this feature. --001a11401752182602052701cd1b Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable

On 16 Dec 2015 12:57 am, "Juri Linkov" <juri@linkov.net> wrote:
>
> I mean a char-folding customization that allows a search
> for =E2=80=9C=C3=A4=E2=80=9D match =E2=80=9Ca=E2=80=9D.=C2=A0 Is this = already possible?=C2=A0

Not yet.
I do want to expose more char folding options, but I want to wait for emacs= -25 to come out first, to see if and how people will use this feature.

--001a11401752182602052701cd1b-- From unknown Sat Aug 09 09:35:53 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22147: Obsolete search-forward-lax-whitespace Resent-From: Juri Linkov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 17 Dec 2015 01:12:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22147 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Artur Malabarba Cc: 22147@debbugs.gnu.org Received: via spool by 22147-submit@debbugs.gnu.org id=B22147.145031469616736 (code B ref 22147); Thu, 17 Dec 2015 01:12:02 +0000 Received: (at 22147) by debbugs.gnu.org; 17 Dec 2015 01:11:36 +0000 Received: from localhost ([127.0.0.1]:53989 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1a9N6V-0004Ls-Mf for submit@debbugs.gnu.org; Wed, 16 Dec 2015 20:11:35 -0500 Received: from sub3.mail.dreamhost.com ([69.163.253.7]:54079 helo=homiemail-a75.g.dreamhost.com) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1a9N6T-0004Lk-Co for 22147@debbugs.gnu.org; Wed, 16 Dec 2015 20:11:33 -0500 Received: from homiemail-a75.g.dreamhost.com (localhost [127.0.0.1]) by homiemail-a75.g.dreamhost.com (Postfix) with ESMTP id 80FEF5EC079; Wed, 16 Dec 2015 17:11:31 -0800 (PST) Received: from localhost.linkov.net (m83-180-31-224.cust.tele2.ee [83.180.31.224]) (Authenticated sender: jurta@jurta.org) by homiemail-a75.g.dreamhost.com (Postfix) with ESMTPA id 87CF75EC05C; Wed, 16 Dec 2015 17:11:30 -0800 (PST) From: Juri Linkov In-Reply-To: (Artur Malabarba's message of "Wed, 16 Dec 2015 10:59:32 +0000") Organization: LINKOV.NET References: <87wpsk7dcs.fsf@mail.linkov.net> <87d1ubz3w9.fsf@mail.linkov.net> <87r3ipoofk.fsf@mail.linkov.net> <87zixcblno.fsf@mail.linkov.net> <874mfjchp1.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1.50 (x86_64-pc-linux-gnu) Date: Thu, 17 Dec 2015 02:57:46 +0200 Message-ID: <87mvt9evf9.fsf@mail.linkov.net> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) >> I mean a char-folding customization that allows a search >> for =E2=80=9C=C3=A4=E2=80=9D match =E2=80=9Ca=E2=80=9D. Is this alrea= dy possible? > > Not yet. > I do want to expose more char folding options, but I want to wait for > emacs-25 to come out first, to see if and how people will use this feat= ure. char-fold-symmetric could wait for later, but we definitely need char-fold-ad-hoc now before the release because the users should be able to customize the default rules. From unknown Sat Aug 09 09:35:53 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22147: Obsolete search-forward-lax-whitespace Resent-From: Artur Malabarba Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 17 Dec 2015 16:34:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22147 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Juri Linkov Cc: 22147@debbugs.gnu.org Reply-To: bruce.connor.am@gmail.com Received: via spool by 22147-submit@debbugs.gnu.org id=B22147.145037003512100 (code B ref 22147); Thu, 17 Dec 2015 16:34:02 +0000 Received: (at 22147) by debbugs.gnu.org; 17 Dec 2015 16:33:55 +0000 Received: from localhost ([127.0.0.1]:54619 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1a9bV5-000396-HA for submit@debbugs.gnu.org; Thu, 17 Dec 2015 11:33:55 -0500 Received: from mail-lf0-f41.google.com ([209.85.215.41]:34135) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1a9bV4-00038n-6D for 22147@debbugs.gnu.org; Thu, 17 Dec 2015 11:33:54 -0500 Received: by mail-lf0-f41.google.com with SMTP id y184so55441159lfc.1 for <22147@debbugs.gnu.org>; Thu, 17 Dec 2015 08:33:54 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:reply-to:sender:in-reply-to:references:date:message-id :subject:from:to:cc:content-type; bh=GqZgq/Eouov5SH74SsSksdhubljw6cDk0IZiWBvtQ6k=; b=ojZvfuBqPnJz0KX/H8JWGnwu/pDCUXhqVwBpIEqGvm8cefIruEGOAmRtIngxIqtZPC IC1mumF8cJspxqeJIVgZxV8HD0DVEdsPi5sa3g9QvcSOp4NQ5sV3IDijHCprJ0kEr/XC HG9Rk8qYqeva2beN2RHLnF833S/5BnIuySRsx/SCuTAQpUk3+YFe8SMycKn6xp5jwiYT 4DyxlgRdB7zcKqTpIx1N6pOvglvdGKJlNt4wH6dGhOShDdlbFT2FsWWZmpGlVG3MPVQn 6ZcF6vX2dEwWj1NT3vlpVO4vR1PStlNVHGvSdV5WXMRLzv/0axeGO7SkCSYCDEHU2lfL fmVw== MIME-Version: 1.0 X-Received: by 10.25.18.231 with SMTP id 100mr12579580lfs.25.1450370028115; Thu, 17 Dec 2015 08:33:48 -0800 (PST) Received: by 10.112.202.99 with HTTP; Thu, 17 Dec 2015 08:33:47 -0800 (PST) Received: by 10.112.202.99 with HTTP; Thu, 17 Dec 2015 08:33:47 -0800 (PST) In-Reply-To: <87mvt9evf9.fsf@mail.linkov.net> References: <87wpsk7dcs.fsf@mail.linkov.net> <87d1ubz3w9.fsf@mail.linkov.net> <87r3ipoofk.fsf@mail.linkov.net> <87zixcblno.fsf@mail.linkov.net> <874mfjchp1.fsf@mail.linkov.net> <87mvt9evf9.fsf@mail.linkov.net> Date: Thu, 17 Dec 2015 16:33:47 +0000 X-Google-Sender-Auth: ziS7KV3FLmoYTmt09kZHki4ArA0 Message-ID: From: Artur Malabarba Content-Type: multipart/alternative; boundary=001a113f67ee519bf805271a9636 X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) --001a113f67ee519bf805271a9636 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On 17 Dec 2015 12:57 am, "Juri Linkov" wrote: > > >> I mean a char-folding customization that allows a search > >> for =E2=80=9C=C3=A4=E2=80=9D match =E2=80=9Ca=E2=80=9D. Is this alrea= dy possible? > > > > Not yet. > > I do want to expose more char folding options, but I want to wait for > > emacs-25 to come out first, to see if and how people will use this feature. > > char-fold-symmetric could wait for later, but we definitely need > char-fold-ad-hoc now before the release because the users should be > able to customize the default rules. Indeed. =F0=9F=91=8D Once we do that, we also need a variable to determine whether we should derive the default table from the unicode standard (like we currently do) or just use an empty default with the ad-hoc rules slapped on top. --001a113f67ee519bf805271a9636 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable

On 17 Dec 2015 12:57 am, "Juri Linkov" <juri@linkov.net> wrote:
>
> >> I mean a char-folding customization that allows a search
> >> for =E2=80=9C=C3=A4=E2=80=9D match =E2=80=9Ca=E2=80=9D.=C2=A0= Is this already possible?
> >
> > Not yet.
> > I do want to expose more char folding options, but I want to wait= for
> > emacs-25 to come out first, to see if and how people will use thi= s feature.
>
> char-fold-symmetric could wait for later, but we definitely need
> char-fold-ad-hoc now before the release because the users should be > able to customize the default rules.

Indeed. =F0=9F=91=8D
Once we do that, we also need a variable to determine whether we should der= ive the default table from the unicode standard (like we currently do) or j= ust use an empty default with the ad-hoc rules slapped on top.

--001a113f67ee519bf805271a9636-- From unknown Sat Aug 09 09:35:53 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22147: Obsolete search-forward-lax-whitespace Resent-From: Drew Adams Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 17 Dec 2015 17:22:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22147 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: bruce.connor.am@gmail.com, Juri Linkov Cc: 22147@debbugs.gnu.org Received: via spool by 22147-submit@debbugs.gnu.org id=B22147.145037287616445 (code B ref 22147); Thu, 17 Dec 2015 17:22:01 +0000 Received: (at 22147) by debbugs.gnu.org; 17 Dec 2015 17:21:16 +0000 Received: from localhost ([127.0.0.1]:54638 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1a9cEu-0004HB-1T for submit@debbugs.gnu.org; Thu, 17 Dec 2015 12:21:16 -0500 Received: from aserp1040.oracle.com ([141.146.126.69]:19827) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1a9cEs-0004Gy-5q for 22147@debbugs.gnu.org; Thu, 17 Dec 2015 12:21:14 -0500 Received: from aserv0022.oracle.com (aserv0022.oracle.com [141.146.126.234]) by aserp1040.oracle.com (Sentrion-MTA-4.3.2/Sentrion-MTA-4.3.2) with ESMTP id tBHHL7D7016487 (version=TLSv1 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Thu, 17 Dec 2015 17:21:08 GMT Received: from userv0121.oracle.com (userv0121.oracle.com [156.151.31.72]) by aserv0022.oracle.com (8.13.8/8.13.8) with ESMTP id tBHHL7kF010891 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=FAIL); Thu, 17 Dec 2015 17:21:07 GMT Received: from abhmp0012.oracle.com (abhmp0012.oracle.com [141.146.116.18]) by userv0121.oracle.com (8.13.8/8.13.8) with ESMTP id tBHHL671028519; Thu, 17 Dec 2015 17:21:06 GMT MIME-Version: 1.0 Message-ID: Date: Thu, 17 Dec 2015 09:21:05 -0800 (PST) From: Drew Adams References: <87wpsk7dcs.fsf@mail.linkov.net> <87d1ubz3w9.fsf@mail.linkov.net> <87r3ipoofk.fsf@mail.linkov.net> <87zixcblno.fsf@mail.linkov.net> <874mfjchp1.fsf@mail.linkov.net> <87mvt9evf9.fsf@mail.linkov.net> In-Reply-To: X-Priority: 3 X-Mailer: Oracle Beehive Extensions for Outlook 2.0.1.9 (901082) [OL 12.0.6691.5000 (x86)] Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Source-IP: aserv0022.oracle.com [141.146.126.234] X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.3 (--) >> char-fold-symmetric could wait for later, but we definitely need >> char-fold-ad-hoc now before the release because the users should be >> able to customize the default rules. > > Indeed. Once we do that, we also need a variable to determine > whether we should derive the default table from the unicode > standard (like we currently do) or just use an empty default with > the ad-hoc rules slapped on top.=20 Users should be able to define their own equivalence classes (groups), not just one class. Each class should be the value of a user option. Here is one simple and flexible way to do this: 1. Define a user option, `char-folding-classes', which is a list of any number of (OPTION-NAME DOC-STRING) pairs, where OPTION-NAME is a symbol that will name a user option and DOC-STRING is its doc string. Each symbol would automatically be used to define an option (a defcustom) that the user can then use to define a given equivalence class. 2. The generated defcustom for each user option specified in option `char-folding-classes' would allow for any number of entries, each of which could be a `choice' of either of these defcustom types: a. An alist, such as used currently in my `char-fold-ad-hoc' option: Each entry is a list of a char and the strings that fold into it. b. A function that populates such an alist. The default value of `char-folding-classes' would be something like this: ((char-fold-diacriticals "Classes of chars equivalent because they have the same base char.") (char-fold-quotations "Classes of equivalent quotation-mark characters.")) Option `char-fold-diacriticals' would have as its default value a function that returns the alist of diacritical-equivalent classes that we provide today. Its code would be derived from what we use today. (If needed, a user can replace the function with another that defines some of the classes differently or that provides only a subset of the classes we provide today. But most users would probably not customize this option.) Option `char-fold-quotations' would have as its default value what I use as the default value of my `char-fold-ad-hoc', which is an alist of the quotation-mark equivalences provided today by character-fold.el: ((?\" "=EF=BC=82" "=E2=80=9C" "=E2=80=9D" "=E2=80=9D" "=E2=80=9E" "=E2=B9= =82" "=E3=80=9E" "=E2=80=9F" "=E2=80=9F" "=E2=9D=9E" "=E2=9D=9D" "=E2=9D=A0" "=E2=80=9C" "=E2=80=9E" "=E3=80=9D" "=E3=80=9F" "=F0=9F= =99=B7" "=F0=9F=99=B6" "=F0=9F=99=B8" "=C2=AB" "=C2=BB") (?' "=E2=9D=9F" "=E2=9D=9B" "=E2=9D=9C" "=E2=80=98" "=E2=80=99" "=E2=80=9A= " "=E2=80=9B" "=E2=80=9A" "=F3=A0=80=A2" "=E2=9D=AE" "=E2=9D=AF" "=E2=80=B9= " "=E2=80=BA") (?` "=E2=9D=9B" "=E2=80=98" "=E2=80=9B" "=F3=A0=80=A2" "=E2=9D=AE" "=E2=80= =B9")) Having an option that lets users define any number of classes, and having each class be defined by a user option, is flexible. Having multiple classes, each associated with a variable (option), lets users and libraries easily enable/disable different equivalence classes in different contexts. From unknown Sat Aug 09 09:35:53 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22147: Obsolete search-forward-lax-whitespace Resent-From: Artur Malabarba Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 17 Dec 2015 18:48:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22147 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Drew Adams Cc: 22147@debbugs.gnu.org, Juri Linkov Reply-To: bruce.connor.am@gmail.com Received: via spool by 22147-submit@debbugs.gnu.org id=B22147.145037806524826 (code B ref 22147); Thu, 17 Dec 2015 18:48:02 +0000 Received: (at 22147) by debbugs.gnu.org; 17 Dec 2015 18:47:45 +0000 Received: from localhost ([127.0.0.1]:54683 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1a9daa-0006SM-T3 for submit@debbugs.gnu.org; Thu, 17 Dec 2015 13:47:45 -0500 Received: from mail-lf0-f45.google.com ([209.85.215.45]:33426) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1a9daZ-0006S8-8y for 22147@debbugs.gnu.org; Thu, 17 Dec 2015 13:47:43 -0500 Received: by mail-lf0-f45.google.com with SMTP id p203so58634380lfa.0 for <22147@debbugs.gnu.org>; Thu, 17 Dec 2015 10:47:43 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:reply-to:sender:in-reply-to:references:date:message-id :subject:from:to:cc:content-type; bh=xxFp0I/S7K+xaieq3IjUDtcquF4PD9GAj0Ai/7ooVpc=; b=MMGFsUBP8/ZgaRRe73ymvzYOMYMS82aWYk4fzvp1N9xOCQz48EqY0BbxSPc9VIGYqi fJomAriX1yVMei6XR6qsrXTUnvwo5aZzzQY4Bs7IFXXrYJyOhoE/Jh+u0Bn2rHHutOGF DKFcK8mEA05CkuOET6fyG9eejVWYMrrELjeJth1UUJT+f17+euvu9ow5WYgxLcuC52i4 Boli0fXrJvWcWH8SxVLlYlta4TX1M9mxDZLvasRJLpdCqedUsd9SwwJ5BDE88VtIWRmi VQ7AEDftIxLRkN/4tC9vwtuy1aH+0rFVz4kHh7W3BWSY06ff+ApTjbdSg0hhyQ9l8FON Satw== MIME-Version: 1.0 X-Received: by 10.25.18.231 with SMTP id 100mr12865136lfs.25.1450378057359; Thu, 17 Dec 2015 10:47:37 -0800 (PST) Received: by 10.112.202.99 with HTTP; Thu, 17 Dec 2015 10:47:37 -0800 (PST) In-Reply-To: References: <87wpsk7dcs.fsf@mail.linkov.net> <87d1ubz3w9.fsf@mail.linkov.net> <87r3ipoofk.fsf@mail.linkov.net> <87zixcblno.fsf@mail.linkov.net> <874mfjchp1.fsf@mail.linkov.net> <87mvt9evf9.fsf@mail.linkov.net> Date: Thu, 17 Dec 2015 18:47:37 +0000 X-Google-Sender-Auth: 9QD0z0kMM4ypPMtrBHk4zf4Ucvk Message-ID: From: Artur Malabarba Content-Type: text/plain; charset=UTF-8 X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) 2015-12-17 17:21 GMT+00:00 Drew Adams : >>> char-fold-symmetric could wait for later, but we definitely need >>> char-fold-ad-hoc now before the release because the users should be >>> able to customize the default rules. >> >> Indeed. Once we do that, we also need a variable to determine >> whether we should derive the default table from the unicode >> standard (like we currently do) or just use an empty default with >> the ad-hoc rules slapped on top. > > Users should be able to define their own equivalence classes (groups), > not just one class. Each class should be the value of a user option. > > Here is one simple and flexible way to do this: > > 1. Define a user option, `char-folding-classes', which is a list of > any number of (OPTION-NAME DOC-STRING) pairs, where OPTION-NAME > is a symbol that will name a user option and DOC-STRING is its doc > string. > > Each symbol would automatically be used to define an option (a > defcustom) that the user can then use to define a given equivalence > class. > > 2. The generated defcustom for each user option specified in option > `char-folding-classes' would allow for any number of entries, each > of which could be a `choice' of either of these defcustom types: > > a. An alist, such as used currently in my `char-fold-ad-hoc' option: > Each entry is a list of a char and the strings that fold into it. > > b. A function that populates such an alist. I appreciate you probably put quite a bit of thought into this, but IMO this would be over-engineering. I think we should define two simpole defcustoms that determine how the character-fold-table is generated: character-fold-ad-hoc (an alist) and character-fold-derive-from-unicode-decomposition (a boolean). This should be immediately configurable by anyone, without requiring a big initial investment. Then we also make character-fold-table into a defvar, and document it as a proper exposed API, so advanced users can change it however they want with hooks and local vars to however many different values/equiv-classes they want. This would offer a dead-simple defcustom that covers most cases, while still allowing the versatility of having multiple options for those who need it. From unknown Sat Aug 09 09:35:53 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22147: Obsolete search-forward-lax-whitespace Resent-From: Drew Adams Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 17 Dec 2015 22:17:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22147 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: bruce.connor.am@gmail.com Cc: 22147@debbugs.gnu.org, Juri Linkov Received: via spool by 22147-submit@debbugs.gnu.org id=B22147.145039059610931 (code B ref 22147); Thu, 17 Dec 2015 22:17:02 +0000 Received: (at 22147) by debbugs.gnu.org; 17 Dec 2015 22:16:36 +0000 Received: from localhost ([127.0.0.1]:54819 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1a9gqh-0002qF-Li for submit@debbugs.gnu.org; Thu, 17 Dec 2015 17:16:35 -0500 Received: from userp1040.oracle.com ([156.151.31.81]:47043) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1a9gqg-0002q3-P1 for 22147@debbugs.gnu.org; Thu, 17 Dec 2015 17:16:35 -0500 Received: from userv0021.oracle.com (userv0021.oracle.com [156.151.31.71]) by userp1040.oracle.com (Sentrion-MTA-4.3.2/Sentrion-MTA-4.3.2) with ESMTP id tBHMGShi014233 (version=TLSv1 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Thu, 17 Dec 2015 22:16:28 GMT Received: from aserv0122.oracle.com (aserv0122.oracle.com [141.146.126.236]) by userv0021.oracle.com (8.13.8/8.13.8) with ESMTP id tBHMGSwC007461 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=FAIL); Thu, 17 Dec 2015 22:16:28 GMT Received: from abhmp0012.oracle.com (abhmp0012.oracle.com [141.146.116.18]) by aserv0122.oracle.com (8.13.8/8.13.8) with ESMTP id tBHMGRdW029614; Thu, 17 Dec 2015 22:16:28 GMT MIME-Version: 1.0 Message-ID: <9ec649c4-5d95-4192-8a73-cc438ad0e4aa@default> Date: Thu, 17 Dec 2015 14:16:26 -0800 (PST) From: Drew Adams References: <87wpsk7dcs.fsf@mail.linkov.net> <87d1ubz3w9.fsf@mail.linkov.net> <87r3ipoofk.fsf@mail.linkov.net> <87zixcblno.fsf@mail.linkov.net> <874mfjchp1.fsf@mail.linkov.net> <87mvt9evf9.fsf@mail.linkov.net> In-Reply-To: X-Priority: 3 X-Mailer: Oracle Beehive Extensions for Outlook 2.0.1.9 (901082) [OL 12.0.6691.5000 (x86)] Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Source-IP: userv0021.oracle.com [156.151.31.71] X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.3 (--) > > Users should be able to define their own equivalence classes (groups), > > not just one class. Each class should be the value of a user option. > > > > Here is one simple and flexible way to do this: > > > > 1. Define a user option, `char-folding-classes', which is a list of > > any number of (OPTION-NAME DOC-STRING) pairs, where OPTION-NAME > > is a symbol that will name a user option and DOC-STRING is its doc > > string. > > > > Each symbol would automatically be used to define an option (a > > defcustom) that the user can then use to define a given equivalence > > class. > > > > 2. The generated defcustom for each user option specified in option > > `char-folding-classes' would allow for any number of entries, each > > of which could be a `choice' of either of these defcustom types: > > > > a. An alist, such as used currently in my `char-fold-ad-hoc' option: > > Each entry is a list of a char and the strings that fold into it. > > > > b. A function that populates such an alist. >=20 > I appreciate you probably put quite a bit of thought into this, Only a few minutes of thought, as I imagine you can guess. It just extends what I already have in character-fold.el. > but IMO this would be over-engineering. How so? I've done zero "engineering" on it. And I don't really care how it gets done, as long as it does. My point, as I said, is only this: Users should be able to define their own equivalence classes (groups), not just one class. Each class should be the value of a user option. Anything less than that is not serving users as well as they deserve, IMO. As to how that is done, I really don't care. I offered one simple approach= , but you are welcome to over-, under- or just-right-engineer it your own way= . > I think we should define two simpole defcustoms that determine how the > character-fold-table is generated: character-fold-ad-hoc (an alist) > and character-fold-derive-from-unicode-decomposition (a boolean). > This should be immediately configurable by anyone, That's far too restrictive, IMO. It does not let users or libraries easily apply different equivalence classes for different uses (e.g. modes). And there is no reason for such restriction - nothing is gained by it. > without requiring a big initial investment. There is no "big initial investment" to what I described. I can code it up quickly, as I'm sure you can too. And what it provides out of the box is exactly the same. It is just as "immediately configurable by anyone" - and immediately configurable in exactly the same way. Your Boolean with a default value of t is equivalent to the default presence of the function that does what your Boolean t does: "derive-from-unicode-decomposition". You can do more with what I described, and more easily. But you can also do just as little with it. =20 > Then we also make character-fold-table into a defvar, and document it > as a proper exposed API, so advanced users Anything that can be a defvar, for "advanced users", can be a defcustom, for all users. If you are inviting users to fiddle with a char-fold table, it is far better to give them the ability to do so in a modular way, and to make your default derive-from-unicode-decomposition into a default function instead of just hard-coding the behavior. Nothing lost, modularity and flexibility gained. > can change it however they want with hooks and local vars to however > many different values/equiv-classes they want. Ugly, and complicated. And unnecessary. No need to be an "advanced user" and fiddle with such stuff. > This would offer a dead-simple defcustom that covers most cases, while > still allowing the versatility of having multiple options for those > who need it. What I proposed is just as "dead-simple", but cleaner (IMO) and open to all users. Just as importantly, it lets users (easily) define multiple classes that they can (easily) use in different contexts. Again, I don't care about the implementation, but I would like users to be able to define their own equivalence classes (groups), and to enable/disable them easily au choix. From unknown Sat Aug 09 09:35:53 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22147: Obsolete search-forward-lax-whitespace Resent-From: Artur Malabarba Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 18 Dec 2015 00:56:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22147 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Drew Adams Cc: 22147@debbugs.gnu.org, Juri Linkov Reply-To: bruce.connor.am@gmail.com Received: via spool by 22147-submit@debbugs.gnu.org id=B22147.145040011524880 (code B ref 22147); Fri, 18 Dec 2015 00:56:02 +0000 Received: (at 22147) by debbugs.gnu.org; 18 Dec 2015 00:55:15 +0000 Received: from localhost ([127.0.0.1]:54880 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1a9jKE-0006TE-Pb for submit@debbugs.gnu.org; Thu, 17 Dec 2015 19:55:14 -0500 Received: from mail-lb0-f171.google.com ([209.85.217.171]:36800) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1a9jKC-0006Sy-Bz for 22147@debbugs.gnu.org; Thu, 17 Dec 2015 19:55:12 -0500 Received: by mail-lb0-f171.google.com with SMTP id yq9so35862116lbb.3 for <22147@debbugs.gnu.org>; Thu, 17 Dec 2015 16:55:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:reply-to:sender:in-reply-to:references:date:message-id :subject:from:to:cc:content-type; bh=spnausGkz/CXGGjuQh13cTLmP0G+crsnOpilzhtfrL8=; b=oB/FqbXxJnotDHOz2VX6mzBUOfDNMOFd8/HwwLmgvmRBBxOExACYuSNloC5GkpA9fU oykqNwAIP5Gclh0y6VCtzMNk2P1KG0Dskuty46tGtvGbPdMGViQM7uS7Mr1KFxoIaqCu xG7oACGPuXQf8qC2FroYCc9zab7p3V3Npr87XX9RuHLYq0TuoVhvJln+EuAjXylhMNoM DpyMBgnauXksedlLlliS82syugia+1io+9b1YydenfstUcl+kBpswwc3ucXnJNCRSeir FiAmlFS3W+d6TAL9wiHkXLiGTGwE94/OrF2kfsFItomI4uXT57VXrv5wJ5Ns4kQKJ+eX SCzw== MIME-Version: 1.0 X-Received: by 10.112.126.106 with SMTP id mx10mr247594lbb.3.1450400106446; Thu, 17 Dec 2015 16:55:06 -0800 (PST) Received: by 10.112.202.99 with HTTP; Thu, 17 Dec 2015 16:55:06 -0800 (PST) In-Reply-To: <9ec649c4-5d95-4192-8a73-cc438ad0e4aa@default> References: <87wpsk7dcs.fsf@mail.linkov.net> <87d1ubz3w9.fsf@mail.linkov.net> <87r3ipoofk.fsf@mail.linkov.net> <87zixcblno.fsf@mail.linkov.net> <874mfjchp1.fsf@mail.linkov.net> <87mvt9evf9.fsf@mail.linkov.net> <9ec649c4-5d95-4192-8a73-cc438ad0e4aa@default> Date: Fri, 18 Dec 2015 00:55:06 +0000 X-Google-Sender-Auth: 0ZugteKwst9bz-e8TIJejr17MMw Message-ID: From: Artur Malabarba Content-Type: text/plain; charset=UTF-8 X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) [out of order quotes below] 2015-12-17 22:16 GMT+00:00 Drew Adams : >> This would offer a dead-simple defcustom that covers most cases, while >> still allowing the versatility of having multiple options for those >> who need it. > > What I proposed is just as "dead-simple", but cleaner (IMO) and open > to all users. Just as importantly, it lets users (easily) define > multiple classes that they can (easily) use in different contexts. And this is the source of our impasse. IMO (and I say this will all due respect) your proposal is not as simple as the two defcustoms I suggested, and it is not cleaner than just using hooks/local-vars to set the value of character-fold-table to whatever is relevant for the current situation. Since we're both just stating opinions, it's unlikely this discussion will go anywhere. > My point, as I said, is only this: > > Users should be able to define their own equivalence classes (groups), > not just one class. Each class should be the value of a user option. > > Anything less than that is not serving users as well as they deserve, IMO. And my point is that this is too complex for user options. Most people won't need this much generality, and the amount of time these people will waste trying to understand this multi-option configuration will be significant. The few who want this behavior will be glad that we offered it, but the time it will save them (compared to if they wrote something in elisp) will be (IMO) small compared to the total accumulated wasted time for everyone else. From unknown Sat Aug 09 09:35:53 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22147: Obsolete search-forward-lax-whitespace Resent-From: Juri Linkov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 14 May 2016 20:53:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22147 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Drew Adams Cc: 22147@debbugs.gnu.org, Artur Malabarba Received: via spool by 22147-submit@debbugs.gnu.org id=B22147.146325916329112 (code B ref 22147); Sat, 14 May 2016 20:53:01 +0000 Received: (at 22147) by debbugs.gnu.org; 14 May 2016 20:52:43 +0000 Received: from localhost ([127.0.0.1]:51752 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b1gYE-0007ZU-NR for submit@debbugs.gnu.org; Sat, 14 May 2016 16:52:42 -0400 Received: from sub3.mail.dreamhost.com ([69.163.253.7]:39502 helo=homiemail-a21.g.dreamhost.com) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b1gYD-0007ZK-5C for 22147@debbugs.gnu.org; Sat, 14 May 2016 16:52:41 -0400 Received: from homiemail-a21.g.dreamhost.com (localhost [127.0.0.1]) by homiemail-a21.g.dreamhost.com (Postfix) with ESMTP id 29C62300074; Sat, 14 May 2016 13:52:38 -0700 (PDT) Received: from localhost.linkov.net (85.253.133.157.cable.starman.ee [85.253.133.157]) (Authenticated sender: jurta@jurta.org) by homiemail-a21.g.dreamhost.com (Postfix) with ESMTPA id 1BF2D300072; Sat, 14 May 2016 13:52:36 -0700 (PDT) From: Juri Linkov Organization: LINKOV.NET References: <87wpsk7dcs.fsf@mail.linkov.net> <87d1ubz3w9.fsf@mail.linkov.net> <87r3ipoofk.fsf@mail.linkov.net> <87zixcblno.fsf@mail.linkov.net> <874mfjchp1.fsf@mail.linkov.net> Date: Sat, 14 May 2016 23:45:00 +0300 In-Reply-To: (Drew Adams's message of "Tue, 15 Dec 2015 17:47:05 -0800 (PST)") Message-ID: <87r3d4z7uf.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.93 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 0.0 (/) >> I mean a char-folding customization that allows a search >> for =E2=80=9C=C3=A4=E2=80=9D match =E2=80=9Ca=E2=80=9D. Is this alrea= dy possible? > > It sounds like you are asking for symmetric char folding: being > able to use any of the various A's that make up the A-characters > equivalence class as a search pattern and find any of those > characters. > > If so, I implemented that (one way, at least), and in emacs-devel > I proposed such behavior as a togglable option. > > It is trivial to try it, if you like: character-fold+.el. > http://www.emacswiki.org/emacs/download/character-fold%2b.el > > (A toggle command for it, `isearchp-toggle-symmetric-char-fold', > is defined in isearch+.el: > http://www.emacswiki.org/emacs/download/isearch%2b.el.) I'm starting to recollect all the remaining pieces to finish this release blocking issue, but I can't download this library, because the link is broken and it seems the whole site is down. Drew, could you please send the latest version as an attachment? From unknown Sat Aug 09 09:35:53 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22147: Obsolete search-forward-lax-whitespace Resent-From: Artur Malabarba Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 14 May 2016 22:21:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22147 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Juri Linkov , Drew Adams Cc: 22147@debbugs.gnu.org Received: via spool by 22147-submit@debbugs.gnu.org id=B22147.14632644554635 (code B ref 22147); Sat, 14 May 2016 22:21:02 +0000 Received: (at 22147) by debbugs.gnu.org; 14 May 2016 22:20:55 +0000 Received: from localhost ([127.0.0.1]:51799 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b1hva-0001Cg-SO for submit@debbugs.gnu.org; Sat, 14 May 2016 18:20:55 -0400 Received: from mail-vk0-f45.google.com ([209.85.213.45]:34672) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b1hvZ-0001CS-6A for 22147@debbugs.gnu.org; Sat, 14 May 2016 18:20:53 -0400 Received: by mail-vk0-f45.google.com with SMTP id c189so22827301vkb.1 for <22147@debbugs.gnu.org>; Sat, 14 May 2016 15:20:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=vw+IsSoaSde2Oa3koJb28/p2Yft9tOrVRvF2dhK0anc=; b=KEwNPEDnah3xDnvnHGPvpB05iXvD/Va5hGctZB8wkQokcRodCSf9duBmaO3v00KlZ7 H6F4vnkcv+GYTvQN3AKoV3YGW1VUwkPsMe0xhbqLVBODQdSoh+Rv0aNKJuE0l+MQQXqa d5nQyENRWhQcJQQ1KgrnHedilouZ6olXFlJ979aadEDKfz5a5VSBiCpvmSQPtbYSl4RT Dt0pwChdnAHiJhimIFkYi4grK9y1sy0x8Ij3n0RoSacM2Ne8CcVRpixoyGGMsFu3Izqm BbDdmu92p0RdRUqpYLeQXzBT/xGCAjli2k6cOAyEcnaqRZLmj4DPvLyf+nC4IvfgXu10 Bjvw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=vw+IsSoaSde2Oa3koJb28/p2Yft9tOrVRvF2dhK0anc=; b=RFp/00VBB8g5RPGowaKgSbACuyE/cpi+Lbq6mrSps9Uh50AXBuRd61C+PzuSX9JiFM ITeRoFW6yjAD/VXEm/j+VauZXRGVby99wsj82a5QR2uvS8bB85/KZfjQk1TOmfn63prc DrQvCT0hcDauVZ64mvzNRfIrKWUp72+JKKZf+YZtl3spqPngsiaOI4F90jdr2aCkPuzj Mr97SWFFxCX5nSVAONSGooKxNh8sglZUDepM3o8A2wPBwIaxRV7RCMpgQ9xxbo6uIJ4x Zdvid5n/eLXG9G5qECv466nKYT04PRRY6zzLFT57MFPE0j9b0wlrw28x96OXXYWshkEQ te+g== X-Gm-Message-State: AOPr4FWiZrwa5TsId8LrJr7R87JXlt1BBtibFPOT0yGxt28XQIV+kGtjfScPxG7Rn2br7TSj2ASQda++DOtnnA== X-Received: by 10.159.35.12 with SMTP id 12mr9711398uae.119.1463264447755; Sat, 14 May 2016 15:20:47 -0700 (PDT) MIME-Version: 1.0 References: <87wpsk7dcs.fsf@mail.linkov.net> <87d1ubz3w9.fsf@mail.linkov.net> <87r3ipoofk.fsf@mail.linkov.net> <87zixcblno.fsf@mail.linkov.net> <874mfjchp1.fsf@mail.linkov.net> <87r3d4z7uf.fsf@mail.linkov.net> In-Reply-To: <87r3d4z7uf.fsf@mail.linkov.net> From: Artur Malabarba Date: Sat, 14 May 2016 22:20:37 +0000 Message-ID: Content-Type: multipart/alternative; boundary=001a113e45d29efcb90532d4cd7f X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) --001a113e45d29efcb90532d4cd7f Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable IIUC, Drew was offering an implementation of symmetric char folding, whereas the release blocking aspect of this bug is to add a char-folding-ad-hoc variable. On Sat, 14 May 2016 5:45 pm Juri Linkov, wrote: > >> I mean a char-folding customization that allows a search > >> for =E2=80=9C=C3=A4=E2=80=9D match =E2=80=9Ca=E2=80=9D. Is this alrea= dy possible? > > > > It sounds like you are asking for symmetric char folding: being > > able to use any of the various A's that make up the A-characters > > equivalence class as a search pattern and find any of those > > characters. > > > > If so, I implemented that (one way, at least), and in emacs-devel > > I proposed such behavior as a togglable option. > > > > It is trivial to try it, if you like: character-fold+.el. > > http://www.emacswiki.org/emacs/download/character-fold%2b.el > > > > (A toggle command for it, `isearchp-toggle-symmetric-char-fold', > > is defined in isearch+.el: > > http://www.emacswiki.org/emacs/download/isearch%2b.el.) > > I'm starting to recollect all the remaining pieces to finish this > release blocking issue, but I can't download this library, > because the link is broken and it seems the whole site is down. > > Drew, could you please send the latest version as an attachment? > --001a113e45d29efcb90532d4cd7f Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable

IIUC, Drew was offering an implementation of symmetric char = folding, whereas the release blocking aspect of this bug is to add a char-f= olding-ad-hoc variable.


On Sat, 14 May 2016 5:45 pm= Juri Linkov, <juri@linkov.net>= ; wrote:
>> I mean a char-fol= ding customization that allows a search
>> for =E2=80=9C=C3=A4=E2=80=9D match =E2=80=9Ca=E2=80=9D.=C2=A0 Is t= his already possible?
>
> It sounds like you are asking for symmetric char folding: being
> able to use any of the various A's that make up the A-characters > equivalence class as a search pattern and find any of those
> characters.
>
> If so, I implemented that (one way, at least), and in emacs-devel
> I proposed such behavior as a togglable option.
>
> It is trivial to try it, if you like: character-fold+.el.
> http://www.emacswiki.org/emacs/down= load/character-fold%2b.el
>
> (A toggle command for it, `isearchp-toggle-symmetric-char-fold', > is defined in isearch+.el:
> http://www.emacswiki.org/emacs/download/i= search%2b.el.)

I'm starting to recollect all the remaining pieces to finish this
release blocking issue, but I can't download this library,
because the link is broken and it seems the whole site is down.

Drew, could you please send the latest version as an attachment?
--001a113e45d29efcb90532d4cd7f-- From unknown Sat Aug 09 09:35:53 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22147: Obsolete search-forward-lax-whitespace Resent-From: Drew Adams Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 14 May 2016 22:23:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22147 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Juri Linkov Cc: 22147@debbugs.gnu.org, Artur Malabarba Received: via spool by 22147-submit@debbugs.gnu.org id=B22147.14632645584819 (code B ref 22147); Sat, 14 May 2016 22:23:01 +0000 Received: (at 22147) by debbugs.gnu.org; 14 May 2016 22:22:38 +0000 Received: from localhost ([127.0.0.1]:51804 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b1hxG-0001Fe-8d for submit@debbugs.gnu.org; Sat, 14 May 2016 18:22:38 -0400 Received: from aserp1040.oracle.com ([141.146.126.69]:39038) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b1hxE-0001FS-FS for 22147@debbugs.gnu.org; Sat, 14 May 2016 18:22:37 -0400 Received: from aserv0022.oracle.com (aserv0022.oracle.com [141.146.126.234]) by aserp1040.oracle.com (Sentrion-MTA-4.3.2/Sentrion-MTA-4.3.2) with ESMTP id u4EMMTwT027022 (version=TLSv1 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Sat, 14 May 2016 22:22:29 GMT Received: from userv0121.oracle.com (userv0121.oracle.com [156.151.31.72]) by aserv0022.oracle.com (8.13.8/8.13.8) with ESMTP id u4EMMT3c002214 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Sat, 14 May 2016 22:22:29 GMT Received: from abhmp0019.oracle.com (abhmp0019.oracle.com [141.146.116.25]) by userv0121.oracle.com (8.13.8/8.13.8) with ESMTP id u4EMMSBr001083; Sat, 14 May 2016 22:22:28 GMT MIME-Version: 1.0 Message-ID: <8ec0f5d4-a500-42c1-bab8-eaba00f0915c@default> Date: Sat, 14 May 2016 15:22:27 -0700 (PDT) From: Drew Adams References: <87wpsk7dcs.fsf@mail.linkov.net> <87d1ubz3w9.fsf@mail.linkov.net> <87r3ipoofk.fsf@mail.linkov.net> <87zixcblno.fsf@mail.linkov.net> <874mfjchp1.fsf@mail.linkov.net> <87r3d4z7uf.fsf@mail.linkov.net> In-Reply-To: <87r3d4z7uf.fsf@mail.linkov.net> X-Priority: 3 X-Mailer: Oracle Beehive Extensions for Outlook 2.0.1.9 (901082) [OL 12.0.6744.5000 (x86)] Content-Type: multipart/mixed; boundary="__1463264548083581090abhmp0019.oracle.com" X-Source-IP: aserv0022.oracle.com [141.146.126.234] X-Spam-Score: -3.7 (---) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.7 (---) --__1463264548083581090abhmp0019.oracle.com Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable > >> I mean a char-folding customization that allows a search > >> for =E2=80=9C=C3=A4=E2=80=9D match =E2=80=9Ca=E2=80=9D. Is this alrea= dy possible? > > > > It sounds like you are asking for symmetric char folding: being > > able to use any of the various A's that make up the A-characters > > equivalence class as a search pattern and find any of those > > characters. > > > > If so, I implemented that (one way, at least), and in emacs-devel > > I proposed such behavior as a togglable option. > > > > It is trivial to try it, if you like: character-fold+.el. > > http://www.emacswiki.org/emacs/download/character-fold%2b.el > > > > (A toggle command for it, `isearchp-toggle-symmetric-char-fold', > > is defined in isearch+.el: > > http://www.emacswiki.org/emacs/download/isearch%2b.el.) >=20 > I'm starting to recollect all the remaining pieces to finish this > release blocking issue, but I can't download this library, > because the link is broken and it seems the whole site is down. >=20 > Drew, could you please send the latest version as an attachment? 1. EmacsWiki seems to be up now. Also, you should be able to get to what is on EmacsWiki at the EmacsMirror: https://github.com/emacsmirror. And you should also be able to get my libraries from MELPA. I've attached `character-fold+.el' anyway. Let me know if you also want to look at `isearch+.el' and you cannot get to it for some reason. 2. More importantly, what I wrote in `character-fold+.el' worked only at the time I wrote it and for a while thereafter, unfortunately. Not too long after that, Artur Malabarba rewrote `character-fold.el', so the code I wrote is no longer appropriate. I have not had time to look at the (fairly deep) changes he made, or to imagine what I might do with it to obtain the symmetric behavior I implemented for the earlier version. 4. Dunno whether what I wrote is needed or helpful for dealing with this bug. Perhaps you or Artur can tell. IIUC, the part of this bug report that I replied to seemed to be a request for an extension of what `character-fold.el' does: symmetric folding. But perhaps I was misunderstanding, because I don't see how that could be a blocking bug - it was never Artur's intention to provide symmetric folding, AFAIK. --__1463264548083581090abhmp0019.oracle.com Content-Type: application/octet-stream; name="character-fold+.el" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="character-fold+.el" Ozs7IGNoYXJhY3Rlci1mb2xkKy5lbCAtLS0gRXh0ZW5zaW9ucyB0byBgY2hhcmFjdGVyLWZvbGQu ZWwnCjs7Cjs7IEZpbGVuYW1lOiBjaGFyYWN0ZXItZm9sZCsuZWwKOzsgRGVzY3JpcHRpb246IEV4 dGVuc2lvbnMgdG8gYGNoYXJhY3Rlci1mb2xkLmVsJwo7OyBBdXRob3I6IERyZXcgQWRhbXMKOzsg TWFpbnRhaW5lcjogRHJldyBBZGFtcwo7OyBDb3B5cmlnaHQgKEMpIDIwMTUtMjAxNiwgRHJldyBB ZGFtcywgYWxsIHJpZ2h0cyByZXNlcnZlZC4KOzsgQ3JlYXRlZDogRnJpIE5vdiAyNyAwOToxMjow MSAyMDE1ICgtMDgwMCkKOzsgVmVyc2lvbjogMAo7OyBQYWNrYWdlLVJlcXVpcmVzOiAoKQo7OyBM YXN0LVVwZGF0ZWQ6IFNhdCBGZWIgMjcgMTU6MDU6MjAgMjAxNiAoLTA4MDApCjs7ICAgICAgICAg ICBCeTogZHJhZGFtcwo7OyAgICAgVXBkYXRlICM6IDkzCjs7IFVSTDogaHR0cDovL3d3dy5lbWFj c3dpa2kub3JnL2NoYXJhY3Rlci1mb2xkKy5lbAo7OyBEb2MgVVJMOiBodHRwOi8vZW1hY3N3aWtp Lm9yZy9DaGFyYWN0ZXJGb2xkUGx1cwo7OyBLZXl3b3JkczogaXNlYXJjaCwgc2VhcmNoLCB1bmlj b2RlCjs7IENvbXBhdGliaWxpdHk6IEdOVSBFbWFjczogMjUueCBidWlsZHMgT04gT1IgQkVGT1JF IDIwMTUtMTItMTAgCjs7Cjs7IEZlYXR1cmVzIHRoYXQgbWlnaHQgYmUgcmVxdWlyZWQgYnkgdGhp cyBsaWJyYXJ5Ogo7Owo7OyAgIGBiYWNrcXVvdGUnLCBgYnV0dG9uJywgYGJ5dGVjb21wJywgYGNj b252JywgYGNoYXJhY3Rlci1mb2xkJywKOzsgICBgY2wtZXh0cmEnLCBgY2wtbGliJywgYGhlbHAt bW9kZScsIGBtYWNyb2V4cCcuCjs7Cjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7 Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OzsKOzsKOzs7IENvbW1lbnRhcnk6Cjs7 Cjs7ICBFeHRlbnNpb25zIHRvIElzZWFyY2ggY2hhcmFjdGVyIGZvbGRpbmcuCjs7Cjs7Cjs7ICBO T1RFOiBUaGlzIGxpYnJhcnkgaXMgTk9UIFVQLVRPLURBVEUgV1JUIEVNQUNTIDI1LiAgVGhlIHZh bmlsbGEKOzsgICAgICAgIEVtYWNzIGxpYnJhcnkgYGNoYXJhY3Rlci1mb2xkLmVsJywgd2hpY2gg dGhpcyBsaWJyYXJ5Cjs7ICAgICAgICBleHRlbmRzLCB3YXMgY2hhbmdlZCBpbiBpbmNvbXBhdGli bGUgd2F5cyBhZnRlciB0aGlzIGxpYnJhcnkKOzsgICAgICAgIHdhcyB3cml0dGVuLiAgSSBoYXZl IG5vdCB5ZXQgaGFkIGEgY2hhbmNlIHRvIHVwZGF0ZSB0aGlzCjs7ICAgICAgICAoYW5kIGFtIHdh aXRpbmcgZm9yIEVtYWNzIDI1IHRvIGJlIHJlbGVhc2VkIHRvIGRvIHNvKS4KOzsgICAgICAgIFNv cnJ5IGFib3V0IHRoYXQuCjs7Cjs7Cjs7ICBDaG9vc2UgT25lLVdheSBvciBTeW1tZXRyaWMgQ2hh cmFjdGVyIEZvbGRpbmcKOzsgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLQo7Owo7OyAgTm9uLW5pbCBvcHRpb24gYGNoYXItZm9sZC1zeW1tZXRyaWMnIG1lYW5z IHRoYXQgY2hhciBmb2xkaW5nIGlzCjs7ICBzeW1tZXRyaWM6IFdoZW4geW91IHNlYXJjaCBmb3Ig YW55IG9mIGFuIGVxdWl2YWxlbmNlIGNsYXNzIG9mCjs7ICBjaGFyYWN0ZXJzIHlvdSBmaW5kIGFs bCBvZiB0aGVtLiAgVGhpcyBiZWhhdmlvciBhcHBsaWVzIHRvCjs7ICBxdWVyeS1yZXBsYWNpbmcg YWxzbyAtIHNlZSBvcHRpb24gYHJlcGxhY2UtY2hhcmFjdGVyLWZvbGQnLgo7Owo7OyAgVGhlIGRl ZmF1bHQgdmFsdWUgb2YgYGNoYXItZm9sZC1zeW1tZXRyaWMnIGlzIGBuaWwnLCB3aGljaCBnaXZl cwo7OyAgdGhlIHNhbWUgYmVoYXZpb3IgYXMgdmFuaWxsYSBFbWFjczogeW91IGZpbmQgYWxsIG1l bWJlcnMgb2YgdGhlCjs7ICBlcXVpdmFsZW5jZSBjbGFzcyBvbmx5IHdoZW4geW91IHNlYXJjaCBm b3IgdGhlIGJhc2UgY2hhcmFjdGVyLgo7Owo7OyAgRm9yIGV4YW1wbGUsIHdpdGggYSBgbmlsJyB2 YWx1ZSB5b3UgY2FuIHNlYXJjaCBmb3IgImUiIChhIGJhc2UKOzsgIGNoYXJhY3RlcikgdG8gZmlu ZCAiw6kiLCBidXQgbm90IHZpY2UgdmVyc2EuICBXaXRoIGEgbm9uLWBuaWwnCjs7ICB2YWx1ZSB5 b3UgY2FuIHNlYXJjaCBmb3IgZWl0aGVyLCB0byBmaW5kIGl0c2VsZiBhbmQgdGhlIG90aGVyCjs7 ICBtZW1iZXJzIG9mIHRoZSBlcXVpdmFsZW5jZSBjbGFzcyAtIHRoZSBiYXNlIGNoYXIgaXMgbm90 IHRyZWF0ZWQKOzsgIHNwZWNpYWxseS4KOzsKOzsgIEV4YW1wbGUgbm9uLWBuaWwnIGJlaGF2aW9y Ogo7Owo7OyAgICBTZWFyY2hpbmcgZm9yIGFueSBvZiB0aGVzZSBjaGFyYWN0ZXJzIGFuZCBjaGFy YWN0ZXIgY29tcG9zaXRpb25zCjs7ICAgIGluIHRoZSBzZWFyY2ggc3RyaW5nIGZpbmRzIGFsbCBv ZiB0aGVtLiAgKFVzZSBgQy11IEMteCA9JyB3aXRoCjs7ICAgIHBvaW50IGJlZm9yZSBhIGNoYXJh Y3RlciB0byBzZWUgY29tcGxldGUgaW5mb3JtYXRpb24gYWJvdXQgaXQuKQo7Owo7OyAgICAgIGUg 8J2ajiDwnZmaIPCdmKYg8J2XsiDwnZa+IPCdloog8J2VliDwnZSiIPCdk64g8J2ShiDwnZGSIPCd kJ4g772FIOOLjiDji40g4pOUIOKSoAo7OyAgICAgIOKFhyDihK8g4oKRIGXMgyDhur0gZcyJIOG6 uyBlzKMg4bq5IGXMsCDhuJsgZcytIOG4mSDhtYkgZcynIMipIGXMkSDIhwo7OyAgICAgIGXMjyDI hSBlzIwgxJsgZcyoIMSZIGXMhyDElyBlzIYgxJUgZcyEIMSTIGXMiCDDqyBlzIIgw6ogZcyBIMOp IGXMgCDDqAo7Owo7OyAgICBBbiBleGFtcGxlIG9mIGEgY29tcG9zaXRpb24gaXMgImXMgSIuICBT ZWFyY2hpbmcgZm9yIHRoYXQgZmluZHMKOzsgICAgdGhlIHNhbWUgbWF0Y2hlcyBhcyBzZWFyY2hp bmcgZm9yICLDqSIgb3Igc2VhcmNoaW5nIGZvciAiZSIuCjs7Cjs7ICBJZiB5b3UgYWxzbyB1c2Ug bGlicmFyeSBgaXNlYXJjaCsuZWwnIHRoZW4geW91IGNhbiB0b2dnbGUgb3B0aW9uCjs7ICBgY2hh ci1mb2xkLXN5bW1ldHJpYycgYW55dGltZSBkdXJpbmcgSXNlYXJjaCwgdXNpbmcgYE0tcyA9Jwo7 OyAgKGNvbW1hbmQgYGlzZWFyY2hwLXRvZ2dsZS1zeW1tZXRyaWMtY2hhci1mb2xkJykuCjs7Cjs7 Cjs7ICBOT1RFOgo7Owo7OyAgICBUbyBjdXN0b21pemUgb3B0aW9uIGBjaGFyLWZvbGQtc3ltbWV0 cmljJywgdXNlIGVpdGhlciBDdXN0b21pemUKOzsgICAgb3IgYSBMaXNwIGZ1bmN0aW9uIGRlc2ln bmVkIGZvciBjdXN0b21pemluZyBvcHRpb25zLCBzdWNoIGFzCjs7ICAgIGBjdXN0b21pemUtc2V0 LXZhcmlhYmxlJywgdGhhdCBpbnZva2VzIHRoZSBuZWNlc3NhcnkgYDpzZXQnCjs7ICAgIGZ1bmN0 aW9uLgo7Owo7Owo7OyAgQ0FWRUFUOgo7Owo7OyAgICBCZSBhd2FyZSB0aGF0IGNoYXJhY3Rlci1m b2xkIHNlYXJjaGluZyBjYW4gYmUgbXVjaCBzbG93ZXIgd2hlbgo7OyAgICBzeW1tZXRyaWMgLSB0 aGVyZSBhcmUgbWFueSBtb3JlIHBvc3NpYmlsaXRpZXMgdG8gc2VhcmNoIGZvci4KOzsgICAgSWYs IGZvciBleGFtcGxlLCB5b3Ugc2VhcmNoIG9ubHkgZm9yIGEgc2luZ2xlICJlIi1mYW1pbHkKOzsg ICAgY2hhcmFjdGVyIHRoZW4gZXZlcnkgImUiIGluIHRoZSBidWZmZXIgaXMgYSBzZWFyY2ggaGl0 ICh3aGljaAo7OyAgICBtZWFucyBsYXp5LWhpZ2hsaWdodGluZyB0aGVtIGFsbCwgYnkgZGVmYXVs dCkuICBTZWFyY2hpbmcgd2l0aCBhCjs7ICAgIGxvbmdlciBzZWFyY2ggc3RyaW5nIGlzIG11Y2gg ZmFzdGVyLgo7Owo7OyAgICBJZiB5b3UgYWxzbyB1c2UgbGlicmFyeSBgaXNlYXJjaCsuZWwnIHRo ZW4geW91IGNhbiB0dXJuIG9mZiBsYXp5Cjs7ICAgIGhpZ2hsaWdodGluZyB1c2luZyB0aGUgdG9n Z2xlIGtleSBgTS1zIGggTCcuICBUaGlzIGNhbiB2YXN0bHkKOzsgICAgaW1wcm92ZSBwZXJmb3Jt YW5jZSB3aGVuIGNoYXJhY3RlciBmb2xkaW5nIGlzIHN5bW1ldHJpYy4KOzsKOzsKOzsgIEN1c3Rv bWl6ZSB0aGUgQWQgSG9jIENoYXJhY3RlciBGb2xkaW5ncwo7OyAgLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tCjs7Cjs7ICBJbiBhZGRpdGlvbiB0byB0aGUgc3RhbmRhcmQg ZXF1aXZhbGVuY2UgY2xhc3NlcyBvZiBhIGJhc2UKOzsgIGNoYXJhY3RlciBhbmQgaXRzIGZhbWls eSBvZiBkaWFjcml0aWNhbHMsIHZhbmlsbGEgRW1hY3MgaW5jbHVkZXMgYQo7OyAgbnVtYmVyIG9m IGFkIGhvYyBjaGFyYWN0ZXIgZm9sZGluZ3MsIGUuZy4sIGZvciBkaWZmZXJlbnQgcXVvdGUKOzsg IG1hcmtzLgo7Owo7OyAgT3B0aW9uIGBjaGFyLWZvbGQtYWQtaG9jJyBsZXRzIHlvdSBjdXN0b21p emUgdGhpcyBzZXQgb2YgYWQgaG9jCjs7ICBmb2xkaW5ncy4gIFRoZSBkZWZhdWx0IHZhbHVlIGlz IHRoZSBzYW1lIHNldCBwcm92aWRlZCBieSB2YW5pbGxhCjs7ICBFbWFjcy4KOzsKOzsKOzsKOzsg IE9wdGlvbnMgZGVmaW5lZCBoZXJlOgo7Owo7OyAgICBgY2hhci1mb2xkLWFkLWhvYycsIGBjaGFy LWZvbGQtc3ltbWV0cmljJy4KOzsKOzsgIE5vbi1pbnRlcmFjdGl2ZSBmdW5jdGlvbnMgZGVmaW5l ZCBoZXJlOgo7Owo7OyAgICBgdXBkYXRlLWNoYXItZm9sZC10YWJsZScuCjs7Cjs7ICBJbnRlcm5h bCB2YXJpYWJsZXMgZGVmaW5lZCBoZXJlOgo7Owo7OyAgICBgY2hhci1mb2xkLWRlY29tcHMnLgo7 Owo7Owo7OyAgKioqKiogTk9URTogVGhlIGZvbGxvd2luZyBmdW5jdGlvbiBkZWZpbmVkIGluIGBt b3VzZS5lbCcgaGFzCjs7ICAgICAgICAgICAgICBiZWVuIEFEVklTRUQgSEVSRToKOzsKOzsgICAg YGNoYXJhY3Rlci1mb2xkLXRvLXJlZ2V4cCcuCjs7Cjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7 Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OzsKOzsKOzs7IENoYW5n ZSBMb2c6Cjs7Cjs7IDIwMTUvMTIvMDEgZGFkYW1zCjs7ICAgICBjaGFyLWZvbGQtYWQtaG9jOiBB ZGRlZCA6c2V0Lgo7OyAyMDE1LzExLzI4IGRhZGFtcwo7OyAgICAgQWRkZWQ6IGNoYXItZm9sZC1h ZC1ob2MuCjs7ICAgICB1cGRhdGUtY2hhci1mb2xkLXRhYmxlOiBVc2UgY2hhci1mb2xkLWFkLWhv Yy4KOzsgMjAxNS8xMS8yNyBkYWRhbXMKOzsgICAgIENyZWF0ZWQuCjs7Cjs7Ozs7Ozs7Ozs7Ozs7 Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OzsK OzsKOzsgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRl IGl0IGFuZC9vciBtb2RpZnkKOzsgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJh bCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKOzsgdGhlIEZyZWUgU29mdHdhcmUgRm91 bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IgKGF0Cjs7IHlvdXIg b3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KOzsKOzsgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1 dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dAo7OyBXSVRIT1VUIEFO WSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCjs7IE1FUkNI QU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUg R05VCjs7IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KOzsKOzsgWW91 IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExp Y2Vuc2UKOzsgYWxvbmcgd2l0aCBHTlUgRW1hY3MuICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5n bnUub3JnL2xpY2Vuc2VzLz4uCjs7Cjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7 Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OzsKOzsKOzs7IENvZGU6CgoocmVxdWly ZSAnY2hhcmFjdGVyLWZvbGQpCgo7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OwoKKGRlZnZhciBjaGFy LWZvbGQtZGVjb21wcyAoKQogICJMaXN0IG9mIGNvbnNlcyBvZiBhIGRlY29tcG9zaXRpb24gYW5k IGl0cyBiYXNlIGNoYXIuIikKCihkZWZ1biB1cGRhdGUtY2hhci1mb2xkLXRhYmxlICgpCiAgIlVw ZGF0ZSB0aGUgdmFsdWUgb2YgdmFyaWFibGUgYGNoYXJhY3Rlci1mb2xkLXRhYmxlJy4KVGhlIG5l dyB2YWx1ZSByZWZsZWN0cyB0aGUgY3VycmVudCB2YWx1ZSBvZiBgY2hhci1mb2xkLXN5bW1ldHJp YycuIgogIChzZXRxIGNoYXItZm9sZC1kZWNvbXBzICAoKSkKICAoc2V0cSBjaGFyYWN0ZXItZm9s ZC10YWJsZQogICAgICAgIChsZXQqICgoZXF1aXYgIChtYWtlLWNoYXItdGFibGUgJ2NoYXJhY3Rl ci1mb2xkLXRhYmxlKSkKICAgICAgICAgICAgICAgKHRhYmxlICAodW5pY29kZS1wcm9wZXJ0eS10 YWJsZS1pbnRlcm5hbCAnZGVjb21wb3NpdGlvbikpCiAgICAgICAgICAgICAgIChmdW5jICAgKGNo YXItdGFibGUtZXh0cmEtc2xvdCB0YWJsZSAxKSkpCiAgICAgICAgICA7OyBFbnN1cmUgdGhhdCB0 aGUgdGFibGUgaXMgcG9wdWxhdGVkLgogICAgICAgICAgKG1hcC1jaGFyLXRhYmxlIChsYW1iZGEg KGNoIHZhbCkgKHdoZW4gKGNvbnNwIGNoKSAoZnVuY2FsbCBmdW5jIChjYXIgY2gpIHZhbCB0YWJs ZSkpKSB0YWJsZSkKICAgICAgICAgIDs7IENvbXBpbGUgYSBsaXN0IG9mIGFsbCBjb21wbGV4IGNo YXJzIHRoYXQgZWFjaCBzaW1wbGUgY2hhciBzaG91bGQgbWF0Y2guCiAgICAgICAgICAobWFwLWNo YXItdGFibGUKICAgICAgICAgICAobGFtYmRhIChjaCBkZWMpCiAgICAgICAgICAgICAod2hlbiAo Y29uc3AgZGVjKQogICAgICAgICAgICAgICAod2hlbiAoc3ltYm9scCAoY2FyIGRlYykpIChzZXRx IGRlYyAgKGNkciBkZWMpKSkgOyBEaXNjYXJkIGEgcG9zc2libGUgZm9ybWF0dGluZyB0YWcuCiAg ICAgICAgICAgICAgIDs7IFNraXAgdHJpdmlhbCBjYXNlcyBsaWtlID9hIGRlY29tcG9zaW5nIHRv ICg/YSkuCiAgICAgICAgICAgICAgICh1bmxlc3MgKGFuZCAobnVsbCAoY2RyIGRlYykpICAoZXEg Y2ggKGNhciBkZWMpKSkKICAgICAgICAgICAgICAgICAobGV0ICgoZGQgICAgICAgICAgIGRlYykK ICAgICAgICAgICAgICAgICAgICAgICAoZm9sZC1kZWNvbXAgIHQpCiAgICAgICAgICAgICAgICAg ICAgICAga2sgZm91bmQpCiAgICAgICAgICAgICAgICAgICAod2hpbGUgKGFuZCBkZCAgKG5vdCBm b3VuZCkpCiAgICAgICAgICAgICAgICAgICAgIChzZXRxIGtrICAocG9wIGRkKSkKICAgICAgICAg ICAgICAgICAgICAgOzsgSXMgS0sgYSBudW1iZXIgb3IgbGV0dGVyLCBwZXIgdW5pY29kZSBzdGFu ZGFyZD8KICAgICAgICAgICAgICAgICAgICAgKHNldHEgZm91bmQgIChtZW1xIChnZXQtY2hhci1j b2RlLXByb3BlcnR5IGtrICdnZW5lcmFsLWNhdGVnb3J5KQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgJyhMdSBMbCBMdCBMbSBMbyBOZCBObCBObykpKSkKICAgICAgICAg ICAgICAgICAgIChpZiBmb3VuZAogICAgICAgICAgICAgICAgICAgICAgIDs7IENoZWNrIGlmIHRo ZSBkZWNvbXBvc2l0aW9uIGhhcyBtb3JlIHRoYW4gb25lIGxldHRlciwgYmVjYXVzZSB0aGVuCiAg ICAgICAgICAgICAgICAgICAgICAgOzsgd2UgZG9uJ3Qgd2FudCB0aGUgZmlyc3QgbGV0dGVyIHRv IG1hdGNoIHRoZSBkZWNvbXBvc2l0aW9uLgogICAgICAgICAgICAgICAgICAgICAgIChkb2xpc3Qg KGtrICBkZCkKICAgICAgICAgICAgICAgICAgICAgICAgICh3aGVuIChhbmQgZm9sZC1kZWNvbXAg IChtZW1xIChnZXQtY2hhci1jb2RlLXByb3BlcnR5IGtrICdnZW5lcmFsLWNhdGVnb3J5KQogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJyhMdSBM bCBMdCBMbSBMbyBOZCBObCBObykpKQogICAgICAgICAgICAgICAgICAgICAgICAgICAoc2V0cSBm b2xkLWRlY29tcCAgbmlsKSkpCiAgICAgICAgICAgICAgICAgICAgIDs7IE5vIG51bWJlciBvciBs ZXR0ZXIgb24gZGVjb21wb3NpdGlvbi4gIFRha2UgaXRzIGZpcnN0IGNoYXIuCiAgICAgICAgICAg ICAgICAgICAgIChzZXRxIGZvdW5kICAoY2FyLXNhZmUgZGVjKSkpCiAgICAgICAgICAgICAgICAg ICA7OyBGb2xkIGEgbXVsdGktY2hhciBkZWNvbXBvc2l0aW9uIG9ubHkgaWYgYXQgbGVhc3Qgb25l IG9mIHRoZSBjaGFycyBpcwogICAgICAgICAgICAgICAgICAgOzsgbm9uLXNwYWNpbmcgKGNvbWJp bmluZykuCiAgICAgICAgICAgICAgICAgICAod2hlbiBmb2xkLWRlY29tcAogICAgICAgICAgICAg ICAgICAgICAoc2V0cSBmb2xkLWRlY29tcCAgbmlsKQogICAgICAgICAgICAgICAgICAgICAoZG9s aXN0IChrayAgZGVjKQogICAgICAgICAgICAgICAgICAgICAgICh3aGVuIChhbmQgKG5vdCBmb2xk LWRlY29tcCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICg+IChnZXQtY2hhci1j b2RlLXByb3BlcnR5IGtrICdjYW5vbmljYWwtY29tYmluaW5nLWNsYXNzKSAwKSkKICAgICAgICAg ICAgICAgICAgICAgICAgIChzZXRxIGZvbGQtZGVjb21wICB0KSkpKQogICAgICAgICAgICAgICAg ICAgOzsgQWRkIElJIHRvIHRoZSBsaXN0IG9mIGNoYXJzIHRoYXQgS0sgY2FuIHJlcHJlc2VudC4g IE1heWJlIGFkZCBpdHMgZGVjb21wb3NpdGlvbgogICAgICAgICAgICAgICAgICAgOzsgdG9vLCBz byB3ZSBjYW4gbWF0Y2ggbXVsdGktY2hhciByZXByZXNlbnRhdGlvbnMgbGlrZSAoZm9ybWF0ICJh JWMiIDc2OSkuCiAgICAgICAgICAgICAgICAgICAod2hlbiAoYW5kIGZvdW5kICAobm90IChlcSBj aCBraykpKQogICAgICAgICAgICAgICAgICAgICAobGV0ICgoY2hyLXN0cmdzICAoY29ucyAoY2hh ci10by1zdHJpbmcgY2gpIChhcmVmIGVxdWl2IGtrKSkpKQogICAgICAgICAgICAgICAgICAgICAg IChhc2V0IGVxdWl2IGtrIChpZiBmb2xkLWRlY29tcAogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAoY29ucyAoYXBwbHkgIydzdHJpbmcgZGVjKSBjaHItc3RyZ3MpCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaHItc3RyZ3MpKSkpKSkpKQog ICAgICAgICAgIHRhYmxlKQogICAgICAgICAgOzsgQWRkIHNvbWUgbWFudWFsIGVudHJpZXMuCiAg ICAgICAgICAoZG9saXN0IChpdCAgY2hhci1mb2xkLWFkLWhvYykKICAgICAgICAgICAgKGxldCAo KGlkeCAgICAgICAgKGNhciBpdCkpCiAgICAgICAgICAgICAgICAgIChjaHItc3RyZ3MgIChjZHIg aXQpKSkKICAgICAgICAgICAgICAoYXNldCBlcXVpdiBpZHggKGFwcGVuZCBjaHItc3RyZ3MgKGFy ZWYgZXF1aXYgaWR4KSkpKSkKCiAgICAgICAgICA7OyBUaGlzIGlzIHRoZSBlc3NlbnRpYWwgYml0 IGFkZGVkIGJ5IGBjaGFyYWN0ZXItZm9sZCsuZWwnLgogICAgICAgICAgKHdoZW4gKGFuZCAoYm91 bmRwICdjaGFyLWZvbGQtc3ltbWV0cmljKSAgY2hhci1mb2xkLXN5bW1ldHJpYykKICAgICAgICAg ICAgOzsgQWRkIGFuIGVudHJ5IGZvciBlYWNoIGVxdWl2YWxlbnQgY2hhci4KICAgICAgICAgICAg KGxldCAoKG90aGVycyAgKCkpKQogICAgICAgICAgICAgIChtYXAtY2hhci10YWJsZQogICAgICAg ICAgICAgICAobGFtYmRhIChiYXNlIHZhbCkKICAgICAgICAgICAgICAgICAobGV0ICgoY2hyLXN0 cmdzICAoYXJlZiBlcXVpdiBiYXNlKSkpCiAgICAgICAgICAgICAgICAgICAod2hlbiAoY29uc3Ag Y2hyLXN0cmdzKQogICAgICAgICAgICAgICAgICAgICAoZG9saXN0IChzdHJnICAoY2RyIGNoci1z dHJncykpCiAgICAgICAgICAgICAgICAgICAgICAgKHdoZW4gKDwgKGxlbmd0aCBzdHJnKSAyKQog ICAgICAgICAgICAgICAgICAgICAgICAgKHB1c2ggKGNvbnMgKHN0cmluZy10by1jaGFyIHN0cmcp IChyZW1vdmUgc3RyZyBjaHItc3RyZ3MpKSBvdGhlcnMpKQogICAgICAgICAgICAgICAgICAgICAg IDs7IEFkZCBpdCBhbmQgaXRzIGJhc2UgY2hhciB0byBgY2hhci1mb2xkLWRlY29tcHMnLgogICAg ICAgICAgICAgICAgICAgICAgIChwdXNoIChjb25zIHN0cmcgKGNoYXItdG8tc3RyaW5nIGJhc2Up KSBjaGFyLWZvbGQtZGVjb21wcykpKSkpCiAgICAgICAgICAgICAgIGVxdWl2KQogICAgICAgICAg ICAgIChkb2xpc3QgKGl0ICBvdGhlcnMpCiAgICAgICAgICAgICAgICAobGV0ICgoYmFzZSAgICAg ICAoY2FyIGl0KSkKICAgICAgICAgICAgICAgICAgICAgIChjaHItc3RyZ3MgIChjZHIgaXQpKSkK ICAgICAgICAgICAgICAgICAgKGFzZXQgZXF1aXYgYmFzZSAoYXBwZW5kIGNoci1zdHJncyAoYXJl ZiBlcXVpdiBiYXNlKSkpKSkpKQoKICAgICAgICAgIChtYXAtY2hhci10YWJsZSA7IENvbnZlcnQg dGhlIGxpc3RzIG9mIGNoYXJhY3RlcnMgd2UgY29tcGlsZWQgaW50byByZWdleHBzLgogICAgICAg ICAgIChsYW1iZGEgKGNoIHZhbCkgKGxldCAoKHJlICAocmVnZXhwLW9wdCAoY29ucyAoY2hhci10 by1zdHJpbmcgY2gpIHZhbCkpKSkKICAgICAgICAgICAgICAgICAgICAgICAgKGlmIChjb25zcCBj aCkgKHNldC1jaGFyLXRhYmxlLXJhbmdlIGVxdWl2IGNoIHJlKSAoYXNldCBlcXVpdiBjaCByZSkp KSkKICAgICAgICAgICBlcXVpdikKICAgICAgICAgIGVxdWl2KSkpCgooZGVmY3VzdG9tIGNoYXIt Zm9sZC1hZC1ob2MgJygoP1wiICLvvIIiICLigJwiICLigJ0iICLigJ0iICLigJ4iICLiuYIiICLj gJ4iICLigJ8iICLigJ8iICLinZ4iICLinZ0iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAi4p2gIiAi4oCcIiAi4oCeIiAi44CdIiAi44CfIiAi8J+ZtyIgIvCfmbYiICLwn5m4IiAiwqsi ICLCuyIpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICg/JyAi4p2fIiAi4p2bIiAi4p2c IiAi4oCYIiAi4oCZIiAi4oCaIiAi4oCbIiAi4oCaIiAi86CAoiIgIuKdriIgIuKdryIgIuKAuSIg IuKAuiIpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICg/YCAi4p2bIiAi4oCYIiAi4oCb IiAi86CAoiIgIuKdriIgIuKAuSIpKQogICJBZCBob2MgY2hhcmFjdGVyIGZvbGRpbmdzLgpFYWNo IGVudHJ5IGlzIGEgbGlzdCBvZiBhIGNoYXJhY3RlciBhbmQgdGhlIHN0cmluZ3MgdGhhdCBmb2xk IGludG8gaXQuCgpUaGUgZGVmYXVsdCB2YWx1ZSBpbmNsdWRlcyB0aG9zZSBhZCBob2MgZm9sZGlu Z3MgcHJvdmlkZWQgYnkgdmFuaWxsYQpFbWFjcy4iCiAgOnNldCAobGFtYmRhIChzeW0gZGVmcykK ICAgICAgICAgKGN1c3RvbS1zZXQtZGVmYXVsdCBzeW0gZGVmcykKICAgICAgICAgKHVwZGF0ZS1j aGFyLWZvbGQtdGFibGUpKQogIDp0eXBlICcocmVwZWF0IChjb25zCiAgICAgICAgICAgICAgICAg IChjaGFyYWN0ZXIgOnRhZyAiRm9sZCB0byBjaGFyYWN0ZXIiKQogICAgICAgICAgICAgICAgICAo cmVwZWF0IChzdHJpbmcgOnRhZyAiRm9sZCBmcm9tIHN0cmluZyIpKSkpCiAgOmdyb3VwICdpc2Vh cmNoKQoKKGRlZmN1c3RvbSBjaGFyLWZvbGQtc3ltbWV0cmljIG5pbAogICJOb24tbmlsIG1lYW5z IGNoYXItZm9sZCBzZWFyY2hpbmcgdHJlYXRzIGVxdWl2YWxlbnQgY2hhcnMgdGhlIHNhbWUuClRo YXQgaXMsIHVzZSBvZiBhbnkgb2YgYSBzZXQgb2YgY2hhci1mb2xkIGVxdWl2YWxlbnQgY2hhcnMg aW4gYSBzZWFyY2gKc3RyaW5nIGZpbmRzIGFueSBvZiB0aGVtIGluIHRoZSB0ZXh0IGJlaW5nIHNl YXJjaGVkLgoKSWYgbmlsIHRoZW4gb25seSB0aGUgXCJiYXNlXCIgb3IgXCJjYW5vbmljYWxcIiBj aGFyIG9mIHRoZSBzZXQgbWF0Y2hlcwphbnkgb2YgdGhlbS4gIFRoZSBvdGhlcnMgbWF0Y2ggb25s eSB0aGVtc2VsdmVzLCBldmVuIHdoZW4gY2hhci1mb2xkaW5nCmlzIHR1cm5lZCBvbi4iCiAgOnNl dCAobGFtYmRhIChzeW0gZGVmcykKICAgICAgICAgKGN1c3RvbS1zZXQtZGVmYXVsdCBzeW0gZGVm cykKICAgICAgICAgKHVwZGF0ZS1jaGFyLWZvbGQtdGFibGUpKQogIDp0eXBlICdib29sZWFuIDpn cm91cCAnaXNlYXJjaCkKCihkZWZhZHZpY2UgY2hhcmFjdGVyLWZvbGQtdG8tcmVnZXhwIChiZWZv cmUgcmVwbGFjZS1kZWNvbXBvc2l0aW9ucyBhY3RpdmF0ZSkKICAiUmVwbGFjZSBhbnkgZGVjb21w b3NpdGlvbnMgaW4gYGNoYXJhY3Rlci1mb2xkLXRhYmxlJyBieSB0aGVpciBiYXNlIGNoYXJzLgpU aGlzIGFsbG93cyBzZWFyY2ggdG8gbWF0Y2ggYWxsIGVxdWl2YWxlbnRzLiIKICAod2hlbiBjaGFy LWZvbGQtZGVjb21wcwogICAgKGRvbGlzdCAoZGVjb21wICBjaGFyLWZvbGQtZGVjb21wcykKICAg ICAgKGFkLXNldC1hcmcgMCAgKHJlcGxhY2UtcmVnZXhwLWluLXN0cmluZyAocmVnZXhwLXF1b3Rl IChjYXIgZGVjb21wKSkgKGNkciBkZWNvbXApCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgKGFkLWdldC1hcmcgMCkgJ0ZJWEVELUNBU0UgJ0xJVEVSQUwpKSkp KQo7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OwoKKHByb3ZpZGUgJ2NoYXJhY3Rlci1mb2xkKykKCjs7 Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7 Ozs7Ozs7Ozs7OzsKOzs7IGNoYXJhY3Rlci1mb2xkKy5lbCBlbmRzIGhlcmUK --__1463264548083581090abhmp0019.oracle.com-- From unknown Sat Aug 09 09:35:53 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22147: Obsolete search-forward-lax-whitespace Resent-From: Drew Adams Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 14 May 2016 22:28:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22147 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Artur Malabarba , Juri Linkov Cc: 22147@debbugs.gnu.org Received: via spool by 22147-submit@debbugs.gnu.org id=B22147.14632648355249 (code B ref 22147); Sat, 14 May 2016 22:28:01 +0000 Received: (at 22147) by debbugs.gnu.org; 14 May 2016 22:27:15 +0000 Received: from localhost ([127.0.0.1]:51808 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b1i1i-0001Mb-Sp for submit@debbugs.gnu.org; Sat, 14 May 2016 18:27:15 -0400 Received: from aserp1040.oracle.com ([141.146.126.69]:39510) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b1i1g-0001MO-PG for 22147@debbugs.gnu.org; Sat, 14 May 2016 18:27:13 -0400 Received: from aserv0022.oracle.com (aserv0022.oracle.com [141.146.126.234]) by aserp1040.oracle.com (Sentrion-MTA-4.3.2/Sentrion-MTA-4.3.2) with ESMTP id u4EMR6NA029801 (version=TLSv1 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Sat, 14 May 2016 22:27:07 GMT Received: from aserv0121.oracle.com (aserv0121.oracle.com [141.146.126.235]) by aserv0022.oracle.com (8.13.8/8.13.8) with ESMTP id u4EMR61g020093 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Sat, 14 May 2016 22:27:06 GMT Received: from abhmp0019.oracle.com (abhmp0019.oracle.com [141.146.116.25]) by aserv0121.oracle.com (8.13.8/8.13.8) with ESMTP id u4EMR528029468; Sat, 14 May 2016 22:27:06 GMT MIME-Version: 1.0 Message-ID: <1cf152de-c6dd-49e2-84da-d09764ff1cac@default> Date: Sat, 14 May 2016 15:27:05 -0700 (PDT) From: Drew Adams References: <87wpsk7dcs.fsf@mail.linkov.net> <87d1ubz3w9.fsf@mail.linkov.net> <87r3ipoofk.fsf@mail.linkov.net> <87zixcblno.fsf@mail.linkov.net> <874mfjchp1.fsf@mail.linkov.net> <87r3d4z7uf.fsf@mail.linkov.net> In-Reply-To: X-Priority: 3 X-Mailer: Oracle Beehive Extensions for Outlook 2.0.1.9 (901082) [OL 12.0.6744.5000 (x86)] Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Source-IP: aserv0022.oracle.com [141.146.126.234] X-Spam-Score: -3.7 (---) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.7 (---) > IIUC, Drew was offering an implementation of symmetric char folding, > whereas the release blocking aspect of this bug is to add a > char-folding-ad-hoc variable.=20 That makes sense. That too is in `character-fold+.el', which I attached to my previous messag= e. Dunno whether what I have there is exactly what you want/need. This is it: (defcustom char-fold-ad-hoc '((?\" "=EF=BC=82" "=E2=80=9C" "=E2=80=9D" "=E2= =80=9D" "=E2=80=9E" "=E2=B9=82" "=E3=80=9E" "=E2=80=9F" "=E2=80=9F" "=E2=9D= =9E" "=E2=9D=9D" "=E2=9D=A0" "=E2=80=9C" "=E2=80=9E" "=E3=80= =9D" "=E3=80=9F" "=F0=9F=99=B7" "=F0=9F=99=B6" "=F0=9F=99=B8" "=C2=AB" "=C2= =BB") (?' "=E2=9D=9F" "=E2=9D=9B" "=E2=9D=9C" "=E2= =80=98" "=E2=80=99" "=E2=80=9A" "=E2=80=9B" "=E2=80=9A" "=F3=A0=80=A2" "=E2= =9D=AE" "=E2=9D=AF" "=E2=80=B9" "=E2=80=BA") (?` "=E2=9D=9B" "=E2=80=98" "=E2=80=9B" "=F3= =A0=80=A2" "=E2=9D=AE" "=E2=80=B9")) "Ad hoc character foldings. Each entry is a list of a character and the strings that fold into it. The default value includes those ad hoc foldings provided by vanilla Emacs." :set (lambda (sym defs) (custom-set-default sym defs) (update-char-fold-table)) :type '(repeat (cons (character :tag "Fold to character") (repeat (string :tag "Fold from string")))) :group 'isearch) And this is where it is used: ;; Add some manual entries. (dolist (it char-fold-ad-hoc) (let ((idx (car it)) (chr-strgs (cdr it))) (aset equiv idx (append chr-strgs (aref equiv idx))))) From unknown Sat Aug 09 09:35:53 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22147: Obsolete search-forward-lax-whitespace Resent-From: Juri Linkov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 15 May 2016 20:59:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22147 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Artur Malabarba Cc: 22147@debbugs.gnu.org, Drew Adams Received: via spool by 22147-submit@debbugs.gnu.org id=B22147.14633459282541 (code B ref 22147); Sun, 15 May 2016 20:59:02 +0000 Received: (at 22147) by debbugs.gnu.org; 15 May 2016 20:58:48 +0000 Received: from localhost ([127.0.0.1]:53021 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b237g-0000ev-9s for submit@debbugs.gnu.org; Sun, 15 May 2016 16:58:48 -0400 Received: from sub3.mail.dreamhost.com ([69.163.253.7]:40487 helo=homiemail-a100.g.dreamhost.com) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b237f-0000ep-En for 22147@debbugs.gnu.org; Sun, 15 May 2016 16:58:47 -0400 Received: from homiemail-a100.g.dreamhost.com (localhost [127.0.0.1]) by homiemail-a100.g.dreamhost.com (Postfix) with ESMTP id 9DED631A073; Sun, 15 May 2016 13:58:45 -0700 (PDT) Received: from localhost.linkov.net (82.131.11.173.cable.starman.ee [82.131.11.173]) (Authenticated sender: jurta@jurta.org) by homiemail-a100.g.dreamhost.com (Postfix) with ESMTPA id 813B231A070; Sun, 15 May 2016 13:58:44 -0700 (PDT) From: Juri Linkov Organization: LINKOV.NET References: <87wpsk7dcs.fsf@mail.linkov.net> <87d1ubz3w9.fsf@mail.linkov.net> <87r3ipoofk.fsf@mail.linkov.net> <87zixcblno.fsf@mail.linkov.net> <874mfjchp1.fsf@mail.linkov.net> <87r3d4z7uf.fsf@mail.linkov.net> Date: Sun, 15 May 2016 23:45:48 +0300 In-Reply-To: (Artur Malabarba's message of "Sat, 14 May 2016 22:20:37 +0000") Message-ID: <87twhzjbib.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.93 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.0 (/) > IIUC, Drew was offering an implementation of symmetric char folding, > whereas the release blocking aspect of this bug is to add a > char-folding-ad-hoc variable. My initial request was to restore an ability to fold whitespace. One way to do this is to implement symmetric char folding. However, I believe that the same could be achieved with just char-fold-ad-hoc providing a suitable set of mappings. I'll confirm whether this is achievable after adding char-fold-ad-hoc. From unknown Sat Aug 09 09:35:53 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22147: Obsolete search-forward-lax-whitespace Resent-From: Juri Linkov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 15 May 2016 20:59:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22147 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Drew Adams Cc: 22147@debbugs.gnu.org, Artur Malabarba Received: via spool by 22147-submit@debbugs.gnu.org id=B22147.14633459302555 (code B ref 22147); Sun, 15 May 2016 20:59:02 +0000 Received: (at 22147) by debbugs.gnu.org; 15 May 2016 20:58:50 +0000 Received: from localhost ([127.0.0.1]:53024 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b237i-0000f9-FB for submit@debbugs.gnu.org; Sun, 15 May 2016 16:58:50 -0400 Received: from sub3.mail.dreamhost.com ([69.163.253.7]:33225 helo=homiemail-a11.g.dreamhost.com) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b237h-0000f2-B2 for 22147@debbugs.gnu.org; Sun, 15 May 2016 16:58:49 -0400 Received: from homiemail-a11.g.dreamhost.com (localhost [127.0.0.1]) by homiemail-a11.g.dreamhost.com (Postfix) with ESMTP id 953ED6E072; Sun, 15 May 2016 13:58:48 -0700 (PDT) Received: from localhost.linkov.net (82.131.11.173.cable.starman.ee [82.131.11.173]) (Authenticated sender: jurta@jurta.org) by homiemail-a11.g.dreamhost.com (Postfix) with ESMTPA id 9ED206E06C; Sun, 15 May 2016 13:58:47 -0700 (PDT) From: Juri Linkov Organization: LINKOV.NET References: <87wpsk7dcs.fsf@mail.linkov.net> <87d1ubz3w9.fsf@mail.linkov.net> <87r3ipoofk.fsf@mail.linkov.net> <87zixcblno.fsf@mail.linkov.net> <874mfjchp1.fsf@mail.linkov.net> <87r3d4z7uf.fsf@mail.linkov.net> <8ec0f5d4-a500-42c1-bab8-eaba00f0915c@default> Date: Sun, 15 May 2016 23:56:30 +0300 In-Reply-To: <8ec0f5d4-a500-42c1-bab8-eaba00f0915c@default> (Drew Adams's message of "Sat, 14 May 2016 15:22:27 -0700 (PDT)") Message-ID: <87shxjjb0h.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.93 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.0 (/) >> I'm starting to recollect all the remaining pieces to finish this >> release blocking issue, but I can't download this library, >> because the link is broken and it seems the whole site is down. >> >> Drew, could you please send the latest version as an attachment? > > 1. EmacsWiki seems to be up now. Also, you should be able to get to > what is on EmacsWiki at the EmacsMirror: https://github.com/emacsmirror= . > And you should also be able to get my libraries from MELPA. I've > attached `character-fold+.el' anyway. Let me know if you also want > to look at `isearch+.el' and you cannot get to it for some reason. EmacsWiki is inaccessible to me due to its invalid server certificate. But thanks for pointing to EmacsMirror - I found your code at https://github.com/emacsmirror/character-fold-plus https://github.com/emacsmirror/isearch-plus which I hope is at the latest version. > 2. More importantly, what I wrote in `character-fold+.el' worked > only at the time I wrote it and for a while thereafter, unfortunately. > Not too long after that, Artur Malabarba rewrote `character-fold.el', > so the code I wrote is no longer appropriate. I see that you just moved the hard-coded alist to defcustom char-fold-ad-hoc. I think that char-fold-ad-hoc is too ad-hoc naming. Using more wide-spread naming convention with a data type suffix -alist (like in display-buffer-alist, etc.) would provide a defcustom name char-fold-alist. Another thing we need to do is to allow customization to remove default mappings. Maybe this is possible by using the same defcustom with a rule like: remove default mappings when a char is mapped to an empty list, e.g. - adding more mappings for =E2=80=98`=E2=80=99: (defcustom char-fold-ad-hoc '((?` "=E2=9D=9B" "=E2=80=98" "=E2=80=9B" "= =F3=A0=80=A2" "=E2=9D=AE" "=E2=80=B9")) - removing default mappings for =E2=80=98`=E2=80=99: (defcustom char-fold-ad-hoc '((?`)) From unknown Sat Aug 09 09:35:53 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22147: Obsolete search-forward-lax-whitespace Resent-From: Drew Adams Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 15 May 2016 21:52:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22147 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Juri Linkov Cc: 22147@debbugs.gnu.org, Artur Malabarba Received: via spool by 22147-submit@debbugs.gnu.org id=B22147.14633491138103 (code B ref 22147); Sun, 15 May 2016 21:52:02 +0000 Received: (at 22147) by debbugs.gnu.org; 15 May 2016 21:51:53 +0000 Received: from localhost ([127.0.0.1]:53048 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b23x3-00026d-6L for submit@debbugs.gnu.org; Sun, 15 May 2016 17:51:53 -0400 Received: from userp1040.oracle.com ([156.151.31.81]:51754) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b23wx-00026I-9o for 22147@debbugs.gnu.org; Sun, 15 May 2016 17:51:51 -0400 Received: from aserv0021.oracle.com (aserv0021.oracle.com [141.146.126.233]) by userp1040.oracle.com (Sentrion-MTA-4.3.2/Sentrion-MTA-4.3.2) with ESMTP id u4FLpdkO028616 (version=TLSv1 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Sun, 15 May 2016 21:51:40 GMT Received: from aserv0122.oracle.com (aserv0122.oracle.com [141.146.126.236]) by aserv0021.oracle.com (8.13.8/8.13.8) with ESMTP id u4FLpdO0024805 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Sun, 15 May 2016 21:51:39 GMT Received: from abhmp0003.oracle.com (abhmp0003.oracle.com [141.146.116.9]) by aserv0122.oracle.com (8.13.8/8.13.8) with ESMTP id u4FLpa7Z013000; Sun, 15 May 2016 21:51:37 GMT MIME-Version: 1.0 Message-ID: <8e655300-1a72-4df6-87cf-91fd006cb3d7@default> Date: Sun, 15 May 2016 14:51:35 -0700 (PDT) From: Drew Adams References: <87wpsk7dcs.fsf@mail.linkov.net> <87d1ubz3w9.fsf@mail.linkov.net> <87r3ipoofk.fsf@mail.linkov.net> <87zixcblno.fsf@mail.linkov.net> <874mfjchp1.fsf@mail.linkov.net> <87r3d4z7uf.fsf@mail.linkov.net> <8ec0f5d4-a500-42c1-bab8-eaba00f0915c@default> <87shxjjb0h.fsf@mail.linkov.net> In-Reply-To: <87shxjjb0h.fsf@mail.linkov.net> X-Priority: 3 X-Mailer: Oracle Beehive Extensions for Outlook 2.0.1.9 (901082) [OL 12.0.6744.5000 (x86)] Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Source-IP: aserv0021.oracle.com [141.146.126.233] X-Spam-Score: -3.7 (---) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.7 (---) > EmacsWiki is inaccessible to me due to its invalid server certificate. I see. I don't know anything about that. > But thanks for pointing to EmacsMirror - I found your code at > https://github.com/emacsmirror/character-fold-plus > https://github.com/emacsmirror/isearch-plus > which I hope is at the latest version. Yes, I just checked, and those are the latest versions. I don't know how often EmacsMirror is updated. For a while (a year or two ago, I think) I think it was not mirroring. You can always get my code from MELPA, which refreshes from EmacsWiki daily. > > 2. More importantly, what I wrote in `character-fold+.el' worked > > only at the time I wrote it and for a while thereafter, unfortunately. > > Not too long after that, Artur Malabarba rewrote `character-fold.el', > > so the code I wrote is no longer appropriate. >=20 > I see that you just moved the hard-coded alist to defcustom > char-fold-ad-hoc. Correct. You can see how I use it. I broke up some of the character-fold.el code (at the time), in order to use parts of it (a bit more modular). Mainly, I broke out `update-char-fold-table' so that it could be called in the :set functions of the two defcustoms. So as soon as a user made changes, they were reflected in the behavior. > I think that char-fold-ad-hoc is too ad-hoc naming. > Using more wide-spread naming convention with a data type suffix -alist > (like in display-buffer-alist, etc.) would provide a defcustom name > char-fold-alist. OK. FWIW, I'm not a fan of putting the type ("alist") in the option name, but I don't speak for what vanilla Emacs does. If all we can say about some value is that it takes the _form_ of an alist, that's too bad. Normally, we should be able to describe that value (content, not just form). It's better, IMO, if the name talks about what the value is (content, purpose - something specific about it), and not just say form it takes. Another consideration (for me, at least): I think (and hope) that eventually users will be able to have multiple such lists (sets) of char mappings that they can choose (and mix and match - sets of such sets, for different purposes/contexts). IOW, I don't see just a single set of ad-hoc char mappings. But this is anyway for the future. > Another thing we need to do is to allow customization to remove > default mappings. Maybe this is possible by using the same > defcustom with a rule like: remove default mappings when a char > is mapped to an empty list, e.g. >=20 > - adding more mappings for =E2=80=98`=E2=80=99: > (defcustom char-fold-ad-hoc '((?` "=E2=9D=9B" "=E2=80=98" "=E2=80=9B" "= =F3=A0=80=A2" "=E2=9D=AE" "=E2=80=B9")) >=20 > - removing default mappings for =E2=80=98`=E2=80=99: > (defcustom char-fold-ad-hoc '((?`)) Yes, I would think that would work (already). But I could be wrong. Thanks for taking a look at this. From unknown Sat Aug 09 09:35:53 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22147: Obsolete search-forward-lax-whitespace Resent-From: Juri Linkov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 17 May 2016 20:57:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22147 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Drew Adams Cc: 22147@debbugs.gnu.org, Artur Malabarba Received: via spool by 22147-submit@debbugs.gnu.org id=B22147.14635185832040 (code B ref 22147); Tue, 17 May 2016 20:57:02 +0000 Received: (at 22147) by debbugs.gnu.org; 17 May 2016 20:56:23 +0000 Received: from localhost ([127.0.0.1]:56316 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2m2R-0000Wp-Ja for submit@debbugs.gnu.org; Tue, 17 May 2016 16:56:23 -0400 Received: from sub3.mail.dreamhost.com ([69.163.253.7]:56766 helo=homiemail-a20.g.dreamhost.com) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2m2Q-0000Wi-7H for 22147@debbugs.gnu.org; Tue, 17 May 2016 16:56:22 -0400 Received: from homiemail-a20.g.dreamhost.com (localhost [127.0.0.1]) by homiemail-a20.g.dreamhost.com (Postfix) with ESMTP id EC9D47EC063; Tue, 17 May 2016 13:56:18 -0700 (PDT) Received: from localhost.linkov.net (85.253.133.23.cable.starman.ee [85.253.133.23]) (Authenticated sender: jurta@jurta.org) by homiemail-a20.g.dreamhost.com (Postfix) with ESMTPA id EEEFB7EC060; Tue, 17 May 2016 13:56:17 -0700 (PDT) From: Juri Linkov Organization: LINKOV.NET References: <87wpsk7dcs.fsf@mail.linkov.net> <87d1ubz3w9.fsf@mail.linkov.net> <87r3ipoofk.fsf@mail.linkov.net> <87zixcblno.fsf@mail.linkov.net> <874mfjchp1.fsf@mail.linkov.net> <87r3d4z7uf.fsf@mail.linkov.net> <8ec0f5d4-a500-42c1-bab8-eaba00f0915c@default> <87shxjjb0h.fsf@mail.linkov.net> <8e655300-1a72-4df6-87cf-91fd006cb3d7@default> Date: Tue, 17 May 2016 23:55:53 +0300 In-Reply-To: <8e655300-1a72-4df6-87cf-91fd006cb3d7@default> (Drew Adams's message of "Sun, 15 May 2016 14:51:35 -0700 (PDT)") Message-ID: <8737pgwgiu.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.93 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.0 (/) > Another consideration (for me, at least): I think (and hope) that > eventually users will be able to have multiple such lists (sets) > of char mappings that they can choose (and mix and match - sets of > such sets, for different purposes/contexts). IOW, I don't see just > a single set of ad-hoc char mappings. But this is anyway for the > future. Yes, we have to take into consideration that in addition to the plain customizable list we are adding to the next release, in later versions we might also add more customizable lists, e.g. with categories and other character groups. >> Another thing we need to do is to allow customization to remove >> default mappings. Maybe this is possible by using the same >> defcustom with a rule like: remove default mappings when a char >> is mapped to an empty list, e.g. >> >> - adding more mappings for =E2=80=98`=E2=80=99: >> (defcustom char-fold-ad-hoc '((?` "=E2=9D=9B" "=E2=80=98" "=E2=80=9B= " "=F3=A0=80=A2" "=E2=9D=AE" "=E2=80=B9")) >> >> - removing default mappings for =E2=80=98`=E2=80=99: >> (defcustom char-fold-ad-hoc '((?`)) > > Yes, I would think that would work (already). But I could be wrong. > > Thanks for taking a look at this. After long-planned terminology improvements, I'd wait for sync between branches to avoid merge conflicts, and then I'll submit a patch taking into account all opinions about the default value for users who will enable this feature in the next release. From unknown Sat Aug 09 09:35:53 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22147: Obsolete search-forward-lax-whitespace Resent-From: Drew Adams Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 17 May 2016 21:57:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22147 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Juri Linkov Cc: 22147@debbugs.gnu.org, Artur Malabarba Received: via spool by 22147-submit@debbugs.gnu.org id=B22147.14635221677115 (code B ref 22147); Tue, 17 May 2016 21:57:02 +0000 Received: (at 22147) by debbugs.gnu.org; 17 May 2016 21:56:07 +0000 Received: from localhost ([127.0.0.1]:56330 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2myE-0001qh-R2 for submit@debbugs.gnu.org; Tue, 17 May 2016 17:56:07 -0400 Received: from userp1040.oracle.com ([156.151.31.81]:21715) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2myD-0001qC-0f for 22147@debbugs.gnu.org; Tue, 17 May 2016 17:56:05 -0400 Received: from userv0022.oracle.com (userv0022.oracle.com [156.151.31.74]) by userp1040.oracle.com (Sentrion-MTA-4.3.2/Sentrion-MTA-4.3.2) with ESMTP id u4HLtw83027478 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 17 May 2016 21:55:58 GMT Received: from aserv0121.oracle.com (aserv0121.oracle.com [141.146.126.235]) by userv0022.oracle.com (8.14.4/8.13.8) with ESMTP id u4HLtvu1031400 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Tue, 17 May 2016 21:55:58 GMT Received: from abhmp0013.oracle.com (abhmp0013.oracle.com [141.146.116.19]) by aserv0121.oracle.com (8.13.8/8.13.8) with ESMTP id u4HLtote015566; Tue, 17 May 2016 21:55:56 GMT MIME-Version: 1.0 Message-ID: Date: Tue, 17 May 2016 14:55:49 -0700 (PDT) From: Drew Adams References: <87wpsk7dcs.fsf@mail.linkov.net> <87d1ubz3w9.fsf@mail.linkov.net> <87r3ipoofk.fsf@mail.linkov.net> <87zixcblno.fsf@mail.linkov.net> <874mfjchp1.fsf@mail.linkov.net> <87r3d4z7uf.fsf@mail.linkov.net> <8ec0f5d4-a500-42c1-bab8-eaba00f0915c@default> <87shxjjb0h.fsf@mail.linkov.net> <8e655300-1a72-4df6-87cf-91fd006cb3d7@default> <8737pgwgiu.fsf@mail.linkov.net> In-Reply-To: <8737pgwgiu.fsf@mail.linkov.net> X-Priority: 3 X-Mailer: Oracle Beehive Extensions for Outlook 2.0.1.9 (901082) [OL 12.0.6744.5000 (x86)] Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Source-IP: userv0022.oracle.com [156.151.31.74] X-Spam-Score: -3.7 (---) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.7 (---) > > Another consideration (for me, at least): I think (and hope) that > > eventually users will be able to have multiple such lists (sets) > > of char mappings that they can choose (and mix and match - sets of > > such sets, for different purposes/contexts). IOW, I don't see just > > a single set of ad-hoc char mappings. But this is anyway for the > > future. >=20 > Yes, we have to take into consideration that in addition to the > plain customizable list we are adding to the next release, > in later versions we might also add more customizable lists, > e.g. with categories and other character groups. One possibility is to (now), instead of having an option with a single list= of ad-hoc mappings as value, have an option with an alist of such lists as= its value, where the car of an alist entry names the particular ad-hoc map= ping. See my suggestion in an earlier mail in this thread. =20 > >> Another thing we need to do is to allow customization to remove > >> default mappings. Maybe this is possible by using the same > >> defcustom with a rule like: remove default mappings when a char > >> is mapped to an empty list, e.g. > >> > >> - adding more mappings for =E2=80=98`=E2=80=99: > >> (defcustom char-fold-ad-hoc '((?` "=E2=9D=9B" "=E2=80=98" "=E2=80=9B= " "=F3=A0=80=A2" "=E2=9D=AE" "=E2=80=B9")) > >> > >> - removing default mappings for =E2=80=98`=E2=80=99: > >> (defcustom char-fold-ad-hoc '((?`)) > > > > Yes, I would think that would work (already). But I could be wrong. > > > > Thanks for taking a look at this. >=20 > After long-planned terminology improvements, I'd wait for sync between > branches to avoid merge conflicts, and then I'll submit a patch taking > into account all opinions about the default value for users who will > enable this feature in the next release. Sounds good. Thx. From unknown Sat Aug 09 09:35:53 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22147: Obsolete search-forward-lax-whitespace Resent-From: Artur Malabarba Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 18 May 2016 03:01:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22147 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Drew Adams , Juri Linkov Cc: 22147@debbugs.gnu.org Received: via spool by 22147-submit@debbugs.gnu.org id=B22147.14635404531132 (code B ref 22147); Wed, 18 May 2016 03:01:01 +0000 Received: (at 22147) by debbugs.gnu.org; 18 May 2016 03:00:53 +0000 Received: from localhost ([127.0.0.1]:56437 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2rjB-0000IC-AV for submit@debbugs.gnu.org; Tue, 17 May 2016 23:00:53 -0400 Received: from mail-vk0-f52.google.com ([209.85.213.52]:33151) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2rj9-0000Hw-Cx for 22147@debbugs.gnu.org; Tue, 17 May 2016 23:00:51 -0400 Received: by mail-vk0-f52.google.com with SMTP id z184so44859162vkg.0 for <22147@debbugs.gnu.org>; Tue, 17 May 2016 20:00:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=6UiyU2E4K+IaeBl0Qj6nmd/T/FRLSWLUUjN3IvYLEUc=; b=emHmxPxNN9BSf2Tt2at92J7ISpxRnYf+L156VAIciz6zbDcYTTTIRCdPIVU2+eZtTt crNROTvxw4w+duzfxMrKxdJbCh7RVj8K3BPf3dCzpfujH6d2Vj4YMUx1odHQ5snBQw7n Lgjpz7bLanIGWVqowwr0EvgSk7P/alS1Gm69znoA0yybHVV+IF7mBpXKvSAzFF7HoQ85 lLlQ7thC39B+zRvKF9IzwKdyXDKMzBznqnxtmbpFm2Fk31ha37mwDs7clj437KVVNFgs qmJ9CbrQWwEWBLbGgMpy2377I6YC3dljX1oOf7bgrr2L3Yfhc2tznDiyHfk93E+2iOK7 fvPQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=6UiyU2E4K+IaeBl0Qj6nmd/T/FRLSWLUUjN3IvYLEUc=; b=ItaHlKDBK8YWhbOrvaTenehCfPLx0EO7zYk3C4INxHzsIsRanao/uy3g9Bx/uaJV8F jIFZyptiubysBX//lnrj0mXrHmCwJ6eCO9HiHNDfC+roLq+/zdmX5C3LJUknCd/XUwaP Rd1CxzDZE6F6soUXSTsC8O6J7ULaP45RIx5+/ZZ06sbiqHJZTV5JVKRSvMZhBQVsEUua IGRjxzSf+7KbwtJExZGEZJ+ye5szES5VpZSSCfB3LzJVjuS6qM8ZLrnjvENeFd+22POy HDur6lxUEiGxWsWLlfPz1dKON7m0FmkEndDILtgIfCbMWYacudjD63twW8VOWh2wJtRB DvKg== X-Gm-Message-State: AOPr4FUeBu4tVjJV04DE5xFsSvxhw66NxmRYJtHhPrhpTSVBNf56GpVUG/VgAk1RTXD/QDQF7eEAOUJRi7o2Mg== X-Received: by 10.31.59.205 with SMTP id i196mr2761873vka.76.1463540444823; Tue, 17 May 2016 20:00:44 -0700 (PDT) MIME-Version: 1.0 References: <87wpsk7dcs.fsf@mail.linkov.net> <87d1ubz3w9.fsf@mail.linkov.net> <87r3ipoofk.fsf@mail.linkov.net> <87zixcblno.fsf@mail.linkov.net> <874mfjchp1.fsf@mail.linkov.net> <87r3d4z7uf.fsf@mail.linkov.net> <8ec0f5d4-a500-42c1-bab8-eaba00f0915c@default> <87shxjjb0h.fsf@mail.linkov.net> <8e655300-1a72-4df6-87cf-91fd006cb3d7@default> <8737pgwgiu.fsf@mail.linkov.net> In-Reply-To: From: Artur Malabarba Date: Wed, 18 May 2016 03:00:35 +0000 Message-ID: Content-Type: multipart/alternative; boundary=001a114304565408e705331510f0 X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) --001a114304565408e705331510f0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable First of all, thanks for taking the time to help with this, Juri. I'm of the opinion that we should avoid over thinking this feature for the first release. And I'm also of the opinion that complicated custom-vars (like alists of alists) are less helpful than simple custom vars. So I'd strongly prefer if we don't turn this variable into something more complicated. Also (although I'm perfectly in favor of a variable for ad-hoc foldings), I wouldn't mind it if this bug was removed from the release blocking list. It's a feature request, not a proper bug, so the release wouldn't be flawed without it. On Tue, 17 May 2016 6:55 pm Drew Adams, wrote: > > > Another consideration (for me, at least): I think (and hope) that > > > eventually users will be able to have multiple such lists (sets) > > > of char mappings that they can choose (and mix and match - sets of > > > such sets, for different purposes/contexts). IOW, I don't see just > > > a single set of ad-hoc char mappings. But this is anyway for the > > > future. > > > > Yes, we have to take into consideration that in addition to the > > plain customizable list we are adding to the next release, > > in later versions we might also add more customizable lists, > > e.g. with categories and other character groups. > > One possibility is to (now), instead of having an option with a single > list of ad-hoc mappings as value, have an option with an alist of such > lists as its value, where the car of an alist entry names the particular > ad-hoc mapping. > > See my suggestion in an earlier mail in this thread. > > > >> Another thing we need to do is to allow customization to remove > > >> default mappings. Maybe this is possible by using the same > > >> defcustom with a rule like: remove default mappings when a char > > >> is mapped to an empty list, e.g. > > >> > > >> - adding more mappings for =E2=80=98`=E2=80=99: > > >> (defcustom char-fold-ad-hoc '((?` "=E2=9D=9B" "=E2=80=98" "=E2=80= =9B" "=F3=A0=80=A2" "=E2=9D=AE" "=E2=80=B9")) > > >> > > >> - removing default mappings for =E2=80=98`=E2=80=99: > > >> (defcustom char-fold-ad-hoc '((?`)) > > > > > > Yes, I would think that would work (already). But I could be wrong. > > > > > > Thanks for taking a look at this. > > > > After long-planned terminology improvements, I'd wait for sync between > > branches to avoid merge conflicts, and then I'll submit a patch taking > > into account all opinions about the default value for users who will > > enable this feature in the next release. > > Sounds good. Thx. > --001a114304565408e705331510f0 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable

First of all, thanks for taking the time to help with this, = Juri.

I'm of the opinion that we should avoid over thinking th= is feature for the first release. And I'm also of the opinion that comp= licated custom-vars (like alists of alists) are less helpful than simple cu= stom vars. So I'd strongly prefer if we don't turn this variable in= to something more complicated.

Also (although I'm perfectly in favor of a variable for = ad-hoc foldings), I wouldn't mind it if this bug was removed from the r= elease blocking list. It's a feature request, not a proper bug, so the = release wouldn't be flawed without it.


On Tue, 17 May 2016 6:55 pm= Drew Adams, <drew.adams@oracle= .com> wrote:
> > Anoth= er consideration (for me, at least): I think (and hope) that
> > eventually users will be able to have multiple such lists (sets)<= br> > > of char mappings that they can choose (and mix and match - sets o= f
> > such sets, for different purposes/contexts).=C2=A0 IOW, I don'= ;t see just
> > a single set of ad-hoc char mappings.=C2=A0 But this is anyway fo= r the
> > future.
>
> Yes, we have to take into consideration that in addition to the
> plain customizable list we are adding to the next release,
> in later versions we might also add more customizable lists,
> e.g. with categories and other character groups.

One possibility is to (now), instead of having an option with a single list= of ad-hoc mappings as value, have an option with an alist of such lists as= its value, where the car of an alist entry names the particular ad-hoc map= ping.

See my suggestion in an earlier mail in this thread.

> >> Another thing we need to do is to allow customization to remo= ve
> >> default mappings.=C2=A0 Maybe this is possible by using the s= ame
> >> defcustom with a rule like: remove default mappings when a ch= ar
> >> is mapped to an empty list, e.g.
> >>
> >> - adding more mappings for =E2=80=98`=E2=80=99:
> >>=C2=A0 =C2=A0(defcustom char-fold-ad-hoc '((?` "=E2= =9D=9B" "=E2=80=98" "=E2=80=9B" "=F3=A0=80=A2= " "=E2=9D=AE" "=E2=80=B9"))
> >>
> >> - removing default mappings for =E2=80=98`=E2=80=99:
> >>=C2=A0 =C2=A0(defcustom char-fold-ad-hoc '((?`))
> >
> > Yes, I would think that would work (already).=C2=A0 But I could b= e wrong.
> >
> > Thanks for taking a look at this.
>
> After long-planned terminology improvements, I'd wait for sync bet= ween
> branches to avoid merge conflicts, and then I'll submit a patch ta= king
> into account all opinions about the default value for users who will > enable this feature in the next release.

Sounds good. Thx.
--001a114304565408e705331510f0-- From unknown Sat Aug 09 09:35:53 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22147: Obsolete search-forward-lax-whitespace Resent-From: Juri Linkov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 18 May 2016 19:40:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22147 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Artur Malabarba Cc: 22147@debbugs.gnu.org, Drew Adams Received: via spool by 22147-submit@debbugs.gnu.org id=B22147.14636003921603 (code B ref 22147); Wed, 18 May 2016 19:40:01 +0000 Received: (at 22147) by debbugs.gnu.org; 18 May 2016 19:39:52 +0000 Received: from localhost ([127.0.0.1]:57293 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b37Jw-0000Pn-Jt for submit@debbugs.gnu.org; Wed, 18 May 2016 15:39:52 -0400 Received: from sub3.mail.dreamhost.com ([69.163.253.7]:42607 helo=homiemail-a11.g.dreamhost.com) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b37Jv-0000Pf-1S for 22147@debbugs.gnu.org; Wed, 18 May 2016 15:39:51 -0400 Received: from homiemail-a11.g.dreamhost.com (localhost [127.0.0.1]) by homiemail-a11.g.dreamhost.com (Postfix) with ESMTP id B66BE6E07E; Wed, 18 May 2016 12:39:47 -0700 (PDT) Received: from localhost.linkov.net (85.253.59.205.cable.starman.ee [85.253.59.205]) (Authenticated sender: jurta@jurta.org) by homiemail-a11.g.dreamhost.com (Postfix) with ESMTPA id A7F8A6E079; Wed, 18 May 2016 12:39:46 -0700 (PDT) From: Juri Linkov Organization: LINKOV.NET References: <87wpsk7dcs.fsf@mail.linkov.net> <87d1ubz3w9.fsf@mail.linkov.net> <87r3ipoofk.fsf@mail.linkov.net> <87zixcblno.fsf@mail.linkov.net> <874mfjchp1.fsf@mail.linkov.net> <87r3d4z7uf.fsf@mail.linkov.net> <8ec0f5d4-a500-42c1-bab8-eaba00f0915c@default> <87shxjjb0h.fsf@mail.linkov.net> <8e655300-1a72-4df6-87cf-91fd006cb3d7@default> <8737pgwgiu.fsf@mail.linkov.net> Date: Wed, 18 May 2016 22:34:05 +0300 In-Reply-To: (Artur Malabarba's message of "Wed, 18 May 2016 03:00:35 +0000") Message-ID: <87mvnngnyq.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.0 (/) > I'm of the opinion that we should avoid over thinking this feature for = the > first release. And I'm also of the opinion that complicated custom-vars > (like alists of alists) are less helpful than simple custom vars. So I'= d > strongly prefer if we don't turn this variable into something more > complicated. I agree that we are better off starting with simpler customization, and then gradually adding more layers later when needed. I wonder why you removed defvar mappings from your initial patches with =E2=80=98isearch-groups-alist=E2=80=99 and =E2=80=98isearch--charact= er-fold-extras=E2=80=99 (a similar variable is also presented in Drew's =E2=80=98char-fold-ad-hoc= =E2=80=99). Now I tried to reintroduce these lists with different names: =E2=80=98char-fold-include-alist=E2=80=99 with a list to add to default m= appings and =E2=80=98char-fold-exclude-alist=E2=80=99 with a list to remove from defa= ult mappings taking into account all opinions expressed on emacs-devel for the default values: diff --git a/lisp/char-fold.el b/lisp/char-fold.el index 68bea29..68d1eb0 100644 --- a/lisp/char-fold.el +++ b/lisp/char-fold.el @@ -22,10 +22,68 @@ =20 ;;; Code: =20 -(eval-and-compile (put 'char-fold-table 'char-table-extra-slots 1)) +(put 'char-fold-table 'char-table-extra-slots 1) =0C -(defconst char-fold-table - (eval-when-compile +(defcustom char-fold-include-alist + (append + '((?\" "=EF=BC=82" "=E2=80=9C" "=E2=80=9D" "=E2=80=9D" "=E2=80=9E" "=E2= =B9=82" "=E3=80=9E" "=E2=80=9F" "=E2=80=9F" "=E2=9D=9E" "=E2=9D=9D" "=E2=9D= =A0" "=E2=80=9C" "=E2=80=9E" "=E3=80=9D" "=E3=80=9F" "=F0=9F=99=B7" "=F0=9F= =99=B6" "=F0=9F=99=B8" "=C2=AB" "=C2=BB") + (?' "=E2=9D=9F" "=E2=9D=9B" "=E2=9D=9C" "=E2=80=98" "=E2=80=99" "=E2= =80=9A" "=E2=80=9B" "=E2=80=9A" "=F3=A0=80=A2" "=E2=9D=AE" "=E2=9D=AF" "=E2= =80=B9" "=E2=80=BA") + (?` "=E2=9D=9B" "=E2=80=98" "=E2=80=9B" "=F3=A0=80=A2" "=E2=9D=AE" = "=E2=80=B9") + (?=E2=86=92 "->") (?=E2=87=92 "=3D>") + (?1 "=E2=92=88") (?2 "=E2=92=89") (?3 "=E2=92=8A") (?4 "=E2=92=8B")= (?5 "=E2=92=8C") (?6 "=E2=92=8D") (?7 "=E2=92=8E") (?8 "=E2=92=8F") (?9 = "=E2=92=90") (?0 "=F0=9F=84=80") + ) + (unless (string-match-p "^\\(?:da\\|n[obn]\\)" (getenv "LANG")) + '((?o "=C3=B8") + (?O "=C3=98"))) + (unless (string-match-p "^pl" (getenv "LANG")) + '((?l "=C5=82") + (?L "=C5=81"))) + (unless (string-match-p "^de" (getenv "LANG")) + '((?=C3=9F "ss"))) + ) + "Ad hoc character foldings. +Each entry is a list of a character and the strings that fold into it." + :set (lambda (symbol value) + (custom-set-default symbol value) + (with-no-warnings + (setq char-fold-table (make-char-fold-table)))) + :initialize 'custom-initialize-default + :type '(repeat (cons + (character :tag "Fold to character") + (repeat (string :tag "Fold from string")))) + :version "25.1" + :group 'isearch) + +(defcustom char-fold-exclude-alist + (append + (when (string-match-p "^es" (getenv "LANG")) + '((?n "=C3=B1") + (?N "=C3=91"))) + (when (string-match-p "^\\(?:sv\\|fi\\|et\\)" (getenv "LANG")) + '((?a "=C3=A4") + (?A "=C3=84") + (?o "=C3=B6") + (?O "=C3=96"))) + (when (string-match-p "^\\(?:sv\\|da\\|n[obn]\\)" (getenv "LANG")) + '((?a "=C3=A5") + (?A "=C3=85"))) + (when (string-match-p "^ru" (getenv "LANG")) + '((?=D0=B8 "=D0=B9") + (?=D0=98 "=D0=99")))) + "Character foldings to remove from default mappings. +Each entry is a list of a character and the strings that unfold from it.= " + :set (lambda (symbol value) + (custom-set-default symbol value) + (with-no-warnings + (setq char-fold-table (make-char-fold-table)))) + :initialize 'custom-initialize-default + :type '(repeat (cons + (character :tag "Unfold to character") + (repeat (string :tag "Unfold from string")))) + :version "25.1" + :group 'isearch) + +(defun make-char-fold-table () (let ((equiv (make-char-table 'char-fold-table)) (equiv-multi (make-char-table 'char-fold-table)) (table (unicode-property-table-internal 'decomposition))) @@ -58,9 +116,11 @@ char-fold-table ;; If there's no formatting tag, ensure that char matches ;; its decomp exactly. This is because we want '=C3=A4' = to ;; match 'a=CC=88', but we don't want '=C2=B9' to match '= 1'. + (unless (and (assq char char-fold-exclude-alist) + (member (apply #'string decomp) (assq char cha= r-fold-exclude-alist))) (aset equiv char (cons (apply #'string decomp) - (aref equiv char)))) + (aref equiv char))))) =20 ;; Allow the entire decomp to match char. If decomp has ;; multiple characters, this is done by adding an entry @@ -74,9 +134,11 @@ char-fold-table (cons (cons (apply #'string (cdr decomp)= ) (regexp-quote (string char))= ) (aref equiv-multi (car decomp)))) + (unless (and (assq (car decomp) char-fold-exclude-= alist) + (member (char-to-string char) (assq (= car decomp) char-fold-exclude-alist))) (aset equiv (car decomp) (cons (char-to-string char) - (aref equiv (car decomp)))))))) + (aref equiv (car decomp))))))))) (funcall make-decomp-match-char decomp char) ;; Do it again, without the non-spacing characters. ;; This allows 'a' to match '=C3=A4'. @@ -98,9 +160,7 @@ char-fold-table table) =20 ;; Add some manual entries. - (dolist (it '((?\" "=EF=BC=82" "=E2=80=9C" "=E2=80=9D" "=E2=80=9D"= "=E2=80=9E" "=E2=B9=82" "=E3=80=9E" "=E2=80=9F" "=E2=80=9F" "=E2=9D=9E" = "=E2=9D=9D" "=E2=9D=A0" "=E2=80=9C" "=E2=80=9E" "=E3=80=9D" "=E3=80=9F" "= =F0=9F=99=B7" "=F0=9F=99=B6" "=F0=9F=99=B8" "=C2=AB" "=C2=BB") - (?' "=E2=9D=9F" "=E2=9D=9B" "=E2=9D=9C" "=E2=80=98" = "=E2=80=99" "=E2=80=9A" "=E2=80=9B" "=E2=80=9A" "=F3=A0=80=A2" "=E2=9D=AE= " "=E2=9D=AF" "=E2=80=B9" "=E2=80=BA") - (?` "=E2=9D=9B" "=E2=80=98" "=E2=80=9B" "=F3=A0=80=A2= " "=E2=9D=AE" "=E2=80=B9"))) + (dolist (it char-fold-include-alist) (let ((idx (car it)) (chars (cdr it))) (aset equiv idx (append chars (aref equiv idx))))) @@ -114,6 +174,9 @@ char-fold-table (aset equiv char re)))) equiv) equiv)) + +(defvar char-fold-table + (make-char-fold-table) "Used for folding characters of the same group during search. This is a char-table with the `char-fold-table' subtype. =20 From unknown Sat Aug 09 09:35:53 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22147: Obsolete search-forward-lax-whitespace Resent-From: Artur Malabarba Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 18 May 2016 20:41:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22147 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Juri Linkov Cc: 22147@debbugs.gnu.org, Drew Adams Received: via spool by 22147-submit@debbugs.gnu.org id=B22147.146360404020291 (code B ref 22147); Wed, 18 May 2016 20:41:01 +0000 Received: (at 22147) by debbugs.gnu.org; 18 May 2016 20:40:40 +0000 Received: from localhost ([127.0.0.1]:57344 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b38Gm-0005HD-G4 for submit@debbugs.gnu.org; Wed, 18 May 2016 16:40:40 -0400 Received: from mail-qg0-f47.google.com ([209.85.192.47]:34751) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b38Gk-0005Gy-Kl for 22147@debbugs.gnu.org; Wed, 18 May 2016 16:40:39 -0400 Received: by mail-qg0-f47.google.com with SMTP id 90so32850958qgz.1 for <22147@debbugs.gnu.org>; Wed, 18 May 2016 13:40:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version:content-transfer-encoding; bh=du/m6RZiQgQ9fdyZXaHWowDc91NR7OTke/tvVDM7hGw=; b=FS+VXhHwXDqlb5p3z+Jvm02FjGUnaxQykNSF+I7gCVM0QOWXpBijJYF1i1Qb/rgvGB wfhyLKzT4jKpk0/2yjZIwLcOmcjX6G3CI1QIzJEy30L3wAqdwMLSSdAQR/ODd06du8gR BHqQXCrTmLBWi7PpzSD0pVCZ978DNWmoU33tnBlZHb2PZaJQGQTGawBxLH41gGVWXnma 1DXhb0GfrCc00eXO2DML4Zzc19s1RHW7awLWtl4XwQEZ4strVmljIBAHbxzW01rnGxuG uKbZtkhqlBvmgb78MoICNFSX41yDIdE/dyU3XWknKsht5KNoU1wNALrBk2scx4muTuwp oP/A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:sender:from:to:cc:subject:references:date :in-reply-to:message-id:user-agent:mime-version :content-transfer-encoding; bh=du/m6RZiQgQ9fdyZXaHWowDc91NR7OTke/tvVDM7hGw=; b=fbZJDwjGMz0l2bHa4BHYuapfUqFtmeS7ZRsi1+oV1uuU9iXtMirEhYHU2dwZMl6AJl 25VzUEl0iXZtFOr2Z9SraWaEp1f1HskUH76YbJT4l+ULaWPw2o2QSAeJJuoOZ8mYfeID hBk1+JgfTzmljTG6Y49ZKwH/UOS5hFDavasQzcACAyd2qyLHQJV1yoGxHCNO+C7fM32K oDlXBcW+SSAIsX7DmNCOWsvXUBXrKNqyTkc4lmWFQxcNQf+5qCBGn8Y81tVK4d2V0pL6 U4dDaq9tStvfz0FyYwDjWNF0VcdH8p9IvdqN2Nh5wWni3sVopO2ZN7Hey8WMkPVTLULO yJ2w== X-Gm-Message-State: AOPr4FVBOkqhubreOGb6a7m43rxojlgkd51ArhiSbFikAy28ZHXWIuahmEW8/iUNynZ0pQ== X-Received: by 10.140.19.5 with SMTP id 5mr9753572qgg.55.1463604033197; Wed, 18 May 2016 13:40:33 -0700 (PDT) Received: from Gandalf-Linux.gmail.com ([179.184.224.5]) by smtp.gmail.com with ESMTPSA id 95sm5068033qgj.3.2016.05.18.13.40.30 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 18 May 2016 13:40:32 -0700 (PDT) From: Artur Malabarba References: <87wpsk7dcs.fsf@mail.linkov.net> <87d1ubz3w9.fsf@mail.linkov.net> <87r3ipoofk.fsf@mail.linkov.net> <87zixcblno.fsf@mail.linkov.net> <874mfjchp1.fsf@mail.linkov.net> <87r3d4z7uf.fsf@mail.linkov.net> <8ec0f5d4-a500-42c1-bab8-eaba00f0915c@default> <87shxjjb0h.fsf@mail.linkov.net> <8e655300-1a72-4df6-87cf-91fd006cb3d7@default> <8737pgwgiu.fsf@mail.linkov.net> <87mvnngnyq.fsf@mail.linkov.net> Date: Wed, 18 May 2016 17:40:22 -0300 In-Reply-To: <87mvnngnyq.fsf@mail.linkov.net> (Juri Linkov's message of "Wed, 18 May 2016 22:34:05 +0300") Message-ID: <87bn436qx5.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) Juri Linkov writes: > Now I tried to reintroduce these lists with different names: > =E2=80=98char-fold-include-alist=E2=80=99 with a list to add to default m= appings and > =E2=80=98char-fold-exclude-alist=E2=80=99 with a list to remove from defa= ult mappings > taking into account all opinions expressed on emacs-devel for the > default values: Sounds good! Some minor comments: > +(defun make-char-fold-table () Call this `char-fold--make-table' > + (unless (and (assq char char-fold-exclude-alist) > + (member (apply #'string decomp) (assq char cha= r-fold-exclude-alist))) This call to `member' will run dozens of times for each entry in `char-fold-exclude-alist'. Maybe we should optimize those two repeated forms: `(apply #'string decomp)' and `(assq char char-fold-exclude-alist)'. > - (dolist (it '((?\" "=EF=BC=82" "=E2=80=9C" "=E2=80=9D" "=E2=80=9D"= "=E2=80=9E" "=E2=B9=82" "=E3=80=9E" "=E2=80=9F" "=E2=80=9F" "=E2=9D=9E" "= =E2=9D=9D" "=E2=9D=A0" "=E2=80=9C" "=E2=80=9E" "=E3=80=9D" "=E3=80=9F" "=F0= =9F=99=B7" "=F0=9F=99=B6" "=F0=9F=99=B8" "=C2=AB" "=C2=BB") > - (?' "=E2=9D=9F" "=E2=9D=9B" "=E2=9D=9C" "=E2=80=98" = "=E2=80=99" "=E2=80=9A" "=E2=80=9B" "=E2=80=9A" "=F3=A0=80=A2" "=E2=9D=AE" = "=E2=9D=AF" "=E2=80=B9" "=E2=80=BA") > - (?` "=E2=9D=9B" "=E2=80=98" "=E2=80=9B" "=F3=A0=80= =A2" "=E2=9D=AE" "=E2=80=B9"))) > + (dolist (it char-fold-include-alist) > (let ((idx (car it)) The indentation looks wrong here. From debbugs-submit-bounces@debbugs.gnu.org Sun May 22 12:35:35 2016 Received: (at control) by debbugs.gnu.org; 22 May 2016 16:35:35 +0000 Received: from localhost ([127.0.0.1]:32980 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b4WLn-00007y-Mu for submit@debbugs.gnu.org; Sun, 22 May 2016 12:35:35 -0400 Received: from eggs.gnu.org ([208.118.235.92]:36944) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b4WLm-00007l-46 for control@debbugs.gnu.org; Sun, 22 May 2016 12:35:34 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1b4WLc-00083X-6U for control@debbugs.gnu.org; Sun, 22 May 2016 12:35:29 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-3.3 required=5.0 tests=BAYES_00,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:51257) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1b4WLc-000824-25 for control@debbugs.gnu.org; Sun, 22 May 2016 12:35:24 -0400 Received: from 84.94.185.246.cable.012.net.il ([84.94.185.246]:2342 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from ) id 1b4WLa-0003Ob-61 for control@debbugs.gnu.org; Sun, 22 May 2016 12:35:22 -0400 Date: Sun, 22 May 2016 19:35:19 +0300 Message-Id: <8337pa6ofs.fsf@gnu.org> From: Eli Zaretskii To: control@debbugs.gnu.org Subject: Unblock X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -6.4 (------) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: Eli Zaretskii Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -6.4 (------) unblock 19759 by 17976 unblock 19759 by 19548 unblock 19759 by 21182 unblock 19759 by 21650 unblock 19759 by 21871 unblock 19759 by 21874 unblock 19759 by 22107 unblock 19759 by 22147 unblock 19759 by 22338 thanks From unknown Sat Aug 09 09:35:53 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22147: Obsolete search-forward-lax-whitespace Resent-From: Juri Linkov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 30 May 2016 21:22:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22147 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Artur Malabarba Cc: 22147@debbugs.gnu.org, Drew Adams Received: via spool by 22147-submit@debbugs.gnu.org id=B22147.146464330531511 (code B ref 22147); Mon, 30 May 2016 21:22:02 +0000 Received: (at 22147) by debbugs.gnu.org; 30 May 2016 21:21:45 +0000 Received: from localhost ([127.0.0.1]:47809 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b7Ud6-0008CB-Ue for submit@debbugs.gnu.org; Mon, 30 May 2016 17:21:45 -0400 Received: from sub3.mail.dreamhost.com ([69.163.253.7]:37584 helo=homiemail-a17.g.dreamhost.com) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b7Ud5-0008C4-R8 for 22147@debbugs.gnu.org; Mon, 30 May 2016 17:21:44 -0400 Received: from homiemail-a17.g.dreamhost.com (localhost [127.0.0.1]) by homiemail-a17.g.dreamhost.com (Postfix) with ESMTP id 3B74D2B206E; Mon, 30 May 2016 14:21:42 -0700 (PDT) Received: from localhost.linkov.net (85.253.58.75.cable.starman.ee [85.253.58.75]) (Authenticated sender: jurta@jurta.org) by homiemail-a17.g.dreamhost.com (Postfix) with ESMTPA id 431942B206D; Mon, 30 May 2016 14:21:41 -0700 (PDT) From: Juri Linkov Organization: LINKOV.NET References: <87wpsk7dcs.fsf@mail.linkov.net> <87d1ubz3w9.fsf@mail.linkov.net> <87r3ipoofk.fsf@mail.linkov.net> <87zixcblno.fsf@mail.linkov.net> <874mfjchp1.fsf@mail.linkov.net> <87r3d4z7uf.fsf@mail.linkov.net> <8ec0f5d4-a500-42c1-bab8-eaba00f0915c@default> <87shxjjb0h.fsf@mail.linkov.net> <8e655300-1a72-4df6-87cf-91fd006cb3d7@default> <8737pgwgiu.fsf@mail.linkov.net> <87mvnngnyq.fsf@mail.linkov.net> <87bn436qx5.fsf@gmail.com> Date: Mon, 30 May 2016 23:57:12 +0300 In-Reply-To: <87bn436qx5.fsf@gmail.com> (Artur Malabarba's message of "Wed, 18 May 2016 17:40:22 -0300") Message-ID: <87fusz2riv.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.0 (/) >> Now I tried to reintroduce these lists with different names: >> =E2=80=98char-fold-include-alist=E2=80=99 with a list to add to defaul= t mappings and >> =E2=80=98char-fold-exclude-alist=E2=80=99 with a list to remove from d= efault mappings >> taking into account all opinions expressed on emacs-devel for the >> default values: > > Sounds good! Some minor comments: > >> +(defun make-char-fold-table () > > Call this `char-fold--make-table' > >> + (unless (and (assq char char-fold-exclude-alist) >> + (member (apply #'string decomp) (assq char = char-fold-exclude-alist))) > > This call to `member' will run dozens of times for each entry in > `char-fold-exclude-alist'. Maybe we should optimize those two repeated > forms: `(apply #'string decomp)' and `(assq char char-fold-exclude-alis= t)'. This definitely needs to be optimized, but now it's clear there is no hur= ry since this is not going to be released in 25. Moreover, I get occasional= crashes in char-tables with the latest patch, so it was a good thing not to push it to the release branch at the last minute. From unknown Sat Aug 09 09:35:53 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22147: Obsolete search-forward-lax-whitespace Resent-From: Artur Malabarba Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 01 Jun 2016 15:04:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22147 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Juri Linkov Cc: 22147@debbugs.gnu.org, Drew Adams Received: via spool by 22147-submit@debbugs.gnu.org id=B22147.146479342230299 (code B ref 22147); Wed, 01 Jun 2016 15:04:02 +0000 Received: (at 22147) by debbugs.gnu.org; 1 Jun 2016 15:03:42 +0000 Received: from localhost ([127.0.0.1]:49993 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b87gM-0007sd-9r for submit@debbugs.gnu.org; Wed, 01 Jun 2016 11:03:42 -0400 Received: from mail-qg0-f45.google.com ([209.85.192.45]:35623) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b87gK-0007sR-3v for 22147@debbugs.gnu.org; Wed, 01 Jun 2016 11:03:40 -0400 Received: by mail-qg0-f45.google.com with SMTP id e93so108888854qgf.2 for <22147@debbugs.gnu.org>; Wed, 01 Jun 2016 08:03:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=igD6zYJm2jBc3vln8vsdJokenrihI+1My3FcHfc/klk=; b=MEg+RiNci9QFgW+EvGfpfsmYJ+54JxpX7WzN0tYadR2y3ukXpVpb0e5gwQPpglqvS3 rlvvdkpNp7cARg4IvlXoJsx2F8NOU8V5lwCGi3Nvb+e/A5UU/1dFRs/RH3KW91PyMNFt mKxDYrlfBJlUA6NjME+LeQ01zjlJ460YOvJnavNejlbgYsDbwHcFQVF90ZKUd04wMdP2 yALoYSTjQ3dSIekt2IBEsPN4tgJtp6QChzw5ZEcgJa9aJx5cGNmoEEh4uMnQWP0FU9XK HZ63OYL1iaiCJO2oXU80bBjLJgtJ1eCWgd2tGKpPPn3P0blHWu5FdOpClm13Mn/Ib9Cz AyRg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:sender:from:to:cc:subject:references:date :in-reply-to:message-id:user-agent:mime-version; bh=igD6zYJm2jBc3vln8vsdJokenrihI+1My3FcHfc/klk=; b=Wx674US616251vWDL2QzOS2HZQMieWbe9H/ZG+u2bwsopATfpt43ICx8JebE4iaubw u13leh34FZjzHQD5FM8tmbf8yAEa6pTCDV1sthFZ9s3em/eiPtP5Q2jFX8tM358d330C Pwief6pe3AfgSXVHN1F3jrENYqKzir8nNwPGdPYN5CBYnBeyX15ZUVxzLuEIkVEv12n4 rkQ2wS6r1K4RHzdz2L/xmTt+yxMNYfPZCLFXa1r+AnwW76OZId14st2KZPxML3iqdaZT amuZN1qKb1f0ygvGzki7FUF6aAGeMo1qMB6nCBaBjzbN9OrNXVNPZXaSSOAswg8hh8IX DS2A== X-Gm-Message-State: ALyK8tKeyY9nv48o9bWQA+0HiM0aa0UgAecik79WJhOmTS69Sv3u3kLXuqUPU3+qvaamAQ== X-Received: by 10.140.178.140 with SMTP id y134mr37994476qhy.44.1464793414700; Wed, 01 Jun 2016 08:03:34 -0700 (PDT) Received: from Gandalf-Linux.gmail.com ([179.184.224.5]) by smtp.gmail.com with ESMTPSA id w56sm9890491qtw.29.2016.06.01.08.03.31 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 01 Jun 2016 08:03:33 -0700 (PDT) From: Artur Malabarba References: <87wpsk7dcs.fsf@mail.linkov.net> <87d1ubz3w9.fsf@mail.linkov.net> <87r3ipoofk.fsf@mail.linkov.net> <87zixcblno.fsf@mail.linkov.net> <874mfjchp1.fsf@mail.linkov.net> <87r3d4z7uf.fsf@mail.linkov.net> <8ec0f5d4-a500-42c1-bab8-eaba00f0915c@default> <87shxjjb0h.fsf@mail.linkov.net> <8e655300-1a72-4df6-87cf-91fd006cb3d7@default> <8737pgwgiu.fsf@mail.linkov.net> <87mvnngnyq.fsf@mail.linkov.net> <87bn436qx5.fsf@gmail.com> <87fusz2riv.fsf@mail.linkov.net> Date: Wed, 01 Jun 2016 12:03:27 -0300 In-Reply-To: <87fusz2riv.fsf@mail.linkov.net> (Juri Linkov's message of "Mon, 30 May 2016 23:57:12 +0300") Message-ID: <87d1o1eytc.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.94 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) Juri Linkov writes: > This definitely needs to be optimized, but now it's clear there is no hurry > since this is not going to be released in 25. Moreover, I get occasional crashes > in char-tables with the latest patch, so it was a good thing not to push > it to the release branch at the last minute. Indeed. It wasn't a must-have anyway. At least now we have more time to play around with this. From unknown Sat Aug 09 09:35:53 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22147: Obsolete search-forward-lax-whitespace Resent-From: Lars Ingebrigtsen Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 05 Sep 2020 14:55:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22147 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Artur Malabarba Cc: 22147@debbugs.gnu.org, Drew Adams , Juri Linkov Received: via spool by 22147-submit@debbugs.gnu.org id=B22147.15993177005741 (code B ref 22147); Sat, 05 Sep 2020 14:55:02 +0000 Received: (at 22147) by debbugs.gnu.org; 5 Sep 2020 14:55:00 +0000 Received: from localhost ([127.0.0.1]:43801 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kEZal-0001UX-PA for submit@debbugs.gnu.org; Sat, 05 Sep 2020 10:55:00 -0400 Received: from quimby.gnus.org ([95.216.78.240]:34688) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kEZak-0001UK-Hk for 22147@debbugs.gnu.org; Sat, 05 Sep 2020 10:54:58 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Content-Type:MIME-Version:Message-ID:In-Reply-To:Date: References:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=EGcgcWusjimIbYYJ4124mhVsGe2xMladGqotaevujwA=; b=KwdqNiuQ/rn9dGVoT7pJ917lBb zh8KyLOahY06r8P8UNU0tdbENeThlYIqCW9MOAvYb9KBLMceNrU8pAgst0QM8XbOvZr9gNbVSasUF qQJH7bH3uI2KAKhN8g3vBvGM5XScwDFKv0ce8XE1q+2CdVku8b/CI6T+ishGCtnjvQ8U=; Received: from cm-84.212.202.86.getinternet.no ([84.212.202.86] helo=xo) by quimby with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kEZab-0004sS-EQ; Sat, 05 Sep 2020 16:54:52 +0200 From: Lars Ingebrigtsen References: <87wpsk7dcs.fsf@mail.linkov.net> <87d1ubz3w9.fsf@mail.linkov.net> <87r3ipoofk.fsf@mail.linkov.net> <87zixcblno.fsf@mail.linkov.net> <874mfjchp1.fsf@mail.linkov.net> <87r3d4z7uf.fsf@mail.linkov.net> <8ec0f5d4-a500-42c1-bab8-eaba00f0915c@default> <87shxjjb0h.fsf@mail.linkov.net> <8e655300-1a72-4df6-87cf-91fd006cb3d7@default> <8737pgwgiu.fsf@mail.linkov.net> <87mvnngnyq.fsf@mail.linkov.net> <87bn436qx5.fsf@gmail.com> <87fusz2riv.fsf@mail.linkov.net> <87d1o1eytc.fsf@gmail.com> X-Now-Playing: Y Pants's _Beat It Down_: "Love's A Disease" Date: Sat, 05 Sep 2020 16:54:48 +0200 In-Reply-To: <87d1o1eytc.fsf@gmail.com> (Artur Malabarba's message of "Wed, 01 Jun 2016 12:03:27 -0300") Message-ID: <87v9gs2s07.fsf@gnus.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see @@CONTACT_ADDRESS@@ for details. Content preview: Artur Malabarba writes: > Juri Linkov writes: > >> This definitely needs to be optimized, but now it's clear there is no hurry >> since this is not going to be released in 25. Moreover, I get >> occasional [...] Content analysis details: (-2.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Artur Malabarba writes: > Juri Linkov writes: > >> This definitely needs to be optimized, but now it's clear there is no hurry >> since this is not going to be released in 25. Moreover, I get >> occasional crashes >> in char-tables with the latest patch, so it was a good thing not to push >> it to the release branch at the last minute. > > Indeed. It wasn't a must-have anyway. At least now we have more time to > play around with this. I've just skimmed this bug report, but it seems like a different version of the proposed patch was applied three years later: commit 376f5df3cca0dbf186823e5b329d76b52019473d Author: Juri Linkov AuthorDate: Tue Jul 23 23:27:28 2019 +0300 Customizable char-fold with char-fold-symmetric, char-fold-include (bug#35689) search-forward-lax-whitespace still isn't obsolete, but I'm unsure whether there's anything more to do in this bug report? -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no From unknown Sat Aug 09 09:35:53 2025 X-Loop: help-debbugs@gnu.org Subject: bug#22147: Obsolete search-forward-lax-whitespace Resent-From: Juri Linkov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 07 Sep 2020 18:38:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22147 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Lars Ingebrigtsen Cc: 22147@debbugs.gnu.org Received: via spool by 22147-submit@debbugs.gnu.org id=B22147.15995038278189 (code B ref 22147); Mon, 07 Sep 2020 18:38:02 +0000 Received: (at 22147) by debbugs.gnu.org; 7 Sep 2020 18:37:07 +0000 Received: from localhost ([127.0.0.1]:50814 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kFM0p-000280-5K for submit@debbugs.gnu.org; Mon, 07 Sep 2020 14:37:07 -0400 Received: from relay8-d.mail.gandi.net ([217.70.183.201]:47245) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kFM0m-00027D-Fg; Mon, 07 Sep 2020 14:37:05 -0400 X-Originating-IP: 91.129.97.241 Received: from mail.gandi.net (m91-129-97-241.cust.tele2.ee [91.129.97.241]) (Authenticated sender: juri@linkov.net) by relay8-d.mail.gandi.net (Postfix) with ESMTPSA id 8D46F1BF204; Mon, 7 Sep 2020 18:36:56 +0000 (UTC) From: Juri Linkov Organization: LINKOV.NET References: <87wpsk7dcs.fsf@mail.linkov.net> <87d1ubz3w9.fsf@mail.linkov.net> <87r3ipoofk.fsf@mail.linkov.net> <87zixcblno.fsf@mail.linkov.net> <874mfjchp1.fsf@mail.linkov.net> <87r3d4z7uf.fsf@mail.linkov.net> <8ec0f5d4-a500-42c1-bab8-eaba00f0915c@default> <87shxjjb0h.fsf@mail.linkov.net> <8e655300-1a72-4df6-87cf-91fd006cb3d7@default> <8737pgwgiu.fsf@mail.linkov.net> <87mvnngnyq.fsf@mail.linkov.net> <87bn436qx5.fsf@gmail.com> <87fusz2riv.fsf@mail.linkov.net> <87d1o1eytc.fsf@gmail.com> <87v9gs2s07.fsf@gnus.org> Date: Mon, 07 Sep 2020 21:34:56 +0300 In-Reply-To: <87v9gs2s07.fsf@gnus.org> (Lars Ingebrigtsen's message of "Sat, 05 Sep 2020 16:54:48 +0200") Message-ID: <87k0x5bfmz.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) tags 22147 fixed close 22147 28.0.50 quit > I've just skimmed this bug report, but it seems like a different version > of the proposed patch was applied three years later: > > commit 376f5df3cca0dbf186823e5b329d76b52019473d > Author: Juri Linkov > AuthorDate: Tue Jul 23 23:27:28 2019 +0300 > > Customizable char-fold with char-fold-symmetric, char-fold-include (bug#35689) > > search-forward-lax-whitespace still isn't obsolete, but I'm unsure > whether there's anything more to do in this bug report? Let's see if the requested feature works now: 0. emacs -Q 1. eval (setq search-whitespace-regexp "\\(?:\\s-\\|\n\\)+") (require 'char-fold) (setq-default search-default-mode 'char-fold-to-regexp) (setq char-fold-symmetric t) 2. then ‘C-s 1 C-q C-j 2 C-s’ finds both occurrences: 1 2 1 2 Oh, wait! This works because I have an uninstalled patch from bug#38539. Now pushed to master, and closed both reports.