¿Alguien sabe cómo configurar el modo Erlang emacs para que la compilación de un búfer [C-c C-k] escriba el archivo del rayo en el directorio ebin en lugar del directorio actual?Erlang emacs mode - setting outdir
Gracias!
¿Alguien sabe cómo configurar el modo Erlang emacs para que la compilación de un búfer [C-c C-k] escriba el archivo del rayo en el directorio ebin en lugar del directorio actual?Erlang emacs mode - setting outdir
Gracias!
Es posible que desee echar un vistazo a este hilo en las Preguntas Erlang la lista de correo:
http://www.erlang.org/pipermail/erlang-questions/2007-August/028367.html
otra parte, debe ser capaz de compilar el archivo en modo de depuración: Cu Cc Ck
El comando erlang-compile debe ser compatible con los argumentos de prefijo. Es posible que desee echar un vistazo a:
http://www.gnu.org/software/emacs/manual/html_node/elisp/Prefix-Command-Arguments.html
Si configura la estructura de directorios de este modo:
/
/src/
/ebin/
y colocar el módulo (por ejemplo, "my_file.erl") en el "/src/"directorio luego compilarlo (Cc Ck) entonces Emacs debería colocar automáticamente el rayo en el directorio"/ebin/".
Sin embargo, si su módulo no está en un directorio llamado "/ src /" (o si falta el directorio "ebin"), la barra se dejará caer junto con el archivo de origen.
Para ver exactamente cómo funciona, eche un vistazo a $ERL_TOP/lib/tools/emacs/erlang.el y busque "ebin". Esto es lo que encontrará:
(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))))
No sé cuando se añadió esta chuchería, pero fue en OTP_R13B03 y funciona para mí en R14B03.