2009-09-02 8 views
22

Esiste una modalità principale di Emacs per i file MATLAB e/o Octave? Per chi non lo sapesse, i file MATLAB hanno generalmente un'estensione di file ".m".Come si installa una modalità MATLAB in GNU Emacs?

Il mio interesse principale è GNU Emacs ma anche i suggerimenti di XEmacs sarebbero apprezzati.

risposta

24

Hai provato la modalità di ottava che fa parte della distribuzione standard di emacs? Ho trovato che questo funziona bene.

Se si sta trovando non associa l'estensione .m, aggiungere questo ai tuoi .emacs:

(setq auto-mode-alist 
     (cons 
     '("\\.m$" . octave-mode) 
     auto-mode-alist)) 
+0

@rplevy, mi sento piuttosto debole per non aver pensato a me stesso. Grazie mille. –

+0

Questa risposta viene visitata molto, quindi ho pensato che sarebbe stato utile postare questa domanda qui che ha suggerimenti utili per la modifica del codice MATLAB usando 'octave-mode'. http://emacs.stackexchange.com/questions/15164/commented-lines-shoot-off-to-column-32-in-octave-mode/ – hosolmaz

1

Non integrato in GNU Emacs 22. Ho trovato un matlab mode sul Web (elisp), ma risale a circa 2000, quindi non so quale tipo di supporto si dispone.

Per installare è necessario ottenere emacs per caricarlo, quindi richiamare la modalità. È possibile emettere in modo interattivo un load-file (con M-x load-file) per testarlo.

6

Ti mancherà http://matlab-emacs.sourceforge.net/, immagino? Leggi le istruzioni lì.

Ho usato un antenato di questo anno fa in XEmacs, quindi sicuramente usava il supporto per farlo, ma credo che l'autore sia un utente di GNUEmacs. Il tizio che l'ha scritto (Eric Ludlam) è un dipendente di Mathworks, quindi ha credenziali ufficiali vaghe.

0

Recentemente ho scaricato una modalità Matlab per Emacs dallo scambio di file Matlab Central. Funziona bene. Non ricordo esattamente dove l'ho trovato, se hai problemi fammelo sapere e io guarderò più duramente.

+0

Ai fini della una risposta completa, è sicuramente la pena scavare. È disponibile solo per gli utenti Matlab? Se è così, la gente di Octave sarà annoiata. –