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