This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
- # announcements (3)
- # architecture (53)
- # babashka (6)
- # beginners (101)
- # bitcoin (3)
- # calva (4)
- # cider (3)
- # clara (7)
- # cljdoc (2)
- # cljsrn (14)
- # clojure (104)
- # clojure-europe (96)
- # clojure-germany (21)
- # clojure-nl (6)
- # clojure-serbia (3)
- # clojure-spain (1)
- # clojure-uk (13)
- # clojuredesign-podcast (4)
- # clojurescript (14)
- # crux (53)
- # cursive (5)
- # data-science (19)
- # datomic (14)
- # emacs (15)
- # fulcro (33)
- # graalvm (5)
- # honeysql (3)
- # instaparse (2)
- # jobs (3)
- # lsp (82)
- # malli (2)
- # off-topic (11)
- # pedestal (4)
- # polylith (62)
- # practicalli (4)
- # shadow-cljs (56)
- # tools-deps (53)
- # vim (17)
Hello! Another newbie Emacs Lisp question. I'm trying to launch an external program from Emacs. I found
async-shell-command, which seems to be doing what I want. But I just want my app launched, I don't want to see any more buffers. From the docstring, I think that should be possible.
I've managed to evaluate
display-buffer-alist, and got a lot of values. Do I need to imperatively change this in-place in order to do what I want? Or is there an equivalent to Clojure's
binding? Or can I just pass in an argument and I've misread the docs?
Any advice is appreciated!
> You can configure `async-shell-command-buffer' to specify what to do
> when the `*Async Shell Command*' buffer is already taken by another
> running shell command. To run COMMAND without displaying the output
> in a window you can configure `display-buffer-alist' to use the action
display-buffer-no-window' for the buffer *Async Shell Command*'.
I've got this now:
, but when I run it, I'm getting an empty
(defun teod/shell () (interactive) (async-shell-command "th-terminal"))
*Async Shell Command*buffer that I'd like to avoid.
Do you want Emacs to control the lifecycle of the external process or do you just want a fire and forget process?
If you want your process to live beyond Emacs, it may be simpler to start it outside Emacs.
call-process if you want to completely detach.
Just want to say that I really appreciate the pointers, digging through docs and trying things out now :thumbsup:
Seems promising. Trying to understand how to use
(start-process "RUN" "RUN" "nohup" "th-terminal")
I am no Elisp programmer myself, but I like to dig around when I see an interesting question. Thanks to you, I am also learning new things, 🙂
display-buffer-alist, you can hide (or control other aspects of) any buffers matching a specific RegEx. You can
append to the
alist your own RegEx and configs.
alist is kind of like a hash map.
This is one key-value pair for example,
And the configs will apply to any buffer names matching the
("^\\*Command Line" (+popup-buffer) (actions) (side . bottom) (size . 8) (window-width . 40) (window-height . 0.16) (slot) (vslot) (window-parameters (ttl . 5) (quit . t) (select . ignore) (modeline) (autosave)))