To install this package, run in Emacs:
M-x package-install RET mmm-mode RET
MMM Mode NEWS -- history of user-visible changes. -*-outline-*- Copyright (C) 2003, 2004, 2013-2015 Free Software Foundation, Inc. See the file COPYING for copying conditions. Please submit bug reports at https://github.com/purcell/mmm-mode/issues * Changes in MMM Mode 0.5.8 Support for Emacs 27. Fixes for nesting submodes. * Changes in MMM Mode 0.5.7 Fixes for mmm-indent-line-narrowed. * Changes in MMM Mode 0.5.6 Emacs 25 compatibility fix when cl is not loaded. * Changes in MMM Mode 0.5.5 Introduced mode transition hooks, like mmm-x-enter-hook and mmm-y-exit-hook. New function mmm-indent-line-narrowed, to use as mmm-indent-line-function. `cl-lib' is a new dependency, replacing `cl'. It comes bundled with recent versions of Emacs, and for older ones it can be installed from GNU ELPA. * Changes in MMM Mode 0.5.4 Fixes for indentation, SMIE support, and minor bugs. * Changes in MMM Mode 0.5.2 Introduced `mmm-after-syntax-propertize-functions'. A primary major mode can set it to adjust `syntax-table' text properties in submode regions. New file `mmm-defaults.el'. A user can simply require it and have basic setup for ERB, EJS and PHP files (for the last one, `php-mode' has to be installed separately). `mmm-add-classes' is autoloaded. `mmm-beginning-of-syntax' was removed. Assorted highlighting and syntax detection improvements. * Changes in MMM Mode 0.5.1 Some minor documentation updates and bugfixes. * Changes in MMM Mode 0.5.0 ** Compatibility with recent Emacsen Updated to work with Emacs 23 and 24. Removed some compatibility code for older versions. Added new local variables used in the latest js-mode and cc-engine modes. ** New submode classes New submode classes for ERB and EJS templates, both in mmm-erb.el. It also includes a smart indentation algorithm, supporting them together with script and style tag subregions in HTML code. ** Parsing when idle Setting `mmm-parse-when-idle' will make MMM Mode re-parse modified buffers when Emacs is idle. This can lead to visible pauses, though, depending on the size of the buffer and the number of subregions. ** Support submode-specific syntax functions Relevant for Emacs 24: we define a composite syntax-propertize-function that delegates syntax recognition to respective submode functions. For users, this means regular expressions in js-mode and string interpolations and percent literals in ruby-mode. ** Indentation More consistent indentation behavior, the default implementation delegates to the submode at the end of the indentation. The major mode can provide its own implementation by setting mmm-indent-line-function, to handle specific mode combinations better. * Changes in MMM Mode 0.4.8 ** Delimiter Regions The delimiters which mark off submode regions now have their own overlays. They can be highlighted if you so desire using appropriate class arguments and/or the variable mmm-delimiter-face. They are also in an appropriate major mode, or non-mode as the case may be. ** Nested Submodes Nested submodes are now vaguely supported. ** RPM Spec File An RPM spec file, contributed by <firstname.lastname@example.org>, is now included for people who wish to build their own SRPM to install from. ** New Submode Classes Many thanks to Joe Kelsey for writing a very intelligent class for editing Noweb files, and to Alan Shutko for one for CWeb files. We also have a mode for SGML DTD definitions from Yann Dirson. ** Numerous bugfixes and small improvements * Changes in MMM Mode 0.4.7 ** Multiple Decoration Levels You now have finer control over how colorful your submode regions are, via `mmm-submode-decoration-level'. Level 0 turns coloring off--no messing around with faces required. Level 1 (default) is the same as in previous versions. Level 2 colors regions according to function: initialization, cleanup, output, declaration, comment, etc. ** Preferred Major Modes The variable `mmm-major-mode-preferences' lets you tell MMM what mo... ...