This major mode for GNU Emacs provides support for editing MATLAB(R) dot-m files. It automatically indents for block structures (including nested functions), line continuations (e.g., ...), and comments. Additional features include auto-fill including auto-additions of ellipsis for commands, and even strings. Block/end construct highlighting as you edit. Primitive code-verification and identification. Templates and other code editing functions. Advanced symbol completion. Code highlighting via font-lock. There are many navigation commands that let you move across blocks of code at different levels. Lastly, there is support for running MATLAB(R) in an Emacs buffer, with full shell history and debugger support (when used with the db commands.) The shell can be used as an online help while editing code, providing help on functions, variables, or running arbitrary blocks of code from the buffer you are editing.