Emacs для Erlang с vi, как сочетания клавиш и удобные короткие ссылки? - PullRequest
3 голосов
/ 12 февраля 2011

Я сталкивался с сочетаниями клавиш в стиле vi для Emacs, но мой предыдущий опыт в смешивании конфигурации на основе Lisp в файле .emacs для включения различных режимов и т. Д. До сих пор не был очень приятным.

Прочитайте несколько статей по Emacs + Erlang, но есть ли что-то, что может быть немного проще для людей, знакомых в основном с vi (и незнакомых с Лиспом)?

Весь набор возможностей (комбинаций клавиш) довольно огромен. Существует ли сокращенная ссылка на карту ключей / ярлыки, особенно подходящую для разработки Erlang?

Ответы [ 2 ]

2 голосов
/ 14 февраля 2011

Просто используйте vi и командную строку.Есть много людей, которые делают это, и, кажется, они работают просто отлично для них.Несмотря на то, что я использую Emacs, я использую не взаимодействие Emacs-erlang.Скорее у меня обычно есть отдельная оболочка Erlang, а затем я загружаю модули в эту оболочку с помощью команды l() для взаимодействия.


Отвечаю на ваши вопросы один за другим:

  • Отладка в Эрланге это смешно.Во-первых, если ваша программа остается функциональной , вы обнаружите, что вам нужно гораздо меньше отладки, чтобы выяснить, что программа делает неправильно, потому что вы можете просто написать небольшие тесты для каждой из многочисленных функций, чтобы проверить ее правильность.И вы можете добавить их в каркас модульных тестов.

    Как только вы добавите в процесс несколько процессов, вы обнаружите, что традиционная отладка больше не работает.Хитрость заключается в том, чтобы отслеживать и утверждать, и вам нужно будет научиться читать программы без их запуска и видеть, куда они идут с отладчиком.

    Тем не менее, попробуйте выполнить debugger:start() в Erlangshell :) Есть также системы трассировки и redbug , сторонний инструмент, построенный поверх них (часть набора eper).

  • Профилированиеэто можно сделать с помощью одного из 3-4 профилировщиков: cprof, eprof и fprof немного отличаются по своему объему и тому, насколько они влияют на вашу программу и могут ли они работать в производственной системе илине.Я обычно использую eprof, и в моей программе есть кнопка, которая порождает eprof, а затем присоединяет его при запуске программы.

  • Попробуйте appmon:start() в оболочке.

  • Стандартный vi-способ просмотра больших баз кода заключается в создании tags -файлов, чтобы вы могли перейти к точке определения объекта под курсором.Emacs может сделать то же самое.У меня есть цель make tags для создания этих файлов, чтобы я мог легко перемещаться по исходному коду.При прыжке у вас есть стек предыдущих прыжков, так что вы можете вернуться к точке, которую вы прыгнули с позже.

  • Наконец, есть такие инструменты, как xref, которыеможно работать для создания графов вызовов и находить странные вещи в коде.Это потребует некоторого кодирования с вашей стороны, но оно предоставит вам необходимые инструменты.

0 голосов
/ 14 февраля 2011

Режим Viper обеспечивает сочетание клавиш в стиле Vi. Это, наверное, самый простой способ начать. Включение нового режима в вашем .emacs является довольно фундаментальной частью использования Emacs, так что это препятствие для обучения, которое лучше всего устранять заранее!

В руководстве Emacs содержится более подробная информация о внесении индивидуальных изменений в ваши сочетания клавиш.

Вы можете найти учебник по связыванию клавиш Xah полезным, так как он содержит много примеров.

...