Czy ktoś wie, jak skonfigurować tryb emls Erlanga, aby skompilowanie bufora [C-c C-k] zapisywał plik belki do katalogu ebin zamiast do bieżącego katalogu?Tryb emacs Erlanga - ustawienie outdir
Dzięki!
Czy ktoś wie, jak skonfigurować tryb emls Erlanga, aby skompilowanie bufora [C-c C-k] zapisywał plik belki do katalogu ebin zamiast do bieżącego katalogu?Tryb emacs Erlanga - ustawienie outdir
Dzięki!
Czasami warto zajrzeć do tego wątku w pytaniach Erlang Mailing List:
http://www.erlang.org/pipermail/erlang-questions/2007-August/028367.html
Ponadto, powinny być w stanie skompilować plik w trybie debug: Cu Cc Ck
Komenda erlang-compile powinna obsługiwać argumenty prefiksu. może chcesz mieć wygląd:
http://www.gnu.org/software/emacs/manual/html_node/elisp/Prefix-Command-Arguments.html
Jeśli skonfigurować strukturę katalogów tak:
/
/src/
/ebin/
i umieść moduł (np „my_file.erl”) w "/src/", a następnie skompiluj go (Cc Ck), a następnie Emacs powinien automatycznie umieścić belkę w katalogu"/ebin/".
Jeśli jednak twój moduł nie znajduje się w katalogu o nazwie "/ src /" (lub jeśli brakuje katalogu "ebin"), belka zostanie upuszczona obok pliku źródłowego.
Aby zobaczyć dokładnie, jak to działa, zerknij na numer $ERL_TOP/lib/tools/emacs/erlang.el i wyszukaj "ebin". Oto, co znajdziesz:
(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))))
Nie wiem, kiedy to cukierek został dodany, ale to było w OTP_R13B03 i to działa na mnie w R14B03.