<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://dev.eiffel.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Jabernet</id>
		<title>EiffelStudio: an EiffelSoftware project - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="https://dev.eiffel.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Jabernet"/>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/Special:Contributions/Jabernet"/>
		<updated>2026-05-23T20:30:18Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.24.1</generator>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Syntax_checking&amp;diff=3849</id>
		<title>Syntax checking</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Syntax_checking&amp;diff=3849"/>
				<updated>2006-06-27T20:12:31Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Projects]]&lt;br /&gt;
[[Category:Editor]]&lt;br /&gt;
[[Image:Logo_synche.gif|right|frame| SynChé Logo]]&lt;br /&gt;
=Overview=&lt;br /&gt;
&lt;br /&gt;
The aim of this project is to provide adequate, but non obtrusive feedback to user about syntax errors. This is done by checking syntax as you type and underlining syntax errors by the well knwon wavy red line. Furthermore, error descriptions and possible solutions should be provided.&lt;br /&gt;
&lt;br /&gt;
The Project is named '''SynChé''', which is a combination of syntax and checking.&lt;br /&gt;
The ''é'' at the end is important, as a cool name needs either a recursive acronym or a special character from a non English language.&lt;br /&gt;
&lt;br /&gt;
=Documentation=&lt;br /&gt;
[http://n.ethz.ch/student/indermum/download/synche_doc.pdf PDF Synché documentation]&lt;br /&gt;
&lt;br /&gt;
=Software Requirement Specification (SRS)=&lt;br /&gt;
You can find our SRS [[Syntax_checking/SRS|here]]&lt;br /&gt;
&lt;br /&gt;
=Groups=&lt;br /&gt;
&lt;br /&gt;
* [[Syntax_checking/Visualisation|Visualisation]]&lt;br /&gt;
* [[Syntax_checking/Parser|Parser]]&lt;br /&gt;
&lt;br /&gt;
=Milestones=&lt;br /&gt;
&lt;br /&gt;
==M1: April 25th==&lt;br /&gt;
* Get home-grown EiffelStudio up and running.&lt;br /&gt;
&lt;br /&gt;
==M2: May 2nd==&lt;br /&gt;
* '''Put your name in this Wiki!'''&lt;br /&gt;
* Analyse source code to certain degree, so discussion about interfaces between parser and visual is possible&lt;br /&gt;
&lt;br /&gt;
==M3: May 9th==&lt;br /&gt;
* SRS written&lt;br /&gt;
* Overview of relevant classes (BON diagram or more)&lt;br /&gt;
* Further Project Milestones specified, based on SRS and knowledge about code&lt;br /&gt;
&lt;br /&gt;
== May 12th == &lt;br /&gt;
'''Results of the Meeting:''' [[Syntax_checking/Visualisation| Visualisation]]&lt;br /&gt;
&lt;br /&gt;
== May 17th == &lt;br /&gt;
'''Results of Parser Group:''' [[Syntax_checking/Parser| Parser]]&lt;br /&gt;
&lt;br /&gt;
==M4: May 23rd==&lt;br /&gt;
*'''Parser Group''': Find out what results you get from the parser&lt;br /&gt;
*'''Visualisation Group''': Write a feature that draw the red underline&lt;br /&gt;
&lt;br /&gt;
==M6: June 27th==&lt;br /&gt;
*'''Parser Group''': Multi Error Parser (don't stop parsing after first error encountered)&lt;br /&gt;
*'''Visualisation Group''': Draw the mouseover boxes; find how to use stones (especially x,y coordinates -&amp;gt; stones/tokens); collect all parser errors into information window on bottom&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
Everyone intrested in this project is welcome to join our mailinglist [http://origo.ethz.ch/cgi-bin/mailman/listinfo/es-ui es-ui@origo.ethz.ch]. &lt;br /&gt;
At this point, the team is divided into two groups at this point, one responsible for the parser, the other one for visual feedback (like underlininig).&lt;br /&gt;
&lt;br /&gt;
== Visual Feedback ==&lt;br /&gt;
* [[User:jabernet| Janick Bernet]] (project leader)&lt;br /&gt;
* [[User:fdevries| Fabien de Vries]]&lt;br /&gt;
* [[User:indermum| Matthias Indermühle]]&lt;br /&gt;
* [[User:clerco| Olivier Clerc]]&lt;br /&gt;
&lt;br /&gt;
== Parser ==&lt;br /&gt;
* [[User:maser| Martin Luder]]&lt;br /&gt;
* [[User:Chrigu| Christoph Huber]]&lt;br /&gt;
* [[User:goalgettah| Ueli Etter]]&lt;br /&gt;
* [[User:Squeezie| Michael Schär]]&lt;br /&gt;
* [[User:MarkoR| Marko Ristin]]&lt;br /&gt;
&lt;br /&gt;
== Assistant ==&lt;br /&gt;
* [[User:classens| Stephan Classen]]&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Syntax_checking/Visualisation&amp;diff=3161</id>
		<title>Syntax checking/Visualisation</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Syntax_checking/Visualisation&amp;diff=3161"/>
				<updated>2006-06-03T13:32:56Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Syntax_checking|back to Syntax checking page]]&lt;br /&gt;
&lt;br /&gt;
== Work distribution for Milestone on June 15. ==&lt;br /&gt;
* '''Oli''': find out how to add data to the EV_OUTPUT pane; do a proof of concept&lt;br /&gt;
* '''Mätthu''': find out how to draw a popup window; do a proof of concept &lt;br /&gt;
* '''Fabi''' &amp;amp; '''Janick''': find out how to go from keyboard x,y to token and from mouse x,y to token (or to keyboard x,y , then to token); add those features to editor&lt;br /&gt;
&lt;br /&gt;
=== Status token from moue/keyboard ===&lt;br /&gt;
relevant data in EB_CLICKABLE_EDITOR &lt;br /&gt;
&lt;br /&gt;
== Underlining proof of concept from May 23. ==&lt;br /&gt;
[[Image:Ec-proof-of-concept.gif]]&lt;br /&gt;
Screenshot of EiffelStudio with every token underlined.&lt;br /&gt;
&lt;br /&gt;
== Meeting of the 12.05.06, Visualsation Team ==&lt;br /&gt;
&lt;br /&gt;
Summary of the important classes with little description of the features we plan to use:&lt;br /&gt;
&lt;br /&gt;
'''Src\library\editor\text_window\text\tokens\common\editor_token.e'''&lt;br /&gt;
* most important class&lt;br /&gt;
* all the other tokens inherit from this Class&lt;br /&gt;
* implement a boolean &amp;quot;is_correct”, who indicates if the token is syntacticly correct or not.&lt;br /&gt;
* color, position and other stuff is saved here too.&lt;br /&gt;
&lt;br /&gt;
'''editor_token_text.e'''&lt;br /&gt;
* top token class for all text-related tokens&lt;br /&gt;
* width -&amp;gt; the size of the token in pixel&lt;br /&gt;
* display_with_colors: this should be the feature we could hook to do draw our underlining&lt;br /&gt;
&lt;br /&gt;
'''Src\library\editor\text_window\editor\text_window\interface\text_panel.e'''&lt;br /&gt;
* container containing tokens&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Next Steps''' are to implement the boolean (shouldn't be that hard), find a way to get the information from the parser group (define an API), use the information and set the boolean and in the end draw the underline.&lt;br /&gt;
&lt;br /&gt;
TEXT_OBSERVER, EDITABLE_TEXT_PANEL.on_char may be relevant for parser hook too!&lt;br /&gt;
&lt;br /&gt;
[[Image:BON_token_text.png]]&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Syntax_checking/Visualisation&amp;diff=3158</id>
		<title>Syntax checking/Visualisation</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Syntax_checking/Visualisation&amp;diff=3158"/>
				<updated>2006-06-03T07:32:23Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: /* Work distribution for Mileston on June 15. */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Syntax_checking|back to Syntax checking page]]&lt;br /&gt;
&lt;br /&gt;
== Work distribution for Mileston on June 15. ==&lt;br /&gt;
* '''Oli''': find out how to add data to the EV_OUTPUT pane; do a proof of concept&lt;br /&gt;
* '''Mätthu''': find out how to draw a popup window; do a proof of concept &lt;br /&gt;
* '''Fabi''' &amp;amp; '''Janick''': find out how to go from keyboard x,y to token and from mouse x,y to token (or to keyboard x,y , then to token); add those features to editor&lt;br /&gt;
&lt;br /&gt;
== Underlining proof of concept from May 23. ==&lt;br /&gt;
[[Image:Ec-proof-of-concept.gif]]&lt;br /&gt;
Screenshot of EiffelStudio with every token underlined.&lt;br /&gt;
&lt;br /&gt;
== Meeting of the 12.05.06, Visualsation Team ==&lt;br /&gt;
&lt;br /&gt;
Summary of the important classes with little description of the features we plan to use:&lt;br /&gt;
&lt;br /&gt;
'''Src\library\editor\text_window\text\tokens\common\editor_token.e'''&lt;br /&gt;
* most important class&lt;br /&gt;
* all the other tokens inherit from this Class&lt;br /&gt;
* implement a boolean &amp;quot;is_correct”, who indicates if the token is syntacticly correct or not.&lt;br /&gt;
* color, position and other stuff is saved here too.&lt;br /&gt;
&lt;br /&gt;
'''editor_token_text.e'''&lt;br /&gt;
* top token class for all text-related tokens&lt;br /&gt;
* width -&amp;gt; the size of the token in pixel&lt;br /&gt;
* display_with_colors: this should be the feature we could hook to do draw our underlining&lt;br /&gt;
&lt;br /&gt;
'''Src\library\editor\text_window\editor\text_window\interface\text_panel.e'''&lt;br /&gt;
* container containing tokens&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Next Steps''' are to implement the boolean (shouldn't be that hard), find a way to get the information from the parser group (define an API), use the information and set the boolean and in the end draw the underline.&lt;br /&gt;
&lt;br /&gt;
TEXT_OBSERVER, EDITABLE_TEXT_PANEL.on_char may be relevant for parser hook too!&lt;br /&gt;
&lt;br /&gt;
[[Image:BON_token_text.png]]&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Syntax_checking/Visualisation&amp;diff=3157</id>
		<title>Syntax checking/Visualisation</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Syntax_checking/Visualisation&amp;diff=3157"/>
				<updated>2006-06-03T07:32:04Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Syntax_checking|back to Syntax checking page]]&lt;br /&gt;
