Re: Future WML Directions
Fritz Zaucker <[email protected]> Mon, 17 Oct 2005 18:18:07 +0200 (MEST)
| Newsgroups | gmane.comp.web.wml |
|---|---|
| Message-ID | <[email protected]> |
This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. ---559023410-658816051-1129565887=:16779 Content-Type: TEXT/PLAIN; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: QUOTED-PRINTABLE Hi Shlomi, - one thing that I find cumbersome with WML is that I have to edit both a WML-source file and the navbar-definition file if I want to change something in the nav-structure. It would be cool if it was enough the source file of a page and then WML would figure out how to built the nav bar from some info in this file and perhaps from the directory structure= =2E - The #include (or #use) syntax for inclusion of templates and such is rather strange for people not being used to (C) programming. In our WML-based websites we use a syntax like <page author=3D"Bert M=FCller <[email protected]>" page=3D"about"> as the first tag in a WML source file and the following preprocessor: #!/usr/sepp/bin/perl (replace with your favorite path to Perl) undef $/; #slurp all $_ =3D <>; while (s/<PAGE[\s\n\r]+(\S+)\s*=3D\s*(?:"([^"]+)"|([^"\s>]+))/<PAGE/si){ chomp($VAL{uc($1)}=3D $2 ? $2: $3); } # send TYPE=3D"default" in case there is none in specified in the # source. If there is, the second one wins. s|^\s*<PAGE[\s\n\r]*>||; print "#include \"\$(ROOT)/.wml/template.inc\" TYPE=3D\"default\" ", (map { "$_=3D\"$VAL{$_}\" " } keys %VAL), "\n"; print; This allows for WML-source much like HTML-source and thus more easy to handle for people used to (or trainable to) HTML-editing. Just some ideas for improvements. Best regards, Fritz On Sun, 16 Oct 2005, Shlomi Fish wrote: > Hi all! > > OK, so I've done a lot of work on the site to make it more standards > compliant. In the process I switched it from a recursive building system = that > I couldn't quite understand to a more centralized GNU make-based system, = and > also placed somethings in Subversion. > > However, one things I'm unhappy with is that the design of the site itsel= f > feels very old. The current stylesheet is at the moment bloated with many= CSS > styles, and the various arrangement of things on the page may have looked > well in the late 90's but not now. So I think it would be a good idea to > revamp it in this regard, making it less old. The old navigation menu, th= at > was based on buttons, and recently converted to CSS-buttons, will probabl= y be > replaced by a more modern nav-menu; the various coloured frames on the pa= ge > will be replaced by something better. The images as titles will be replac= ed > by <h1>, <h2>, etc. headers with CSS styles. Etc. > > Other things I'd like to do: > > * Converting to SCons instead of Autoconf > ------------------------------------------ > > I really came to loath Autoconf. It is absolute brain-damage. I recall th= e > time when I tried to use libtool, and realized that a support for it was > dropped from Autoconf 2.1x and I had to upgrade everthing for Autoconf 2.= 5x. > This is just one of the problems I encountered with Autoconf/Automake/Lib= tool > countless of times, and they seem to break more often than not. > > I implemented the Latemp build and install system using SCons. It took me= some > time to get right, but probably less than the time it would have taken me= to > write it in Autoconf/Automake/Libtool in the first place. I was also > impressed by the elegance of SCons and how easy and non-idiosyncratic it = was. > > So that's what I'd like to do. > > * Modernising the APIs. > ----------------------- > > The WML APIs, while sometimes useful, tend to generate extremely old and > non-standards-compliant code. I usually tend to work around them. I alrea= dy > wrote HTML::Widgets::NavMenu which is a very nice replacement for the nav= bar > API. But there are many other APIs which we should go over. (the > Table-of-Contents API especially gave me some trouble). Possibly some of = them > should be depracated. > > We may like to write some new APIs instead, and I could use any suggestio= ns. > If you have any self-written logic that you'd like to contribute please d= o. > Just make sure you contribute it under a GPL-compatible license. > > * Optimising WML > ---------------- > > WML is slow. On my P4-2.4GHz machine it runs tolerably, but still takes a= few > minutes to compile my homepage, which is my largest site. I recall that o= n a > P3-600MHz it was much slower. I believe we can easily improve its speed i= n > several ways, by bechmarking, optimising and benchmarking again. There is= a > lot of room for improvement, and there's no reason it should be that slow= =2E > > * Win32 Compatibility > --------------------- > > At the moment, WML cannot even compile on cygwin. I'd like to make sure i= t can > compile on cygwin and later on even port it to a pure Win32 system (Mingw= , > MSVC, etc.) Some people still have to work on Win32, and ignoring it is n= ot > such a good idea. Besides, it's probably a bug in the code. There's nothi= ng > in WML that warrants Win32 incompatiblity, and so we should fix it. > > ---------------------------- > > Any other suggestions? Any comments on these ones? > > Regards, > > =09Shlomi Fish > > --------------------------------------------------------------------- > Shlomi Fish [email protected] > Homepage: http://www.shlomifish.org/ > > 95% of the programmers consider 95% of the code they did not write, in th= e > bottom 5%. > _____________________________________________________________________ > Website META Language (WML) http://thewml.org > User Support Mailing List [email protected] > Automated List Manager [email protected] > --=20 Dr. Fritz Zaucker, Head IT Support Group (ISG.EE) Department of Information Technology and Electrical Engineering Swiss Federal Institute of Technology ETL F26, Physikstrasse 3, CH-8092 Zurich, Switzerland Tel.: +41-(0)44-632-5241 Fax: +41-(0)44-632-1195 http://people.ee.ethz.ch/~zaucker/ E-mail: [email protected] (see home page for PGP key) ---559023410-658816051-1129565887=:16779-- _____________________________________________________________________ Website META Language (WML) http://thewml.org User Support Mailing List [email protected] Automated List Manager [email protected]