help-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[SOLVED] Re: How to detect two emacs process in Elisp code?


From: address@hidden
Subject: [SOLVED] Re: How to detect two emacs process in Elisp code?
Date: Thu, 3 Sep 2020 10:45:09 +0800

Thanks for quick reply. Confirmed it solved my problem. Thanks very much!

[stardiviner]           <Hack this world!>      GPG key ID: 47C32433
IRC(freeenode): stardiviner                     Twitter:  @numbchild
Key fingerprint = 9BAA 92BC CDDD B9EF 3B36  CB99 B8C4 B8E5 47C3 2433
Blog: http://stardiviner.github.io/


On Thu, Sep 3, 2020 at 10:41 AM Emanuel Berg via Users list for the GNU
Emacs text editor <help-gnu-emacs@gnu.org> wrote:

> stardiviner wrote:
>
> > I load desktop-save-mode session in init.el.
> > But when using "bug-hunter-init-file", I need to
> > exclude this session init file.
> >
> > Here is my try:
> >
> > #+begin_src emacs-lisp
> > ;;; detect external system has Emacs process running?
> > ;;; If yes, like `bug-hunter' is running. Then don't load session.
> > ;;; FIXME
> > (let ((emacs-processes
> >        (length (mapcar
> >                 'string-to-number
> >                 (seq-filter
> >                  (lambda (str)
> >                    (not (string-empty-p str)))
> >                  (split-string
> >                   ;; (shell-command-to-string "ps -C emacs -o pid=")
> >                   (shell-command-to-string "ps -C emacs -o pid=")
> >                   "\n"))))))
> >   (when (<= emacs-processes 1)
> >     (message "init-emacs-session loading")
> >     (require 'init-emacs-session)))
> > #+end_src
>
> Try this:
>
> (require 'seq)
> (defun how-many-emacs ()
>   (let ((emacs-processes
>          (length (mapcar
>                   #'string-to-number
>                   (seq-filter
>                    (lambda (str)
>                      (not (string-empty-p str)) )
>                    (split-string
>                     (shell-command-to-string "ps -C emacs -o pid=")
>                     "\n") )))))
>     (message (format "Emacs process: %d" emacs-processes)) ))
> ;; (how-many-emacs) ; 1
>
> --
> underground experts united
> http://user.it.uu.se/~embe8573
> https://dataswamp.org/~incal
>
>
>


reply via email to

[Prev in Thread] Current Thread [Next in Thread]