Est-ce que quelqu'un sait comment configurer le mode emacs d'Erlang de sorte que la compilation d'un tampon [C-c C-k] écrit le fichier de poutre dans le répertoire ebin plutôt que dans le répertoire courant?Erlang emacs mode - setting outdir
Merci!
Est-ce que quelqu'un sait comment configurer le mode emacs d'Erlang de sorte que la compilation d'un tampon [C-c C-k] écrit le fichier de poutre dans le répertoire ebin plutôt que dans le répertoire courant?Erlang emacs mode - setting outdir
Merci!
Vous pouvez jeter un oeil à ce fil sur les questions Erlang Liste de diffusion:
http://www.erlang.org/pipermail/erlang-questions/2007-August/028367.html
De plus, vous devriez être en mesure de compiler votre fichier en mode débogage: Cu Cc Ck
La commande erlang-compile doit prendre en charge les arguments de préfixe. Vous pouvez jeter un oeil à:
http://www.gnu.org/software/emacs/manual/html_node/elisp/Prefix-Command-Arguments.html
Si vous configurez votre structure de répertoire comme ceci:
/
/src/
/ebin/
et placez votre module (par exemple "my_file.erl") dans "/src/"répertoire puis le compiler (Cc Ck) puis Emacs devrait automatiquement mettre le faisceau dans le répertoire"/ebin/". Cependant, si votre module ne se trouve pas dans un répertoire nommé "/ src /" (ou si le répertoire "ebin" est manquant), le faisceau sera supprimé à côté du fichier source.
Pour voir exactement comment cela fonctionne, jetez un œil à $ERL_TOP/lib/tools/emacs/erlang.el et recherchez "ebin". Voici ce que vous trouverez:
(defun inferior-erlang-compile-outdir()
"Return the directory to compile the current buffer into."
(let* ((buffer-dir (directory-file-name
(file-name-directory (buffer-file-name))))
(parent-dir (directory-file-name
(file-name-directory buffer-dir)))
(ebin-dir (concat (file-name-as-directory parent-dir) "ebin"))
(buffer-dir-base-name (file-name-nondirectory
(expand-file-name
(concat (file-name-as-directory buffer-dir)
".")))))
(if (and (string= buffer-dir-base-name "src")
(file-directory-p ebin-dir))
(file-name-as-directory ebin-dir)
(file-name-as-directory buffer-dir))))
Je ne sais pas quand ce Goody a été ajouté, mais il était en OTP_R13B03 et il fonctionne pour moi dans R14B03.