¿Cómo puedo ejecutar `Mx compile` bajo un shell particular en emacs?

¿Cómo puedo ejecutar `Mx compile` bajo un shell particular en emacs?

Tengo un software que solo se puede compilar en my-weird-sh. Me gusta usarlo some-better-shen mi trabajo diario, así que ese es mi shell de inicio de sesión (a través de chsh). Esto cambia el shell en Emacs my-better-sh, que normalmente está muy bien. Sin embargo, some-better-shno se puede compilar el software.

¿Cómo puedo cambiar el caparazón por compile?

Respuesta1

Usar

(defun weird-compile () (interactive)
  (let ((shell-file-name "/bin/my-weird-sh"))
    (call-interactively #'compile)))

Esto se configurará shell-file-namelocalmente cuando llame weird-compile, que puede vincular a la clave de su elección.

información relacionada