1 2000-02-22 Stefan Monnier <monnier@cs.yale.edu>
3 * sml-mode.el (sml-find-matching-starter): Use a list of syms instead of a
5 (sml-indent-default): Use symbol membership rather than a regexp.
6 Also, use `sym-indent' instead of (current-column). This fixes a problem
7 with a hanging `structure Foo = (struct|let)' (due to `structure' having
8 a sml-indent-rule, as opposed to `fun'). Hopefully it won't introduce
10 (sml-font-lock-keywords): Match vars `val x : int' also.
11 (sml-electric-pipe): Update to the new `sml-find-matching-starter' and
12 return a sensible default instead of raising an error in case of
13 unexpected situations.
14 (sml-indent-line): Ignore errors and keep the cursor where it is.
15 (sml-calculate-indentation, sml-indent-pipe): Use syms instead of regexps.
17 * sml-defs.el (sml-starters-re, sml-pipehead-re): Remove.
19 * testcases.sml: New file.
21 * makefile.pkg (test): new target to run the test suite.
23 2000-02-18 Stefan Monnier <monnier@cs.yale.edu>
25 * *.el: Pass through checkdoc and use `eval-when-compile' whenever
26 possible for (require 'cl).
28 2000-02-18 Stefan Monnier <monnier@cs.yale.edu>
30 * sml-util.el (make-temp-dir, make-temp-file, temp-file-dir,
31 delete-temp-dirs): Replaced by the make-temp-file from Emacs-21.
32 (custom-create-map): add :group arg and allow key to be a list.
33 (define-major-mode): Removed (use define-derived-mode instead).
34 (sml-builtin-nested-comments-flag): New var.
37 * sml-proc.el (sml-host-name): New var.
38 (sml-make-file-name): Replaced by `sml-compile-commands'.
39 (sml-config-file): New var.
40 (sml-compile-commands-alist): New var.
41 (inferior-sml-load-hook): Removed.
42 (sml-buffer): Query if the current buffer is not a *sml*.
43 (inferior-sml-mode): Use minor-mode-overriding-map-alist to disable
44 compilation-minor-mode's keybindings.
45 (run-sml): Turn into an alias for sml-run.
46 (sml-run): Query the user for the command. If prefix is set (or if
47 default value is not null) query for args and host. Use `split-string'
48 rather than our own function. Run cmd on another host if requested and
49 pass it an init file if it exists. Pop to the buffer at the end.
50 (sml-args-to-list): Remove.
51 (sml-compile): Look for special files (sml-compile-command-alist) in
52 the current dir (and its parents) to choose a default command. Remember
53 the command for next time in the same buffer. Make the `cd' explicit in
54 the command so the user can change it.
55 (sml-make-error): Fix for when `endline' is absent.
57 * sml-mode.el: Pass it through checkdoc.
58 (sml-mode-version): Remove.
59 (sml-load-hook): Remove.
60 (sml-mode-info): Use `info' rather than `Info-goto-node'.
61 (sml-keywords-regexp): Add "o".
62 (sml-syntax-prop-table): Use `defsyntax'.
63 (sml-font-lock-syntactic-keywords): Only use nested comments if supported.
64 (sml-mode): Use `define-derived-mode'.
65 (sml-electric-pipe): `sml-indent-line' -> `indent-according-to-mode'.
66 (sml-indent-line): Use `indent-line-to'.
67 (sml-cm-mode): New mode for CM files.
71 * sml-mode-startup.el: Remove since it's now autogenerated.
73 * sml-defs.el (sml-bindings): Remove left over C-c` binding.
74 (sml-mode-map): Add binding for sml-drag-region (was in sml-proc.el).
75 (sml-mode-syntax-table): Only use nested comments if supported.
76 (sml-mode-menu): Use next-error rather than the old sml-next-error.
77 (sml-pipehead-re): Remove "of".
79 * sml-compat.el (set-keymap-=parents): Make sure it also works when called
80 with a single keymap rather than a list.
81 (temporary-file-directory): Add a default definition for XEmacs.
82 (make-temp-file): New function.
84 1999-08-11 Stefan Monnier <monnier@cs.yale.edu>
86 * release: version 3.9.3
88 * sml-mode.texi: somewhat updated the doc.
90 1999-08-09 Stefan Monnier <monnier@cs.yale.edu>
92 * Makefile: updated to the version of pcl-cvs.
94 * sml-proc.el: eliminated some old unused code.
96 * sml-defs.el,sml-mode.el,sml-proc.el: added simple customize support.
98 1999-07-07 Stefan Monnier <monnier@cs.yale.edu>
100 * sml-proc.el (sml-update-cursor): make sure it also works if compile.el
101 is fixed to uses a marker.
103 * sml-mode.el (sml-indent): fix the `fixindent'.
105 1999-06-22 Stefan Monnier <monnier@cs.yale.edu>
107 * sml-mode-startup.el: fixed to fulfill autoload.el assumptions.
109 1999-06-21 Stefan Monnier <monnier@cs.yale.edu>
111 * sml-defs.el (sml-bindings): removed bindings for TAB and M-C-\
113 1999-06-19 Stefan Monnier <monnier@cs.yale.edu>
115 * sml-mode.el (sml-font-lock-keywords): skip type vars in "fun 'a myfn"
116 (sml-calculate-indentation): add a hack to allow the user to manually
117 override the indentation algorithm with a magic comment.
119 * sml-mode-startup.el: update the autoloads automatically.
121 1999-06-19 Stefan Monnier <monnier@cs.yale.edu>
125 * sml-proc.el (sml-error-regexp-alist): solved the pathological
126 font-locking on long lines.
128 * sml-move.el (sml-forward-sexp): slightly improved.
130 1999-06-17 Stefan Monnier <monnier@cs.yale.edu>
132 * sml-mode.el (sml-insert-form): Only add a space if needed.
133 (sml-electric-space): new command bound to M-SPC.
135 * sml-defs.el (sml-close-paren): added a second field that specifies when
136 not to delegate. Only used for `else'.
138 1999-06-16 Stefan Monnier <monnier@cs.yale.edu>
140 * sml-move.el (sml-(for|back)ward-sym): distinguishes between
141 operator "=" and syntax for definitions "d=".
143 * sml-defs.el (sml-indent-starters, sml-delegate): simplified.
144 (sml-symbol-indent): added outdentation for `fn' and generalized it to
145 also work for `of' and `in' and `end'.
147 * sml-mode.el (sml-nested-if-indent): reintroduced as well as the special
149 (sml-indent-relative): generalize the treatment of `of', `in', `end', ...
150 (sml-electric-pipe): removed the slow behavior and added smarts for the
151 never-used type-variable arguments for function definitions.
153 1999-06-15 Stefan Monnier <monnier@cs.yale.edu>
155 * sml-defs.el (sml-mode-menu), sml-mode.el (sml-forms-menu): make the menu
158 * sml-mode.el (sml-form-<foo>): use skeletons.
159 (sml-calculate-indentation): added `with' indentation.
161 1999-06-14 Stefan Monnier <monnier@cs.yale.edu>
163 * sml-move.el (sml-(for|back)ward-sym): now also return the string if any
164 and take care of the "op" special keyword.
165 (sml-op-prec): setup an alist for the infix operators.
167 * version 3.9.1: sent to Roland McGrath.
169 1999-06-13 Stefan Monnier <monnier@cs.yale.edu>
171 * sml-smlnj.el, sml-mosml.el, sml-poly-ml.el: removed.
173 * sml-proc.el (...): got rid of sml-next-error by spicing up the interface
174 with compile.el so that intervals can be displayed. `sml-overlay' is
175 kept (and moved from sml-mode to sml-proc where it belongs) but is
176 made redundant in the case of transient-mark-mode.
178 1999-06-12 Stefan Monnier <monnier@cs.yale.edu>
180 * sml-proc.el (sml-prompt-regexp): more general regexp to catch mosml,
181 smlnj as well as polyml prompts.
182 (sml-update-cursor, sml-send-command, inferior-sml-mode): make it work
183 with compile.el's `next-error'.
184 (sml-temp-threshold): dropped: always use a temp file.
186 1999-06-10 Stefan Monnier <monnier@cs.yale.edu>
188 * sml-move.el (sml-op-prec): updated the list of default infix ops based on
189 sml/nj's source files.
191 1999-06-08 Stefan Monnier <monnier@cs.yale.edu>
193 * sml-proc.el (sml-run): removed dubious code to take care of a supposedly
194 special case in order not to sent "" when args=nil.
196 1999-06-07 Stefan Monnier <monnier@cs.yale.edu>
198 * sml-mode.el (sml-font-lock-syntactic-keywords): added syntactic
199 fontification for the ' \"' case (exhibited by lexgen.sml).
201 1999-06-07 Stefan Monnier <monnier@cs.yale.edu>
203 * ALL: the new indentation begins to work. v3_9_0
205 1999-05-29 Stefan Monnier <monnier@cs.yale.edu>
207 * sml-defs.el (sml-mode-syntax-table): added ~ of prefix-syntax.
209 * sml-mode.el (sml-find-match-indent): (nilp sml-type-of-indent) is only
210 applied if the `let' is alone at the end of the line.
211 (sml-type-of-indent): default changed to `nil'.
213 1999-05-28 Stefan Monnier <monnier@cs.yale.edu>
215 * sml-mode.el (sml-font-lock-keywords): changed _ and ' back to word
216 syntax for font-locking.
218 1999-05-27 Stefan Monnier <monnier@cs.yale.edu>
220 * sml-mode.el (sml-font-lock-syntactic-keywords): finally got the
221 matching of let...end working.
222 (sml-electric-pipe): take a fun sexp (symbol) rather than a fun word.
224 1998-10-26 Stefan Monnier <monnier@cs.yale.edu>
226 * sml-mode.el (sml-font-lock-syntactic-keywords): added syntactic-keywords
227 to support nested comments.