Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/massemanet/distel
emacs - erlang IDE
https://github.com/massemanet/distel
emacs-lisp erlang
Last synced: 19 days ago
JSON representation
emacs - erlang IDE
- Host: GitHub
- URL: https://github.com/massemanet/distel
- Owner: massemanet
- License: mit
- Created: 2010-03-01T14:05:04.000Z (almost 15 years ago)
- Default Branch: master
- Last Pushed: 2022-11-11T15:24:36.000Z (about 2 years ago)
- Last Synced: 2024-11-20T21:58:13.044Z (22 days ago)
- Topics: emacs-lisp, erlang
- Language: Emacs Lisp
- Homepage: http://massemanet.github.io/distel/
- Size: 563 KB
- Stars: 323
- Watchers: 26
- Forks: 73
- Open Issues: 19
-
Metadata Files:
- Readme: README
- Changelog: ChangeLog
- License: LICENSE
Awesome Lists containing this project
- awesome-erlang-cn - distel - emacs,erlang IDE. (开发工具)
- beamtoolbox - [erl
README
distel -- Distributed Emacs Lisp for Erlang.
------------------------------------------------------------Distel is a library for Emacs<->Erlang communication, plus a suite of
tools built on top of it, such as a debugger front-end. It works by
using the Erlang distribution protocol to connect Emacs with regular
Erlang nodes, turning it into a very convenient user-interface
toolkit.After the INSTALL procedure, you will have an extended Erlang mode any
time you edit erlang files. You can see that this is enabled from the
mode-line string "Erlang EXT", instead of just "Erlang". To see the
available commands, use `describe-mode' (C-h m), which describes all
the currently activated modes. Near the bottom of its output you will
find this description:Extensions to erlang-mode for communicating with a running Erlang node.
These commands generally communicate with an Erlang node. The first
time you use one, you will be prompted for the name of the node to
use.Here's a subset of the available commands. Use `describe-mode' (C-h m)
on any Distel buffer when you want to know what commands are
available.C-c C-d n - set the erlang node name
C-c C-d g - upload the distel modules to the erlang nodeM-/ - Complete a module or remote function name.
M-. - Jump from a function call to its definition.
M-, - Jump back from a function definition (multi-level).
C-c C-d : - Evaluate an erlang expression from the minibuffer.
C-c C-d f - Refactor expressions in the region as a new function.
C-c C-d F - Find a module.
C-c C-d i - Toggle debug interpretping of the module.
C-c C-d b - Toggle a debugger breakpoint at the current line.
C-c C-d p - Profile (with fprof) an expression from the minibuffer.
C-c C-d L - Reload an Erlang module.
C-c C-d r - Reload all Erlang modules that are out of date.
C-c C-d w - Who calls function under point.
C-c C-d H - Show the html documentation for a function.
C-c C-d Z - Show the signature for a function.To get more information about a particular command, use "C-h k"
followed by the command's key sequence. For general information about
Emacs' online help, use "C-h ?".If you want to write new commands of your own, the programmer's manual
tells you how. You can make a postscript copy with "make postscript",
or an Info version with "make info" and "make info_install".For more background about the "Session" commands, have a look in
README.ie-session.Hope you enjoy, and please send hacks or feedback to [email protected](*)!
PS: The "dynamic TAGS" with M-. and M-, is the coolest bit to get
started with!Compatibility notes:
The profiler front end requires >= R8B (to get fprof)
The debugger front end requires >= R8B-1Distel itself is not formally tested, but it has enough savvy users
that it'll typically run on the last 2 versions of Erlang and Emacs
(as of 2008 OTP R11/R12 and Emacs 21/22).(*) Luke Gorrie is unfortunately no longer involved with Distel, and
Blutail no longer exists...
there is of course the distel-hackers mailing list;
https://lists.sourceforge.net/lists/listinfo/distel-hackersand the issue tracker at google;
http://code.google.com/p/distelFAQ
1. Can't handle event closed in state derl-recv-challenge-ackthis is what you get if the erlang node and the distel node disagree
one what cookie to use.Use (in erl)
erlang:get_cookie()
and (in emacs)
M-x erl-get-cookie
to check the cookies.