Difference between revisions of "Syntax checking/SRS"
(→Parser) |
(→Visualization) |
||
Line 20: | Line 20: | ||
= Visualization = | = Visualization = | ||
+ | # Highlighting happens only in code editing view | ||
# Provides event handler and registers it to parser error-event | # Provides event handler and registers it to parser error-event | ||
+ | # Visualization component should maintain information on line states (underlined y/n) | ||
# Underline syntax errors using a (preferably wavy) red line | # Underline syntax errors using a (preferably wavy) red line | ||
# On mouse over, show information on error | # On mouse over, show information on error | ||
# Information window could be clickable to provide further error information | # Information window could be clickable to provide further error information | ||
+ | # Errors should be accessible over summarization | ||
= Suggestions = | = Suggestions = |
Revision as of 04:04, 9 May 2006
Contents
Goal
Provide adequate, but non intrusive feedback to user about syntax errors.
Parser
- Should only parse when neccessary:
- When editing a new or correct expression:
- After typing a point, comma, colon, semi-colon, space, tab or line-break
- After leaving the edited expression (using cursor or mouse)
- When editing a incorrect expression:
- After each added character
- When editing a new or correct expression:
- Provide errors in adequate datastructure to visualisation components
- linenumber
- type of error
- further information
- Whenever the visualisation of an expression should change, the parser should call an event handler provided by visualization components
Note: * A new expression is correct until it becomes incorrect. * The state of an expression can only be changed when the cursor leaves it.
Visualization
- Highlighting happens only in code editing view
- Provides event handler and registers it to parser error-event
- Visualization component should maintain information on line states (underlined y/n)
- Underline syntax errors using a (preferably wavy) red line
- On mouse over, show information on error
- Information window could be clickable to provide further error information
- Errors should be accessible over summarization
Suggestions
- To be implemented after parser and visualization components are feature complete
- Suggestions based on information from parse tree
- Analyzation based on soundex or other algorithm