As an alternative to cpp,

The m4 macro processing tools are really good for setting up and configuring larger files with lots of elements. Sendmail and several other packages that have very large and complex text structures use m4 to build their configuration files.

I've used it to define complex DNS management tools for some large SOA servers, and in the past its been helpful for creating large configuration files like exim and sendmail.

Using m4 you create your base template with its macros then you can manipulate your more dynamic sections anyway you like. One of the more powerful aspects of m4 is that it is very very fast and you can edit or create your included files on the fly then call it from perl or php from your CGI program. It would build the files you need based on operating context like current date, timezone, or look and feel for a particular type of user.

Additionally m4 can be used for your html files as well. You put the common pieces in macros, edit the pieces of the the file that need to be regularly changed and then generate you pages.

Its a little daunting to get a handle on at first but once you understand the basics its one of those things you wonder how you lived without.

An easier to understand alternative would be to use perl Text::Template. Its a little more work to put together, but its very flexible and will build your files very quickly. You can also use this method as a quick way to switch the order of layers and classes. If you were really ambitious you could put a web or perl/tk interface over it.

A third alternative is php and the Smarty template engine (smarty.php.net). You create your templates using any design syntax you want, then run commandline PHP to build the files. I only suggest this one because some folks like to stick with one language. This is a very powerful alternative and can be used for many chores.

I'm not forgetting that python, tcl, expect, and ruby have very powerful template engines that I assume would work very well, however, I've not used any of them for that.

One of the plusses is that you have all of these available on linux and if you are a windows user you can get windows versions, or you can go get a cygwin (www.cygwin.com) install and have them all available.
--
Things are only difficult while you don't understand them.




From: Siki Zoltan <[EMAIL PROTECTED]>
Reply-To: Siki Zoltan <[EMAIL PROTECTED]>
To: [email protected]
Subject: Re: [UMN_MAPSERVER-USERS] How to avoide HUGE .map files {Scanned}
Date: Thu, 9 Mar 2006 22:20:06 -0100

Hi,

You can use cpp (c preprocessor) havind #include directives.
The only withdraw you have to escape map file comments using ## or \#

Zoltan

On Thu, 9 Mar 2006, Michael Scharber wrote:

> Ed,
>
> Though I'm not looking for an editor, per se, I would like to know how to
> reuse chunks of mapfile config (100s of lines) across multiple mapfiles
> with little or no replication.  Is there a way to "include" mapfile
> fragments into other mapfiles?
>
> Michael
>
>
> On Thu, 9 Mar 2006, Ed Dowding wrote:
>
> > Does anyone have any advice on how to avoid huge .map files?
> >
> > We have a flash interface to our mapserver app, and we have mapping for the
> > whole or europe (and much of america) down to building outline level.
> >
> > Our interface makes it possible to scroll the map from country to country,
> > and zoom in/out, so really all styling has to be in the one file.
> >
> > But...
> >
> > 1) Does it all have to be in that file? Am I right about this?
> >
> > 2) any tips on managing and styling them? I'm currently using jedit since it > > has nice code folding. I'm yet to find a GUI that exports .map files in a
> > format that is immediately usable.
> >
> > 3) any other tips from anyone?
> >
> > Thanks in advance,
> >
> > Ed
> >
>

Reply via email to