[Date Index][Thread Index]
[Date Prev][Date Next][Thread Prev][Thread Next]

Re: Examples: WML Itself

In article <199712231749.MAA30050@plymouth.truespectra.com> you wrote:

> I thought I would show off my use of WML a little bit.

Thanks a lot, it is always a good idea to spread experience.

> http://www.truespectra.com/

> The front page is a "special case", and all the other ones are built
> off of a template that looks like this:

> #use wml::usr::ts
> <tspage title="TrueSpectra Products">
> <nav place="Products">
> <divider>                     
> .. content goes here  ...
> </tspage>

I've poked around in this website and it looks good and clean.  And because of
the good similarity of the page layout a WML-based approach is a good one,

Just a few things I've discovered:

1. The pages have 
   <body bgcolor="#000000" text=ffff60 link=00d0d0 vlink=00a0a0 alink=ff7070>
   First, as a side question, how can does be created with WML?
   WML (at least from 1.4.7 up) would create:

   :> echo '<body bgcolor="#000000" text=ffff60 link=00d0d0 vlink=00a0a0
   alink=ff7070>' | wml
   <body bgcolor="#000000" text="#ffff60" link="#00d0d0" vlink="#00a0a0"

   I.e. the color attributes get fixed and surrounded with quotes.  Do you
   just create a subset of the page contents with WML and glue together with
   another tool, or there SSI with the game?

   Either way, I recommend you to at least (let) add the '#' chars.

2. The colors from 1.) are not all in the 216-color-cube (browser
   safe colors). To avoid color substitutions, I recommend you
   to align them to the nearest ones from the color-cube.
   For instance instead of
     <body bgcolor="#000000" text="#ffff60" 
           link="#00d0d0" vlink="#00a0a0" alink="#ff7070">
     <body bgcolor="#000000" text="#ffff66" 
           link="#00cccc" vlink="#009999" alink="#ff6666">

2. On a few pages I see in the source that you successfully used
   wml::std::toc. Great! ;_)

3. There are a lot of pages with absolute hyperlinks in them
   like ``<a href="http://www.truespectra.com/..''. I personally thing this
   makes your site a little bit static. For instance you cannot easily make a
   version under a subdir where you work and from where the pages are then
   distributed to the final place. Even with a virtual server, there is no
   chance for such work<->production separation. And some time when the site
   is big enough such a separation is needed. So I recommend you at least to
   remove the http://www.truespectra.com part from the URL, i.e. let them
   start with / only. Or even better: Use WML's auto-adustable path variables
   and let WML calculate the relative paths between each page. See the ``WML
   Itself'' pages and how I let WML calculate all URLs in the navbars via this

4. There are images like ``img
   src="http://www.truespectra.com/images/tsramp-mini.jpg" alt="TrueSpectra
   Home Page" border="0">''. Here I again wondering how this can survive WML,
   because WML always would add correct width/height attributes to speedup the
   page rendering. I think the reason is because this stuff is some
   SSI-includes? I so, then replace this with a WML #include, i.e.  create the
   complete page via WML. This way WML can add the width/height attributes. Or
   at least add them manually by piping the SSI-includes through WML to easily
   determine the width/height dimensions.

> The <nav place="..."> tag is what generates that tree-like navigator along
> the side.  I have a directory contains the various navigation targets, 
> for instance:

> $ ls ~/nav/Products*

> /home/www/nav/Products
> /home/www/nav/Products_Beta.testing
> /home/www/nav/Products_Online.ordering
> /home/www/nav/Products_PhotoGraphics
> /home/www/nav/Products_PhotoGraphics_OS2
> /home/www/nav/Products_PhotoGraphics_PRO.for.OS2
> /home/www/nav/Products_PhotoGraphics_Windows   

> These names are then used to generate the links to the files themselves;
> in the last case, the corresponding URL is understood to be

> http://www.truespectra.com/products/photographics/windows.html

> _ is the directory separator
> . is a space

> The script figures out which parts of the tree to expose and does it,
> generating corresponding style sheet and other markup.  (The pages
> degrade from IE / Netscape 4 to Lynx)

> Scripts &c. available on request.

That's an interesting file-system-based approach for a navbar.  Hmmmmm... if
you can limite the files that's fine this way.  But which feature for the
grammar-based wml::des::navbar would be required to let us create the same
with it? I just ask because there have to be a reason why you choose your
approach.  Perhaps I've missed some essential feature in wml::des::navbar
which restricts it too much in use? Just give a few hints. Thanks.  Or did you
start your work on the navbar before wml::des::navbar arrived?

In general to summarize: The complete website looks good. Keep on your work...

                                       Ralf S. Engelschall
Website META Language (WML)                www.engelschall.com/sw/wml/
Official Support Mailing List                   sw-wml@engelschall.com
Automated List Manager                       majordomo@engelschall.com