| 1 |
Jungerl version: |
|---|
| 2 |
|
|---|
| 3 |
When you type the opening '(' for a function call Distel will |
|---|
| 4 |
try to show the function's argument list(s) in the echo area. |
|---|
| 5 |
(Very nice feature by Martin Björklund.) |
|---|
| 6 |
|
|---|
| 7 |
If you want to choose a new node to talk to then use |
|---|
| 8 |
`erl-choose-nodename' (C-c C-d n). Now C-u is just a regular |
|---|
| 9 |
prefix argument and not a node-chooser. |
|---|
| 10 |
|
|---|
| 11 |
The default remote node name is now displayed in the modeline. |
|---|
| 12 |
|
|---|
| 13 |
The 'dec32' helper C program no longer exists! Thanks Dave |
|---|
| 14 |
Love for reimplementing it in Elisp using floats (and doing a |
|---|
| 15 |
whole slew of cleanups besides). |
|---|
| 16 |
|
|---|
| 17 |
Distel now tricks R10B-0 into thinking that it can support |
|---|
| 18 |
extended pids. This allows distribution to be established. Of |
|---|
| 19 |
course it would be better to really support them :-) |
|---|
| 20 |
|
|---|
| 21 |
Version 3.3: |
|---|
| 22 |
|
|---|
| 23 |
A User Manual is now available from the homepage, |
|---|
| 24 |
http://www.bluetail.com/~luke/distel/ |
|---|
| 25 |
|
|---|
| 26 |
'fdoc' online docmentation is now included, with "C-c C-d d" |
|---|
| 27 |
and "C-c C-d a" to do "describe" and "apropos", |
|---|
| 28 |
respectively. 'fdoc' is a program for automatically extracting |
|---|
| 29 |
documentation from the comments in source files - it primarily |
|---|
| 30 |
exists in the Jungerl. |
|---|
| 31 |
|
|---|
| 32 |
Refactoring support now exists, with a command to take an |
|---|
| 33 |
expression from a function and "refactor" it into a separate |
|---|
| 34 |
sub-function. Distel automatically passes the appropriate |
|---|
| 35 |
variables to the new function by using the 'syntax_tools' |
|---|
| 36 |
package to analyse the expression. This feature requires |
|---|
| 37 |
'syntax_tools' version 1.2 to be installed separately. |
|---|
| 38 |
|
|---|
| 39 |
Breakpoint handling in the debugger has been improved in many |
|---|
| 40 |
small ways. There is also an extra keybinding for toggling |
|---|
| 41 |
breakpoints, "C-x SPC", for consistency with other Emacs |
|---|
| 42 |
packages. |
|---|
| 43 |
|
|---|
| 44 |
Giving a numeric prefix argument to M-. will force it to |
|---|
| 45 |
prompt for the function to lookup. This is useful if you want |
|---|
| 46 |
to find the source for a function that isn't being called in |
|---|
| 47 |
any code that you have handy. You can give it a numeric prefix |
|---|
| 48 |
with e.g. "M-1 M-." |
|---|
| 49 |
|
|---|
| 50 |
Version 3.2: |
|---|
| 51 |
|
|---|
| 52 |
Completion of module and function names. So list:keyso |
|---|
| 53 |
completes to lists:keysort, etc. Bound to M-TAB and (since |
|---|
| 54 |
some window managers take that) M-?. Also has popups for |
|---|
| 55 |
ambiguous completions and all that good stuff. |
|---|
| 56 |
(Thanks Mikael Karlsson for suggesting this often enough that |
|---|
| 57 |
it finally sunk in :-)) |
|---|
| 58 |
|
|---|
| 59 |
Major debugger extensions by Martin Björklund: |
|---|
| 60 |
|
|---|
| 61 |
- Visual breakpoints: lines with breakpoints set are now |
|---|
| 62 |
highlighted in red. If the buffer is modified, the |
|---|
| 63 |
breakpoints turn purple to indicate that they may be out of |
|---|
| 64 |
sync with the line numbers in the Erlang node. Once editing |
|---|
| 65 |
is finished at the code is reloaded, the breakpoints can be |
|---|
| 66 |
resynchronized with C-c C-d s. |
|---|
| 67 |
|
|---|
| 68 |
Note that using "l(module)" in the shell seems to go behind |
|---|
| 69 |
the debugger's back, so to reload an interpreted module you |
|---|
| 70 |
should use either C-c C-d L in Emacs, or i(...) in the |
|---|
| 71 |
shell. |
|---|
| 72 |
|
|---|
| 73 |
- Save (C-c C-d S) and Restore (C-c C-d R) of debugger state |
|---|
| 74 |
(set of interpreted modules and breakpoints.) This can be |
|---|
| 75 |
used to temprarily save your debug settings while restarting |
|---|
| 76 |
a node, etc. The settings are stored inside Emacs. |
|---|
| 77 |
|
|---|
| 78 |
Group for Customization (M-x customize), so customizable |
|---|
| 79 |
variables can be configured interactively. It's in |
|---|
| 80 |
Programming->Tools->Distel. |
|---|
| 81 |
|
|---|
| 82 |
More faithful tags-compliance (i.e. prompting for which tag to |
|---|
| 83 |
follow after M-.) optionally available, via the (Customizable) |
|---|
| 84 |
`distel-tags-compliant' variable (Martin Björklund.) |
|---|
| 85 |
|
|---|
| 86 |
Distel commands now appear in the Erlang pull-down menu |
|---|
| 87 |
(Martin Björklund) |
|---|
| 88 |
|
|---|
| 89 |
Improved "Interactive Session" support. Now C-j evaluates the |
|---|
| 90 |
previous expression and inserts the result in-line, and C-M-x |
|---|
| 91 |
evaluates a function definition and prints the result as a |
|---|
| 92 |
message. The binding for creating/showing a session is now |
|---|
| 93 |
C-c C-d e. |
|---|
| 94 |
|
|---|
| 95 |
Improved process-manager support, with many small UI |
|---|
| 96 |
enhancements: 'u' updates the list, 'k' kills a process, fewer |
|---|
| 97 |
buffers are created, better errors when inspecting dead |
|---|
| 98 |
processes, ... (thanks Martin Björklund and Mats Cronqvist) |
|---|
| 99 |
|
|---|
| 100 |
EXIT signals are now generated for remote processes when the |
|---|
| 101 |
link goes down. This solves some long-standing problems like |
|---|
| 102 |
the debug monitor hanging if you restart the node you were |
|---|
| 103 |
debugging on. |
|---|
| 104 |
|
|---|
| 105 |
Option to explicitly set a cookie in the variable |
|---|
| 106 |
`derl-cookie' (Mats Cronqvist) |
|---|
| 107 |
|
|---|
| 108 |
Now you can connect several Emacsen to the same Erlang node, |
|---|
| 109 |
because Distel now uses a unique distel_<pid>@<host> node name |
|---|
| 110 |
for each Emacs. |
|---|
| 111 |
|
|---|
| 112 |
Version 3.1: |
|---|
| 113 |
|
|---|
| 114 |
Compatibility with R9. |
|---|
| 115 |
|
|---|
| 116 |
New and incompatible pattern syntax: |
|---|
| 117 |
[foo Bar] becomes ['foo bar]. |
|---|
| 118 |
In other words, symbols without quotes are now variables, even |
|---|
| 119 |
if they're lower case. |
|---|
| 120 |
|
|---|
| 121 |
References can now be sent and received, and also created with |
|---|
| 122 |
(erl-make-ref). |
|---|
| 123 |
|
|---|
| 124 |
Greatly improved support for helping the debugger find the |
|---|
| 125 |
code for the modules you want to interpret, courtesy of Mats |
|---|
| 126 |
Cronqvist <etxmacr@cbe.ericsson.se>. |
|---|
| 127 |
|
|---|
| 128 |
Automated bug reporting with "M-x report-distel-problem", |
|---|
| 129 |
which generates an email template addressed to the mailing |
|---|
| 130 |
list, populated with some trace information. |
|---|
| 131 |
|
|---|
| 132 |
M-. (erl-find-source-under-point) doesn't RPC on local |
|---|
| 133 |
function lookups, making it faster. M-* now does the same as |
|---|
| 134 |
M-, (jump back from a function definition), since it is more |
|---|
| 135 |
consistent with TAGS. (M-, still works too.) |
|---|
| 136 |
|
|---|
| 137 |
Version 3.0: |
|---|
| 138 |
|
|---|
| 139 |
Lots and lots and lots. |
|---|
| 140 |
|
|---|
| 141 |
Dynamic TAGS, debugger, profiler, shell-cum-scratchpad, and |
|---|
| 142 |
generally "end-user" applications. |
|---|
| 143 |
|
|---|
| 144 |
Substantial improvements to the programming interface too, |
|---|
| 145 |
particularly eliminating the ugly `tuple' tag. |
|---|
| 146 |
|
|---|
| 147 |
Thanks are due to David Wallin (!), Torbjörn Törnkvist, and |
|---|
| 148 |
Darius Bacon (so far..) for hacks and ideas, and all the good |
|---|
| 149 |
sports here at Bluetail for beta testing :-) |
|---|
| 150 |
|
|---|
| 151 |
Version 2.0: |
|---|
| 152 |
|
|---|
| 153 |
Major additions are pattern matching and `erl-receive'. This |
|---|
| 154 |
has simplified the programming interface a lot, making |
|---|
| 155 |
`erl-mailbox' become undocumented and `erl-continue' be |
|---|
| 156 |
reclassified as an ``internal'' function. All existing |
|---|
| 157 |
programs can be updated to be much neater. The actual changes |
|---|
| 158 |
are backwards compatible, even though some things have |
|---|
| 159 |
disappeared from the documentation. |
|---|
| 160 |
|
|---|
| 161 |
Ported to XEmacs (21.1). |
|---|
| 162 |
|
|---|
| 163 |
Many thanks to Vladimir Sekissov, Darius Bacon, and Vlad |
|---|
| 164 |
Dumitrescu for code and advice on this release. |
|---|
| 165 |
|
|---|