From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Jean Louis Newsgroups: gmane.emacs.devel Subject: Re: [RFC] Option to kill `emacs --daemon' when closing the last client frame Date: Mon, 25 Oct 2021 09:19:30 +0300 Message-ID: References: Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="13499"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Mutt/2.0.7+183 (3d24855) (2021-05-28) Cc: Jim Porter , emacs-devel@gnu.org To: Stefan Monnier Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Mon Oct 25 08:22:53 2021 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1metNk-0003JD-3g for ged-emacs-devel@m.gmane-mx.org; Mon, 25 Oct 2021 08:22:52 +0200 Original-Received: from localhost ([::1]:47702 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1metNi-0005G3-6B for ged-emacs-devel@m.gmane-mx.org; Mon, 25 Oct 2021 02:22:50 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:32814) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1metLl-00038s-1H for emacs-devel@gnu.org; Mon, 25 Oct 2021 02:20:49 -0400 Original-Received: from stw1.rcdrun.com ([217.170.207.13]:33659) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1metLi-0000Lz-8W for emacs-devel@gnu.org; Mon, 25 Oct 2021 02:20:48 -0400 Original-Received: from localhost ([::ffff:41.75.189.151]) (AUTH: PLAIN admin, TLS: TLS1.3,256bits,ECDHE_RSA_AES_256_GCM_SHA384) by stw1.rcdrun.com with ESMTPSA id 0000000000027F05.0000000061764CBC.00000250; Sun, 24 Oct 2021 23:20:43 -0700 Mail-Followup-To: Stefan Monnier , Jim Porter , emacs-devel@gnu.org Content-Disposition: inline In-Reply-To: Received-SPF: pass client-ip=217.170.207.13; envelope-from=bugs@gnu.support; helo=stw1.rcdrun.com X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.23 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-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:277709 Archived-At: * Stefan Monnier [2021-10-22 14:59]: > > This would allow for a behavior similar to other (graphical) programs: if > > I run `firefox example.com', it starts a new instance as normal. If I run it > > again, it opens a new tab in the existing instance. If I close all the > > Firefox windows, all the associated processes terminate. > > I guess it would make sense to try and distinguish the two cases: > > - Eager: `emacs --daemon` is run (typically from something like a login > script or systemd) before any emacsclient is involved. > - Lazy: `emacs --daemon` is started on-demand by the `-a` option > of `emacsclient` (or via ALTERNATE_EDITOR). > > In the lazy case, we could kill the daemon when the last client exits. Can the variable `server-clients' help to detect how many clients are there? Then if so, one can make Emacs Lisp function and put in configuration file, then such user can have the Emacs Daemon killed if last client is closed. -- Jean Take action in Free Software Foundation campaigns: https://www.fsf.org/campaigns In support of Richard M. Stallman https://stallmansupport.org/fs