octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Successfully merged projects


From: John Swensen
Subject: Re: Successfully merged projects
Date: Mon, 11 Apr 2011 12:49:29 -0400

On Apr 11, 2011, at 12:41 PM, John W. Eaton wrote:

> On 11-Apr-2011, Richard Crozier wrote:
> 
> | Just to throw in a few cents worth, I have been working on QtOctave of late,
> | and the svn sources now contain an editor with the following features:
> | 
> | 1. step-through debugging capabilities (i.e. opens m files as the dubugger
> | steps into them). Debug stepping is achievable using the F-keys as in the
> | matlab editor.
> | 
> | 2. the ability to add break points by clicking on the side bar, resizeable
> | text
> | 
> | 3. the ability to highlight text and send it to octave as a command by
> | pressing F9.
> | 
> | 4. proper syntax highlighting which matches the matlab editor, or is
> | modifiable
> | 
> | 6. Decent auto-indentation for code which matches opening code structure
> | indentation, i.e. properly matches 'end' with opening 'if' indentation etc.
> | 
> | 5. the ability to resize the text via keyboard shortcuts or a button.
> | 
> | Plus a number of other improvements, such as inserting spaces rather than
> | tabs etc. and the addition of the open-source cross-platform Inconsolata
> | font.
> | 
> | 
> | The command window also adds the ability to highlight text, press F9, and
> | have it sent as a command to octave. 
> | 
> | All of the communication with octave is handled by a single class
> | octave_connection.cpp, perhaps there is some scope to merge these projects
> | by replacing the octave_connection class with the superior method used in
> | the projects under discussion? Or alternatively using the QtOctave editor
> | classes in these projects? 
> | 
> | Several of the features I've described above are what I consider the key
> | features of the matlab GUI for algorithm development.
> 
> I have to say that I find the whole idea of each application providing
> its own editor to be rather silly.  Why do people keep reinventing these
> things?
> 
> jwe

In the case of an IDE for Octave, I think it makes perfect sense. I know *a 
lot* of people who use the debugging capabilities of Matlab from the editor.  I 
have concluded that embedding an existing editor (e.g. Emacs or VIM) into an 
IDE is not the ideal thing for beginner Octave users, and a very hard 
programming problem to boot.

Many people who have written editors have abstracted out the key hard-to-make 
components of a good editor.  I'm assuming that the QtOctave people didn't 
implement an editor from scratch.  I investigated this a while back and found 
that QScintilla seemed to be the ideal editor widget.  Scintilla was well 
thought out and has been adapted to GTK, QT, and other windowing toolkits.  It 
provides all the niceties of a modern editor: syntax highlighting, a gutter for 
breakpoint manipulation, code folding, hover and right-click contextual menus, 
etc.

Were you indicating that you don't think an Octave IDE should have an editor? 
If I am going to use an IDE, I want the ability to have the editor a part of 
the IDE.  People can open emacs alongside a terminal (or the Octave IDE for 
that matter) if that is how they prefer to operate, but it wouldn't be as 
integrated with the IDE.

John Swensen



reply via email to

[Prev in Thread] Current Thread [Next in Thread]