From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: W. Greenhouse Newsgroups: gmane.emacs.help Subject: Re: Independent differently-configured instances running concurrently Date: Tue, 29 Apr 2014 20:24:32 +0000 Message-ID: <8738gvvq7z.fsf@motoko.kusanagi> References: NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1398803130 21826 80.91.229.3 (29 Apr 2014 20:25:30 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 29 Apr 2014 20:25:30 +0000 (UTC) To: help-gnu-emacs-mXXj517/zsQ@public.gmane.org Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org-mXXj517/zsQ@public.gmane.org Tue Apr 29 22:25:23 2014 Return-path: Envelope-to: geh-help-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 1WfEah-0001IE-2f for geh-help-gnu-emacs@m.gmane.org; Tue, 29 Apr 2014 22:25:23 +0200 Original-Received: from localhost ([::1]:52552 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WfEag-00086C-Gr for geh-help-gnu-emacs@m.gmane.org; Tue, 29 Apr 2014 16:25:22 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:35166) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WfEaN-0007xu-9c for help-gnu-emacs-mXXj517/zsQ@public.gmane.org; Tue, 29 Apr 2014 16:25:10 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WfEaB-0004IL-St for help-gnu-emacs-mXXj517/zsQ@public.gmane.org; Tue, 29 Apr 2014 16:25:03 -0400 Original-Received: from plane.gmane.org ([80.91.229.3]:45494) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WfEaB-0004ID-MK for help-gnu-emacs-mXXj517/zsQ@public.gmane.org; Tue, 29 Apr 2014 16:24:51 -0400 Original-Received: from list by plane.gmane.org with local (Exim 4.69) (envelope-from ) id 1WfEa9-0000el-Ra for help-gnu-emacs-mXXj517/zsQ@public.gmane.org; Tue, 29 Apr 2014 22:24:49 +0200 Original-Received: from rainbowwarrior.torservers.net ([77.247.181.164]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Tue, 29 Apr 2014 22:24:49 +0200 Original-Received: from wgreenhouse by rainbowwarrior.torservers.net with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Tue, 29 Apr 2014 22:24:49 +0200 X-Injected-Via-Gmane: http://gmane.org/ Original-Lines: 62 Original-X-Complaints-To: usenet-dbVV3NMTNubNLxjTenLetw@public.gmane.org X-Gmane-NNTP-Posting-Host: rainbowwarrior.torservers.net X-Archive: encrypt User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux) Cancel-Lock: sha1:Yixn5mVjDjvSf9IQFeJIgNBBwdE= X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 80.91.229.3 X-BeenThere: help-gnu-emacs-mXXj517/zsQ@public.gmane.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org-mXXj517/zsQ@public.gmane.org Original-Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org-mXXj517/zsQ@public.gmane.org Xref: news.gmane.org gmane.emacs.help:97453 Archived-At: Hans BKK writes: > @W. Greenhouse > > Thanks for the details about the daemon; is there any benefit beyond > reducing startup time? The daemon can be used essentially as a terminal multiplexer (like GNU Screen/tmux), except it works across X sessions, too. So combined with ssh (with or without X forwarding), it gives you a network-transparent, text-oriented Emacs "desktop". It is similar to the utility one would get as a text-tool user by using GNU Screen or tmux, thus keeping open their mailclient, chat client, editor windows, etc., all preserved for them and ready to use from a remote terminal; I can walk away from my home desktop, ssh into it, and have the same emacs state waiting for me. The daemon also allows remote evaluation of code, from one Emacs instance to another via `server-eval-at' or from any arbitrary program which can shell out to an Emacs daemon via emacsclient --eval. Reducing startup time is probably the least interesting and least important feature of the daemon. :) > I'm sure I'll put it to use for my evolving "production" setup once > I'm actually using emacs. > >> I don't normally use multiple instances, because I find it more >> convenient to have kill ring/command history/buffers shared and >> available from any of my emacsclients, but sometimes when testing a >> new configuration I will start up a second daemon > > Well pretty much all I'm doing is testing configuration stuff ATM. Not > sure what the benefit would be of having multiple daemons running? The same as for multiple Emacs processes in general; it may be that for organizational purposes (e.g. dividing home from work tasks, or giving a separate instance to mail/IRC/whatever) you want the processes isolated from each other, or you may want this for testing new configurations in isolation from your main Emacs daemon process. > I assume if I change a given config I'd need to kill that > daemon-instance as well as any client frames to see the effects. Not really. An important feature of Emacs as a Lisp-based environment is being able to rewrite your environment in real time. Anything that can be done in terms of Emacs programming and configuration (including redefining functions in the Emacs "standard library") can be done in a running session: in the *scratch* buffer or IELM (different variations on REPL-like interaction), by remote evaluation on an emacs daemon, or by evaluating parts of an elisp library as you edit it. But a second instance can be used to hack and break things in isolation from your real work environment. (I don't bother doing this very often because even when I hack and break things in my main instance, Emacs is quite conscientious about backing up my real work; between the auto-save and backup facilities, data loss is essentially nonexistent.) -- Best, WGG Reply to list only, please. Off-list replies will be filtered and deleted.