&lt;br /&gt;
== Work distribution for Mileston on June 15. ==&lt;br /&gt;
* Oli: find out how to add data to the EV_OUTPUT pane; do a proof of concept&lt;br /&gt;
* Mätthu: find out how to draw a popup window; do a proof of concept &lt;br /&gt;
* Fabi &amp;amp; Jäne: find out how to go from keyboard x,y to token and from mouse x,y to token (or to keyboard x,y , then to token); add those features to editor&lt;br /&gt;
&lt;br /&gt;
== Underlining proof of concept from May 23. ==&lt;br /&gt;
[[Image:Ec-proof-of-concept.gif]]&lt;br /&gt;
Screenshot of EiffelStudio with every token underlined.&lt;br /&gt;
&lt;br /&gt;
== Meeting of the 12.05.06, Visualsation Team ==&lt;br /&gt;
&lt;br /&gt;
Summary of the important classes with little description of the features we plan to use:&lt;br /&gt;
&lt;br /&gt;
'''Src\library\editor\text_window\text\tokens\common\editor_token.e'''&lt;br /&gt;
* most important class&lt;br /&gt;
* all the other tokens inherit from this Class&lt;br /&gt;
* implement a boolean &amp;quot;is_correct”, who indicates if the token is syntacticly correct or not.&lt;br /&gt;
* color, position and other stuff is saved here too.&lt;br /&gt;
&lt;br /&gt;
'''editor_token_text.e'''&lt;br /&gt;
* top token class for all text-related tokens&lt;br /&gt;
* width -&amp;gt; the size of the token in pixel&lt;br /&gt;
* display_with_colors: this should be the feature we could hook to do draw our underlining&lt;br /&gt;
&lt;br /&gt;
'''Src\library\editor\text_window\editor\text_window\interface\text_panel.e'''&lt;br /&gt;
* container containing tokens&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Next Steps''' are to implement the boolean (shouldn't be that hard), find a way to get the information from the parser group (define an API), use the information and set the boolean and in the end draw the underline.&lt;br /&gt;
&lt;br /&gt;
TEXT_OBSERVER, EDITABLE_TEXT_PANEL.on_char may be relevant for parser hook too!&lt;br /&gt;
&lt;br /&gt;
[[Image:BON_token_text.png]]&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Syntax_checking&amp;diff=3156</id>
		<title>Syntax checking</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Syntax_checking&amp;diff=3156"/>
				<updated>2006-06-03T07:28:27Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: /* M6: June 6th */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Projects]]&lt;br /&gt;
[[Category:Editor]]&lt;br /&gt;
=Overview=&lt;br /&gt;
The aim of this project is to provide adequate, but non intrusive feedback to user about syntax errors. This is done by checking syntax as you type and underlining syntax errors by the well knwon wavy red line. Furthermore, error descriptions and possible solutions should be provided.&lt;br /&gt;
&lt;br /&gt;
The Project is named '''SynChé''', which is a combination of syntax and checking.&lt;br /&gt;
The ''é'' at the end is important, as a cool name needs either a recursive acronym or a special character from a non English language.&lt;br /&gt;
&lt;br /&gt;
=Software Requirement Specification (SRS)=&lt;br /&gt;
You can find our SRS [[Syntax_checking/SRS|here]]&lt;br /&gt;
&lt;br /&gt;
=Groups=&lt;br /&gt;
&lt;br /&gt;
* [[Syntax_checking/Visualisation|Visualisation]]&lt;br /&gt;
* [[Syntax_checking/Parser|Parser]]&lt;br /&gt;
&lt;br /&gt;
=Milestones=&lt;br /&gt;
&lt;br /&gt;
==M1: April 25th==&lt;br /&gt;
* Get home-grown EiffelStudio up and running.&lt;br /&gt;
&lt;br /&gt;
==M2: May 2nd==&lt;br /&gt;
* '''Put your name in this Wiki!'''&lt;br /&gt;
* Analyse source code to certain degree, so discussion about interfaces between parser and visual is possible&lt;br /&gt;
&lt;br /&gt;
==M3: May 9th==&lt;br /&gt;
* SRS written&lt;br /&gt;
* Overview of relevant classes (BON diagram or more)&lt;br /&gt;
* Further Project Milestones specified, based on SRS and knowledge about code&lt;br /&gt;
&lt;br /&gt;
== May 12th == &lt;br /&gt;
'''Results of the Meeting:''' [[Syntax_checking/Visualisation| Visualisation]]&lt;br /&gt;
&lt;br /&gt;
== May 17th == &lt;br /&gt;
'''Results of Parser Group:''' [[Syntax_checking/Parser| Parser]]&lt;br /&gt;
&lt;br /&gt;
==M4: May 23th==&lt;br /&gt;
*'''Parser Group''': Find out what results you get from the parser&lt;br /&gt;
*'''Visualisation Group''': Write a feature that draw the red underline&lt;br /&gt;
&lt;br /&gt;
==M6: June 15th==&lt;br /&gt;
*'''Parser Group''': Multi Error Parser (don't stop parsing after first error encountered)&lt;br /&gt;
*'''Visualisation Group''': Draw the mouseover boxes; find how to use stones (especially x,y coordinates -&amp;gt; stones/tokens); collect all parser errors into information window on bottom&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
Everyone intrested in this project is welcome to join our mailinglist [http://origo.ethz.ch/cgi-bin/mailman/listinfo/es-ui es-ui@origo.ethz.ch]. &lt;br /&gt;
At this point, the team is divided into two groups at this point, one responsible for the parser, the other one for visual feedback (like underlininig).&lt;br /&gt;
&lt;br /&gt;
== Visual Feedback ==&lt;br /&gt;
* [[User:jabernet| Janick Bernet]] (project leader)&lt;br /&gt;
* [[User:fdevries| Fabien de Vries]]&lt;br /&gt;
* [[User:indermum| Matthias Indermühle]]&lt;br /&gt;
* [[User:clerco| Olivier Clerc]]&lt;br /&gt;
&lt;br /&gt;
== Parser ==&lt;br /&gt;
* [[User:maser| Martin Luder]]&lt;br /&gt;
* [[User:Chrigu| Christoph Huber]]&lt;br /&gt;
* [[User:goalgettah| Ueli Etter]]&lt;br /&gt;
* [[User:Squeezie| Michael Schär]]&lt;br /&gt;
* [[User:MarkoR| Marko Ristin]]&lt;br /&gt;
&lt;br /&gt;
== Assistant ==&lt;br /&gt;
* [[User:classens| Stephan Classen]]&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Syntax_checking&amp;diff=3091</id>
		<title>Syntax checking</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Syntax_checking&amp;diff=3091"/>
				<updated>2006-05-30T12:29:17Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Projects]]&lt;br /&gt;
[[Category:Editor]]&lt;br /&gt;
=Overview=&lt;br /&gt;
The aim of this project is to provide adequate, but non intrusive feedback to user about syntax errors. This is done by checking syntax as you type and underlining syntax errors by the well knwon wavy red line. Furthermore, error descriptions and possible solutions should be provided.&lt;br /&gt;
&lt;br /&gt;
The Project is named '''SynChé''', which is a combination of syntax and checking.&lt;br /&gt;
The ''é'' at the end is important, as a cool name needs either a recursive acronym or a special character from a non English language.&lt;br /&gt;
&lt;br /&gt;
=Software Requirement Specification (SRS)=&lt;br /&gt;
You can find our SRS [[Syntax_checking/SRS|here]]&lt;br /&gt;
&lt;br /&gt;
=Groups=&lt;br /&gt;
&lt;br /&gt;
* [[Syntax_checking/Visualisation|Visualisation]]&lt;br /&gt;
* [[Syntax_checking/Parser|Parser]]&lt;br /&gt;
&lt;br /&gt;
=Milestones=&lt;br /&gt;
&lt;br /&gt;
==M1: April 25th==&lt;br /&gt;
* Get home-grown EiffelStudio up and running.&lt;br /&gt;
&lt;br /&gt;
==M2: May 2nd==&lt;br /&gt;
* '''Put your name in this Wiki!'''&lt;br /&gt;
* Analyse source code to certain degree, so discussion about interfaces between parser and visual is possible&lt;br /&gt;
&lt;br /&gt;
==M3: May 9th==&lt;br /&gt;
* SRS written&lt;br /&gt;
* Overview of relevant classes (BON diagram or more)&lt;br /&gt;
* Further Project Milestones specified, based on SRS and knowledge about code&lt;br /&gt;
&lt;br /&gt;
== May 12th == &lt;br /&gt;
'''Results of the Meeting:''' [[Syntax_checking/Visualisation| Visualisation]]&lt;br /&gt;
&lt;br /&gt;
== May 17th == &lt;br /&gt;
'''Results of Parser Group:''' [[Syntax_checking/Parser| Parser]]&lt;br /&gt;
&lt;br /&gt;
==M4: May 23th==&lt;br /&gt;
*'''Parser Group''': Find out what results you get from the parser&lt;br /&gt;
*'''Visualisation Group''': Write a feature that draw the red underline&lt;br /&gt;
&lt;br /&gt;
==M6: June 6th==&lt;br /&gt;
*'''Parser Group''': Multi Error Parser (don't stop parsing after first error encountered)&lt;br /&gt;
*'''Visualisation Group''': Draw the mouseover boxes; find how to use stones (especially x,y coordinates -&amp;gt; stones/tokens); collect all parser errors into information window on bottom&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
Everyone intrested in this project is welcome to join our mailinglist [http://origo.ethz.ch/cgi-bin/mailman/listinfo/es-ui es-ui@origo.ethz.ch]. &lt;br /&gt;
At this point, the team is divided into two groups at this point, one responsible for the parser, the other one for visual feedback (like underlininig).&lt;br /&gt;
&lt;br /&gt;
== Visual Feedback ==&lt;br /&gt;
* [[User:jabernet| Janick Bernet]] (project leader)&lt;br /&gt;
* [[User:fdevries| Fabien de Vries]]&lt;br /&gt;
* [[User:indermum| Matthias Indermühle]]&lt;br /&gt;
* [[User:clerco| Olivier Clerc]]&lt;br /&gt;
&lt;br /&gt;
== Parser ==&lt;br /&gt;
* [[User:maser| Martin Luder]]&lt;br /&gt;
* [[User:Chrigu| Christoph Huber]]&lt;br /&gt;
* [[User:goalgettah| Ueli Etter]]&lt;br /&gt;
* [[User:Squeezie| Michael Schär]]&lt;br /&gt;
* [[User:MarkoR| Marko Ristin]]&lt;br /&gt;
&lt;br /&gt;
== Assistant ==&lt;br /&gt;
* [[User:classens| Stephan Classen]]&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Syntax_checking/Visualisation&amp;diff=3011</id>
		<title>Syntax checking/Visualisation</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Syntax_checking/Visualisation&amp;diff=3011"/>
				<updated>2006-05-24T08:09:48Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Syntax_checking|back to Syntax checking page]]&lt;br /&gt;
&lt;br /&gt;
== Proof of concept from May 23. ==&lt;br /&gt;
[[Image:Ec-proof-of-concept.gif]]&lt;br /&gt;
Screenshot of EiffelStudio with every token underlined.&lt;br /&gt;
&lt;br /&gt;
== Meeting of the 12.05.06, Visualsation Team ==&lt;br /&gt;
&lt;br /&gt;
Summary of the important classes with little description of the features we plan to use:&lt;br /&gt;
&lt;br /&gt;
'''Src\library\editor\text_window\text\tokens\common\editor_token.e'''&lt;br /&gt;
* most important class&lt;br /&gt;
* all the other tokens inherit from this Class&lt;br /&gt;
* implement a boolean &amp;quot;is_correct”, who indicates if the token is syntacticly correct or not.&lt;br /&gt;
* color, position and other stuff is saved here too.&lt;br /&gt;
&lt;br /&gt;
'''editor_token_text.e'''&lt;br /&gt;
* top token class for all text-related tokens&lt;br /&gt;
* width -&amp;gt; the size of the token in pixel&lt;br /&gt;
* display_with_colors: this should be the feature we could hook to do draw our underlining&lt;br /&gt;
&lt;br /&gt;
'''Src\library\editor\text_window\editor\text_window\interface\text_panel.e'''&lt;br /&gt;
* container containing tokens&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Next Steps''' are to implement the boolean (shouldn't be that hard), find a way to get the information from the parser group (define an API), use the information and set the boolean and in the end draw the underline.&lt;br /&gt;
&lt;br /&gt;
TEXT_OBSERVER, EDITABLE_TEXT_PANEL.on_char may be relevant for parser hook too!&lt;br /&gt;
&lt;br /&gt;
[[Image:BON_token_text.png]]&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Syntax_checking/SRS&amp;diff=3002</id>
		<title>Syntax checking/SRS</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Syntax_checking/SRS&amp;diff=3002"/>
				<updated>2006-05-23T01:15:41Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: /* Interface */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Syntax_checking|back to Syntax checking page]]&lt;br /&gt;
