Difference between revisions of "SoC Ideas WML Debugging"

From The Battle for Wesnoth Wiki
m (Description)
m (Background)
Line 11: Line 11:
  
 
Wesnoth Markup Language (WML) is used to create most kinds of Wesnoth content: campaigns, scenarios, and so forth. WML is a fairly powerful language, but its debugging features often make it difficult to debug. Incorrect WML typically results in cryptic error messages or unusual and difficult to understand misbehavior.
 
Wesnoth Markup Language (WML) is used to create most kinds of Wesnoth content: campaigns, scenarios, and so forth. WML is a fairly powerful language, but its debugging features often make it difficult to debug. Incorrect WML typically results in cryptic error messages or unusual and difficult to understand misbehavior.
 +
 +
{{#dpl:
 +
|resultsheader=''There are %PAGES% student proposals for this idea''
 +
|oneresultheader=''There is 1 student proposal for this idea''
 +
|suppresserrors=true
 +
|noresultsheader=''There are no student proposals for this idea''
 +
|category=Summer of Code 2010 Student Page&SoC Ideas WML Debugger
 +
|include=#Description
 +
|mode=userformat
 +
|format=,,<br/>See [[%PAGE%|%TITLE%]] for more information.<br/><br/>,
 +
}}
  
 
== Project ==
 
== Project ==

Revision as of 16:23, 28 March 2010


This page is related to Summer of Code 2010
See the list of Summer of Code 2010 Ideas



This is a Summer of Code 2010 Idea



Description

WML Debugging Support

Page for the idea: SoC_Ideas_WML_Debugging

Improve the ways to debug Wesnoth's domain-specific language, WML.

Background

Wesnoth Markup Language (WML) is used to create most kinds of Wesnoth content: campaigns, scenarios, and so forth. WML is a fairly powerful language, but its debugging features often make it difficult to debug. Incorrect WML typically results in cryptic error messages or unusual and difficult to understand misbehavior.

There are no student proposals for this idea

Project

There are several possible steps in improving WML:

  • ensuring that any WML error results in an accurate line number for the error being displayed. This will require modifying the WML pre-processing system to properly map all expanded macros to their original lines.
  • improving the quality of error messages: trying to map unterminated strings and tags back to their starting positions.
  • schema system: a WML schema system would be developed which would enable WML documents to be validated to make sure they have correct attribute names with values that are formatted correctly.