It has been a lot of work and due to limited delight in code monkey work the final work had been delayed for several months; but now it finally has been completed: The language file validation script doesn’t show any warnings when validating the language file directory!
The goal originated in 1.0.8.1 when Milian and I were working on improving the parser and several language files caused warnings when we optimized things as those language files didn’t conform to the rules set in the documentation. This is not only annoying but also causes performance loss due to additional validation steps. The keyword here is „static assumptions“, i.e. assumptions of the application about its input data you can rely on for proper operation, while misbehaviour is allowed for input not conforming to those rules. Although this speeds things up (at least it reduces the number of runtime checks) it has the disadvantage of requiring all input data to satisfy your rules.
And that was the problem in the first release of the langcheck script as all language files were hand-written without any „strict“ guideline and thus a wide variaty of formats were present. Checking all the 90 language files back than by hand simply would have been too much work, thus a small script was introduced that did all the checking automatically and only noted things that didn’t comply or should be improved. The goal for 1.0.8.2 was to have all language files comply with those automatically checked rules, but there were still 2 files in 1.0.8.3 that didn’t comply as nobody had too much delight fixing them.
With SVN revision 2039 (trunk) the last of those two files has finally been fixed and thus GeSHi now is strictly conforming to its own rules in regards to the language files within its release. Another milestone is done 😉