&lt;br /&gt;
= Goal =&lt;br /&gt;
Provide adequate, but non intrusive feedback to user about syntax errors.&lt;br /&gt;
&lt;br /&gt;
= Parser =&lt;br /&gt;
# Should only parse when neccessary:&lt;br /&gt;
## When editing a new or correct expression:&lt;br /&gt;
### After typing a point, comma, colon, semi-colon, space, tab or line-break&lt;br /&gt;
### After leaving the edited expression (using cursor or mouse)&lt;br /&gt;
## When editing a incorrect expression:&lt;br /&gt;
### After each added character&lt;br /&gt;
# Provide errors in adequate datastructure to visualisation components (replaced by is_correct attribute on token)&lt;br /&gt;
##linenumber&lt;br /&gt;
##type of error&lt;br /&gt;
##further information&lt;br /&gt;
# Whenever the visualisation of an expression should change, the parser should call an event handler provided by visualization components&lt;br /&gt;
&lt;br /&gt;
   '''Note:'''&lt;br /&gt;
   * A new expression is correct until it becomes incorrect.&lt;br /&gt;
   * The state of an expression can only be changed when the cursor leaves it.&lt;br /&gt;
&lt;br /&gt;
= Parser-to-Visualization-Interface =&lt;br /&gt;
# The parser invalidates a TOKEN, by settings its attribute is_correct to false&lt;br /&gt;
# The parser can also set TOKEN's error_description attribute to the specific error (or error_type if we don't get description)&lt;br /&gt;
# An additional data-structure has to be maintained, to pass error summary information to visualization&lt;br /&gt;
&lt;br /&gt;
= Visualization =&lt;br /&gt;
# Highlighting happens only in code editing view&lt;br /&gt;
# Visualization component should maintain information on line states (underlined y/n)&lt;br /&gt;
# Underline syntax errors using a (preferably wavy) red line&lt;br /&gt;
# On mouse over, show information on error&lt;br /&gt;
# Information window could be clickable to provide further error information&lt;br /&gt;
# Errors should be accessible over summarization&lt;br /&gt;
&lt;br /&gt;
= Suggestions =&lt;br /&gt;
# To be implemented after parser and visualization components are feature complete&lt;br /&gt;
# Suggestions based on information from parse tree&lt;br /&gt;
# Analyzation based on soundex or other algorithm&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Syntax_checking/Visualisation&amp;diff=3001</id>
		<title>Syntax checking/Visualisation</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Syntax_checking/Visualisation&amp;diff=3001"/>
				<updated>2006-05-23T01:08:38Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Syntax_checking|back to Syntax checking page]]&lt;br /&gt;
&lt;br /&gt;
== Proof of concept from May 23. ==&lt;br /&gt;
[[Image:Ec-proof-of-concept.gif]]&lt;br /&gt;
&lt;br /&gt;
== Meeting of the 12.05.06, Visualsation Team ==&lt;br /&gt;
&lt;br /&gt;
Summary of the important classes with little description of the features we plan to use:&lt;br /&gt;
&lt;br /&gt;
'''Src\library\editor\text_window\text\tokens\common\editor_token.e'''&lt;br /&gt;
* most important class&lt;br /&gt;
* all the other tokens inherit from this Class&lt;br /&gt;
* implement a boolean &amp;quot;is_correct”, who indicates if the token is syntacticly correct or not.&lt;br /&gt;
* color, position and other stuff is saved here too.&lt;br /&gt;
&lt;br /&gt;
'''editor_token_text.e'''&lt;br /&gt;
* top token class for all text-related tokens&lt;br /&gt;
* width -&amp;gt; the size of the token in pixel&lt;br /&gt;
* display_with_colors: this should be the feature we could hook to do draw our underlining&lt;br /&gt;
&lt;br /&gt;
'''Src\library\editor\text_window\editor\text_window\interface\text_panel.e'''&lt;br /&gt;
* container containing tokens&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Next Steps''' are to implement the boolean (shouldn't be that hard), find a way to get the information from the parser group (define an API), use the information and set the boolean and in the end draw the underline.&lt;br /&gt;
&lt;br /&gt;
TEXT_OBSERVER, EDITABLE_TEXT_PANEL.on_char may be relevant for parser hook too!&lt;br /&gt;
&lt;br /&gt;
[[Image:BON_token_text.png]]&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Syntax_checking/Visualisation&amp;diff=3000</id>
		<title>Syntax checking/Visualisation</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Syntax_checking/Visualisation&amp;diff=3000"/>
				<updated>2006-05-23T01:08:24Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Syntax_checking|back to Syntax checking page]]&lt;br /&gt;
&lt;br /&gt;
== Proof of concept from May 23. ==&lt;br /&gt;
[[Image:Ec-proof-of-concept.gif]&lt;br /&gt;
&lt;br /&gt;
== Meeting of the 12.05.06, Visualsation Team ==&lt;br /&gt;
&lt;br /&gt;
Summary of the important classes with little description of the features we plan to use:&lt;br /&gt;
&lt;br /&gt;
'''Src\library\editor\text_window\text\tokens\common\editor_token.e'''&lt;br /&gt;
* most important class&lt;br /&gt;
* all the other tokens inherit from this Class&lt;br /&gt;
* implement a boolean &amp;quot;is_correct”, who indicates if the token is syntacticly correct or not.&lt;br /&gt;
* color, position and other stuff is saved here too.&lt;br /&gt;
&lt;br /&gt;
'''editor_token_text.e'''&lt;br /&gt;
* top token class for all text-related tokens&lt;br /&gt;
* width -&amp;gt; the size of the token in pixel&lt;br /&gt;
* display_with_colors: this should be the feature we could hook to do draw our underlining&lt;br /&gt;
&lt;br /&gt;
'''Src\library\editor\text_window\editor\text_window\interface\text_panel.e'''&lt;br /&gt;
* container containing tokens&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Next Steps''' are to implement the boolean (shouldn't be that hard), find a way to get the information from the parser group (define an API), use the information and set the boolean and in the end draw the underline.&lt;br /&gt;
&lt;br /&gt;
TEXT_OBSERVER, EDITABLE_TEXT_PANEL.on_char may be relevant for parser hook too!&lt;br /&gt;
&lt;br /&gt;
[[Image:BON_token_text.png]]&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=File:Ec-proof-of-concept.gif&amp;diff=2999</id>
		<title>File:Ec-proof-of-concept.gif</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=File:Ec-proof-of-concept.gif&amp;diff=2999"/>
				<updated>2006-05-23T01:07:03Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: Proof of concept Eiffelstudio with wavy red lines.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Proof of concept Eiffelstudio with wavy red lines.&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Syntax_checking/SRS&amp;diff=2947</id>
		<title>Syntax checking/SRS</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Syntax_checking/SRS&amp;diff=2947"/>
				<updated>2006-05-20T16:31:40Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Syntax_checking|back to Syntax checking page]]&lt;br /&gt;
&lt;br /&gt;
= Goal =&lt;br /&gt;
Provide adequate, but non intrusive feedback to user about syntax errors.&lt;br /&gt;
&lt;br /&gt;
= Parser =&lt;br /&gt;
# Should only parse when neccessary:&lt;br /&gt;
## When editing a new or correct expression:&lt;br /&gt;
### After typing a point, comma, colon, semi-colon, space, tab or line-break&lt;br /&gt;
### After leaving the edited expression (using cursor or mouse)&lt;br /&gt;
## When editing a incorrect expression:&lt;br /&gt;
### After each added character&lt;br /&gt;
# Provide errors in adequate datastructure to visualisation components (replaced by is_correct attribute on token)&lt;br /&gt;
##linenumber&lt;br /&gt;
##type of error&lt;br /&gt;
##further information&lt;br /&gt;
# Whenever the visualisation of an expression should change, the parser should call an event handler provided by visualization components&lt;br /&gt;
&lt;br /&gt;
   '''Note:'''&lt;br /&gt;
   * A new expression is correct until it becomes incorrect.&lt;br /&gt;
   * The state of an expression can only be changed when the cursor leaves it.&lt;br /&gt;
&lt;br /&gt;
= Interface =&lt;br /&gt;
# The parser invalidates a TOKEN, by settings its attribute is_correct to false&lt;br /&gt;
# The parser can also set TOKEN's error_description attribute to the specific error (or error_type if we don't get description)&lt;br /&gt;
# An additional data-structure has to be maintained, to pass error summary information to visualization&lt;br /&gt;
&lt;br /&gt;
= Visualization =&lt;br /&gt;
# Highlighting happens only in code editing view&lt;br /&gt;
# Visualization component should maintain information on line states (underlined y/n)&lt;br /&gt;
# Underline syntax errors using a (preferably wavy) red line&lt;br /&gt;
# On mouse over, show information on error&lt;br /&gt;
# Information window could be clickable to provide further error information&lt;br /&gt;
# Errors should be accessible over summarization&lt;br /&gt;
&lt;br /&gt;
= Suggestions =&lt;br /&gt;
# To be implemented after parser and visualization components are feature complete&lt;br /&gt;
# Suggestions based on information from parse tree&lt;br /&gt;
# Analyzation based on soundex or other algorithm&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Syntax_checking/SRS&amp;diff=2946</id>
		<title>Syntax checking/SRS</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Syntax_checking/SRS&amp;diff=2946"/>
				<updated>2006-05-20T16:26:43Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: /* Visualization */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Syntax_checking|back to Syntax checking page]]&lt;br /&gt;
