From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Gideon Stupp Newsgroups: gmane.emacs.devel Subject: Re: [EXPERIMENTAL PATCH] Extending Isearch-repeat-forward/backward to support a prefix argument following suggesion by Juri Linkov Date: Tue, 31 Jan 2012 13:52:58 +0200 Message-ID: References: <87pqe5x6ju.fsf@mail.jurta.org> <87ty3h2uvp.fsf@mail.jurta.org> <87r4yiav0w.fsf@mail.jurta.org> <87wr88lt1i.fsf@mail.jurta.org> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary=14dae93994a9be00c104b7d19aee X-Trace: dough.gmane.org 1328010794 10845 80.91.229.3 (31 Jan 2012 11:53:14 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Tue, 31 Jan 2012 11:53:14 +0000 (UTC) Cc: emacs-devel@gnu.org To: Juri Linkov Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Jan 31 12:53:13 2012 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([140.186.70.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1RsCGt-00069m-8n for ged-emacs-devel@m.gmane.org; Tue, 31 Jan 2012 12:53:11 +0100 Original-Received: from localhost ([::1]:35236 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RsCGs-0008BD-Pt for ged-emacs-devel@m.gmane.org; Tue, 31 Jan 2012 06:53:10 -0500 Original-Received: from eggs.gnu.org ([140.186.70.92]:56203) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RsCGn-0008At-4o for emacs-devel@gnu.org; Tue, 31 Jan 2012 06:53:08 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1RsCGi-0007Vx-Nt for emacs-devel@gnu.org; Tue, 31 Jan 2012 06:53:05 -0500 Original-Received: from mail-tul01m020-f169.google.com ([209.85.214.169]:40534) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RsCGi-0007Vn-KW for emacs-devel@gnu.org; Tue, 31 Jan 2012 06:53:00 -0500 Original-Received: by obbta7 with SMTP id ta7so6579629obb.0 for ; Tue, 31 Jan 2012 03:52:59 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=t9VN49VXwM/sqNIOW5KaS63uJdjvI4sP9s0THuX6tsQ=; b=bG0sl+hdhHSWcd21zzqMrXmFS1Sm2PCkgqKPHUOtuIjox/NpPMFZqAVpIj18jMbcqr ameMqDDZKLQL5rgSPfsVAskIQREWvqEtGMDKV3vlGya6iGfhb66skAqBBPDGbO6a9hK+ 4Yi7QskZ3jyieuDtSojEfESTUWbomMjTC7Q8U= Original-Received: by 10.182.75.102 with SMTP id b6mr20750770obw.9.1328010779033; Tue, 31 Jan 2012 03:52:59 -0800 (PST) Original-Received: by 10.182.242.41 with HTTP; Tue, 31 Jan 2012 03:52:58 -0800 (PST) In-Reply-To: <87wr88lt1i.fsf@mail.jurta.org> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 209.85.214.169 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:148062 Archived-At: --14dae93994a9be00c104b7d19aee Content-Type: text/plain; charset=ISO-8859-1 On 1/31/12, Juri Linkov wrote: >> So how about the following behavior (for brevity I will describe only >> isearch-repeat-forward): (1) if you use isearch-repeat-forward then at >> the end of the operation you must be in a search-forward state; (2) >> the numerical value decides how many searches are done and (3) the >> sign defines the direction. > > Thanks. I agree that these rules are reasonable. > Hi Juri, Please see attached patch. Note that I decided to stop the repeated search at wraparound and any other case where the search fails (eq isearch-sucess nil). Thanks, Gideon. --14dae93994a9be00c104b7d19aee Content-Type: text/x-patch; charset=US-ASCII; name="isearch_repeat_prefix_arg_support.patch" Content-Disposition: attachment; filename="isearch_repeat_prefix_arg_support.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: file0 ZGlmZiAtLWdpdCBhL2xpc3AvaXNlYXJjaC5lbCBiL2xpc3AvaXNlYXJjaC5lbAppbmRleCBjZTc1 OTExLi4wNGYyOWJhIDEwMDY0NAotLS0gYS9saXNwL2lzZWFyY2guZWwKKysrIGIvbGlzcC9pc2Vh cmNoLmVsCkBAIC0xMzQwLDE1ICsxMzQwLDYwIEBAIFVzZSBgaXNlYXJjaC1leGl0JyB0byBxdWl0 IHdpdGhvdXQgc2lnbmFsaW5nLiIKICAgKGlzZWFyY2gtcHVzaC1zdGF0ZSkKICAgKGlzZWFyY2gt dXBkYXRlKSkKIAotKGRlZnVuIGlzZWFyY2gtcmVwZWF0LWZvcndhcmQgKCkKKyhkZWZ1biBpc2Vh cmNoLXJlcGVhdC1mb3J3YXJkICgmb3B0aW9uYWwgYXJnKQogICAiUmVwZWF0IGluY3JlbWVudGFs IHNlYXJjaCBmb3J3YXJkcy4iCi0gIChpbnRlcmFjdGl2ZSkKLSAgKGlzZWFyY2gtcmVwZWF0ICdm b3J3YXJkKSkKLQotKGRlZnVuIGlzZWFyY2gtcmVwZWF0LWJhY2t3YXJkICgpCisgIChpbnRlcmFj dGl2ZSAiUCIpCisgIChpZiBhcmcKKyAgICAgIChsZXQgKChuYXJnIChwcmVmaXgtbnVtZXJpYy12 YWx1ZSBhcmcpKSkKKwkoaWYgKDwgbmFyZyAwKQorCSAgICA7OyBHbyBiYWNrd2FyZC4KKwkgICAg KHByb2duCisJICAgICAgOzsgU3dpdGNoIGRpcmVjdGlvbiBpZiBuZWNlc3NhcnkKKwkgICAgICAo aWYgaXNlYXJjaC1mb3J3YXJkIChpc2VhcmNoLXJlcGVhdCAnYmFja3dhcmQpKQorCSAgICAgIDs7 IEdvIGJhY2sgbmFyZyB0aW1lcworCSAgICAgICh3aGlsZSAoYW5kIGlzZWFyY2gtc3VjY2VzcyAo PCBuYXJnIDApKQorCQkoaXNlYXJjaC1yZXBlYXQgJ2JhY2t3YXJkKQorCQkoc2V0cSBuYXJnICgx KyBuYXJnKSkpCisJICAgICAgOzsgU3dpdGNoIGJhY2sgdG8gZm9yd2FyZCBzZWFyY2gKKwkgICAg ICAoaXNlYXJjaC1yZXBlYXQgJ2ZvcndhcmQpKQorCSAgOzsgR28gZm9yd2FyZAorCSAgKHByb2du CisJICAgIDs7IFN3aXRjaCBkaXJlY3Rpb24gaWYgbmVjZXNzYXJ5CisJICAgIChvciBpc2VhcmNo LWZvcndhcmQgKGlzZWFyY2gtcmVwZWF0ICdmb3J3YXJkKSkKKwkgICAgOzsgR28gZm9yd2FyZCBu YXJnIHRpbWVzCisJICAgICh3aGlsZSAoYW5kIGlzZWFyY2gtc3VjY2VzcyAoPiBuYXJnIDApKQor CSAgICAgIChpc2VhcmNoLXJlcGVhdCAnZm9yd2FyZCkKKwkgICAgICAoc2V0cSBuYXJnICgxLSBu YXJnKSkpKSkpCisgICAgOzsgTm8gYXJndW1lbnQKKyAgICAoaXNlYXJjaC1yZXBlYXQgJ2Zvcndh cmQpKSkKKworKGRlZnVuIGlzZWFyY2gtcmVwZWF0LWJhY2t3YXJkICgmb3B0aW9uYWwgYXJnKQog ICAiUmVwZWF0IGluY3JlbWVudGFsIHNlYXJjaCBiYWNrd2FyZHMuIgotICAoaW50ZXJhY3RpdmUp Ci0gIChpc2VhcmNoLXJlcGVhdCAnYmFja3dhcmQpKQorICAoaW50ZXJhY3RpdmUgIlAiKQorICAo aWYgYXJnCisgICAgKGxldCAoKG5hcmcgKHByZWZpeC1udW1lcmljLXZhbHVlIGFyZykpKQorICAg ICAoaWYgKDwgbmFyZyAwKQorCSA7OyBHbyBmb3J3YXJkLgorCSAocHJvZ24KKwkgICA7OyBTd2l0 Y2ggZGlyZWN0aW9uIGlmIG5lY2Vzc2FyeQorCSAgIChvciBpc2VhcmNoLWZvcndhcmQgKGlzZWFy Y2gtcmVwZWF0ICdmb3J3YXJkKSkKKwkgICA7OyBHbyBiYWNrIG5hcmcgdGltZXMKKwkgICAod2hp bGUgKGFuZCBpc2VhcmNoLXN1Y2Nlc3MoPCBuYXJnIDApKQorCSAgICAgKGlzZWFyY2gtcmVwZWF0 ICdmb3J3YXJkKQorCSAgICAgKHNldHEgbmFyZyAoMSsgbmFyZykpKQorCSAgIDs7IFN3aXRjaCBi YWNrIHRvIGJhY2t3YXJkIHNlYXJjaAorCSAgIChpc2VhcmNoLXJlcGVhdCAnYmFja3dhcmQpKQor ICAgICAgIDs7IEdvIGJhY2t3YXJkCisgICAgICAgKHByb2duCisJIDs7IFN3aXRjaCBkaXJlY3Rp b24gaWYgbmVjZXNzYXJ5CisJIChpZiBpc2VhcmNoLWZvcndhcmQgKGlzZWFyY2gtcmVwZWF0ICdi YWNrd2FyZCkpCisJIDs7IEdvIGJhY2t3YXJkIG5hcmcgdGltZXMKKwkgKHdoaWxlIChhbmQgaXNl YXJjaC1zdWNjZXNzICg+IG5hcmcgMCkpCisJICAgKGlzZWFyY2gtcmVwZWF0ICdiYWNrd2FyZCkK KwkgICAoc2V0cSBuYXJnICgxLSBuYXJnKSkpKSkpCisgICAgOzsgTm8gYXJndW1lbnQKKyAgICAo aXNlYXJjaC1yZXBlYXQgJ2JhY2t3YXJkKSkpCisKIAogKGRlZnVuIGlzZWFyY2gtdG9nZ2xlLXJl Z2V4cCAoKQogICAiVG9nZ2xlIHJlZ2V4cCBzZWFyY2hpbmcgb24gb3Igb2ZmLiIK --14dae93994a9be00c104b7d19aee--