Subject: bug#6014: processing of "'" inside Emacs octave-mode

From: Kurt Hornik <[email-masked]>
Date: Sun, 25 Apr 2010 09:42:23 +0200

>>>>> Pascal Dupuis writes:

> Emacs  : GNU Emacs 23.1.1 (i486-pc-linux-gnu, GTK+ Version 2.18.3)
>   of 2010-03-26 on palmer, modified by Debian
> Package: Emacs version 23.1.1

> current state:
> ==============
> (setq
>   octave-auto-indent nil
>   octave-auto-newline nil
>   octave-blink-matching-block t
>   octave-block-offset 2
>   octave-comment-char 35
>   octave-continuation-offset 4
>   octave-continuation-string "\\"
>   octave-send-echo-input t
>   octave-send-line-auto-forward t
>   octave-send-show-buffer t
>   )

> Hello,

> I have to interchange programs with collegues working under
> MatLab. This implies that I have to use the single quote as string
> delimiter. I enclose a simple .m file where MatLab's editor smart
> indent feature works OK, but octave-mode chokes on the seventh
> line. It considers a brace is opened; this doesn't occur if I use a
> double quote instead. Would it be possible to have the single and
> double quote treated the same way ?

Not easily: one would need to emulate the Octave parser which can
distinguish between single quotes for transposition and string
delimiting.  You should really use matlab-mode for such code.

Regards
-k

> Regards

> Pascal

> -- 
> Dr. ir. Pascal Dupuis, assistant de recherche / research assistant
> U.C.Louvain EPL/ELEC/DICE :  http://www.dice.ucl.ac.be/
> Batiment Maxwell; Place du Levant, 3; B-1348 Louvain-la-Neuve Belgium
> Tel. +32-10-47 22 74; Fax +32-10-47 25 98

> ----------------------------------------------------------------------
> x = 'aa';

> for indi = 1:length(x),
>   disp(x(indi));
> end

> x = ['{'];

> for indi = 1:length(x),
>     disp(x(indi));
> end
> y = rand(2, 5);
> x = y.';
> disp(size(x))