&lt;br /&gt;
= Goal =&lt;br /&gt;
Provide adequate, but non intrusive feedback to user about syntax errors.&lt;br /&gt;
&lt;br /&gt;
= Parser =&lt;br /&gt;
# Should only parse when neccessary:&lt;br /&gt;
## When editing a new or correct expression:&lt;br /&gt;
### After typing a point, comma, colon, semi-colon, space, tab or line-break&lt;br /&gt;
### After leaving the edited expression (using cursor or mouse)&lt;br /&gt;
## When editing a incorrect expression:&lt;br /&gt;
### After each added character&lt;br /&gt;
# Provide errors in adequate datastructure to visualisation components&lt;br /&gt;
##linenumber&lt;br /&gt;
##type of error&lt;br /&gt;
##further information&lt;br /&gt;
# Whenever the visualisation of an expression should change, the parser should call an event handler provided by visualization components&lt;br /&gt;
&lt;br /&gt;
   '''Note:'''&lt;br /&gt;
   * A new expression is correct until it becomes incorrect.&lt;br /&gt;
   * The state of an expression can only be changed when the cursor leaves it.&lt;br /&gt;
&lt;br /&gt;
= Visualization =&lt;br /&gt;
# Highlighting happens only in code editing view&lt;br /&gt;
# Visualization component should maintain information on line states (underlined y/n)&lt;br /&gt;
# Underline syntax errors using a (preferably wavy) red line&lt;br /&gt;
# On mouse over, show information on error&lt;br /&gt;
# Information window could be clickable to provide further error information&lt;br /&gt;
# Errors should be accessible over summarization&lt;br /&gt;
&lt;br /&gt;
= Suggestions =&lt;br /&gt;
# To be implemented after parser and visualization components are feature complete&lt;br /&gt;
# Suggestions based on information from parse tree&lt;br /&gt;
# Analyzation based on soundex or other algorithm&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=User:Jabernet&amp;diff=2884</id>
		<title>User:Jabernet</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=User:Jabernet&amp;diff=2884"/>
				<updated>2006-05-17T09:20:02Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: /* Janick Bernet */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Janick Bernet=&lt;br /&gt;
&lt;br /&gt;
Student ETH Zurich, currently working on SynChé project.&lt;br /&gt;
&lt;br /&gt;
 Kontakt:&lt;br /&gt;
 jabernet ät student...&lt;br /&gt;
 079 400 04 59&lt;br /&gt;
 MSN: inflagranti82@hotmail.com&lt;br /&gt;
 ICQ: 32896520&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Syntax_checking/SRS&amp;diff=2883</id>
		<title>Syntax checking/SRS</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Syntax_checking/SRS&amp;diff=2883"/>
				<updated>2006-05-17T09:18:50Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Syntax_checking|back to Syntax checking page]]&lt;br /&gt;
&lt;br /&gt;
= Goal =&lt;br /&gt;
Provide adequate, but non intrusive feedback to user about syntax errors.&lt;br /&gt;
&lt;br /&gt;
= Parser =&lt;br /&gt;
# Should only parse when neccessary:&lt;br /&gt;
## When editing a new or correct expression:&lt;br /&gt;
### After typing a point, comma, colon, semi-colon, space, tab or line-break&lt;br /&gt;
### After leaving the edited expression (using cursor or mouse)&lt;br /&gt;
## When editing a incorrect expression:&lt;br /&gt;
### After each added character&lt;br /&gt;
# Provide errors in adequate datastructure to visualisation components&lt;br /&gt;
##linenumber&lt;br /&gt;
##type of error&lt;br /&gt;
##further information&lt;br /&gt;
# Whenever the visualisation of an expression should change, the parser should call an event handler provided by visualization components&lt;br /&gt;
&lt;br /&gt;
   '''Note:'''&lt;br /&gt;
   * A new expression is correct until it becomes incorrect.&lt;br /&gt;
   * The state of an expression can only be changed when the cursor leaves it.&lt;br /&gt;
&lt;br /&gt;
= Visualization =&lt;br /&gt;
# Highlighting happens only in code editing view&lt;br /&gt;
# Provides event handler and registers it to parser error-event&lt;br /&gt;
# Visualization component should maintain information on line states (underlined y/n)&lt;br /&gt;
# Underline syntax errors using a (preferably wavy) red line&lt;br /&gt;
# On mouse over, show information on error&lt;br /&gt;
# Information window could be clickable to provide further error information&lt;br /&gt;
# Errors should be accessible over summarization&lt;br /&gt;
&lt;br /&gt;
= Suggestions =&lt;br /&gt;
# To be implemented after parser and visualization components are feature complete&lt;br /&gt;
# Suggestions based on information from parse tree&lt;br /&gt;
# Analyzation based on soundex or other algorithm&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Syntax_checking/Visualisation&amp;diff=2882</id>
		<title>Syntax checking/Visualisation</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Syntax_checking/Visualisation&amp;diff=2882"/>
				<updated>2006-05-17T09:18:39Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Syntax_checking|back to Syntax checking page]]&lt;br /&gt;
