From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: "Dhruva Krishnamurthy" Newsgroups: gmane.emacs.devel Subject: Re: GNU Emacs: Client/Server Date: Thu, 05 Feb 2004 15:22:16 +0530 Sender: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Message-ID: <20040205095216.528FC31@frontend3.messagingengine.com> References: <20040129111259.67CF418B@frontend3.messagingengine.com> <32D82A01-5253-11D8-82BB-00039363E640@swipnet.se> <20040129121313.766CE37D@frontend3.messagingengine.com> <20040130045855.1A6A92E@frontend3.messagingengine.com> <20040202092212.C73932E@frontend3.messagingengine.com> <20040203044651.3E26A31@frontend3.messagingengine.com> NNTP-Posting-Host: deer.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="_----------=_1075974736126070" Content-Transfer-Encoding: 7bit X-Trace: sea.gmane.org 1075974941 11803 80.91.224.253 (5 Feb 2004 09:55:41 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Thu, 5 Feb 2004 09:55:41 +0000 (UTC) Cc: jan.h.d@swipnet.se, Stefan Monnier , Richard Stallman , "Kim F. Storm" Original-X-From: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Thu Feb 05 10:55:32 2004 Return-path: Original-Received: from quimby.gnus.org ([80.91.224.244]) by deer.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 1AogEO-0000hU-00 for ; Thu, 05 Feb 2004 10:55:32 +0100 Original-Received: from monty-python.gnu.org ([199.232.76.173]) by quimby.gnus.org with esmtp (Exim 3.35 #1 (Debian)) id 1AogEN-0003dj-00 for ; Thu, 05 Feb 2004 10:55:32 +0100 Original-Received: from localhost ([127.0.0.1] helo=monty-python.gnu.org) by monty-python.gnu.org with esmtp (Exim 4.24) id 1AogDc-0002tt-C0 for emacs-devel@quimby.gnus.org; Thu, 05 Feb 2004 04:54:44 -0500 Original-Received: from list by monty-python.gnu.org with tmda-scanned (Exim 4.24) id 1AogBp-00027i-Ck for emacs-devel@gnu.org; Thu, 05 Feb 2004 04:52:53 -0500 Original-Received: from mail by monty-python.gnu.org with spam-scanned (Exim 4.24) id 1AogBH-0001ss-4p for emacs-devel@gnu.org; Thu, 05 Feb 2004 04:52:50 -0500 Original-Received: from [66.111.4.25] (helo=out1.smtp.messagingengine.com) by monty-python.gnu.org with esmtp (Exim 4.24) id 1AogBF-0001s3-DF; Thu, 05 Feb 2004 04:52:17 -0500 Original-Received: from frontend3.messagingengine.com (frontend3.internal [10.202.2.152]) by mail.messagingengine.com (Postfix) with ESMTP id 0329C4D286C; Thu, 5 Feb 2004 04:52:16 -0500 (EST) Original-Received: by frontend3.messagingengine.com (Postfix, from userid 99) id 528FC31; Thu, 5 Feb 2004 04:52:16 -0500 (EST) Original-To: "Emacs Devel" X-Sasl-Enc: ANLAB1yETwDotvwRkeXDBg 1075974736 In-Reply-To: X-Mailer: MIME::Lite 1.2 (F2.72; T1.001; A1.60; B2.21; Q2.21) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.2 Precedence: list List-Id: Emacs development discussions. List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Xref: main.gmane.org gmane.emacs.devel:19739 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:19739 This is a multi-part message in MIME format. --_----------=_1075974736126070 Content-Disposition: inline Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="ISO-8859-1" Hello, Based on the suggestion I had on implementing a emacs client/server in pure Elisp, I have come up with a working _Prototype_. The code needs lot of cleanup and I am sure can be improved a lot. This is my first shot at Elisp programming, I request you to kindly help. Some of the features: - Server is bound to localhost by default (for security issues) but can be changed - Server accepts a *secret* word which is then used to validate all client connections Ex: (emacsserver-start "secret") - Multiple servers supported in a single invocation of emacs (per session) but on different ports. - Client opens a connection on a running server with no authentication (may be a security risk) - To execute any expression on the server, the connection must be authenticated. Hence, internally, the first expr sent to server is the *secret* word as an argument to the client command dispatching function. Ex: (emacsserver-client '(find-file \"~/_emacs\") "secret") - The secret word is store in a hash in the server for the client process. With this, you can send multiple commands (some work needs to be done here) I am sending the Elisp file which is 7Kb. I request help and guidance to make this robust and acceptable. My apologies in advance for those who are not interested. with regards, dhruva ________________________________________ Dhruva Krishnamurthy Proud FSF member: #1935 http://schemer.fateback.com/ --_----------=_1075974736126070 Content-Disposition: attachment; filename="emacsserver.el" Content-Transfer-Encoding: base64 Content-Type: application/unknown; name="emacsserver.el" OzsgLSotRW1hY3MtTGlzcC0qLQo7OyBUaW1lLXN0YW1wOiA8MjAwNC0wMi0w NSAxNToyMjowNCBka3k+Cjs7LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0KOzsgRmlsZSAgIDogZW1hY3NzZXJ2ZXIuZWwKOzsgQXV0aCAgIDog RGhydXZhIEtyaXNobmFtdXJ0aHkgKGRldmVsQG1lbWJlci5mc2Yub3JnKQo7 OyBTdGF0dXMgOiBEZXZlbG9wbWVudCAoZmxha3kpCjs7IFVzYWdlICA6Cjs7 IG8gQXMgc2VydmVyOgo7OyAgIChyZXF1aXJlICdlbWFjc3NlcnZlcikKOzsg ICAoZW1hY3NzZXJ2ZXItc3RhcnQgIm1hZ2ljIikKOzsgbyBBcyBjbGllbnQ6 Cjs7ICAgZW1hY3MgLS1iYXRjaCAtLWxvYWQgZW1hY3NzZXJ2ZXIuZWwKOzsg ICAgICAgICAtLWV2YWwgIihlbWFjc2NsaWVudC1jb21tYW5kICcoZmluZC1m aWxlIFwifi9fZW1hY3NcIikgXCJtYWdpY1wiKSIKOzsKOzsgVE9ETyAgIDoK OzsgbyBDb2RlIGNsZWFudXAsIG9wdGltaXplLCBkb2N1bWVudCBhbmQgbWlz YyBzdHVmZgo7Oy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCihk ZWZ2YXIgZW1hY3NjbGllbnQtaGFzaCAobWFrZS1oYXNoLXRhYmxlIDp0ZXN0 ICdlcSkpCihkZWZ2YXIgZW1hY3NzZXJ2ZXItaGFzaCAobWFrZS1oYXNoLXRh YmxlKSkKCjs7LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KOzsg ICAgICAgICAgICAgICAgICAgICAgICBHTlUgRW1hY3Mgc2VydmVyIGNvZGUK OzstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKOzstLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo7OyBlbWFjc3NlcnZlci1zdGFy dAo7Oy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCihkZWZ1biBl bWFjc3NlcnZlci1zdGFydCAoJm9wdGlvbmFsIG1hZ2ljIHBvcnQpCiAgIlN0 YXJ0cyBhIHNlcnZlciBvbiBzcGVjaWZpZWQgcG9ydCBhbmQgYmluZHMgdG8g bG9jYWxob3N0IgogIChpbnRlcmFjdGl2ZSkKICAoY2F0Y2ggJ3JldAogICAg KGxldCAoKHNlcnZlci1wb3J0IChpZiAoaW50ZWdlcnAgcG9ydCkKICAgICAg ICAgICAgICAgICAgICAgICAgICAgcG9ydAogICAgICAgICAgICAgICAgICAg ICAgICAgNTU1NTUpKQogICAgICAgICAgKGtleSAoaWYgbWFnaWMKICAgICAg ICAgICAgICAgICAgIG1hZ2ljCiAgICAgICAgICAgICAgICAgImhvdWRpbmki KSkpCiAgICAgIChpZiAoZ2V0aGFzaCBzZXJ2ZXItcG9ydCBlbWFjc3NlcnZl ci1oYXNoKQogICAgICAgICAgKHByb2duCiAgICAgICAgICAgIChtZXNzYWdl IChmb3JtYXQgIiVzOiBQcm9jZXNzIHJ1bm5pbmciCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgKGNhZHIgKGdldGhhc2ggc2VydmVyLXBvcnQgZW1h Y3NzZXJ2ZXItaGFzaCkpKSkKICAgICAgICAgICAgKHRocm93ICdyZXQgbmls KSkpCiAgICAgIChwdXRoYXNoIHNlcnZlci1wb3J0IChjb25zIChmb3JtYXQg IiVzIiBrZXkpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICht YWtlLW5ldHdvcmstcHJvY2VzcwogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgOm5hbWUgImVtYWNzc2VydmVyIgogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgOmJ1ZmZlciBuaWwKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIDp0eXBlIG5pbAogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgOnNlcnZlciB0CiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICA6c2VydmljZSBzZXJ2ZXItcG9ydAogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgOmxvY2FsICh2ZWN0b3IgMTI3 IDAgMCAxIHNlcnZlci1wb3J0KQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgOm5vcXVlcnkgdAogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgOmZpbHRlciAnZW1hY3NzZXJ2ZXItZmlsdGVyCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICA6c2VudGluZWwgJ2VtYWNzc2Vy dmVyLXNlbnRpbmVsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICA6a2VlcGFsaXZlIHQpKQogICAgICAgICAgICAgICBlbWFjc3NlcnZlci1o YXNoKSkKICAgICh0aHJvdyAncmV0IHQpKSkKCjs7LS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0KOzsgZW1hY3NzZXJ2ZXItZmlsdGVyCjs7LS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKGRlZnVuIGVtYWNzc2Vy dmVyLWZpbHRlciAocHJvYyBtZXNnKQogICJTZXJ2ZXIgc2lkZSBtZXNzYWdl IHByb2Nlc3Npbmcgd2l0aCBhdXRoIgogIChjYXRjaCAncmV0CiAgICAobGV0 ICgoY3dkIGRlZmF1bHQtZGlyZWN0b3J5KQogICAgICAgICAgKGF1dGggKGdl dGhhc2ggcHJvYyBlbWFjc2NsaWVudC1oYXNoKSkKICAgICAgICAgIChzZXJ2 IChnZXRoYXNoIChhcmVmIChwcm9jZXNzLWNvbnRhY3QgcHJvYyAnOmxvY2Fs KSA0KQogICAgICAgICAgICAgICAgICAgICAgICAgZW1hY3NzZXJ2ZXItaGFz aCkpKQogICAgICAoaWYgKG5vdCAobGlzdHAgc2VydikpCiAgICAgICAgICAo dGhyb3cgJ3JldCBuaWwpKQoKICAgICAgKGlmIChub3QgYXV0aCkKICAgICAg ICAgIChpZiAoc3RyaW5nPSAoY2FyIHNlcnYpIChjYWFyIChyZWFkLWZyb20t c3RyaW5nIG1lc2cpKSkKICAgICAgICAgICAgICAocHJvZ24KICAgICAgICAg ICAgICAgIChwdXRoYXNoIHByb2MgdCBlbWFjc2NsaWVudC1oYXNoKQogICAg ICAgICAgICAgICAgKHNldHEgYXV0aCB0KSkpKQoKICAgICAgKGlmIChub3Qg YXV0aCkKICAgICAgICAgICh0aHJvdyAncmV0IG5pbCkpCgogICAgICAoZXZh bCAoY2FyIChjZGFyIChyZWFkLWZyb20tc3RyaW5nIG1lc2cpKSkpCiAgICAg IChjZCBjd2QpKQogICAgKHRocm93ICdyZXQgdCkpKQoKOzstLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo7OyBlbWFjc3NlcnZlci1zZW50aW5l bAo7Oy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCihkZWZ1biBl bWFjc3NlcnZlci1zZW50aW5lbCAocHJvYyBtZXNnKQogIChlbWFjc2NsaWVu dC1jbGVhbikKICAoaWYgKGVxIChwcm9jZXNzLXN0YXR1cyBwcm9jKSAnb3Bl bikKICAgICAgKHB1dGhhc2ggcHJvYyBuaWwgZW1hY3NjbGllbnQtaGFzaCkp KQoKOzstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo7OyBlbWFj c3NlcnZlci1jbGVhbgo7Oy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tCihkZWZ1biBlbWFjc3NlcnZlci1jbGVhbiAoKQogICJDbGVhbiB1cCBz ZXJ2ZXIgaW5zdGFuY2VzIgogIChpbnRlcmFjdGl2ZSkKICAobWFwaGFzaCAn KGxhbWJkYSAoa2V5IHZhbCkKICAgICAgICAgICAgICAoZGVsZXRlLXByb2Nl c3MgKGNkciB2YWwpKSkgZW1hY3NzZXJ2ZXItaGFzaCkKICAoY2xyaGFzaCBl bWFjc3NlcnZlci1oYXNoKQogIChpZiAoaW50ZXJhY3RpdmUtcCkKICAgICAg KG1lc3NhZ2UgIkVtYWNzIHNlcnZlciBwcm9jZXNzZXMgY2xlYXJlZCIpKSkK Cjs7LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KOzsgZW1hY3Nz ZXJ2ZXItZW51bQo7Oy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t CihkZWZ1biBlbWFjc3NlcnZlci1lbnVtICgpCiAgIkVudW1lcmF0ZSBzZXJ2 ZXIgaW5zdGFuY2VzIgogIChpbnRlcmFjdGl2ZSkKICAobWFwaGFzaCAnKGxh bWJkYSAoa2V5IHZhbCkKICAgICAgICAgICAgICAocHJpbmMgKGZvcm1hdCAi U2VydmVyIHByb2Nlc3M6JXMsQXV0aDolcyIgKGNkciB2YWwpIChjYXIgdmFs KSkpKQogICAgICAgICAgIGVtYWNzc2VydmVyLWhhc2gpKQoKOzstLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo7OyBlbWFjc2NsaWVudC1jbGVh bgo7Oy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCihkZWZ1biBl bWFjc2NsaWVudC1jbGVhbiAoKQogICJDbGVhbiB1cCBjbGllbnQgaW5zdGFu Y2VzIgogIChpbnRlcmFjdGl2ZSkKICAobWFwaGFzaCAnKGxhbWJkYSAoa2V5 IHZhbCkKICAgICAgICAgICAgICAoaWYgKG5vdCAoZXEgKHByb2Nlc3Mtc3Rh dHVzIGtleSkgJ29wZW4pKQogICAgICAgICAgICAgICAgICAocmVtaGFzaCBr ZXkgZW1hY3NjbGllbnQtaGFzaCkpKQogICAgICAgICAgIGVtYWNzY2xpZW50 LWhhc2gpCiAgKGlmIChpbnRlcmFjdGl2ZS1wKQogICAgICAobWVzc2FnZSAi RW1hY3MgY2xpZW50IHByb2Nlc3NlcyByZWZyZXNoZWQiKSkpCgo7Oy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCjs7IGVtYWNzY2xpZW50LWVu dW0KOzstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQooZGVmdW4g ZW1hY3NjbGllbnQtZW51bSAoKQogICJDbGVhbiB1cCBzZXJ2ZXIgaW5zdGFu Y2VzIgogIChpbnRlcmFjdGl2ZSkKICAobWFwaGFzaCAnKGxhbWJkYSAoa2V5 IHZhbCkKICAgICAgICAgICAgICAocHJpbmMgKGZvcm1hdCAiQ2xpZW50IHBy b2Nlc3M6JXMsIEF1dGg6JXMiIGtleSB2YWwpKSkKICAgICAgICAgICBlbWFj c2NsaWVudC1oYXNoKSkKCjs7LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0KOzsgICAgICAgICAgICAgICAgICAgR05VIEVtYWNzIGNsaWVudCBj b21tYW5kIGRpc3BhdGNoZXIKOzstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLQoKOzstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo7 OyBlbWFjc2NsaWVudC1jb21tYW5kCjs7LS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0KKGRlZnVuIGVtYWNzY2xpZW50LWNvbW1hbmQgKGV4cHIg Jm9wdGlvbmFsIG1hZ2ljIHBvcnQpCiAgKGNhdGNoICdyZXQKICAgIChsZXQg KChlbWFjc2NsaWVudCAobWFrZS1uZXR3b3JrLXByb2Nlc3MKICAgICAgICAg ICAgICAgICAgICAgICAgOm5hbWUgImVtYWNzY2xpZW50IgogICAgICAgICAg ICAgICAgICAgICAgICA6YnVmZmVyIG5pbAogICAgICAgICAgICAgICAgICAg ICAgICA6dHlwZSBuaWwKICAgICAgICAgICAgICAgICAgICAgICAgOmhvc3Qg IjEyNy4wLjAuMSIKICAgICAgICAgICAgICAgICAgICAgICAgOnNlcnZpY2Ug NTU1NTUKICAgICAgICAgICAgICAgICAgICAgICAgOm5vcXVlcnkgdAogICAg ICAgICAgICAgICAgICAgICAgICA6a2VlcGFsaXZlIHQpKQogICAgICAgICAg KGtleSAoaWYgbWFnaWMKICAgICAgICAgICAgICAgICAgIG1hZ2ljCiAgICAg ICAgICAgICAgICAgImhvdWRpbmkiKSkpCiAgICAgIChpZiBlbWFjc2NsaWVu dAogICAgICAgICAgKHByb2duCiAgICAgICAgICAgIChwcm9jZXNzLXNlbmQt c3RyaW5nIGVtYWNzY2xpZW50CiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIChjb25jYXQKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICIoIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga2V5 CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiKHByb2duIChj ZCAiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAocHJpbjEt dG8tc3RyaW5nIGRlZmF1bHQtZGlyZWN0b3J5KQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIikiCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAocHJpbjEtdG8tc3RyaW5nIGV4cHIpICIpKSIpKQogICAg ICAgICAgICA7OyAocHJvY2Vzcy1zZW5kLWVvZiBlbWFjc2NsaWVudCkKICAg ICAgICAgICAgKHRocm93ICdyZXQgdCkpCiAgICAgICAgKHRocm93ICdyZXQg bmlsKSkpCiAgICAodGhyb3cgJ3JldCBuaWwpKQogIHQpCgo7Oy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCihwcm92aWRlICdlbWFjc3NlcnZl cikKOzstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo= --_----------=_1075974736126070 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://mail.gnu.org/mailman/listinfo/emacs-devel --_----------=_1075974736126070--