* Matlab-emacs Project: MATLAB and Emacs integration: 1. matlab-mode for editing *.m files. 2. matlab-shell for running MATLAB -nodesktop within Emacs (Unix-only). - matlab-shell will use company-mode for completions. 3. tlc-mode for editing *.tlc files (part of Simulink Coder). 4. Integration with CEDET. ** INSTALL To install directly from the repository, : cd /path/to/matlab-emacs : make Next, add the following to your ~/.emacs file: #+BEGIN_SRC elisp ;; Replace path below to be where your matlab.el file is. (add-to-list 'load-path "/path/to/matlab-emacs") (load-library "matlab-load") ;; Enable CEDET feature support for MATLAB code. (Optional) ;; (matlab-cedet-setup) #+END_SRC ** MELPA GNU emacs (sorry Xemacs folks) users (version >=24) can use the package as provided by MELPA. Set #+BEGIN_SRC elisp (add-to-list 'package-archives '("melpa" . "http://melpa.org/packages/") t) #+END_SRC And then run M-x package-list-packages ** Releases The most recent version of matlab.el is in SourceForge GIT. Homepage: http://matlab-emacs.sf.net Project Page: http://sourceforge.net/projects/matlab-emacs GIT Repository: https://sourceforge.net/p/matlab-emacs/src/ci/master/tree/ You can get a zip file using the "Download snapshot" button or use git to create a local repository: #+BEGIN_SRC shell git clone git://git.code.sf.net/p/matlab-emacs/src matlab-emacs-src #+END_SRC If you do not have a GIT client on your machine, you can use the MATLAB script dl_emacs_support.m to download a fresh copy of the matlab.el sources. https://sourceforge.net/p/matlab-emacs/src/ci/master/tree/dl_emacs_support.m Older versions in the SourceForge CVS repository are *no* longer updated. ** Dependencies MATLAB-Emacs can use the CEDET suite for the following items: - Modifying the build system (Makefiles, etc) - mlint (uses EIEIO object system) - parsing/completion (uses semantic parsing system) - some template insertion features As of Emacs 23.2, CEDET is included in Emacs, and nothing extra is needed to satisfy that dependency. For older versions of Emacs: See http://cedet.sf.net for downloading CEDET. If you only want to use matlab.el for editing code or running the MATLAB shell, you DO NOT need to install CEDET. If you do want to use CEDET, add the following to your .emacs file: #+BEGIN_SRC elisp (matlab-cedet-setup) #+END_SRC ** Mailing List Subscribe to matlab-emacs-discuss mailing list get updates on new releases and discuss topics relevant to the matlab-emacs project. http://lists.sourceforge.net/mailman/listinfo/matlab-emacs-discuss *Old mailing list*: The original mailing list where beta versions of matlab.el were posted, and where comments, questions, bug reports, and answers to questions could be sent. If you were subscribed to this list, please unsubscribe, and subscribe to the new list above. To unsubscribe, send email with the body of: "unsubscribe matlab-emacs" ** FAQ *** How Do I Customize matlab-emacs? You can configure matlab-emacs using the "matlab" or "matlab-shell" customization groups: : Emacs -> Options -> Customize Emacs -> Specific Group *** How do I customize "edit file.m" behavior? By default when you run : M-x matlab-shell : : >> edit file.m file.m will open in emacs using 'emacsclient -n'. matlab-shell achieve this behavior by instructing MATLAB to use 'emacsclient -n' as the external text editor. You can customize this by setting `matlab-shell-emacsclient-command' (Matlab Shell Emacsclient Command) of the matlab-shell customization group. You can change this command to what's appropriate. If you set it to the empty string, 'edit file.m' will use the default MATLAB editor setting. The default MATLAB editor setting is controlled in the MATLAB preferences, (e.g. R2018a Home tab, Environment section, Preferences) where you can select which editor you want to edit a text file. MATLAB Editor or an external text editor. If you always want to use Emacs as your matlab editor even when running MATLAB outside of emacs, select Text editor and set it to the appropriate 'emacsclient -n' command. *** Can I debug *.m files using Emacs as a debugger? Starting with MATLAB 8.5 (R2015b), Emacs can no longer be used as a debugger for debugging MATLAB code. With R2015b, MATLAB no longer provides necessary file and line number information for external debuggers. Therefore, in matlab-shell: : >> dbstop in foo will open foo in the MATLAB editor for debugging. #+STARTUP: showall