Version 7.1.1 of package Matlab-Mode has just been released in GNU ELPA.
You can now find it in M-x list-packages RET.

Matlab-Mode describes itself as:

  ====================================
  Major mode for MATLAB(R) dot-m files
  ====================================

More at https://elpa.gnu.org/packages/matlab-mode.html

## Summary:




  1 Emacs MATLAB-mode
  ═══════════════════

    [MathWorks] MATLAB® and [GNU Emacs] integration:

    1. MATLAB mode, *matlab-ts-mode* or *matlab-mode*, for editing `*.m'
       files.

       • Edit MATLAB code with syntax highlighting and smart indentation.
       • Lint MATLAB code with fix-it's using the MATLAB Code Analyzer.

       The *matlab-ts-mode* is a more capable, performant, and accurate
       than *matlab-mode*.

    2. *Code navigation and more*

       • The [MATLAB Language Server with Emacs], matlabls, provides code
         navigation, code completion, go to definition, find references,
         and more.

       • Imenu support for quickly jumping to function declarations in the
         current `*.m' or `*.tlc' file.  See [doc/matlab-imenu.org].

## Recent NEWS:




1 Release 7.1.1 Oct 1, 2025
═══════════════════════════

  1. matlab-ts-mode: fix semantic movement in strings. Now C-M-f, C-M-b,
     C-M-SPC work when point is within strings.


2 Release 7.1.0 Sep 29, 2025
════════════════════════════

  1. Improved matlab-ts-mode imenu. The imenu index now creates indices
     for code sections defined by "%% heading comments". In addition,
     the menu was updated to have structure:

     • Class
     • Function
     • Section

     Previously, imenu was a flat list without code sections index
     entries.


3 Release 7.0.1 Sep 13, 2025
════════════════════════════

  1. emacsrunregion fix,
     <https://github.com/mathworks/Emacs-MATLAB-Mode/pull/55>


4 Release 7.0.0 Sep 12, 2025
════════════════════════════

  1. New matlab-ts-mode.

     matlab-ts-mode is a [tree-sitter], based MATLAB mode using
     <https://github.com/acristoffers/tree-sitter-matlab>. This new
     MATLAB mode is a replacement for the matlab-mode.

     ⁃ Improved font-lock (semantic coloring) performance, making
       editing even more smooth.

       • More accurate fontification, we now identify language elements
         accurately and use more faces to color them.

       • Fixes edge-case fontification issues when compared with
         matlab-mode

         Create issue for this:
         ┌────
         │ x = [1 2; 3 4];
         │ y = x''               % this is valid double transpose where 
matlab-mode gets it wrong
         └────

         Function identification, see
         <https://github.com/mathworks/Emacs-MATLAB-Mode/issues/48>

       • In comments, we now highlight `FIXME', `TODO', and `XXX'
         markers.

       • Fixed fontification of "%% section" to require that the be the
         start of a comment and on their own line.

       • Variable creation/assignment will be semantically colored.

       • Now fontify all MATLAB/Simulink factory builtin provided
         functions, class methods/properties, enums, etc. Note, if you
         override a builtin function with a variable, the variable
         creation/assignment will be colored as a variable, but the use
         will continue to be a function.  To avoid this confusing state,
         use variable names that collide with builtin items.

     ⁃ Improved indent

       • Simplified the semantics for indent. The indent rules are
         described in matlab-ts-mode.el for completeness.

       • Improved indent performance, making editing very smooth.

       • Fixes various edge-case indent issues, some are

         ⁃ Fixed indent of function definition when ellipsis
           continuations are used.

         ⁃ Auto-indentation of end, see
           <https://github.com/mathworks/Emacs-MATLAB-Mode/issues/33>

         ⁃ Fixed cell and matrices indent alignment problems

     ⁃ There's no longer prompting if you want functions to have
       end's. This is now computed automatically.

     ⁃ Improved fill-paragraph, `M-q', which will now fill comments and
       when not in a comment, indent the current function or statement.

     ⁃ Accurate type of m-file detection, which improves
       matlab-sections-minor-mode.

     ⁃ Change Log command now work with MATLAB *.m files.

       Running `C-x 4 a' (add-change-log-entry-other-window) will now
       insert the name of the function or classdef for the current
       point.

     ⁃ Added support for `M-x outline-minor-mode'. Outline headings are
       `function''s, `classdef''s, and "%% heading" comments.

     ⁃ On save fix of function/classdef name now handles buffer names
       that aren't valid MATLAB identifiers.  On save fix of
       function/classdef name handles buffers not associated with files
       on disk.  Also fixed cases where detection of scripts failed.

     ⁃ Improved handling of single quotes for `M-x
       electric-pair-mode'. These will automatically pair
       • Single quote when used to create a single-quoted string, but
         not when used elsewhere, e.g. a matrix transpose.
       • Double quotes for a double-quoted string.
       • Parenthesis `()', Vectors, `[]', and Cells `{}'.

     ⁃ We now highlight starting and ending string quote when the point
       is on the start or end single
  …  …


[tree-sitter] <https://tree-sitter.github.io/tree-sitter>

Reply via email to