Join GitHub today
GitHub is home to over 20 million developers working together to host and review code, manage projects, and build software together.
Emacs Lisp Erlang
Fetching latest commit…
Cannot retrieve the latest commit at this time.
|Failed to load latest commit information.|
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 node M-/ - 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@example.com(*)! 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-1 Distel 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-hackers and the issue tracker at google; http://code.google.com/p/distel FAQ 1. Can't handle event closed in state derl-recv-challenge-ack this 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.