&lt;br /&gt;
== Meeting of the 12.05.06, Visualsation Team ==&lt;br /&gt;
&lt;br /&gt;
Summary of the important classes with little description of the features we plan to use:&lt;br /&gt;
&lt;br /&gt;
'''Src\library\editor\text_window\text\tokens\common\editor_token.e'''&lt;br /&gt;
* most important class&lt;br /&gt;
* all the other tokens inherit from this Class&lt;br /&gt;
* implement a boolean &amp;quot;is_correct”, who indicates if the token is syntacticly correct or not.&lt;br /&gt;
* color, position and other stuff is saved here too.&lt;br /&gt;
&lt;br /&gt;
'''editor_token_text.e'''&lt;br /&gt;
* top token class for all text-related tokens&lt;br /&gt;
* width -&amp;gt; the size of the token in pixel&lt;br /&gt;
* display_with_colors: this should be the feature we could hook to do draw our underlining&lt;br /&gt;
&lt;br /&gt;
'''Src\library\editor\text_window\editor\text_window\interface\text_panel.e'''&lt;br /&gt;
* container containing tokens&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Next Steps''' are to implement the boolean (shouldn't be that hard), find a way to get the information from the parser group (define an API), use the information and set the boolean and in the end draw the underline.&lt;br /&gt;
&lt;br /&gt;
TEXT_OBSERVER, EDITABLE_TEXT_PANEL.on_char may be relevant for parser hook too!&lt;br /&gt;
&lt;br /&gt;
[[Image:BON_token_text.png]]&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Syntax_checking&amp;diff=2881</id>
		<title>Syntax checking</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Syntax_checking&amp;diff=2881"/>
				<updated>2006-05-17T09:18:12Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Projects]]&lt;br /&gt;
[[Category:Editor]]&lt;br /&gt;
=Overview=&lt;br /&gt;
The aim of this project is to provide adequate, but non intrusive feedback to user about syntax errors. This is done by checking syntax as you type and underlining syntax errors by the well knwon wavy red line. Furthermore, error descriptions and possible solutions should be provided.&lt;br /&gt;
&lt;br /&gt;
The Project is named '''SynChé''', which is a combination of syntax and checking.&lt;br /&gt;
The ''é'' at the end is important, as a cool name needs either a recursive acronym or a special character from a non English language.&lt;br /&gt;
&lt;br /&gt;
=Software Requirement Specification (SRS)=&lt;br /&gt;
You can find our SRS [[Syntax_checking/SRS|here]]&lt;br /&gt;
&lt;br /&gt;
=Groups=&lt;br /&gt;
&lt;br /&gt;
* [[Syntax_checking/Visualisation|Visualisation]]&lt;br /&gt;
* [[Syntax_checking/Parser|Parser]]&lt;br /&gt;
&lt;br /&gt;
=Milestones=&lt;br /&gt;
&lt;br /&gt;
==M1: April 25th==&lt;br /&gt;
* Get home-grown EiffelStudio up and running.&lt;br /&gt;
&lt;br /&gt;
==M2: May 2nd==&lt;br /&gt;
* '''Put your name in this Wiki!'''&lt;br /&gt;
* Analyse source code to certain degree, so discussion about interfaces between parser and visual is possible&lt;br /&gt;
&lt;br /&gt;
==M3: May 9th==&lt;br /&gt;
* SRS written&lt;br /&gt;
* Overview of relevant classes (BON diagram or more)&lt;br /&gt;
* Further Project Milestones specified, based on SRS and knowledge about code&lt;br /&gt;
&lt;br /&gt;
== May 12th == &lt;br /&gt;
'''Results of the Meeting:''' [[Syntax_checking/Visualisation| Visualisation]]&lt;br /&gt;
&lt;br /&gt;
==M4: May 23th==&lt;br /&gt;
*'''Parser Group''': Find out what results you get from the parser&lt;br /&gt;
*'''Visualisation Group''': Write a feature that draw the red underline&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
Everyone intrested in this project is welcome to join our mailinglist [http://origo.ethz.ch/cgi-bin/mailman/listinfo/es-ui es-ui@origo.ethz.ch]. &lt;br /&gt;
At this point, the team is divided into two groups at this point, one responsible for the parser, the other one for visual feedback (like underlininig).&lt;br /&gt;
&lt;br /&gt;
== Visual Feedback ==&lt;br /&gt;
* [[User:jabernet| Janick Bernet]] (project leader)&lt;br /&gt;
* [[User:fdevries| Fabien de Vries]]&lt;br /&gt;
* [[User:indermum| Matthias Indermühle]]&lt;br /&gt;
* [[User:clerco| Olivier Clerc]]&lt;br /&gt;
&lt;br /&gt;
== Parser ==&lt;br /&gt;
* [[User:maser| Martin Luder]]&lt;br /&gt;
* [[User:Chrigu| Christoph Huber]]&lt;br /&gt;
* [[User:goalgettah| Ueli Etter]]&lt;br /&gt;
* [[User:Squeezie| Michael Schär]]&lt;br /&gt;
* [[User:MarkoR| Marko Ristin]]&lt;br /&gt;
&lt;br /&gt;
== Assistant ==&lt;br /&gt;
* [[User:classens| Stephan Classen]]&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Syntax_checking&amp;diff=2880</id>
		<title>Syntax checking</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Syntax_checking&amp;diff=2880"/>
				<updated>2006-05-17T09:18:05Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Projects]]&lt;br /&gt;
[[Category:Editor]]&lt;br /&gt;
&lt;br /&gt;
=Overview=&lt;br /&gt;
The aim of this project is to provide adequate, but non intrusive feedback to user about syntax errors. This is done by checking syntax as you type and underlining syntax errors by the well knwon wavy red line. Furthermore, error descriptions and possible solutions should be provided.&lt;br /&gt;
&lt;br /&gt;
The Project is named '''SynChé''', which is a combination of syntax and checking.&lt;br /&gt;
The ''é'' at the end is important, as a cool name needs either a recursive acronym or a special character from a non English language.&lt;br /&gt;
&lt;br /&gt;
=Software Requirement Specification (SRS)=&lt;br /&gt;
You can find our SRS [[Syntax_checking/SRS|here]]&lt;br /&gt;
&lt;br /&gt;
=Groups=&lt;br /&gt;
&lt;br /&gt;
* [[Syntax_checking/Visualisation|Visualisation]]&lt;br /&gt;
* [[Syntax_checking/Parser|Parser]]&lt;br /&gt;
&lt;br /&gt;
=Milestones=&lt;br /&gt;
&lt;br /&gt;
==M1: April 25th==&lt;br /&gt;
* Get home-grown EiffelStudio up and running.&lt;br /&gt;
&lt;br /&gt;
==M2: May 2nd==&lt;br /&gt;
* '''Put your name in this Wiki!'''&lt;br /&gt;
* Analyse source code to certain degree, so discussion about interfaces between parser and visual is possible&lt;br /&gt;
&lt;br /&gt;
==M3: May 9th==&lt;br /&gt;
* SRS written&lt;br /&gt;
* Overview of relevant classes (BON diagram or more)&lt;br /&gt;
* Further Project Milestones specified, based on SRS and knowledge about code&lt;br /&gt;
&lt;br /&gt;
== May 12th == &lt;br /&gt;
'''Results of the Meeting:''' [[Syntax_checking/Visualisation| Visualisation]]&lt;br /&gt;
&lt;br /&gt;
==M4: May 23th==&lt;br /&gt;
*'''Parser Group''': Find out what results you get from the parser&lt;br /&gt;
*'''Visualisation Group''': Write a feature that draw the red underline&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
Everyone intrested in this project is welcome to join our mailinglist [http://origo.ethz.ch/cgi-bin/mailman/listinfo/es-ui es-ui@origo.ethz.ch]. &lt;br /&gt;
At this point, the team is divided into two groups at this point, one responsible for the parser, the other one for visual feedback (like underlininig).&lt;br /&gt;
&lt;br /&gt;
== Visual Feedback ==&lt;br /&gt;
* [[User:jabernet| Janick Bernet]] (project leader)&lt;br /&gt;
* [[User:fdevries| Fabien de Vries]]&lt;br /&gt;
* [[User:indermum| Matthias Indermühle]]&lt;br /&gt;
* [[User:clerco| Olivier Clerc]]&lt;br /&gt;
&lt;br /&gt;
== Parser ==&lt;br /&gt;
* [[User:maser| Martin Luder]]&lt;br /&gt;
* [[User:Chrigu| Christoph Huber]]&lt;br /&gt;
* [[User:goalgettah| Ueli Etter]]&lt;br /&gt;
* [[User:Squeezie| Michael Schär]]&lt;br /&gt;
* [[User:MarkoR| Marko Ristin]]&lt;br /&gt;
&lt;br /&gt;
== Assistant ==&lt;br /&gt;
* [[User:classens| Stephan Classen]]&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Syntax_checking/Parser&amp;diff=2879</id>
		<title>Syntax checking/Parser</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Syntax_checking/Parser&amp;diff=2879"/>
				<updated>2006-05-17T09:17:50Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Syntax_checking|back to Syntax checking page]]&lt;br /&gt;
&lt;br /&gt;
==Important Classes==&lt;br /&gt;
&lt;br /&gt;
====EIFFEL_PARSER====&lt;br /&gt;
* has a feature parse(file)&lt;br /&gt;
====CLASS_AS====&lt;br /&gt;
* AST of a class&lt;br /&gt;
====ERROR====&lt;br /&gt;
* deferred; superclass of all error types like EIFFEL_ERROR or SYNTAX_ERROR&lt;br /&gt;
* features line, column: INTEGER give location of error&lt;br /&gt;
====ERROR_HANDLER====&lt;br /&gt;
* feature error_list: ERROR is a list of errors found by the parser&lt;br /&gt;
====SHARED_ERROR_HANDLER====&lt;br /&gt;
* singleton used by all relevant classes&lt;br /&gt;
&lt;br /&gt;
====EIFFEL_CLASS_C====&lt;br /&gt;
* features build_ast and parse_ast show how the parser can be used.&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=User:Jabernet&amp;diff=2878</id>
		<title>User:Jabernet</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=User:Jabernet&amp;diff=2878"/>
				<updated>2006-05-17T09:16:42Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: /* Janick Bernet */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Janick Bernet=&lt;br /&gt;
&lt;br /&gt;
Student ETH Zurich, currently working on SynChé project.&lt;br /&gt;
&lt;br /&gt;
 Kontakt:&lt;br /&gt;
 jabernet ät student...&lt;br /&gt;
 079 400 04 59&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=User:Jabernet&amp;diff=2877</id>
		<title>User:Jabernet</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=User:Jabernet&amp;diff=2877"/>
				<updated>2006-05-17T09:16:35Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: /* Janick Bernet */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Janick Bernet=&lt;br /&gt;
&lt;br /&gt;
Student ETH Zurich, currently working on SynChé project.&lt;br /&gt;
&lt;br /&gt;
Kontakt:&lt;br /&gt;
 jabernet ät student...&lt;br /&gt;
 079 400 04 59&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=User:Jabernet&amp;diff=2876</id>
		<title>User:Jabernet</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=User:Jabernet&amp;diff=2876"/>
				<updated>2006-05-17T09:16:25Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: /* Janick Bernet */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Janick Bernet=&lt;br /&gt;
&lt;br /&gt;
Student ETH Zurich, currently working on SynChé project.&lt;br /&gt;
&lt;br /&gt;
Kontakt:&lt;br /&gt;
&lt;br /&gt;
jabernet ät student...&lt;br /&gt;
&lt;br /&gt;
079 400 04 59&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=User:Jabernet&amp;diff=2875</id>
		<title>User:Jabernet</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=User:Jabernet&amp;diff=2875"/>
				<updated>2006-05-17T09:16:17Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: /* Janick Bernet */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Janick Bernet=&lt;br /&gt;
&lt;br /&gt;
Student ETH Zurich, currently working on SynChé project.&lt;br /&gt;
&lt;br /&gt;
Kontakt:&lt;br /&gt;
jabernet ät student...&lt;br /&gt;
079 400 04 59&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Syntax_checking/Visualisation&amp;diff=2799</id>
		<title>Syntax checking/Visualisation</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Syntax_checking/Visualisation&amp;diff=2799"/>
				<updated>2006-05-12T18:59:43Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Meeting of the 12.05.06, Visualsation Team ==&lt;br /&gt;
&lt;br /&gt;
Summary of the important classes with little description of the features we plan to use:&lt;br /&gt;
&lt;br /&gt;
'''Src\library\editor\text_window\text\tokens\common\editor_token.e'''&lt;br /&gt;
* most important class&lt;br /&gt;
* all the other tokens inherit from this Class&lt;br /&gt;
* implement a boolean &amp;quot;is_correct”, who indicates if the token is syntacticly correct or not.&lt;br /&gt;
* color, position and other stuff is saved here too.&lt;br /&gt;
&lt;br /&gt;
'''editor_token_text.e'''&lt;br /&gt;
* top token class for all text-related tokens&lt;br /&gt;
* width -&amp;gt; the size of the token in pixel&lt;br /&gt;
* display_with_colors: this should be the feature we could hook to do draw our underlining&lt;br /&gt;
&lt;br /&gt;
'''Src\library\editor\text_window\editor\text_window\interface\text_panel.e'''&lt;br /&gt;
* container containing tokens&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Next Steps''' are to implement the boolean (shouldn't be that hard), find a way to get the information from the parser group (define an API), use the information and set the boolean and in the end draw the underline.&lt;br /&gt;
&lt;br /&gt;
TEXT_OBSERVER, EDITABLE_TEXT_PANEL.on_char may be relevant for parser hook too!&lt;br /&gt;
&lt;br /&gt;
[[Image:BON_token_text.png]]&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=File:BON_token_text.png&amp;diff=2798</id>
		<title>File:BON token text.png</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=File:BON_token_text.png&amp;diff=2798"/>
				<updated>2006-05-12T18:59:22Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: BON diagram of important token classes&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;BON diagram of important token classes&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Syntax_checking/Visualisation&amp;diff=2797</id>
		<title>Syntax checking/Visualisation</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Syntax_checking/Visualisation&amp;diff=2797"/>
				<updated>2006-05-12T18:58:52Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Meeting of the 12.05.06, Visualsation Team ==&lt;br /&gt;
&lt;br /&gt;
Summary of the important classes with little description of the features we plan to use:&lt;br /&gt;
&lt;br /&gt;
'''Src\library\editor\text_window\text\tokens\common\editor_token.e'''&lt;br /&gt;
* most important class&lt;br /&gt;
* all the other tokens inherit from this Class&lt;br /&gt;
* implement a boolean &amp;quot;is_correct”, who indicates if the token is syntacticly correct or not.&lt;br /&gt;
* color, position and other stuff is saved here too.&lt;br /&gt;
&lt;br /&gt;
'''editor_token_text.e'''&lt;br /&gt;
* top token class for all text-related tokens&lt;br /&gt;
* width -&amp;gt; the size of the token in pixel&lt;br /&gt;
* display_with_colors: this should be the feature we could hook to do draw our underlining&lt;br /&gt;
&lt;br /&gt;
'''Src\library\editor\text_window\editor\text_window\interface\text_panel.e'''&lt;br /&gt;
* container containing tokens&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Next Steps''' are to implement the boolean (shouldn't be that hard), find a way to get the information from the parser group (define an API), use the information and set the boolean and in the end draw the underline.&lt;br /&gt;
&lt;br /&gt;
TEXT_OBSERVER, EDITABLE_TEXT_PANEL.on_char may be relevant for parser hook too!&lt;br /&gt;
&lt;br /&gt;
[[Image:BON_token_text.jpg]]&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Syntax_checking/Visualisation&amp;diff=2796</id>
		<title>Syntax checking/Visualisation</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Syntax_checking/Visualisation&amp;diff=2796"/>
				<updated>2006-05-12T18:58:31Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Meeting of the 12.05.06, Visualsation Team ==&lt;br /&gt;
&lt;br /&gt;
Summary of the important classes with little description of the features we plan to use:&lt;br /&gt;
&lt;br /&gt;
'''Src\library\editor\text_window\text\tokens\common\editor_token.e'''&lt;br /&gt;
* most important class&lt;br /&gt;
* all the other tokens inherit from this Class&lt;br /&gt;
* implement a boolean &amp;quot;is_correct”, who indicates if the token is syntacticly correct or not.&lt;br /&gt;
* color, position and other stuff is saved here too.&lt;br /&gt;
&lt;br /&gt;
'''editor_token_text.e'''&lt;br /&gt;
* top token class for all text-related tokens&lt;br /&gt;
* width -&amp;gt; the size of the token in pixel&lt;br /&gt;
* display_with_colors: this should be the feature we could hook to do draw our underlining&lt;br /&gt;
&lt;br /&gt;
'''Src\library\editor\text_window\editor\text_window\interface\text_panel.e'''&lt;br /&gt;
* container containing tokens&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Next Steps''' are to implement the boolean (shouldn't be that hard), find a way to get the information from the parser group (define an API), use the information and set the boolean and in the end draw the underline.&lt;br /&gt;
&lt;br /&gt;
TEXT_OBSERVER, EDITABLE_TEXT_PANEL.on_char may be relevant for parser hook too!&lt;br /&gt;
[[Image:Example.jpg]]&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Syntax_checking/Visualisation&amp;diff=2793</id>
		<title>Syntax checking/Visualisation</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Syntax_checking/Visualisation&amp;diff=2793"/>
				<updated>2006-05-12T18:46:01Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Meeting of the 12.05.06, Visualsation Team ==&lt;br /&gt;
&lt;br /&gt;
Summary of the important classes with little description of the features we plan to use:&lt;br /&gt;
&lt;br /&gt;
'''Src\library\editor\text_window\text\tokens\common\editor_token.e'''&lt;br /&gt;
* most important class&lt;br /&gt;
* all the other tokens inherit from this Class&lt;br /&gt;
* implement a boolean &amp;quot;is_correct”, who indicates if the token is syntacticly correct or not.&lt;br /&gt;
* color, position and other stuff is saved here too.&lt;br /&gt;
&lt;br /&gt;
'''editor_token_text.e'''&lt;br /&gt;
* top token class for all text-related tokens&lt;br /&gt;
* width -&amp;gt; the size of the token in pixel&lt;br /&gt;
* display_with_colors: this should be the feature we could hook to do draw our underlining&lt;br /&gt;
&lt;br /&gt;
'''Src\library\editor\text_window\editor\text_window\interface\text_panel.e'''&lt;br /&gt;
* container containing tokens&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Next Steps''' are to implement the boolean (shouldn't be that hard), find a way to get the information from the parser group (define an API), use the information and set the boolean and in the end draw the underline.&lt;br /&gt;
&lt;br /&gt;
TEXT_OBSERVER, EDITABLE_TEXT_PANEL.on_char may be relevant for parser hook too!&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Syntax_checking/Visualisation&amp;diff=2792</id>
		<title>Syntax checking/Visualisation</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Syntax_checking/Visualisation&amp;diff=2792"/>
				<updated>2006-05-12T18:44:16Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Meeting of the 12.05.06, Visualsation Team ==&lt;br /&gt;
&lt;br /&gt;
Summary of the important classes with little description of the features we plan to use:&lt;br /&gt;
&lt;br /&gt;
'''Src\library\editor\text_window\text\tokens\common\editor_token.e'''&lt;br /&gt;
* most important class&lt;br /&gt;
* all the other tokens inherit from this Class&lt;br /&gt;
* implement a boolean &amp;quot;is_correct”, who indicates if the token is syntacticly correct or not.&lt;br /&gt;
* color, position and other stuff is saved here too.&lt;br /&gt;
&lt;br /&gt;
'''editor_token_text.e'''&lt;br /&gt;
* top token class for all text-related tokens&lt;br /&gt;
* width -&amp;gt; the size of the token in pixel&lt;br /&gt;
* display_with_colors: this should be the feature we could hook to do draw our underlining&lt;br /&gt;
&lt;br /&gt;
'''Src\library\editor\text_window\editor\text_window\interface\text_panel.e'''&lt;br /&gt;
* container containing tokens&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Next Steps''' are to implement the boolean (shouldn't be that hard), find a way to get the information from the parser group (define an API), use the information and set the boolean and in the end draw the underline.&lt;br /&gt;
&lt;br /&gt;
TEXT_OBSERVER_MANAGER may be relevant for parser hook too!&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Syntax_checking/Visualisation&amp;diff=2791</id>
		<title>Syntax checking/Visualisation</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Syntax_checking/Visualisation&amp;diff=2791"/>
				<updated>2006-05-12T18:25:53Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Meeting of the 12.05.06, Visualsation Team ==&lt;br /&gt;
&lt;br /&gt;
Summary of the important classes with little description of the features we plan to use:&lt;br /&gt;
&lt;br /&gt;
'''Src\library\editor\text_window\text\tokens\common\editor_token.e'''&lt;br /&gt;
* most important class&lt;br /&gt;
* all the other tokens inherit from this Class&lt;br /&gt;
* implement a boolean &amp;quot;is_correct”, who indicates if the token is syntacticly correct or not.&lt;br /&gt;
* color, position and other stuff is saved here too.&lt;br /&gt;
&lt;br /&gt;
'''editor_token_text.e'''&lt;br /&gt;
* top token class for all text-related tokens&lt;br /&gt;
* width -&amp;gt; the size of the token in pixel&lt;br /&gt;
* display_with_colors: this should be the feature we could hook to do draw our underlining&lt;br /&gt;
&lt;br /&gt;
'''Src\library\editor\text_window\editor\text_window\interface\text_panel.e'''&lt;br /&gt;
* container containing tokens&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Next Steps''' are to implement the boolean (shouldn't be that hard), find a way to get the information from the parser group (define an API), use the information and set the boolean and in the end draw the underline.&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Syntax_checking&amp;diff=2790</id>
		<title>Syntax checking</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Syntax_checking&amp;diff=2790"/>
				<updated>2006-05-12T18:23:52Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: /* M3: May 9th */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Projects]]&lt;br /&gt;
[[Category:Editor]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Overview=&lt;br /&gt;
The aim of this project is to provide adequate, but non intrusive feedback to user about syntax errors. This is done by checking syntax as you type and underlining syntax errors by the well knwon wavy red line. Furthermore, error descriptions and possible solutions should be provided.&lt;br /&gt;
&lt;br /&gt;
The Project is named '''SynChé''', which is a combination of syntax and checking.&lt;br /&gt;
The ''é'' at the end is important, as a cool name needs either a recursive acronym or a special character from a non English language.&lt;br /&gt;
&lt;br /&gt;
=Software Requirement Specification (SRS)=&lt;br /&gt;
You can find our SRS [[Syntax_checking/SRS|here]]&lt;br /&gt;
&lt;br /&gt;
=Milestones=&lt;br /&gt;
&lt;br /&gt;
==M1: April 25th==&lt;br /&gt;
* Get home-grown EiffelStudio up and running.&lt;br /&gt;
&lt;br /&gt;
==M2: May 2nd==&lt;br /&gt;
* '''Put your name in this Wiki!'''&lt;br /&gt;
* Analyse source code to certain degree, so discussion about interfaces between parser and visual is possible&lt;br /&gt;
&lt;br /&gt;
==M3: May 9th==&lt;br /&gt;
* SRS written&lt;br /&gt;
* Overview of relevant classes (BON diagram or more)&lt;br /&gt;
* Further Project Milestones specified, based on SRS and knowledge about code&lt;br /&gt;
&lt;br /&gt;
== May 12th == &lt;br /&gt;
'''Results of the Meeting:''' [[Syntax_checking/Visualisation| Visualisation]]&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
Everyone intrested in this project is welcome to join our mailinglist [http://origo.ethz.ch/cgi-bin/mailman/listinfo/es-ui es-ui@origo.ethz.ch]. &lt;br /&gt;
At this point, the team is divided into two groups at this point, one responsible for the parser, the other one for visual feedback (like underlininig).&lt;br /&gt;
&lt;br /&gt;
== Visual Feedback ==&lt;br /&gt;
* [[User:jabernet| Janick Bernet]] (project leader)&lt;br /&gt;
* [[User:fdevries| Fabien de Vries]]&lt;br /&gt;
* [[User:indermum| Matthias Indermühle]]&lt;br /&gt;
* [[User:clerco| Olivier Clerc]]&lt;br /&gt;
&lt;br /&gt;
== Parser ==&lt;br /&gt;
* [[User:maser| Martin Luder]]&lt;br /&gt;
* [[User:Chrigu| Christoph Huber]]&lt;br /&gt;
* [[User:goalgettah| Ueli Etter]]&lt;br /&gt;
* [[User:Squeezie| Michael Schär]]&lt;br /&gt;
* [[User:MarkoR| Marko Ristin]]&lt;br /&gt;
&lt;br /&gt;
== Assistant ==&lt;br /&gt;
* [[User:classens| Stephan Classen]]&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Syntax_checking/Visualisation&amp;diff=2789</id>
		<title>Syntax checking/Visualisation</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Syntax_checking/Visualisation&amp;diff=2789"/>
				<updated>2006-05-12T18:12:35Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: /* Meeting of the 12.05.06, Visualsation Team */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Meeting of the 12.05.06, Visualsation Team ==&lt;br /&gt;
&lt;br /&gt;
Summary of the important classes with little description of the features we plan to use:&lt;br /&gt;
&lt;br /&gt;
Src\library\editor\text_window\text\tokens\common\editor_token.e&lt;br /&gt;
* most important class&lt;br /&gt;
* all the other tokens inherit from this Class&lt;br /&gt;
* implement a boolean &amp;quot;is_correct”, who indicates if the token is syntacticly correct or not.&lt;br /&gt;
* color, position and other stuff is saved here too.&lt;br /&gt;
&lt;br /&gt;
editor_token_text.e&lt;br /&gt;
* top token class for all text-related tokens&lt;br /&gt;
* width -&amp;gt; the size of the token in pixel&lt;br /&gt;
* display_with_colors: this should be the feature we could hook to do draw our underlining&lt;br /&gt;
&lt;br /&gt;
Src\library\editor\text_window\editor\text_window\interface\text_panel.e&lt;br /&gt;
* container containing tokens&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Next Steps''' are to implement the boolean (shouldn't be that hard), find a way to get the information from the parser group (define an API), use the information and set the boolean and in the end draw the underline.&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Talk:Syntax_checking/SRS&amp;diff=2656</id>
		<title>Talk:Syntax checking/SRS</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Talk:Syntax_checking/SRS&amp;diff=2656"/>
				<updated>2006-05-06T00:08:12Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Janick ==&lt;br /&gt;
Please give some feedback regarding SRS so far&lt;br /&gt;
&lt;br /&gt;
==Manus==&lt;br /&gt;
It is great. For the syntax validity, create an instance of EIFFEL_PARSER with the AST_NULL_FACTORY for the factory. That way it is quite efficient for the parsing.&lt;br /&gt;
&lt;br /&gt;
[[User:Manus|manus]] 19:03, 2 May 2006 (CEST)&lt;br /&gt;
&lt;br /&gt;
==Janick==&lt;br /&gt;
Manu, thanks for the feedback and hints. &lt;br /&gt;
&lt;br /&gt;
Some people thaught that an timing-based parser would be better. Who is of the same opionion? Please use this discussion, as we need to finalize the specifications soon.&lt;br /&gt;
&lt;br /&gt;
May 5th 2006 (CEST)&lt;br /&gt;
&lt;br /&gt;
== Martin ==&lt;br /&gt;
&lt;br /&gt;
What exactly do you mean by timing-based? As specified in the SRS but with a timeout before it starts parsing or really independent of user input? I think it's good the way it is now (if it is efficient enough). Just a little remark to the notes: If the state of an expression can only change when the cursor leaves it, does that include the items under 1.1.1? I think it should, although I guess you should get a little time to resume typing.&lt;br /&gt;
&lt;br /&gt;
[[User:Maser|Maser]] 23:57, 5 May 2006 (CEST)&lt;br /&gt;
&lt;br /&gt;
==Janick==&lt;br /&gt;
Timing based would mean that the document gets parsed and highlighted in specific intervals (like every 50ms). This would also imply that while writing not yet completed feature names etc. would get underlined.&lt;br /&gt;
&lt;br /&gt;
Stephan added that &amp;quot;when the cursor&amp;quot; leaves part, so he should answer that question. IMO if we have event-based parsing, that coursor leaves clause could be removed.&lt;br /&gt;
&lt;br /&gt;
01:59, May 6th 2006 (CEST)&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Talk:Syntax_checking/SRS&amp;diff=2651</id>
		<title>Talk:Syntax checking/SRS</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Talk:Syntax_checking/SRS&amp;diff=2651"/>
				<updated>2006-05-05T21:30:50Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Janick ==&lt;br /&gt;
Please give some feedback regarding SRS so far&lt;br /&gt;
&lt;br /&gt;
==Manus==&lt;br /&gt;
It is great. For the syntax validity, create an instance of EIFFEL_PARSER with the AST_NULL_FACTORY for the factory. That way it is quite efficient for the parsing.&lt;br /&gt;
&lt;br /&gt;
[[User:Manus|manus]] 19:03, 2 May 2006 (CEST)&lt;br /&gt;
&lt;br /&gt;
==Janick==&lt;br /&gt;
Manu, thanks for the feedback and hints. &lt;br /&gt;
&lt;br /&gt;
Some people thaught that an timing-based parser would be better. Who is of the same opionion? Please use this discussion, as we need to finalize the specifications soon.&lt;br /&gt;
&lt;br /&gt;
May 5th 2006 (CEST)&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Talk:Syntax_checking/SRS&amp;diff=2650</id>
		<title>Talk:Syntax checking/SRS</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Talk:Syntax_checking/SRS&amp;diff=2650"/>
				<updated>2006-05-05T21:30:39Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Janick ==&lt;br /&gt;
Please give some feedback regarding SRS so far&lt;br /&gt;
&lt;br /&gt;
==Manus==&lt;br /&gt;
It is great. For the syntax validity, create an instance of EIFFEL_PARSER with the AST_NULL_FACTORY for the factory. That way it is quite efficient for the parsing.&lt;br /&gt;
&lt;br /&gt;
[[User:Manus|manus]] 19:03, 2 May 2006 (CEST)&lt;br /&gt;
&lt;br /&gt;
Manu, thanks for the feedback and hints. &lt;br /&gt;
&lt;br /&gt;
==Janick==&lt;br /&gt;
Some people thaught that an timing-based parser would be better. Who is of the same opionion? Please use this discussion, as we need to finalize the specifications soon.&lt;br /&gt;
&lt;br /&gt;
May 5th 2006 (CEST)&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Talk:Syntax_checking/SRS&amp;diff=2649</id>
		<title>Talk:Syntax checking/SRS</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Talk:Syntax_checking/SRS&amp;diff=2649"/>
				<updated>2006-05-05T21:30:27Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Please give some feedback regarding SRS so far&lt;br /&gt;
&lt;br /&gt;
==Manus==&lt;br /&gt;
It is great. For the syntax validity, create an instance of EIFFEL_PARSER with the AST_NULL_FACTORY for the factory. That way it is quite efficient for the parsing.&lt;br /&gt;
&lt;br /&gt;
[[User:Manus|manus]] 19:03, 2 May 2006 (CEST)&lt;br /&gt;
&lt;br /&gt;
Manu, thanks for the feedback and hints. &lt;br /&gt;
&lt;br /&gt;
==Janick==&lt;br /&gt;
Some people thaught that an timing-based parser would be better. Who is of the same opionion? Please use this discussion, as we need to finalize the specifications soon.&lt;br /&gt;
&lt;br /&gt;
May 5th 2006 (CEST)&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Talk:Syntax_checking/SRS&amp;diff=2648</id>
		<title>Talk:Syntax checking/SRS</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Talk:Syntax_checking/SRS&amp;diff=2648"/>
				<updated>2006-05-05T21:30:16Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: /* Manus */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Please give some feedback regarding SRS so far&lt;br /&gt;
&lt;br /&gt;
==Manus==&lt;br /&gt;
It is great. For the syntax validity, create an instance of EIFFEL_PARSER with the AST_NULL_FACTORY for the factory. That way it is quite efficient for the parsing.&lt;br /&gt;
&lt;br /&gt;
[[User:Manus|manus]] 19:03, 2 May 2006 (CEST)&lt;br /&gt;
&lt;br /&gt;
Manu, thanks for the feedback and hints. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Janick==&lt;br /&gt;
Some people thaught that an timing-based parser would be better. Who is of the same opionion? Please use this discussion, as we need to finalize the specifications soon.&lt;br /&gt;
&lt;br /&gt;
[[User:jabernet|Janick]] May 5th 2006 (CEST)&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Talk:Syntax_checking/SRS&amp;diff=2647</id>
		<title>Talk:Syntax checking/SRS</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Talk:Syntax_checking/SRS&amp;diff=2647"/>
				<updated>2006-05-05T21:29:59Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: /* Manus */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Please give some feedback regarding SRS so far&lt;br /&gt;
&lt;br /&gt;
==Manus==&lt;br /&gt;
It is great. For the syntax validity, create an instance of EIFFEL_PARSER with the AST_NULL_FACTORY for the factory. That way it is quite efficient for the parsing.&lt;br /&gt;
&lt;br /&gt;
[[User:Manus|manus]] 19:03, 2 May 2006 (CEST)&lt;br /&gt;
&lt;br /&gt;
Manu, thanks for the feedback and hints. &lt;br /&gt;
&lt;br /&gt;
Some people thaught that an timing-based parser would be better. Who is of the same opionion? Please use this discussion, as we need to finalize the specifications soon.&lt;br /&gt;
&lt;br /&gt;
[[User:jabernet|Janick]] May 5th 2006 (CEST)&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Talk:Syntax_checking/SRS&amp;diff=2646</id>
		<title>Talk:Syntax checking/SRS</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Talk:Syntax_checking/SRS&amp;diff=2646"/>
				<updated>2006-05-05T21:29:23Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Please give some feedback regarding SRS so far&lt;br /&gt;
&lt;br /&gt;
==Manus==&lt;br /&gt;
It is great. For the syntax validity, create an instance of EIFFEL_PARSER with the AST_NULL_FACTORY for the factory. That way it is quite efficient for the parsing.&lt;br /&gt;
&lt;br /&gt;
[[User:Manus|manus]] 19:03, 2 May 2006 (CEST)&lt;br /&gt;
&lt;br /&gt;
Manu, thanks for the feedback and hints. &lt;br /&gt;
&lt;br /&gt;
Some people thaught that an timing-based parser would be better. Who is of the same opionion? Please use this discussion, as we need to finalize the specifications soon.&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Syntax_checking&amp;diff=2614</id>
		<title>Syntax checking</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Syntax_checking&amp;diff=2614"/>
				<updated>2006-05-04T15:20:13Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: /* Software Requirement Specification (SaRS) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Projects]]&lt;br /&gt;
[[Category:Editor]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Overview=&lt;br /&gt;
The aim of this project is to provide adequate, but non intrusive feedback to user about syntax errors. This is done by checking syntax as you type and underlining syntax errors by the well knwon wavy red line. Furthermore, error descriptions and possible solutions should be provided.&lt;br /&gt;
&lt;br /&gt;
The Project is named '''SynChé''', which is a combination of syntax and checking.&lt;br /&gt;
The ''é'' at the end is important, as a cool name needs either a recursive acronym or a special character from a non English language.&lt;br /&gt;
&lt;br /&gt;
=Software Requirement Specification (SRS)=&lt;br /&gt;
You can find our SRS [[Syntax_checking/SRS|here]]&lt;br /&gt;
&lt;br /&gt;
=Milestones=&lt;br /&gt;
&lt;br /&gt;
==M1: April 25th==&lt;br /&gt;
* Get home-grown EiffelStudio up and running.&lt;br /&gt;
&lt;br /&gt;
==M2: May 2nd==&lt;br /&gt;
* '''Put your name in this Wiki!'''&lt;br /&gt;
* Analyse source code to certain degree, so discussion about interfaces between parser and visual is possible&lt;br /&gt;
&lt;br /&gt;
==M3: May 9th==&lt;br /&gt;
* SRS written&lt;br /&gt;
* Overview of relevant classes (BON diagram or more)&lt;br /&gt;
* Further Project Milestones specified, based on SRS and knowledge about code&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
Everyone intrested in this project is welcome to join our mailinglist [http://origo.ethz.ch/cgi-bin/mailman/listinfo/es-ui es-ui@origo.ethz.ch]. &lt;br /&gt;
At this point, the team is divided into two groups at this point, one responsible for the parser, the other one for visual feedback (like underlininig).&lt;br /&gt;
&lt;br /&gt;
== Visual Feedback ==&lt;br /&gt;
* [[User:jabernet| Janick Bernet]] (project leader)&lt;br /&gt;
* [[User:fdevries| Fabien de Vries]]&lt;br /&gt;
* [[User:indermum| Matthias Indermühle]]&lt;br /&gt;
* [[User:clerco| Olivier Clerc]]&lt;br /&gt;
&lt;br /&gt;
== Parser ==&lt;br /&gt;
* [[User:maser| Martin Luder]]&lt;br /&gt;
* [[User:Chrigu| Christoph Huber]]&lt;br /&gt;
* [[User:goalgettah| Ueli Etter]]&lt;br /&gt;
* [[User:Squeezie| Michael Schär]]&lt;br /&gt;
&lt;br /&gt;
== Assistant ==&lt;br /&gt;
* [[User:classens| Stephan Classen]]&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Talk:Syntax_checking/SRS&amp;diff=2500</id>
		<title>Talk:Syntax checking/SRS</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Talk:Syntax_checking/SRS&amp;diff=2500"/>
				<updated>2006-05-02T15:59:56Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Please give some feedback regarding SRS so far&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Syntax_checking/SRS&amp;diff=2499</id>
		<title>Syntax checking/SRS</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Syntax_checking/SRS&amp;diff=2499"/>
				<updated>2006-05-02T15:58:33Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Goal =&lt;br /&gt;
Provide adequate, but non intrusive feedback to user about syntax errors.&lt;br /&gt;
&lt;br /&gt;
= Parser =&lt;br /&gt;
# Should only parse when neccessary, using timer function or after certain input (like spaces, enter) (to be further specified )&lt;br /&gt;
# Provide errors in adequate datastructure to visualisation components (linenumber, type of error, further information)&lt;br /&gt;
# On error, parser should call event handler provided by visualization components&lt;br /&gt;
&lt;br /&gt;
= Visualization =&lt;br /&gt;
# Provides event handler and register it to parser error-event&lt;br /&gt;
# Underline syntax errors using a (preferably wavy) red line&lt;br /&gt;
# On mouse over, show information on error&lt;br /&gt;
# Information window could be clickabel to provide further error information&lt;br /&gt;
&lt;br /&gt;
= Suggestions =&lt;br /&gt;
# To be implemented after parser and visualization components are feature complete&lt;br /&gt;
# Suggestions based on information from parse tree&lt;br /&gt;
# Analyzation based on soundex or other algorithm&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Syntax_checking&amp;diff=2498</id>
		<title>Syntax checking</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Syntax_checking&amp;diff=2498"/>
				<updated>2006-05-02T15:56:34Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Projects]]&lt;br /&gt;
[[Category:Editor]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Overview=&lt;br /&gt;
The aim of this project is to provide adequate, but non intrusive feedback to user about syntax errors. This is done by checking syntax as you type and underlining syntax errors by the well knwon wavy red line. Furthermore, error descriptions and possible solutions should be provided.&lt;br /&gt;
&lt;br /&gt;
The Project is named '''SynChé''', which is a combination of syntax and checking.&lt;br /&gt;
The ''é'' at the end is important, as a cool name needs either a recursive acronym or a special character from a non English language.&lt;br /&gt;
&lt;br /&gt;
=Software Requirement Specification (SaRS)=&lt;br /&gt;
you can find our SaRS [[Syntax_checking/SRS|here]] (comming soon)&lt;br /&gt;
&lt;br /&gt;
=Milestones=&lt;br /&gt;
&lt;br /&gt;
==M1: April 25th==&lt;br /&gt;
* Get home-grown EiffelStudio up and running.&lt;br /&gt;
&lt;br /&gt;
==M2: May 2nd==&lt;br /&gt;
* '''Put your name in this Wiki!'''&lt;br /&gt;
* Analyse source code to certain degree, so discussion about interfaces between parser and visual is possible&lt;br /&gt;
&lt;br /&gt;
==M3: May 9th==&lt;br /&gt;
* SRS written&lt;br /&gt;
* Overview of relevant classes (BON diagram or more)&lt;br /&gt;
* Further Project Milestones specified, based on SRS and knowledge about code&lt;br /&gt;
&lt;br /&gt;
=Team=&lt;br /&gt;
Everyone intrested in this project is welcome to join our mailinglist [http://origo.ethz.ch/cgi-bin/mailman/listinfo/es-ui es-ui@origo.ethz.ch]. &lt;br /&gt;
At this point, the team is divided into two groups at this point, one responsible for the parser, the other one for visual feedback (like underlininig).&lt;br /&gt;
&lt;br /&gt;
== Visual Feedback ==&lt;br /&gt;
* [[User:jabernet| Janick Bernet]] (project leader)&lt;br /&gt;
* [[User:fdevries| Fabien de Vries]]&lt;br /&gt;
* [[User:indermum| Matthias Indermühle]]&lt;br /&gt;
* [[User:clerco| Olivier Clerc]]&lt;br /&gt;
&lt;br /&gt;
== Parser ==&lt;br /&gt;
* [[User:maser| Martin Luder]]&lt;br /&gt;
* [[User:chrhuber| Christoph Huber]]&lt;br /&gt;
* [[User:goalgettah| Ueli Etter]]&lt;br /&gt;
* [[User:Squeezie| Michael Schär]]&lt;br /&gt;
&lt;br /&gt;
== Assistant ==&lt;br /&gt;
* [[User:classens| Stephan Classen]]&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Syntax_checking/SRS&amp;diff=2497</id>
		<title>Syntax checking/SRS</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Syntax_checking/SRS&amp;diff=2497"/>
				<updated>2006-05-02T15:53:08Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Goal =&lt;br /&gt;
Provide adequate, but non intrusive feedback to user about syntax errors.&lt;br /&gt;
&lt;br /&gt;
= Parser =&lt;br /&gt;
# Should only parse when neccessary, using timer function or after certain input (like spaces, enter) (to be further specified )&lt;br /&gt;
# Provide errors in adequate datastructure to visualisation components (linenumber, type of error, further information)&lt;br /&gt;
# On error, parser should call event handler provided by visualization components&lt;br /&gt;
&lt;br /&gt;
= Visualization =&lt;br /&gt;
# Provides event handler and register it to parser error-event&lt;br /&gt;
# Underline syntax errors using a (preferably wavy) red line&lt;br /&gt;
# On mouse over, show information on error&lt;br /&gt;
# Information window could be clickabel to provide further error information&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Syntax_checking/SRS&amp;diff=2496</id>
		<title>Syntax checking/SRS</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Syntax_checking/SRS&amp;diff=2496"/>
				<updated>2006-05-02T15:52:31Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Goal =&lt;br /&gt;
Provide adequate, but non intrusive feedback to user about syntax errors.&lt;br /&gt;
&lt;br /&gt;
= Parser =&lt;br /&gt;
# Should only parse when neccessary, using timer function or after certain input (like spaces, enter)&lt;br /&gt;
(to be further specified )&lt;br /&gt;
# Provide errors in adequate datastructure to visualisation components (linenumber, type of error, further information)&lt;br /&gt;
# On error, parser should call event handler provided by visualization components&lt;br /&gt;
&lt;br /&gt;
= Visualization =&lt;br /&gt;
# Provides event handler and register it to parser error-event&lt;br /&gt;
# Underline syntax errors using a (preferably wavy) red line&lt;br /&gt;
# On mouse over, show information on error&lt;br /&gt;
# Information window could be clickabel to provide further error information&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Syntax_checking/SRS&amp;diff=2495</id>
		<title>Syntax checking/SRS</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Syntax_checking/SRS&amp;diff=2495"/>
				<updated>2006-05-02T15:52:20Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Goal =&lt;br /&gt;
Provide adequate, but non intrusive feedback to user about syntax errors.&lt;br /&gt;
&lt;br /&gt;
= Parser =&lt;br /&gt;
# Should only parse when neccessary, using timer function or after certain input (like spaces, enter)&lt;br /&gt;
  (to be further specified )&lt;br /&gt;
# Provide errors in adequate datastructure to visualisation components (linenumber, type of error, further information)&lt;br /&gt;
# On error, parser should call event handler provided by visualization components&lt;br /&gt;
&lt;br /&gt;
= Visualization =&lt;br /&gt;
# Provides event handler and register it to parser error-event&lt;br /&gt;
# Underline syntax errors using a (preferably wavy) red line&lt;br /&gt;
# On mouse over, show information on error&lt;br /&gt;
# Information window could be clickabel to provide further error information&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Syntax_checking/SRS&amp;diff=2494</id>
		<title>Syntax checking/SRS</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Syntax_checking/SRS&amp;diff=2494"/>
				<updated>2006-05-02T15:52:04Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Goal =&lt;br /&gt;
Provide adequate, but non intrusive feedback to user about syntax errors.&lt;br /&gt;
&lt;br /&gt;
= Parser =&lt;br /&gt;
 # Should only parse when neccessary, using timer function or after certain input (like spaces, enter)&lt;br /&gt;
   (to be further specified )&lt;br /&gt;
 # Provide errors in adequate datastructure to visualisation components (linenumber, type of error, further information)&lt;br /&gt;
 # On error, parser should call event handler provided by visualization components&lt;br /&gt;
&lt;br /&gt;
= Visualization =&lt;br /&gt;
 # Provides event handler and register it to parser error-event&lt;br /&gt;
 # Underline syntax errors using a (preferably wavy) red line&lt;br /&gt;
 # On mouse over, show information on error&lt;br /&gt;
 # Information window could be clickabel to provide further error information&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Syntax_checking/SRS&amp;diff=2492</id>
		<title>Syntax checking/SRS</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Syntax_checking/SRS&amp;diff=2492"/>
				<updated>2006-05-02T15:45:26Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Goal =&lt;br /&gt;
Provide adequate, but non intrusive feedback to user about syntax errors.&lt;br /&gt;
&lt;br /&gt;
= Parser =&lt;br /&gt;
# Should only parse when neccessary, using timer function or after certain input (like spaces, enter)&lt;br /&gt;
# Provide errors in adequate datastructure to visualisation components (linenumber, type of error, further information)&lt;br /&gt;
#&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Syntax_checking/SRS&amp;diff=2491</id>
		<title>Syntax checking/SRS</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Syntax_checking/SRS&amp;diff=2491"/>
				<updated>2006-05-02T15:41:57Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= # Goal =&lt;br /&gt;
Provide adequate, but non intrusive feedback to user about syntax errors.&lt;br /&gt;
&lt;br /&gt;
=&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	<entry>
		<id>https://dev.eiffel.com/index.php?title=Syntax_checking/SRS&amp;diff=2490</id>
		<title>Syntax checking/SRS</title>
		<link rel="alternate" type="text/html" href="https://dev.eiffel.com/index.php?title=Syntax_checking/SRS&amp;diff=2490"/>
				<updated>2006-05-02T15:41:48Z</updated>
		
		<summary type="html">&lt;p&gt;Jabernet: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#= Goal =&lt;br /&gt;
Provide adequate, but non intrusive feedback to user about syntax errors.&lt;br /&gt;
&lt;br /&gt;
=&lt;/div&gt;</summary>
		<author><name>Jabernet</name></author>	</entry>

	</feed>