From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: martin rudalics Newsgroups: gmane.emacs.bugs Subject: bug#13041: 24.2; diacritic-fold-search Date: Sun, 02 Dec 2012 18:45:38 +0100 Message-ID: <50BB93C2.1050007@gmx.at> References: <20121130182205.C722F14B8D@panix1.panix.com> <87hao69b5r.fsf@mail.jurta.org> <20665.8224.844876.619203@panix5.panix.com> <87hao6zko4.fsf@mail.jurta.org> <83fw3qtboc.fsf@gnu.org> <87hao5jqu3.fsf@mail.jurta.org> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1354470411 16693 80.91.229.3 (2 Dec 2012 17:46:51 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sun, 2 Dec 2012 17:46:51 +0000 (UTC) Cc: perin@panix.com, perin@acm.org, 13041@debbugs.gnu.org To: Juri Linkov Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Sun Dec 02 18:47:02 2012 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1TfDd6-0004X8-8g for geb-bug-gnu-emacs@m.gmane.org; Sun, 02 Dec 2012 18:47:00 +0100 Original-Received: from localhost ([::1]:35306 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TfDcu-00015k-OG for geb-bug-gnu-emacs@m.gmane.org; Sun, 02 Dec 2012 12:46:48 -0500 Original-Received: from eggs.gnu.org ([208.118.235.92]:34178) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TfDcr-00014I-Tf for bug-gnu-emacs@gnu.org; Sun, 02 Dec 2012 12:46:46 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TfDcq-0007vP-81 for bug-gnu-emacs@gnu.org; Sun, 02 Dec 2012 12:46:45 -0500 Original-Received: from debbugs.gnu.org ([140.186.70.43]:40094) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TfDcq-0007vF-57 for bug-gnu-emacs@gnu.org; Sun, 02 Dec 2012 12:46:44 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.72) (envelope-from ) id 1TfDf3-00059c-L8 for bug-gnu-emacs@gnu.org; Sun, 02 Dec 2012 12:49:01 -0500 X-Loop: help-debbugs@gnu.org Resent-From: martin rudalics Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 02 Dec 2012 17:49:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 13041 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 13041-submit@debbugs.gnu.org id=B13041.135447049119744 (code B ref 13041); Sun, 02 Dec 2012 17:49:01 +0000 Original-Received: (at 13041) by debbugs.gnu.org; 2 Dec 2012 17:48:11 +0000 Original-Received: from localhost ([127.0.0.1]:50343 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TfDeE-00058P-Gj for submit@debbugs.gnu.org; Sun, 02 Dec 2012 12:48:10 -0500 Original-Received: from mailout-de.gmx.net ([213.165.64.22]:42854) by debbugs.gnu.org with smtp (Exim 4.72) (envelope-from ) id 1TfDeC-00058H-M9 for 13041@debbugs.gnu.org; Sun, 02 Dec 2012 12:48:09 -0500 Original-Received: (qmail invoked by alias); 02 Dec 2012 17:45:49 -0000 Original-Received: from 62-47-40-197.adsl.highway.telekom.at (EHLO [62.47.40.197]) [62.47.40.197] by mail.gmx.net (mp028) with SMTP; 02 Dec 2012 18:45:49 +0100 X-Authenticated: #14592706 X-Provags-ID: V01U2FsdGVkX19Hv0VH0DNHJ0N4u/1glSjq4TgUnJOFHCaZtoFwbO Tg18I6HL2oXwbJ In-Reply-To: <87hao5jqu3.fsf@mail.jurta.org> X-Y-GMX-Trusted: 0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 140.186.70.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:67787 Archived-At: > But nevertheless the `decomposition' property should be used to find > all decomposable characters. The question is how to use them in the search. Whatever solution you find most suitable here, it would be nice to come up with a similar solution for sorting. I've been playing around with a function like (defun decomposed-string-lessp (string1 string2) "Return t if STRING1 is decomposition-less than STRING2." (let* ((length1 (length string1)) (length2 (length string2)) (min-length (min length1 length2)) (index 0) type1 type2) (catch 'found (while (< index min-length) (setq type1 (car (get-char-code-property (elt string1 index) 'decomposition))) (setq type2 (car (get-char-code-property (elt string2 index) 'decomposition))) (cond ((< type1 type2) (throw 'found t)) ((> type1 type2) (throw 'found nil))) ;; Continue. (setq index (1+ index))) ;; Shorter is less. (< length1 length2)))) but am not sure whether I'm missing something wrt the return value of `get-char-code-property'. martin