From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Michael Mauger Newsgroups: gmane.emacs.devel Subject: Re: Revisit: recentf-cleanup, file-readable-p & remote files Date: Mon, 14 Mar 2005 09:36:38 -0800 (PST) Message-ID: <20050314173639.19272.qmail@web60305.mail.yahoo.com> References: <423429B2.8000101@wanadoo.fr> NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="0-71176611-1110821798=:17534" X-Trace: sea.gmane.org 1110823096 21049 80.91.229.2 (14 Mar 2005 17:58:16 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Mon, 14 Mar 2005 17:58:16 +0000 (UTC) Cc: Emacs Devel Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Mar 14 18:58:16 2005 Original-Received: from lists.gnu.org ([199.232.76.165]) by ciao.gmane.org with esmtp (Exim 4.43) id 1DAtXt-0005XI-2X for ged-emacs-devel@m.gmane.org; Mon, 14 Mar 2005 18:40:03 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1DAtnb-00008p-FS for ged-emacs-devel@m.gmane.org; Mon, 14 Mar 2005 12:56:15 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1DAtmv-0008Hk-GM for emacs-devel@gnu.org; Mon, 14 Mar 2005 12:55:33 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1DAtmq-0008EU-MV for emacs-devel@gnu.org; Mon, 14 Mar 2005 12:55:29 -0500 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1DAtmq-0008DW-CN for emacs-devel@gnu.org; Mon, 14 Mar 2005 12:55:28 -0500 Original-Received: from [216.109.118.116] (helo=web60305.mail.yahoo.com) by monty-python.gnu.org with smtp (Exim 4.34) id 1DAtUe-0000PH-9u for emacs-devel@gnu.org; Mon, 14 Mar 2005 12:36:40 -0500 Original-Received: (qmail 19278 invoked by uid 60001); 14 Mar 2005 17:36:39 -0000 Comment: DomainKeys? See http://antispam.yahoo.com/domainkeys DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=yahoo.com; b=l+VRTPv+O9110F75q1bmZvWy0NE7pfdTVckGFAegNYW5kzLurk+7eAR+iHYYL7fD1tOZBlAxd4YeUdX7J6xpG/yTC17GCgG3vFuPLpJ8omZ/OfSpZuFWZW/pJRHkjMGTIS+rvHun0Zfz5XYBWFwGugGsuy0HwZndvFmX+GDvA4o= ; Original-Received: from [204.167.53.87] by web60305.mail.yahoo.com via HTTP; Mon, 14 Mar 2005 09:36:38 PST Original-To: David Ponce In-Reply-To: <423429B2.8000101@wanadoo.fr> X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org X-MailScanner-To: ged-emacs-devel@m.gmane.org Xref: news.gmane.org gmane.emacs.devel:34586 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:34586 --0-71176611-1110821798=:17534 Content-Type: text/plain; charset=us-ascii Content-Id: Content-Disposition: inline --- David Ponce wrote: > Hi Michael and other Emacs developers, > > > I am now in a situation where about half of the files I edit are > > local and the remainder are on a remote Unix server. I appreciate > > the automatic cleanup of files on the recentf list and would like to > > leave that feature in place. Unfortunately the time to connect to > > the badly overloaded server and checking files there has gotten > > painful. Having the remote filenames on the recentf list is > > valuable (thus I don't want to place remote files on the > > recentf-exclude list). What I would like to be able to do is just > > not check these remote files as part of the auto cleanup process. > > > > Your patch looks good. However I would prefer a more general mechanism > to keep files in the recent list, that is which can keep remote files > of course but other ones too. > > Here is a patch that implements that. It introduces a new customizable > variable `recentf-keep' which can be saw as a counterpoint of > `recentf-exclude'. It uses the same format so you can force to keep > file names in the recent list based on regexp matching or on > predicates. For compatibility, the default is to keep readable files, > that is those that verify the `file-readable-p' predicate. It is > easy to keep remote file names too by adding the `file-remote-p' > predicate in front of `recentf-keep'. To keep all file names just set > `recentf-keep' to nil. > > Another advantage of that solution is that it eliminates the need of > the `recentf-keep-non-readable-files-flag' flag and simplifies the > implementation! I also removed the unnecessary `recentf-find-file' > wrapper function to directly use `find-file' to open files. > > Could you please try this patch? WDYT? > > If there is no objection, can I commit it? > > Thanks! > David > I had problems with the patch but was able to manually recreate the results. It works great. I'll run it for a couple of days and I'll let you and the list know if I encounter any problems. Attached is my re-created version of the patch. --0-71176611-1110821798=:17534 Content-Type: application/octet-stream; name="recentf.diff" Content-Transfer-Encoding: base64 Content-Description: recentf.diff Content-Disposition: attachment; filename="recentf.diff" SW5kZXg6IGVtYWNzL2xpc3AvcmVjZW50Zi5lbA0KPT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PQ0KUkNTIGZpbGU6IC9jL2N2c3Jvb3QvZW1hY3MvZW1hY3MvbGlz cC9yZWNlbnRmLmVsLHYNCnJldHJpZXZpbmcgcmV2aXNpb24gMS4zMw0KZGlm ZiAtYyAtcjEuMzMgcmVjZW50Zi5lbA0KKioqIGVtYWNzL2xpc3AvcmVjZW50 Zi5lbAk5IEZlYiAyMDA1IDE1OjUwOjQxIC0wMDAwCTEuMzMNCi0tLSBlbWFj cy9saXNwL3JlY2VudGYuZWwJMTQgTWFyIDIwMDUgMTc6MjA6MDkgLTAwMDAN CioqKioqKioqKioqKioqKg0KKioqIDEsNiAqKioqDQogIDs7OyByZWNlbnRm LmVsIC0tLSBzZXR1cCBhIG1lbnUgb2YgcmVjZW50bHkgb3BlbmVkIGZpbGVz DQogIA0KISA7OyBDb3B5cmlnaHQgKEMpIDE5OTksIDIwMDAsIDIwMDEsIDIw MDIsIDIwMDMNCiAgOzsgICBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIElu Yy4NCiAgDQogIDs7IEF1dGhvcjogRGF2aWQgUG9uY2UgPGRhdmlkQGRwb25j ZS5jb20+DQotLS0gMSw2IC0tLS0NCiAgOzs7IHJlY2VudGYuZWwgLS0tIHNl dHVwIGEgbWVudSBvZiByZWNlbnRseSBvcGVuZWQgZmlsZXMNCiAgDQohIDs7 IENvcHlyaWdodCAoQykgMTk5OSwgMjAwMCwgMjAwMSwgMjAwMiwgMjAwMywg MjAwNQ0KICA7OyAgIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLg0K ICANCiAgOzsgQXV0aG9yOiBEYXZpZCBQb25jZSA8ZGF2aWRAZHBvbmNlLmNv bT4NCioqKioqKioqKioqKioqKg0KKioqIDg0LDg5ICoqKioNCi0tLSA4NCwx MDIgLS0tLQ0KICAgIDpncm91cCAncmVjZW50Zg0KICAgIDp0eXBlICcocmVw ZWF0IChjaG9pY2UgcmVnZXhwIGZ1bmN0aW9uKSkpDQogIA0KKyAoZGVmY3Vz dG9tIHJlY2VudGYta2VlcA0KKyAgICcoZmlsZS1yZWFkYWJsZS1wKQ0KKyAg ICIqTGlzdCBvZiByZWdleHBzIGFuZCBwcmVkaWNhdGVzIGZvciBmaWxlbmFt ZXMga2VwdCBpbiB0aGUgcmVjZW50IGxpc3QuDQorIFJlZ2V4cHMgYW5kIHBy ZWRpY2F0ZXMgYXJlIHRyaWVkIGluIHRoZSBzcGVjaWZpZWQgb3JkZXIuDQor IFdoZW4gbmlsIGFsbCBmaWxlbmFtZXMgYXJlIGtlcHQgaW4gdGhlIHJlY2Vu dCBsaXN0Lg0KKyBXaGVuIGEgZmlsZW5hbWUgbWF0Y2hlcyBhbnkgb2YgdGhl IHJlZ2V4cHMgb3Igc2F0aXNmaWVzIGFueSBvZiB0aGUNCisgcHJlZGljYXRl cyBpdCBpcyBrZXB0IGluIHRoZSByZWNlbnQgbGlzdC4NCisgQSBwcmVkaWNh dGUgaXMgYSBmdW5jdGlvbiB0aGF0IGlzIHBhc3NlZCBhIGZpbGVuYW1lIHRv IGNoZWNrIGFuZCB0aGF0DQorIG11c3QgcmV0dXJuIG5vbi1uaWwgdG8ga2Vl cCBpdC4NCisgVGhlIGRlZmF1bHQgaXMgdG8ga2VlcCByZWFkYWJsZSBmaWxl cy4iDQorICAgOmdyb3VwICdyZWNlbnRmDQorICAgOnR5cGUgJyhyZXBlYXQg KGNob2ljZSByZWdleHAgZnVuY3Rpb24pKSkNCisgDQogIChkZWZ1biByZWNl bnRmLW1lbnUtY3VzdG9taXphdGlvbi1jaGFuZ2VkICh2YXJpYWJsZSB2YWx1 ZSkNCiAgICAiRnVuY3Rpb24gY2FsbGVkIHdoZW4gdGhlIHJlY2VudGYgbWVu dSBjdXN0b21pemF0aW9uIGhhcyBjaGFuZ2VkLg0KICBTZXQgVkFSSUFCTEUg d2l0aCBWQUxVRSwgYW5kIGZvcmNlIGEgcmVidWlsZCBvZiB0aGUgcmVjZW50 ZiBtZW51LiINCioqKioqKioqKioqKioqKg0KKioqIDExNCwxMjIgKioqKg0K ICAgICAgICAgICAgICAgICAgIChjb25zdCA6dGFnICJMYXN0IiBuaWwpKQ0K ICAgIDpzZXQgJ3JlY2VudGYtbWVudS1jdXN0b21pemF0aW9uLWNoYW5nZWQp DQogIA0KISAoZGVmY3VzdG9tIHJlY2VudGYtbWVudS1hY3Rpb24gJ3JlY2Vu dGYtZmluZC1maWxlDQogICAgIipGdW5jdGlvbiB0byBpbnZva2Ugd2l0aCBh IGZpbGVuYW1lIGl0ZW0gb2YgdGhlIHJlY2VudGYgbWVudS4NCiEgVGhlIGRl ZmF1bHQgaXMgdG8gY2FsbCBgcmVjZW50Zi1maW5kLWZpbGUnIHRvIGVkaXQg dGhlIHNlbGVjdGVkIGZpbGUuIg0KICAgIDpncm91cCAncmVjZW50Zg0KICAg IDp0eXBlICdmdW5jdGlvbg0KICAgIDpzZXQgJ3JlY2VudGYtbWVudS1jdXN0 b21pemF0aW9uLWNoYW5nZWQpDQotLS0gMTI3LDEzNSAtLS0tDQogICAgICAg ICAgICAgICAgICAgKGNvbnN0IDp0YWcgIkxhc3QiIG5pbCkpDQogICAgOnNl dCAncmVjZW50Zi1tZW51LWN1c3RvbWl6YXRpb24tY2hhbmdlZCkNCiAgDQoh IChkZWZjdXN0b20gcmVjZW50Zi1tZW51LWFjdGlvbiAnZmluZC1maWxlDQog ICAgIipGdW5jdGlvbiB0byBpbnZva2Ugd2l0aCBhIGZpbGVuYW1lIGl0ZW0g b2YgdGhlIHJlY2VudGYgbWVudS4NCiEgVGhlIGRlZmF1bHQgaXMgdG8gY2Fs bCBgZmluZC1maWxlJyB0byBlZGl0IHRoZSBzZWxlY3RlZCBmaWxlLiINCiAg ICA6Z3JvdXAgJ3JlY2VudGYNCiAgICA6dHlwZSAnZnVuY3Rpb24NCiAgICA6 c2V0ICdyZWNlbnRmLW1lbnUtY3VzdG9taXphdGlvbi1jaGFuZ2VkKQ0KKioq KioqKioqKioqKioqDQoqKiogMTk0LDIxMCAqKioqDQogICAgICAgICAgICAg ICAgICAgICAgICAgICdyZWNlbnRmLW1lbnUtYXBwZW5kLWNvbW1hbmRzLWZs YWcNCiAgICAgICAgICAgICAgICAgICAgICAgICAgIjIyLjEiKQ0KICANCi0g KGRlZmN1c3RvbSByZWNlbnRmLWtlZXAtbm9uLXJlYWRhYmxlLWZpbGVzLWZs YWcgbmlsDQotICAgIipub24tbmlsIG1lYW5zIHRvIGtlZXAgbm9uIHJlYWRh YmxlIGZpbGVzIGluIHRoZSByZWNlbnQgbGlzdC4iDQotICAgOmdyb3VwICdy ZWNlbnRmDQotICAgOnR5cGUgJ2Jvb2xlYW4pDQotIA0KLSAoZGVmdmFyYWxp YXMgJ3JlY2VudGYta2VlcC1ub24tcmVhZGFibGUtZmlsZXMtcA0KLSAgICdy ZWNlbnRmLWtlZXAtbm9uLXJlYWRhYmxlLWZpbGVzLWZsYWcpDQotIChtYWtl LW9ic29sZXRlLXZhcmlhYmxlICdyZWNlbnRmLWtlZXAtbm9uLXJlYWRhYmxl LWZpbGVzLXANCi0gICAgICAgICAgICAgICAgICAgICAgICAgJ3JlY2VudGYt a2VlcC1ub24tcmVhZGFibGUtZmlsZXMtZmxhZw0KLSAgICAgICAgICAgICAg ICAgICAgICAgICAiMjIuMSIpDQotIA0KICAoZGVmY3VzdG9tIHJlY2VudGYt YXV0by1jbGVhbnVwICdtb2RlDQogICAgIipEZWZpbmUgd2hlbiB0byBhdXRv bWF0aWNhbGx5IGNsZWFudXAgdGhlIHJlY2VudCBsaXN0Lg0KICBUaGUgZm9s bG93aW5nIHZhbHVlcyBjYW4gYmUgc2V0Og0KLS0tIDIwNywyMTIgLS0tLQ0K KioqKioqKioqKioqKioqDQoqKiogMzUxLDM3OCAqKioqDQogICAgICAgICAg ICAgICAoZnVuY2FsbCByZWNlbnRmLWZpbGVuYW1lLWhhbmRsZXIgZmlsZW5h bWUpKQ0KICAgICAgICAgIGZpbGVuYW1lKSkpDQogIA0KLSAoZGVmc3Vic3Qg cmVjZW50Zi1maWxlLXJlYWRhYmxlLXAgKGZpbGVuYW1lKQ0KLSAgICJSZXR1 cm4gdCBpZiBmaWxlIEZJTEVOQU1FIGV4aXN0cyBhbmQgeW91IGNhbiByZWFk IGl0Lg0KLSBMaWtlIHRoZSBmdW5jdGlvbiBgZmlsZS1yZWFkYWJsZS1wJyBi dXQgcmV0dXJuIG5pbCBvbiBlcnJvci4iDQotICAgKGNvbmRpdGlvbi1jYXNl IG5pbA0KLSAgICAgICAoZmlsZS1yZWFkYWJsZS1wIGZpbGVuYW1lKQ0KLSAg ICAgKGVycm9yIG5pbCkpKQ0KLSANCiAgKGRlZnVuIHJlY2VudGYtaW5jbHVk ZS1wIChmaWxlbmFtZSkNCiAgICAiUmV0dXJuIG5vbi1uaWwgaWYgRklMRU5B TUUgc2hvdWxkIGJlIGluY2x1ZGVkIGluIHRoZSByZWNlbnQgbGlzdC4NCiAg VGhhdCBpcywgaWYgaXQgZG9lc24ndCBtYXRjaCBhbnkgb2YgdGhlIGByZWNl bnRmLWV4Y2x1ZGUnIGNoZWNrcy4iDQogICAgKGxldCAoKGNhc2UtZm9sZC1z ZWFyY2ggcmVjZW50Zi1jYXNlLWZvbGQtc2VhcmNoKQ0KICAgICAgICAgIChj aGVja3MgcmVjZW50Zi1leGNsdWRlKQ0KISAgICAgICAgIChrZWVwaXQgdCkN CiEgICAgICAgICBjaGVjaykNCiAgICAgICh3aGlsZSAoYW5kIGNoZWNrcyBr ZWVwaXQpDQohICAgICAgIChzZXRxIGNoZWNrICAoY2FyIGNoZWNrcykNCiEg ICAgICAgICAgICAgY2hlY2tzIChjZHIgY2hlY2tzKQ0KISAgICAgICAgICAg ICBrZWVwaXQgKG5vdCAoaWYgKHN0cmluZ3AgY2hlY2spDQohICAgICAgICAg ICAgICAgICAgICAgICAgICAgICA7OyBBIHJlZ2V4cA0KISAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgKHN0cmluZy1tYXRjaCBjaGVjayBmaWxlbmFt ZSkNCiEgICAgICAgICAgICAgICAgICAgICAgICAgICA7OyBBIHByZWRpY2F0 ZQ0KISAgICAgICAgICAgICAgICAgICAgICAgICAgIChmdW5jYWxsIGNoZWNr IGZpbGVuYW1lKSkpKSkNCiAgICAgIGtlZXBpdCkpDQogIA0KICAoZGVmc3Vi c3QgcmVjZW50Zi1hZGQtZmlsZSAoZmlsZW5hbWUpDQotLS0gMzUzLDM5MCAt LS0tDQogICAgICAgICAgICAgICAoZnVuY2FsbCByZWNlbnRmLWZpbGVuYW1l LWhhbmRsZXIgZmlsZW5hbWUpKQ0KICAgICAgICAgIGZpbGVuYW1lKSkpDQog IA0KICAoZGVmdW4gcmVjZW50Zi1pbmNsdWRlLXAgKGZpbGVuYW1lKQ0KICAg ICJSZXR1cm4gbm9uLW5pbCBpZiBGSUxFTkFNRSBzaG91bGQgYmUgaW5jbHVk ZWQgaW4gdGhlIHJlY2VudCBsaXN0Lg0KICBUaGF0IGlzLCBpZiBpdCBkb2Vz bid0IG1hdGNoIGFueSBvZiB0aGUgYHJlY2VudGYtZXhjbHVkZScgY2hlY2tz LiINCiAgICAobGV0ICgoY2FzZS1mb2xkLXNlYXJjaCByZWNlbnRmLWNhc2Ut Zm9sZC1zZWFyY2gpDQogICAgICAgICAgKGNoZWNrcyByZWNlbnRmLWV4Y2x1 ZGUpDQohICAgICAgICAgKGtlZXBpdCB0KSkNCiAgICAgICh3aGlsZSAoYW5k IGNoZWNrcyBrZWVwaXQpDQohICAgICAgIChzZXRxIGtlZXBpdCAoY29uZGl0 aW9uLWNhc2UgbmlsDQohIAkJICAgICAgIChub3QgKGlmIChzdHJpbmdwIChj YXIgY2hlY2tzKSkNCiEgCQkJCTs7IEEgcmVnZXhwDQohIAkJCQkoc3RyaW5n LW1hdGNoIChjYXIgY2hlY2tzKSBmaWxlbmFtZSkNCiEgCQkJICAgICAgOzsg QSBwcmVkaWNhdGUNCiEgCQkJICAgICAgKGZ1bmNhbGwgKGNhciBjaGVja3Mp IGZpbGVuYW1lKSkpDQohIAkJICAgICAoZXJyb3IgbmlsKSkNCiEgCSAgICBj aGVja3MgKGNkciBjaGVja3MpKSkNCiEgICAgIGtlZXBpdCkpDQohIA0KISAo ZGVmdW4gcmVjZW50Zi1rZWVwLXAgKGZpbGVuYW1lKQ0KISAgICJSZXR1cm4g bm9uLW5pbCBpZiBGSUxFTkFNRSBzaG91bGQgYmUga2VwdCBpbiB0aGUgcmVj ZW50IGxpc3QuDQohIFRoYXQgaXMsIGlmIGl0IG1hdGNoZXMgYW55IG9mIHRo ZSBgcmVjZW50Zi1rZWVwJyBjaGVja3MuIg0KISAgIChsZXQqICgoY2FzZS1m b2xkLXNlYXJjaCByZWNlbnRmLWNhc2UtZm9sZC1zZWFyY2gpDQohIAkgKGNo ZWNrcyByZWNlbnRmLWtlZXApDQohIAkgKGtlZXBpdCAobnVsbCBjaGVja3Mp KSkNCiEgICAgICh3aGlsZSAoYW5kIGNoZWNrcyAobm90IGtlZXBpdCkpDQoh ICAgICAgIChzZXRxIGtlZXBpdCAoY29uZGl0aW9uLWNhc2UgbmlsDQohIAkJ ICAgICAgIChpZiAoc3RyaW5ncCAoY2FyIGNoZWNrcykpDQohIAkJCSAgIDs7 IEEgcmVnZXhwDQohIAkJCSAgIChzdHJpbmctbWF0Y2ggKGNhciBjaGVja3Mp IGZpbGVuYW1lKQ0KISAJCQkgOzsgQSBwcmVkaWNhdGUNCiEgCQkJIChmdW5j YWxsIChjYXIgY2hlY2tzKSBmaWxlbmFtZSkpDQohIAkJICAgICAoZXJyb3Ig bmlsKSkNCiEgCSAgICBjaGVja3MgKGNkciBjaGVja3MpKSkNCiAgICAgIGtl ZXBpdCkpDQogIA0KICAoZGVmc3Vic3QgcmVjZW50Zi1hZGQtZmlsZSAoZmls ZW5hbWUpDQoqKioqKioqKioqKioqKioNCioqKiAzODMsNDA2ICoqKioNCiAg ICAod2hlbiAocmVjZW50Zi1pbmNsdWRlLXAgZmlsZW5hbWUpDQogICAgICAo cmVjZW50Zi1wdXNoIGZpbGVuYW1lKSkpDQogIA0KISAoZGVmc3Vic3QgcmVj ZW50Zi1yZW1vdmUtaWYtbm9uLXJlYWRhYmxlIChmaWxlbmFtZSkNCiEgICAi UmVtb3ZlIEZJTEVOQU1FIGZyb20gdGhlIHJlY2VudCBsaXN0LCBpZiBmaWxl IGlzIG5vdCByZWFkYWJsZS4NCiAgUmV0dXJuIG5vbi1uaWwgaWYgRklMRU5B TUUgaGFzIGJlZW4gcmVtb3ZlZC4iDQohICAgKHVubGVzcyAocmVjZW50Zi1m aWxlLXJlYWRhYmxlLXAgZmlsZW5hbWUpDQogICAgICAobGV0ICgobSAocmVj ZW50Zi1zdHJpbmctbWVtYmVyDQohICAgICAgICAgICAgICAgKHJlY2VudGYt ZXhwYW5kLWZpbGUtbmFtZSBmaWxlbmFtZSkgcmVjZW50Zi1saXN0KSkpDQog ICAgICAgIChhbmQgbSAoc2V0cSByZWNlbnRmLWxpc3QgKGRlbHEgKGNhciBt KSByZWNlbnRmLWxpc3QpKSkpKSkNCiAgDQotIChkZWZ1biByZWNlbnRmLWZp bmQtZmlsZSAoZmlsZW5hbWUpDQotICAgIkVkaXQgZmlsZSBGSUxFTkFNRSB1 c2luZyBgZmluZC1maWxlJy4NCi0gSWYgdGhlIGZpbGUgZG9lcyBub3QgZXhp c3Qgb3IgaXMgbm9uIHJlYWRhYmxlLCBhbmQNCi0gYHJlY2VudGYta2VlcC1u b24tcmVhZGFibGUtZmlsZXMtZmxhZycgaXMgbmlsLCBpdCBpcyBub3QgZWRp dGVkIGFuZA0KLSBpdHMgbmFtZSBpcyByZW1vdmVkIGZyb20gdGhlIHJlY2Vu dCBsaXN0LiINCi0gICAoaWYgKGFuZCAobm90IHJlY2VudGYta2VlcC1ub24t cmVhZGFibGUtZmlsZXMtZmxhZykNCi0gICAgICAgICAgICAocmVjZW50Zi1y ZW1vdmUtaWYtbm9uLXJlYWRhYmxlIGZpbGVuYW1lKSkNCi0gICAgICAgKG1l c3NhZ2UgIkZpbGUgYCVzJyBub3QgZm91bmQiIGZpbGVuYW1lKQ0KLSAgICAg KGZpbmQtZmlsZSBmaWxlbmFtZSkpKQ0KLSANCiAgKGRlZnN1YnN0IHJlY2Vu dGYtZGlyZWN0b3J5LWNvbXBhcmUgKGYxIGYyKQ0KICAgICJDb21wYXJlIGFi c29sdXRlIGZpbGVuYW1lcyBGMSBhbmQgRjIuDQogIEZpcnN0IGNvbXBhcmUg ZGlyZWN0b3JpZXMsIHRoZW4gZmlsZW5hbWVzIHNhbnMgZGlyZWN0b3J5Lg0K LS0tIDM5NSw0MDggLS0tLQ0KICAgICh3aGVuIChyZWNlbnRmLWluY2x1ZGUt cCBmaWxlbmFtZSkNCiAgICAgIChyZWNlbnRmLXB1c2ggZmlsZW5hbWUpKSkN CiAgDQohIChkZWZzdWJzdCByZWNlbnRmLXJlbW92ZS1pZi1ub24ta2VwdCAo ZmlsZW5hbWUpDQohICAgIlJlbW92ZSBGSUxFTkFNRSBmcm9tIHRoZSByZWNl bnQgbGlzdCwgaWYgZmlsZSBpcyBub3Qga2VwdC4NCiAgUmV0dXJuIG5vbi1u aWwgaWYgRklMRU5BTUUgaGFzIGJlZW4gcmVtb3ZlZC4iDQohICAgKHVubGVz cyAocmVjZW50Zi1rZWVwLXAgZmlsZW5hbWUpDQogICAgICAobGV0ICgobSAo cmVjZW50Zi1zdHJpbmctbWVtYmVyDQohIAkgICAgICAocmVjZW50Zi1leHBh bmQtZmlsZS1uYW1lIGZpbGVuYW1lKSByZWNlbnRmLWxpc3QpKSkNCiAgICAg ICAgKGFuZCBtIChzZXRxIHJlY2VudGYtbGlzdCAoZGVscSAoY2FyIG0pIHJl Y2VudGYtbGlzdCkpKSkpKQ0KICANCiAgKGRlZnN1YnN0IHJlY2VudGYtZGly ZWN0b3J5LWNvbXBhcmUgKGYxIGYyKQ0KICAgICJDb21wYXJlIGFic29sdXRl IGZpbGVuYW1lcyBGMSBhbmQgRjIuDQogIEZpcnN0IGNvbXBhcmUgZGlyZWN0 b3JpZXMsIHRoZW4gZmlsZW5hbWVzIHNhbnMgZGlyZWN0b3J5Lg0KKioqKioq KioqKioqKioqDQoqKiogNDE3LDQyMyAqKioqDQogIChkZWZ2YXIgcmVjZW50 Zi1tZW51LWl0ZW1zLWZvci1jb21tYW5kcw0KICAgIChsaXN0IFsiQ2xlYW51 cCBsaXN0Ig0KICAgICAgICAgICByZWNlbnRmLWNsZWFudXANCiEgICAgICAg ICAgOmhlbHAgIlJlbW92ZSBhbGwgbm9uLXJlYWRhYmxlIGFuZCBleGNsdWRl ZCBmaWxlcyBmcm9tIHRoZSByZWNlbnQgbGlzdCINCiAgICAgICAgICAgOmFj dGl2ZSB0XQ0KICAgICAgICAgIFsiRWRpdCBsaXN0Li4uIg0KICAgICAgICAg ICByZWNlbnRmLWVkaXQtbGlzdA0KLS0tIDQxOSw0MjUgLS0tLQ0KICAoZGVm dmFyIHJlY2VudGYtbWVudS1pdGVtcy1mb3ItY29tbWFuZHMNCiAgICAobGlz dCBbIkNsZWFudXAgbGlzdCINCiAgICAgICAgICAgcmVjZW50Zi1jbGVhbnVw DQohICAgICAgICAgIDpoZWxwICJSZW1vdmUgYWxsIGV4Y2x1ZGVkIGFuZCBu b24ta2VwdCBmaWxlcyBmcm9tIHRoZSByZWNlbnQgbGlzdCINCiAgICAgICAg ICAgOmFjdGl2ZSB0XQ0KICAgICAgICAgIFsiRWRpdCBsaXN0Li4uIg0KICAg ICAgICAgICByZWNlbnRmLWVkaXQtbGlzdA0KKioqKioqKioqKioqKioqDQoq KiogOTMzLDk0MyAqKioqDQogIA0KICAoZGVmdW4gcmVjZW50Zi10cmFjay1j bG9zZWQtZmlsZSAoKQ0KICAgICJVcGRhdGUgdGhlIHJlY2VudCBsaXN0IHdo ZW4gYSBidWZmZXIgaXMga2lsbGVkLg0KISBUaGF0IGlzLCByZW1vdmUgYSBu b24gcmVhZGFibGUgZmlsZSBmcm9tIHRoZSByZWNlbnQgbGlzdCwgaWYNCiEg YHJlY2VudGYta2VlcC1ub24tcmVhZGFibGUtZmlsZXMtZmxhZycgaXMgbmls LiINCiAgICAoYW5kIGJ1ZmZlci1maWxlLW5hbWUNCiEgICAgICAgIChub3Qg cmVjZW50Zi1rZWVwLW5vbi1yZWFkYWJsZS1maWxlcy1mbGFnKQ0KISAgICAg ICAgKHJlY2VudGYtcmVtb3ZlLWlmLW5vbi1yZWFkYWJsZSBidWZmZXItZmls ZS1uYW1lKSkpDQogIA0KICAoZGVmdW4gcmVjZW50Zi11cGRhdGUtbWVudSAo KQ0KICAgICJVcGRhdGUgdGhlIHJlY2VudGYgbWVudSBmcm9tIHRoZSBjdXJy ZW50IHJlY2VudCBsaXN0LiINCi0tLSA5MzUsOTQzIC0tLS0NCiAgDQogIChk ZWZ1biByZWNlbnRmLXRyYWNrLWNsb3NlZC1maWxlICgpDQogICAgIlVwZGF0 ZSB0aGUgcmVjZW50IGxpc3Qgd2hlbiBhIGJ1ZmZlciBpcyBraWxsZWQuDQoh IFRoYXQgaXMsIHJlbW92ZSBhIG5vbiBrZXB0IGZpbGUgZnJvbSB0aGUgcmVj ZW50IGxpc3QuIg0KICAgIChhbmQgYnVmZmVyLWZpbGUtbmFtZQ0KISAgICAg ICAgKHJlY2VudGYtcmVtb3ZlLWlmLW5vbi1rZXB0IGJ1ZmZlci1maWxlLW5h bWUpKSkNCiAgDQogIChkZWZ1biByZWNlbnRmLXVwZGF0ZS1tZW51ICgpDQog ICAgIlVwZGF0ZSB0aGUgcmVjZW50ZiBtZW51IGZyb20gdGhlIGN1cnJlbnQg cmVjZW50IGxpc3QuIg0KKioqKioqKioqKioqKioqDQoqKiogMTE2NCwxMTc5 ICoqKioNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHJlY2VudGYtbGlzdCkpKSkpKQ0KICANCiAgKGRlZnVuIHJlY2Vu dGYtY2xlYW51cCAoKQ0KISAgICJSZW1vdmUgYWxsIGV4Y2x1ZGVkIG9yIG5v bi1yZWFkYWJsZSBmaWxlcyBmcm9tIHRoZSByZWNlbnQgbGlzdC4iDQogICAg KGludGVyYWN0aXZlKQ0KICAgIChtZXNzYWdlICJDbGVhbmluZyB1cCB0aGUg cmVjZW50ZiBsaXN0Li4uIikNCiEgICAobGV0IChuZXdsaXN0KQ0KICAgICAg KGRvbGlzdCAoZiByZWNlbnRmLWxpc3QpDQohICAgICAgIChpZiAoYW5kIChy ZWNlbnRmLWluY2x1ZGUtcCBmKSAocmVjZW50Zi1maWxlLXJlYWRhYmxlLXAg ZikpDQohICAgICAgICAgICAocHVzaCBmIG5ld2xpc3QpDQohICAgICAgICAg KG1lc3NhZ2UgIkZpbGUgJXMgcmVtb3ZlZCBmcm9tIHRoZSByZWNlbnRmIGxp c3QiIGYpKSkNCiEgICAgIChzZXRxIHJlY2VudGYtbGlzdCAobnJldmVyc2Ug bmV3bGlzdCkpDQohICAgICAobWVzc2FnZSAiQ2xlYW5pbmcgdXAgdGhlIHJl Y2VudGYgbGlzdC4uLmRvbmUiKSkpDQogIA0KICA7OzsjIyNhdXRvbG9hZA0K ICAoZGVmaW5lLW1pbm9yLW1vZGUgcmVjZW50Zi1tb2RlDQotLS0gMTE2NCwx MTgxIC0tLS0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHJlY2VudGYtbGlzdCkpKSkpKQ0KICANCiAgKGRlZnVuIHJl Y2VudGYtY2xlYW51cCAoKQ0KISAgICJSZW1vdmUgYWxsIG5vbi1rZXB0IGFu ZCBleGNsdWRlZCBmaWxlcyBmcm9tIHRoZSByZWNlbnQgbGlzdC4iDQogICAg KGludGVyYWN0aXZlKQ0KICAgIChtZXNzYWdlICJDbGVhbmluZyB1cCB0aGUg cmVjZW50ZiBsaXN0Li4uIikNCiEgICAobGV0ICgobiAwKSBuZXdsaXN0KQ0K ICAgICAgKGRvbGlzdCAoZiByZWNlbnRmLWxpc3QpDQohICAgICAgIChpZiAo YW5kIChyZWNlbnRmLWluY2x1ZGUtcCBmKQ0KISAJICAgICAgIChyZWNlbnRm LWtlZXAtcCBmKSkNCiEgCSAgKHB1c2ggZiBuZXdsaXN0KQ0KISAJKHNldHEg biAoMSsgbikpDQohIAkobWVzc2FnZSAiRmlsZSAlcyByZW1vdmVkIGZyb20g dGhlIHJlY2VudGYgbGlzdCIgZikpKQ0KISAgICAgKG1lc3NhZ2UgIkNsZWFu aW5nIHVwIHRoZSByZWNlbnRmIGxpc3QuLi5kb25lICglZCByZW1vdmVkKSIg bikNCiEgICAgIChzZXRxIHJlY2VudGYtbGlzdCAobnJldmVyc2UgbmV3bGlz dCkpKSkNCiAgDQogIDs7OyMjI2F1dG9sb2FkDQogIChkZWZpbmUtbWlub3It bW9kZSByZWNlbnRmLW1vZGUNCg== --0-71176611-1110821798=:17534 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Emacs-devel mailing list Emacs-devel@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-devel --0-71176611-1110821798=:17534--