===================== Uniform CSS Validator ===================== :Author: `Dan Connolly`__, W3C__ __ http://www.w3.org/People/Connolly/ __ http://www.w3.org/ CSS syntax evolves in a backward- and forward-compatible way; the CSS 2.1 specification__ includes a uniform grammar, applicable to all CSS versions. The `original (2002) W3C CSS Validator`__ predates this uniform grammar and maintenance is becoming an undue burden as a result. This is an attempt to build a validator using the uniform syntax. __ http://www.w3.org/TR/CSS2 __ http://jigsaw.w3.org/css-validator/about.html#code This is also something of an exercise in learning Scala development. Provided you have some popular tools installed (see `Scala development`_ below for details), you should be able to confirm that all tests pass:: cssval$ sbt test ... [info] Run: 26, Passed: 26, Errors: 0, Failed: 0 ... .. contents:: Scala development ----------------- Scala is a general purpose programming language designed to express common programming patterns in a concise, elegant, and type-safe way. -- `Introducing Scala`__ __ http://www.scala-lang.org/node/25 The compiler and such are open source and easy to find from the `Scala Programming Language`__ site. __ http://www.scala-lang.org/ For audit trail purposes, the md5 checksum of the package I downloaded is:: 82934acf64d0c026de78b84e984f6743 scala-2.7.6.final.tgz Once you download and unpack that, you should be able to see that interpreter and compiler work as per `Getting Started with Scala`__. __ http://www.scala-lang.org/node/166 Simple Build Tool (sbt) *********************** The Scala tribe seems to use sbt__ in place of make or ant. __ http://code.google.com/p/simple-build-tool/ Audit trail:: MD5 (sbt-launcher-0.5.5.jar) = e3593448b3be17ce1666c6241b8d2f90 The directory layout of this project follows `sbt/maven conventions`__:: src/ main/ resources/ <files to include in main jar here> scala/ <main Scala sources> java/ <main Java sources> test/ resources <files to include in test jar here> scala/ <test Scala sources> java/ <test Java sources> __ http://code.google.com/p/simple-build-tool/wiki/Setup Using `library management`__ is in progress, thanks to contributions from Alexandre Bertails. __ http://code.google.com/p/simple-build-tool/wiki/LibraryManagement ScalaTest ********* ScalaTest__ is a leading test framework for Scala. __ http://www.scalatest.org/download Audit trail:: 68ab03f9109ef18c9dcce048da3d8dab scalatest-0.9.5.zip I unpacked it and put scala-test-1.0.jar in ``lib``... or was it ``project/boot/scala-2.7.6/lib``. There seem to be some version skew issues between sbt and ScalaTest. For a work-around (that I have not yet tried), see: `ScalaTest 1.0`__. __ http://groups.google.com/group/simple-build-tool/browse_thread/thread/fb967ee255dff7f9/8efd9870026481cb?lnk=gst&q=ScalaTest+1.0#8efd9870026481cb Emacs and Scala *************** With ``scala-mode``, emacs helps with indentation and syntax coloring. With ``sbt.el``, emacs can navigate compiler errors (with some glitches). My set-up is pretty rough; some notes:: ;;; ; http://www.scala-lang.org/downloads (add-to-list 'load-path "/home/connolly/src/scala-2.7.6.final/misc/scala-tool-support/emacs") (add-to-list 'exec-path "/home/connolly/src/scala-2.7.6.final/bin") (add-to-list 'exec-path "/home/connolly/bin") (require 'scala-mode-auto) http://code.google.com/p/simple-build-tool/wiki/IntegrationSupport scallap / tools / emacs / sbt.el commit 000e748597d9b73e2da026029afc4ca9248aa936 Source code and Version Control ------------------------------- To access the source code and project history using git__:: $ git clone git://dvcs.w3.org/cssval __ http://git-scm.com/ Or you can use mercurial with the `Hg-Git plugin`__:: $ hg clone git://dvcs.w3.org/cssval __ http://hg-git.github.com/ This project started Oct 11 2009, with mercurial revision 0:4ac7bd6d32f2, aka git commit c6cdd1c783f30989c94b00844b1a739e88857366. Thanks to bitbucket__ for hosting the project in early stages; the cssval__ repository there may or may not be maintained. __ http://bitbucket.org/ __ http://bitbucket.org/DanC/cssval/ Likewise, an experimental github mirror, Uniform-CSS-Validator__, may or may not be maintained. __ http://github.com/dckc/Uniform-CSS-Validator Open Source Software License ---------------------------- Copyright (c) 2009 World Wide Web Consortium, (Massachusetts Institute of Technology, European Research Consortium for Informatics and Mathematics, Keio University). All Rights Reserved. This work is distributed under the `W3C Software License`__ in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. __ http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 Share and enjoy. This license has an Open Source Initiative certification__ and is a `GPL-Compatible Free Software License`__. __ http://www.opensource.org/licenses/W3C.php __ http://www.fsf.org/licensing/licenses/index_html#GPLCompatibleLicenses .. Colophon: .. This document is written using reStructuredText conventions. .. see Makefile for conversion to README.html . .. see http://docutils.sourceforge.net/rst.html for more on reStructuredText.