View Issue Details

IDProjectCategoryView StatusLast Update
0000488Ecere SDKidepublic2016-08-21 22:28
Reporterredj Assigned To 
PriorityurgentSeverityminorReproducibilityhave not tried
Status newResolutionopen 
Target Version0.44.16 
Summary0000488: ide: codeeditor: Syntax Highlighting For other languages
DescriptionHTML/PHP/Python...
TagsNo tags attached.

Relationships

related to 0000268 new editor should evaluate and notify (highlight) areas with uncast types 
related to 0000302 new highlighting and color saving 
related to 0000391 new Highlight Called Expression when showing parameters 
related to 0000251 new smart highlighting: tracking matched and unmatched braces et al 

Activities

D_Bane

2012-02-17 17:52

reporter   ~0000495

Hi Redj, should these words be inserted in keyWords1[] in the EditBox just like the //C //eC have been added? If so I can add them. If they need to be added somewhere else, please tell me. (hope it is ok to write here :) )

jerome

2012-02-20 01:53

administrator   ~0000497

Hi D.Bane,

In fact this is a rather complex task :)
As part of this task, ideally syntax highlighting would be moved away from EditBox.ec into a properly organized syntax highlighter code structure...

Having a Syntax Highlighter class, and being able to load keywords from a file (perhaps in a JSON format) for example would be nice...

Also the ability to customize colors, font type names and font size in the IDE would go along with this. This might be a place to start, adding this customizability to the IDE in the Editors tab of the Global Settings.

The current syntax highlighter is very basic, working only with identifying particular keywords. A more powerful syntax highlighter would actually know about languages grammar, but this might not be required at this time :)

The IDE however does parse eC code, the eC parser/compiler being invoked form CodeEditor.ec, but this is for more advanced things like auto-complete, parameters list, the form designer, etc. This is not required at this time for other languages, but would eventually nice to be extensible to support other languages as well.

Just a note about Mantis, the issues with the 'immediate' priority are the ones we're trying to get done for the next official release, and there are a whole bunch of easy ones in there. They are marked immediate because of relative their importance in providing a better experience for ourselves and for users, and on the short time required to fix them. So they're the best bang for the time.
For example, these look easy enough for warm up:

0000682, 0000675, 0000673, 0000668, 0000667

Cheers ;)

Jerome

redj

2016-08-13 13:22

administrator   ~0001436

maybe support TextMate grammars
http://manual.macromates.com/en/language_grammars

redj

2016-08-13 13:25

administrator   ~0001437

see also: http://ec-lang.org/ideas/codeEditor/#languages

Issue History

Date Modified Username Field Change
2010-07-26 14:59 redj New Issue
2010-07-26 15:06 redj Relationship added child of 0000429
2010-07-26 16:25 redj Relationship added related to 0000489
2010-07-26 16:27 redj Relationship added related to 0000268
2010-07-26 16:27 redj Relationship added related to 0000302
2010-07-26 16:27 redj Relationship added related to 0000391
2010-07-26 16:28 redj Relationship added related to 0000251
2010-07-26 19:38 thexa4 Target Version => 0.44 draft 2
2010-07-26 20:12 thexa4 Relationship deleted child of 0000429
2010-07-26 20:12 thexa4 Target Version 0.44 draft 2 => 0.44 draft 3
2010-07-26 20:14 thexa4 Relationship added child of 0000437
2010-07-29 15:18 jerome Priority normal => urgent
2011-09-10 20:17 jerome Summary ide: codeeditor: HTML/Various Syntax Highlighting => ide: codeeditor: Syntax Highlighting For other languages
2011-09-10 20:17 jerome Description Updated
2012-02-17 17:52 D_Bane Note Added: 0000495
2012-02-20 01:53 jerome Note Added: 0000497
2012-03-08 16:52 redj Target Version => 0.45 Ginkakuji
2012-03-08 19:20 redj Relationship deleted child of 0000437
2012-03-29 07:52 redj Category => ide
2012-03-29 07:52 redj Project @3@ => Ecere SDK
2012-05-29 15:22 jerome Relationship deleted related to 0000489
2014-07-11 18:45 jerome Target Version 0.45 Ginkakuji => 0.46.1
2016-04-19 05:19 jerome Target Version 0.46.1 => 0.46 eC II
2016-05-21 18:34 jerome Target Version 0.46 eC II => 0.44.15
2016-07-12 02:51 jerome Target Version 0.44.15 => 0.44.16
2016-08-13 13:22 redj Note Added: 0001436
2016-08-13 13:25 redj Note Added: 0001437