3.0.0
版本发布时间: 2022-09-27 18:18:56
ocaml/tuareg最新发布版本:3.0.1(2022-09-29 21:26:44)
Backward incompatible changes are marked with “⚠”.
- New option
tuareg-mode-line-other-file
. - New mode
tuareg-menhir-mode
. Note that C-c C-c launches the compilation. - ⚠
tuareg-eval-phrase
(C-c C-e and C-x C-e) now evaluate the smallest set of phrases containing the region if the latter is active. - ⚠
tuareg-eval-phrase
now skips;;
even on a separate line when moving forward. This permits quick evaluation of multiple phrases in succession. - ⚠
tuareg-eval-region
(C-c C-r): only send the content of the region to the REPL. - Be more subtle in phrase detection.
- Bogus mismatched parentheses at the end of comment fixed.
- ⚠
show-paren-mode
: also highlight comment delimiters. You can turn that off by settingtuareg-comment-show-paren
tonil
. - Syntax highlighting improvements: much faster; much better highlighting
of function, class, and method arguments (including setting the
font-lock-multiline
property);[]
and::
have the constructor face; first class module,type nonrec
,raise_notrace
,with type
are handled. Finer highlighting of infix operators. Support for binding operators. Moreover, font-lock now has 3 possible levels of fontification (see the README). - The switch .ml ↔ .mli now uses the Emacs built-in
find-file
and was extended to.eliom
↔.eliomi
and.mly
↔.mli
. It also works for pre-processed files named.pp.ml
and.pp.mli
. - When switching from an
.ml
to a non-existing.mli
file using C-c C-a, one is offered to fill the.mli
buffer with the generated interface. - Set
beginning-of-defun-function
andend-of-defun-function
which allows to go to the beginning of the current function (resp. end) with C-M-home, C-M-a or ESC C-home (resp. C-M-end, C-M-e, or ESC C-end). - ⚠
beginning-of-defun
(C-M-a, C-M-home) is now repeatable. Previously it would not move the cursor if invoked at the beginning of a defun. Now it goes to the start of the previous defun, which is the standard in Emacs and generally more useful. - ⚠ Movement by defun now considers
and
clauses of atype
or declarativelet
to be defuns in their own right, since that's closer to how programmers think. This generally makes defun-based operations more useful. - ⚠
tuareg-comment-dwim
is now bound to C-c C-; (fixes #149). - Fix the highlighting of errors locations in interactive mode.
- ocamldebug: Handle correctly the new code pointer format (issue #205).
- Rework electric functions (fixes issues #150 and #162).
- Update the compilation regexp to detect warnings and errors for the OCaml ≥ 4.08 (fixes #202).
- Autoload compilation error regexp so it is correct even if Tuareg was not loaded.
- Messages from recent OCaml compiler versions are now parsed correctly for severity and source location. This includes precise parsing of the location start and end columns. Exception backtraces are now also recognised.
- Ancillary locations are now treated as Info-level messages, not
errors in their own right. This way they no longer contribute to
Emacs's compilation-mode error count, but they will be ignored by
next-error
andprevious-error
. Setcompilation-skip-threshold
to0
if you wantnext-error
to step into these locations. - Evaluation of phrases: evaluate the above phrase if the point is in or after comments immediately following the let-binding (without separating blank lines).
- Better indentation of empty lines (fixes #179).
- Use a pty to communicate with the
ocaml
process (fixes #83). -
tuareg-opam
: syntax highlighting updates. - ⚠ Remove
tuareg-light
, you should now usetuareg
. -
class type
is now parsed correctly (#239). - Improved indentation of class definition with non-hanging
object
(#239). The new behaviour agrees with ocp-indent and seems to be the more modern usage.initialize
clauses are also indented correctly. - Better default colour for extension nodes on dark background.
tuareg-font-lock-extension-node-face
was nigh-unreadable against a dark background. The face now uses the default background colour. - Ocamldoc
(** ... *)
comments are now fontified by their structure. This makes markup constructs stand out in order to improve legibility and reduces the risk of mistakes. The body text is set infont-lock-doc-face
as before; mark-up constructs usetuareg-font-lock-doc-markup-face
, which defaults tofont-lock-doc-markup-face
(new in Emacs 28) if available.
Note that the mode tuareg-dune
which was in the development version
of this package is now part of Dune.
1、 tuareg-3.0.0.tar.gz 67KB