From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED.blaine.gmane.org!not-for-mail From: Stefan Kangas Newsgroups: gmane.emacs.bugs Subject: bug#36009: [PATCH] Use lexical-binding in textmodes/page.el and add tests Date: Fri, 14 Jun 2019 00:02:21 +0200 Message-ID: References: <5cf3a401.1c69fb81.d8546.e65d@mx.google.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="000000000000d734de058b3baf5d" Injection-Info: blaine.gmane.org; posting-host="blaine.gmane.org:195.159.176.226"; logging-data="223024"; mail-complaints-to="usenet@blaine.gmane.org" Cc: 36009@debbugs.gnu.org, Paul Eggert To: Simen =?UTF-8?Q?Heggest=C3=B8yl?= Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Fri Jun 14 00:05:45 2019 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([209.51.188.17]) by blaine.gmane.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.89) (envelope-from ) id 1hbXqm-000vfm-Uk for geb-bug-gnu-emacs@m.gmane.org; Fri, 14 Jun 2019 00:05:41 +0200 Original-Received: from localhost ([::1]:46064 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1hbXql-0005nr-Tz for geb-bug-gnu-emacs@m.gmane.org; Thu, 13 Jun 2019 18:05:39 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:36262) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1hbXoV-0005EI-I3 for bug-gnu-emacs@gnu.org; Thu, 13 Jun 2019 18:03:21 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hbXoE-0003Mb-Mv for bug-gnu-emacs@gnu.org; Thu, 13 Jun 2019 18:03:18 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:50956) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1hbXoE-0003MG-Eq for bug-gnu-emacs@gnu.org; Thu, 13 Jun 2019 18:03:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1hbXoE-0000xD-95 for bug-gnu-emacs@gnu.org; Thu, 13 Jun 2019 18:03:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Stefan Kangas Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 13 Jun 2019 22:03:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 36009 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch Original-Received: via spool by 36009-submit@debbugs.gnu.org id=B36009.15604633613634 (code B ref 36009); Thu, 13 Jun 2019 22:03:02 +0000 Original-Received: (at 36009) by debbugs.gnu.org; 13 Jun 2019 22:02:41 +0000 Original-Received: from localhost ([127.0.0.1]:36267 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hbXns-0000wX-N7 for submit@debbugs.gnu.org; Thu, 13 Jun 2019 18:02:40 -0400 Original-Received: from mail-wr1-f44.google.com ([209.85.221.44]:39665) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hbXnq-0000wH-Tv for 36009@debbugs.gnu.org; Thu, 13 Jun 2019 18:02:39 -0400 Original-Received: by mail-wr1-f44.google.com with SMTP id x4so368130wrt.6 for <36009@debbugs.gnu.org>; Thu, 13 Jun 2019 15:02:38 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=qGls2B5/640TVlydya/gw3fYkuOMQNP1rix20WVnRQg=; b=lX8wrNaXzpgMqqMn3uxYxbBM434DuV3MY9Sr/aXTgWorU0tdJ6AG3oq5/T/uaXI253 jeVVCn5uZy/aWrss5/aPMg3WZODSyhDTTqRPAgcEIZ93ezbw3D2MiGDMySdsCNf/pYLi KzDvXHujbjxoXdZA+8YbSacKo1CvT03n22I0GwRzbcQbzTxpUKPMSJO287w+XxPueaYk u1RdHdE5W8iGCiQasivUTIlfIXOP/K5cYQv3W5DxK/SsYLO5G0ijANcRPyllEeErECj/ lzMiI/B7DxZyWsP2LEb4TvS3UcrGh1bac3Ib1zCFs92A3maY0JJhJYat4JIKd7iYMRz8 XPaw== X-Gm-Message-State: APjAAAX1dvAEdGMJxAMnXvNoFIsju3meN/1JMDeXqwN6E6qX84qlUHEY kIQ77QySH2tgH+DBm8waxn0smlGii0zTBDnzbCE= X-Google-Smtp-Source: APXvYqwDTeQoqynkVotY5UMDy0paBCVuOY92rzSPBq0VhVEgC4RBnt2gxH2xNA/Tr0t2mDtIgMzbQvUFZlbgtW+yP8w= X-Received: by 2002:a5d:46c7:: with SMTP id g7mr8688341wrs.215.1560463352993; Thu, 13 Jun 2019 15:02:32 -0700 (PDT) In-Reply-To: <5cf3a401.1c69fb81.d8546.e65d@mx.google.com> X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.51.188.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" Xref: news.gmane.org gmane.emacs.bugs:160531 Archived-At: --000000000000d734de058b3baf5d Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Simen Heggest=C3=B8yl writes: > Oh, sorry Stefan, what a coincidence! I chose that file at random > yesterday. I should do a Debbugs search in advance next time. No worries -- this fruit was clearly ripe for the taking. :) > Regarding the tests they look almost identical, except that I left out > tests for `count-lines-page' and `what-page', because I was unsure > whether they would be too dependent on the format of the user messages. > > Maybe it would be good to factor out the meat of `count-lines-page' > and `what-page' into two internal functions returning just the raw > numbers, test those, and turn the interactive functions into > interfaces for them? Thanks for your input. I did an experiment in your suggested direction, but it didn't come out very successful. In particular, I felt like I had to make this simple and straightforward code ugly and convoluted. I could attach the final result of that experiment here, but I don't think it's very helpful. Based on this, I'm instead suggesting the attached simple patch for installation. It depends on the message string, but this should be easy to update in the future if the format changes. Thanks, Stefan Kangas --000000000000d734de058b3baf5d Content-Type: text/x-patch; charset="US-ASCII"; name="0001-Add-tests-for-count-lines-page-and-what-page.patch" Content-Disposition: attachment; filename="0001-Add-tests-for-count-lines-page-and-what-page.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_jwv7h6yq0 RnJvbSBmZjBmYTAwNmNhZTRiNjIyMGE1ZTc2NWUyNWYzZWVmMWY0NmVkZWYwIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBTdGVmYW4gS2FuZ2FzIDxzdGVmYW5rYW5nYXNAZ21haWwuY29t PgpEYXRlOiBUaHUsIDEzIEp1biAyMDE5IDIzOjQ2OjA0ICswMjAwClN1YmplY3Q6IFtQQVRDSF0g QWRkIHRlc3RzIGZvciBjb3VudC1saW5lcy1wYWdlIGFuZCB3aGF0LXBhZ2UKCiogdGVzdC9saXNw L3RleHRtb2Rlcy9wYWdlLXRlc3RzLmVsIChwYWdlLXRlc3RzLWNvdW50LWxpbmVzLXBhZ2UpCihw YWdlLXRlc3RzLXdoYXQtcGFnZSk6IE5ldyB0ZXN0IGNhc2VzLiAoYnVnIzM2MDA5KQotLS0KIHRl c3QvbGlzcC90ZXh0bW9kZXMvcGFnZS10ZXN0cy5lbCB8IDE5ICsrKysrKysrKysrKysrKysrKysK IDEgZmlsZSBjaGFuZ2VkLCAxOSBpbnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvdGVzdC9saXNw L3RleHRtb2Rlcy9wYWdlLXRlc3RzLmVsIGIvdGVzdC9saXNwL3RleHRtb2Rlcy9wYWdlLXRlc3Rz LmVsCmluZGV4IDA4MzRkNjU0MzMuLjhkMmEwMzYwMjIgMTAwNjQ0Ci0tLSBhL3Rlc3QvbGlzcC90 ZXh0bW9kZXMvcGFnZS10ZXN0cy5lbAorKysgYi90ZXN0L2xpc3AvdGV4dG1vZGVzL3BhZ2UtdGVz dHMuZWwKQEAgLTgyLDUgKzgyLDI0IEBAIHBhZ2UtdGVzdHMtLXJlZ2lvbi1zdHJpbmcKICAgICAo bmFycm93LXRvLXBhZ2UgLTEpCiAgICAgKHNob3VsZCAoZXF1YWwgKGJ1ZmZlci1zdHJpbmcpICJi YXJcbiIpKSkpCiAKKyhlcnQtZGVmdGVzdCBwYWdlLXRlc3RzLWNvdW50LWxpbmVzLXBhZ2UgKCkK KyAgKHdpdGgtdGVtcC1idWZmZXIKKyAgICAoaW5zZXJ0ICJmb29cbgxcbmJhclxuDFxuYmF6IikK KyAgICAoZ290by1jaGFyIChwb2ludC1taW4pKQorICAgIChzaG91bGQgKGVxdWFsIChjb3VudC1s aW5lcy1wYWdlKSAiUGFnZSBoYXMgMSBsaW5lICgwICsgMSkiKSkKKyAgICAoZ290by1jaGFyIChw b2ludC1tYXgpKQorICAgIChjb3VudC1saW5lcy1wYWdlKQorICAgIChzaG91bGQgKGVxdWFsIChj b3VudC1saW5lcy1wYWdlKSAiUGFnZSBoYXMgMiBsaW5lcyAoMiArIDApIikpKSkKKworKGVydC1k ZWZ0ZXN0IHBhZ2UtdGVzdHMtd2hhdC1wYWdlICgpCisgICh3aXRoLXRlbXAtYnVmZmVyCisgICAg KGluc2VydCAiZm9vXG4MXG5iYXJcbgxcbmJheiIpCisgICAgKGdvdG8tY2hhciAocG9pbnQtbWlu KSkKKyAgICAoc2hvdWxkIChlcXVhbCAod2hhdC1wYWdlKSAiUGFnZSAxLCBsaW5lIDEiKSkKKyAg ICAoZm9yd2FyZC1wYWdlKQorICAgIChzaG91bGQgKGVxdWFsICh3aGF0LXBhZ2UpICJQYWdlIDIs IGxpbmUgMiIpKQorICAgIChmb3J3YXJkLXBhZ2UpCisgICAgKHNob3VsZCAoZXF1YWwgKHdoYXQt cGFnZSkgIlBhZ2UgMywgbGluZSA0IikpKSkKKwogKHByb3ZpZGUgJ3BhZ2UtdGVzdHMpCiA7Ozsg cGFnZS10ZXN0cy5lbCBlbmRzIGhlcmUKLS0gCjIuMTEuMAoK --000000000000d734de058b3baf5d--