Emacs - это IDE выбора для программирования Erlang.
Есть много хороших режимов (distel, erlware-mode, режим erlang по умолчанию,...), но каковы ваши рекомендации по настройке Emacs для профессиональной разработки Erlang?
Emacs - это IDE выбора для программирования Erlang.
Есть много хороших режимов (distel, erlware-mode, режим erlang по умолчанию,...), но каковы ваши рекомендации по настройке Emacs для профессиональной разработки Erlang?
Настройте erlang-режим, как описано в README, а затем активируйте Flymake:
(require 'erlang-flymake)
Это дает вам подсветку предупреждений и ошибок при вводе.
Я бы рекомендовал использовать erlang-mode из последней версии Erlang/OTP (R14A, когда я набираю это), независимо от того, какую версию вы обычно используете, так как она развивается довольно быстро и теперь так же хороша, как и erlware -mode, IMHO.
Если вы используете Emacs 24 или более поздней версии, я рекомендую установить erlang-mode из MELPA. Пакет "erlang" отслеживает ветвь "maint" репозитория Erlang/OTP Git, поэтому он всегда достаточно обновляется.
Если вы хотите больше, чем предложения режима erlang, альтернативой Distel является EDTS, набор инструментов разработки Erlang. Чтобы процитировать файл readme:
EDTS предназначен для замены Distel, но только обеспечивает часть обычно используемые для функций Distel, в частности эквиваленты
erl-find-module
,erl-find-source-under-point
,erl-who-calls
иerl-refactor-subfunction
. Насколько я знаю, это единственные функции Distel что 98% людей используют, но если есть что-нибудь от Distel, что вы пропуская в EDTS, пожалуйста, дайте мне знать.Если вы используете EDTS, удалите Distel из вашей конфигурации, так как запуск обоих может создать некоторую путаницу.
Посмотрите на эту статью о разных пакетах для работы с Erlang от Emacs. Я лично использую erlware-mode + distel
erlang.el(для отступов и блокировки шрифтов) и Distel (отладчик, M- и т.д.) необходимы. ESense, я никогда не использовал, и я понятия не имею, что делает режим erlware. Вы можете использовать некоторые стандартные утилиты Emacs (flymake, интерфейс для управления версиями и т.д.) При написании Erlang.
Я нашел erlang-mode ok, но он не поддерживает kerl (это полезная вещь, вроде rvm для erlang, за исключением того, что она работает).
Итак, я начал это:
https://github.com/nicferrier/emacs-erlang-extras
который поддерживает несколько эрлангов.
Я предполагаю, что он также будет поддерживать арматуру: