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

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

Better way to make sure external command exists in the system?


From: Jean Louis
Subject: Better way to make sure external command exists in the system?
Date: Thu, 18 Mar 2021 15:13:02 +0300

I have changed the OS on one computer and noticed that my Emacs Lisp
programs use external commands like: mailutils, mail, pandoc,
markdown, and others. Sometimes I was hard coding the path names like
/usr/local/bin and now some commands changed to /usr/bin

And some functions should not even run if external command does not
exist. I would even like to stop loading the .el program if necessary
external programs do not exist in the system.

For that reason I would do some changes:

- instead of hard coding the program name within quotes, I will use
  variable. Instead of (shell-command "mogrify ...") I will rather use
  something like (shell-command (format "%s ..." mogrify-command))

- variables for commands I would place at beginning of programs

- before variables get defined, I would use `executable-find' but I
  would like for the program loading to fail if those external
  programs cannot be found.

Is it then recommended to use something like:

(defun check-my-executables ()
  ...)

(check-my-executables)

during the loading time?

Jean










reply via email to

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