[mapserver-commits] r8196 - in trunk/docs: development development/editing howto optimization

svn at osgeo.org svn at osgeo.org
Thu Dec 4 21:32:47 EST 2008


Author: hobu
Date: 2008-12-04 21:32:47 -0500 (Thu, 04 Dec 2008)
New Revision: 8196

Added:
   trunk/docs/development/editing/
   trunk/docs/development/editing/index.txt
   trunk/docs/development/editing/map.vim
   trunk/docs/development/editing/map_fold.vim
   trunk/docs/development/editing/vim.txt
   trunk/docs/optimization/tileindex.txt
Removed:
   trunk/docs/howto/map.vim
   trunk/docs/howto/map_fold.vim
   trunk/docs/howto/tileindex.txt
   trunk/docs/howto/vim.txt
Modified:
   trunk/docs/development/index.txt
   trunk/docs/optimization/index.txt
   trunk/docs/optimization/mapfile.txt
   trunk/docs/optimization/raster.txt
   trunk/docs/optimization/vector.txt
Log:
move more stuff around

Added: trunk/docs/development/editing/index.txt
===================================================================
--- trunk/docs/development/editing/index.txt	                        (rev 0)
+++ trunk/docs/development/editing/index.txt	2008-12-05 02:32:47 UTC (rev 8196)
@@ -0,0 +1,11 @@
+.. _editing:
+
+*****************************************************************************
+ Mapfile Editing
+*****************************************************************************
+
+
+.. toctree::
+   :maxdepth: 1
+
+   vim

Copied: trunk/docs/development/editing/map.vim (from rev 8195, trunk/docs/howto/map.vim)
===================================================================
--- trunk/docs/development/editing/map.vim	                        (rev 0)
+++ trunk/docs/development/editing/map.vim	2008-12-05 02:32:47 UTC (rev 8196)
@@ -0,0 +1,99 @@
+" Vim syntax file
+" Language:     map (umn mapserver config file)
+" Maintainer:   Andreas Hirner <andreas.hirner at dlr.de>
+" Last Change:  $Date: 2004/05/25 19:19:37 $
+" Filenames:    *.map
+" Note:         The definitions below are taken from TextPad syntax definitions (*.syn) by Chris Thorne (thorne at dmsolutions.ca) as of May 2004, for version 4.0 Mapserver
+
+" For version 5.x: Clear all syntax items
+" For version 6.x: Quit when a syntax file was already loaded
+if version < 600
+  syntax clear
+elseif exists("b:current_syntax")
+  finish
+endif
+
+" Always ignore case
+syn case ignore
+
+" General keywords first order
+syn keyword mapDefine       CLASS END JOIN LABEL LAYER LEGEND MAP METADATA OUTPUTFORMAT
+syn keyword mapDefine       PROJECTION QUERYMAP REFERENCE SCALEBAR STYLE SYMBOL WEB
+
+" General keywords second order
+syn keyword mapIdentifier   ALPHACOLOR ANGLE ANTIALIAS
+syn keyword mapIdentifier   BACKGROUNDCOLOR BACKGROUNDSHADOWCOLOR BACKGROUNDSHADOWSIZE BUFFER
+syn keyword mapIdentifier   CHARACTER CLASSITEM COLOR CONNECTION CONNECTIONTYPE
+syn keyword mapIdentifier   DATA DATAPATTERN DEBUG DRIVER DUMP
+syn keyword mapIdentifier   EMPTY ERROR EXPRESSION EXTENSION EXTENT
+syn keyword mapIdentifier   FEATURE FILLED FILTER FILTERITEM FONT FONTSET FOOTER FORCE FORMATOPTION FROM
+syn keyword mapIdentifier   GAP GRATICULE GRID GROUP HEADER
+syn keyword mapIdentifier   IMAGE IMAGECOLOR IMAGEMODE IMAGEPATH IMAGEQUALITY IMAGETYPE IMAGEURL INDEX INTERLACE INTERVALS
+syn keyword mapIdentifier   KEYIMAGE KEYSIZE KEYSPACING
+syn keyword mapIdentifier   LABELANGLEITEM LABELCACHE LABELFORMAT LABELITEM LABELMAXSCALE LABELMINSCALE LABELREQUIRES LABELSIZEITEM LATLON LINECAP LINEJOIN LINEJOINMAXSIZE LOG
+syn keyword mapIdentifier   MARKER MARKERSIZE MAXARCS MAXBOXSIZE MAXFEATURES MAXINTERVAL MAXSCALE MAXSIZE MAXSUBDIVIDE MAXTEMPLATE MIMETYPE
+syn keyword mapIdentifier   MINARCS MINBOXSIZE MINDISTANCE MINFEATURESIZE MININTERVAL MINSCALE MINSIZE MINSUBDIVIDE MINTEMPLATE
+syn keyword mapIdentifier   NAME
+syn keyword mapIdentifier   OFFSET OFFSITE OUTLINECOLOR OVERLAYBACKGROUNDCOLOR OVERLAYCOLOR OVERLAYMAXSIZE OVERLAYMINSIZE OVERLAYOUTLINECOLOR OVERLAYSIZE OVERLAYSYMBOL
+syn keyword mapIdentifier   PARTIALS POINTS POSITION POSTLABELCACHE PROCESSING
+syn keyword mapIdentifier   REQUIRES RESOLUTION
+syn keyword mapIdentifier   SCALE SHADOWCOLOR SHADOWSIZE SHAPEPATH SIZE SIZEUNITS STATUS STYLEITEM SYMBOLSCALE SYMBOLSET
+syn keyword mapIdentifier   TABLE TEMPLATE TEMPLATEPATTERN TEXT TILEINDEX TILEITEM TITLE TO TOLERANCE TOLERANCEUNITS TRANSFORM TRANSPARENCY TRANSPAREN[T] TYPE
+syn keyword mapIdentifier   UNITS WMS_ABSTRACT WMS_ACCESSCONSTRAINTS WMS_ONLINERESOURCE WMS_SRS WMS_TITLE WRAP
+
+" General keywords third order
+syn keyword mapKeyword      ANNOTATION AUTO BEVEL BITMAP BUTT
+syn keyword mapKeyword      CARTOLINE CC CIRCLE CL CR CSV DD DEFAULT
+syn keyword mapKeyword      ELLIPSE EMBED FALSE FEET GIANT HILITE INCHES
+syn keyword mapKeyword      KILOMETERS LARGE LC LINE LL LR
+syn keyword mapKeyword      MEDIUM METERS MILES MITER MULTIPLE MYGIS NORMAL
+syn keyword mapKeyword      OFF OGR ON ONE-TO-MANY ONE-TO-ONE ORACLESPATIAL
+syn keyword mapKeyword      PIXELS PIXMAP POINT POLYGON POSTGIS QUERY RASTER ROUND
+syn keyword mapKeyword      SDE SELECTED SIMPLE SINGLE SMALL SQUARE
+syn keyword mapKeyword      TINY TRIANGLE TRUE TRUETYPE UC UL UR VECTOR WFS WMS
+
+" keywords for other purposes
+syn keyword mapTypedef      SELECTION
+
+" Comment
+syn match mapComment      "#.*"
+
+" Strings (single- and double-quote)
+syn region mapString       start=+"+  skip=+\\\\\|\\"+  end=+"+
+syn region mapString       start=+'+  skip=+\\\\\|\\'+  end=+'+
+
+" Numbers and hexidecimal values
+syn match mapNumber         "-\=\<[0-9]*\>"
+syn match mapNumber         "\<0x[abcdefABCDEF0-9]*\>"
+
+" Operators
+syn match mapOperator      "EQ"
+syn match mapOperator      "[><|\=&!$/\\()\[\]]"
+
+
+" Define the default highlighting.
+" For version 5.7 and earlier: only when not done already
+" For version 5.8 and later: only when an item doesn't have highlighting yet
+if version >= 508 || !exists("did_map_syn_inits")
+  if version < 508
+    let did_map_syn_inits = 1
+    command -nargs=+ HiLink hi link <args>
+  else
+    command -nargs=+ HiLink hi def link <args>
+  endif
+
+  HiLink mapComment      Comment
+  HiLink mapKeyword      Keyword
+  HiLink mapIdentifier   Identifier
+  HiLink mapDefine      Define
+  HiLink mapTypedef      Typedef
+  HiLink mapNumber      Number
+  HiLink mapString      String
+  HiLink mapOperator   Operator
+
+  delcommand HiLink
+endif
+
+let b:current_syntax = "map"
+
+" vim: ts=8

Copied: trunk/docs/development/editing/map_fold.vim (from rev 8195, trunk/docs/howto/map_fold.vim)
===================================================================
--- trunk/docs/development/editing/map_fold.vim	                        (rev 0)
+++ trunk/docs/development/editing/map_fold.vim	2008-12-05 02:32:47 UTC (rev 8196)
@@ -0,0 +1,54 @@
+" Vim folding mode for UMN MapServer .map files
+" Author:	Schuyler Erle <schuyler at nocat.net> 
+" Last Change:	2006 May 04
+" Version:	1.0
+" Based on an indent folding mode by Jorrit Wiersma and Max Ischenko
+"
+" To use, copy to your ~/.vim directory and then add the following
+" to your .vimrc:
+"
+" autocmd BufRead *.map source ~/.vim/map_fold.vim
+
+setlocal foldmethod=expr
+setlocal foldexpr=GetMapFileFold(v:lnum)
+setlocal foldtext=MapFileFoldText()
+highlight Folded term=bold ctermfg=white ctermbg=black
+
+function! GetMapFileFold(lnum)
+    " If it's a group statement, fold one level
+    let line = getline(a:lnum)
+
+    if line =~ '\c^\s*\(CLASS\|JOIN\|LABEL\|LAYER\|LEGEND\|METADATA\|OUTPUTFORMAT\|PROJECTION\|QUERYMAP\|REFERENCE\|SCALEBAR\|STYLE\|SYMBOL\|WEB\)\s*\(#.*\)*$'
+	return "a1"
+    endif
+
+    " if it's an END, unfold one level
+    if line =~ '\c^\s*END\s*\(#.*\)*$'
+	return "s1"
+    endif
+
+    " otherwise...
+    return "="
+endfunction
+
+function! MapFileFoldText()
+  let line = getline(v:foldstart)
+  let line3 = substitute(line, '\t', '        ', 'g')
+  let line2 = substitute(line3, '^\( *\)', '&+ ', '')
+
+  let i = v:foldstart
+  let name = ""
+  while i < v:foldend
+    let iline = getline(i)
+    if iline =~ '\c^\s*\(NAME\|EXPRESSION\)\s\s*'
+      let name = substitute(iline, '\c\s*\(NAME\|EXPRESSION\)\s*', '', '')
+      break
+    endif
+    let i = i + 1
+  endwhile
+  if name != ""
+    let line2 = line2 . " " . name
+  endif
+  return line2 . " "
+endfunction
+

Copied: trunk/docs/development/editing/vim.txt (from rev 8195, trunk/docs/howto/vim.txt)
===================================================================
--- trunk/docs/development/editing/vim.txt	                        (rev 0)
+++ trunk/docs/development/editing/vim.txt	2008-12-05 02:32:47 UTC (rev 8196)
@@ -0,0 +1,90 @@
+*****************************************************************************
+ VIM Syntax 
+*****************************************************************************
+
+:Author:        Andreas Hirner
+:Contact:       andreas.hirner at dlr.de
+:Author:        Schuyler Erle
+:Contact:       schuyler at tridity.org
+:Revision: $Revision$
+:Date: $Date$
+:Last Updated: 2006/5/5
+
+.. sectnum::
+
+.. contents:: Table of Contents
+    :depth: 2
+    :backlinks: top
+
+General remarks
+===============
+
+vi (vim) resides in: /usr/share/vim/current (vim_root).
+
+Syntax definitions are in vim_root/syntax/\*.vim files. Linking file types to extensions is done in vim_root/ftdetect/\*.vim. (The the star denotes 
+the extension and would be replaced with map to define highlighting of Mapserver config files).
+
+
+
+Installation
+============
+
+The installation process requires two steps:
+
+1. Copy the `map.vim`_ syntax file to the syntax directory
+
+   Copy map.vim to the vim syntax directory (on Suse: /usr/share/vim/current/syntax)
+
+2. Register the syntax file in the custom filetype directory
+
+   If absent, create a new directory called ftdetect in vim_root (on Suse Linux: /usr/share/vim/current).
+   Create a new file called map.vim in ftdetect according to the example shown below:
+
+   ::
+
+     " Mapserver config file
+     au BufNewFile,BufRead *.map         setf map
+
+Now restart vim and open a map file ....
+
+Folding
+============
+
+Introduction
+------------
+
+`Vim code folding <http://www.vim.org/htmldoc/usr_28.html>`__ can be an extremely handy way to simplify the task of editing complex MapServer mapfiles inside the Vim editor. A Vim command file called `*map_fold.vim*`_ is attached to this document, which defines a folding mode for mapfiles. This file also lives at http://iconocla.st/code/dot/map_fold.vim.
+
+Installation
+------------
+
+Global installation of new Vim filetypes is described in the `Vim syntax howto <http://mapserver.gis.umn.edu/docs/howto/vim-syntax-howto>`__. In Vim 6, you can copy *map_fold.vim* as-is to your *$VIMROOT/ftplugin/* directory, and it should more or less work.
+
+To use locally, create a *~/.vim/ftplugin* directory, copy *map_fold.vim* to it, and then add the following to your *~/.vimrc*:
+
+::
+
+  autocmd BufRead *.map set filetype=map
+
+`map_fold.vim`_ is totally compatible with the `map.vim`_ syntax highlighter, and their combined use is even recommended.
+
+Use
+---
+
+The Vim `folding tutorial <http://www.vim.org/htmldoc/usr_28.html>`__ (at least the first two or three sections) is highly recommended. The Vim `folding reference <http://www.vim.org/htmldoc/fold.html>`__ may also be helpful.
+
+Conclusion
+----------
+
+Hope this helps! Please let me know if you find it useful, or if you find ways to improve it. Thanks!
+ 
+Closing Remarks
+===============
+
+The keywords are based on the TextPad Symbol Map_40.syn file contributed by Christopher 
+Thorne, which can also be found on the Mapserver utility page.  I hope the file is 
+somehow useful to anybody out there. If there are any questions or suggestions, 
+please feel free to contact me.
+
+.. _`map.vim`: map.vim
+.. _`map_fold.vim`: map_fold.vim
\ No newline at end of file

Modified: trunk/docs/development/index.txt
===================================================================
--- trunk/docs/development/index.txt	2008-12-04 20:35:49 UTC (rev 8195)
+++ trunk/docs/development/index.txt	2008-12-05 02:32:47 UTC (rev 8196)
@@ -13,3 +13,4 @@
    svn
    tests/index
    rfc/index
+   editing/index

Deleted: trunk/docs/howto/map.vim
===================================================================
--- trunk/docs/howto/map.vim	2008-12-04 20:35:49 UTC (rev 8195)
+++ trunk/docs/howto/map.vim	2008-12-05 02:32:47 UTC (rev 8196)
@@ -1,99 +0,0 @@
-" Vim syntax file
-" Language:     map (umn mapserver config file)
-" Maintainer:   Andreas Hirner <andreas.hirner at dlr.de>
-" Last Change:  $Date: 2004/05/25 19:19:37 $
-" Filenames:    *.map
-" Note:         The definitions below are taken from TextPad syntax definitions (*.syn) by Chris Thorne (thorne at dmsolutions.ca) as of May 2004, for version 4.0 Mapserver
-
-" For version 5.x: Clear all syntax items
-" For version 6.x: Quit when a syntax file was already loaded
-if version < 600
-  syntax clear
-elseif exists("b:current_syntax")
-  finish
-endif
-
-" Always ignore case
-syn case ignore
-
-" General keywords first order
-syn keyword mapDefine       CLASS END JOIN LABEL LAYER LEGEND MAP METADATA OUTPUTFORMAT
-syn keyword mapDefine       PROJECTION QUERYMAP REFERENCE SCALEBAR STYLE SYMBOL WEB
-
-" General keywords second order
-syn keyword mapIdentifier   ALPHACOLOR ANGLE ANTIALIAS
-syn keyword mapIdentifier   BACKGROUNDCOLOR BACKGROUNDSHADOWCOLOR BACKGROUNDSHADOWSIZE BUFFER
-syn keyword mapIdentifier   CHARACTER CLASSITEM COLOR CONNECTION CONNECTIONTYPE
-syn keyword mapIdentifier   DATA DATAPATTERN DEBUG DRIVER DUMP
-syn keyword mapIdentifier   EMPTY ERROR EXPRESSION EXTENSION EXTENT
-syn keyword mapIdentifier   FEATURE FILLED FILTER FILTERITEM FONT FONTSET FOOTER FORCE FORMATOPTION FROM
-syn keyword mapIdentifier   GAP GRATICULE GRID GROUP HEADER
-syn keyword mapIdentifier   IMAGE IMAGECOLOR IMAGEMODE IMAGEPATH IMAGEQUALITY IMAGETYPE IMAGEURL INDEX INTERLACE INTERVALS
-syn keyword mapIdentifier   KEYIMAGE KEYSIZE KEYSPACING
-syn keyword mapIdentifier   LABELANGLEITEM LABELCACHE LABELFORMAT LABELITEM LABELMAXSCALE LABELMINSCALE LABELREQUIRES LABELSIZEITEM LATLON LINECAP LINEJOIN LINEJOINMAXSIZE LOG
-syn keyword mapIdentifier   MARKER MARKERSIZE MAXARCS MAXBOXSIZE MAXFEATURES MAXINTERVAL MAXSCALE MAXSIZE MAXSUBDIVIDE MAXTEMPLATE MIMETYPE
-syn keyword mapIdentifier   MINARCS MINBOXSIZE MINDISTANCE MINFEATURESIZE MININTERVAL MINSCALE MINSIZE MINSUBDIVIDE MINTEMPLATE
-syn keyword mapIdentifier   NAME
-syn keyword mapIdentifier   OFFSET OFFSITE OUTLINECOLOR OVERLAYBACKGROUNDCOLOR OVERLAYCOLOR OVERLAYMAXSIZE OVERLAYMINSIZE OVERLAYOUTLINECOLOR OVERLAYSIZE OVERLAYSYMBOL
-syn keyword mapIdentifier   PARTIALS POINTS POSITION POSTLABELCACHE PROCESSING
-syn keyword mapIdentifier   REQUIRES RESOLUTION
-syn keyword mapIdentifier   SCALE SHADOWCOLOR SHADOWSIZE SHAPEPATH SIZE SIZEUNITS STATUS STYLEITEM SYMBOLSCALE SYMBOLSET
-syn keyword mapIdentifier   TABLE TEMPLATE TEMPLATEPATTERN TEXT TILEINDEX TILEITEM TITLE TO TOLERANCE TOLERANCEUNITS TRANSFORM TRANSPARENCY TRANSPAREN[T] TYPE
-syn keyword mapIdentifier   UNITS WMS_ABSTRACT WMS_ACCESSCONSTRAINTS WMS_ONLINERESOURCE WMS_SRS WMS_TITLE WRAP
-
-" General keywords third order
-syn keyword mapKeyword      ANNOTATION AUTO BEVEL BITMAP BUTT
-syn keyword mapKeyword      CARTOLINE CC CIRCLE CL CR CSV DD DEFAULT
-syn keyword mapKeyword      ELLIPSE EMBED FALSE FEET GIANT HILITE INCHES
-syn keyword mapKeyword      KILOMETERS LARGE LC LINE LL LR
-syn keyword mapKeyword      MEDIUM METERS MILES MITER MULTIPLE MYGIS NORMAL
-syn keyword mapKeyword      OFF OGR ON ONE-TO-MANY ONE-TO-ONE ORACLESPATIAL
-syn keyword mapKeyword      PIXELS PIXMAP POINT POLYGON POSTGIS QUERY RASTER ROUND
-syn keyword mapKeyword      SDE SELECTED SIMPLE SINGLE SMALL SQUARE
-syn keyword mapKeyword      TINY TRIANGLE TRUE TRUETYPE UC UL UR VECTOR WFS WMS
-
-" keywords for other purposes
-syn keyword mapTypedef      SELECTION
-
-" Comment
-syn match mapComment      "#.*"
-
-" Strings (single- and double-quote)
-syn region mapString       start=+"+  skip=+\\\\\|\\"+  end=+"+
-syn region mapString       start=+'+  skip=+\\\\\|\\'+  end=+'+
-
-" Numbers and hexidecimal values
-syn match mapNumber         "-\=\<[0-9]*\>"
-syn match mapNumber         "\<0x[abcdefABCDEF0-9]*\>"
-
-" Operators
-syn match mapOperator      "EQ"
-syn match mapOperator      "[><|\=&!$/\\()\[\]]"
-
-
-" Define the default highlighting.
-" For version 5.7 and earlier: only when not done already
-" For version 5.8 and later: only when an item doesn't have highlighting yet
-if version >= 508 || !exists("did_map_syn_inits")
-  if version < 508
-    let did_map_syn_inits = 1
-    command -nargs=+ HiLink hi link <args>
-  else
-    command -nargs=+ HiLink hi def link <args>
-  endif
-
-  HiLink mapComment      Comment
-  HiLink mapKeyword      Keyword
-  HiLink mapIdentifier   Identifier
-  HiLink mapDefine      Define
-  HiLink mapTypedef      Typedef
-  HiLink mapNumber      Number
-  HiLink mapString      String
-  HiLink mapOperator   Operator
-
-  delcommand HiLink
-endif
-
-let b:current_syntax = "map"
-
-" vim: ts=8

Deleted: trunk/docs/howto/map_fold.vim
===================================================================
--- trunk/docs/howto/map_fold.vim	2008-12-04 20:35:49 UTC (rev 8195)
+++ trunk/docs/howto/map_fold.vim	2008-12-05 02:32:47 UTC (rev 8196)
@@ -1,54 +0,0 @@
-" Vim folding mode for UMN MapServer .map files
-" Author:	Schuyler Erle <schuyler at nocat.net> 
-" Last Change:	2006 May 04
-" Version:	1.0
-" Based on an indent folding mode by Jorrit Wiersma and Max Ischenko
-"
-" To use, copy to your ~/.vim directory and then add the following
-" to your .vimrc:
-"
-" autocmd BufRead *.map source ~/.vim/map_fold.vim
-
-setlocal foldmethod=expr
-setlocal foldexpr=GetMapFileFold(v:lnum)
-setlocal foldtext=MapFileFoldText()
-highlight Folded term=bold ctermfg=white ctermbg=black
-
-function! GetMapFileFold(lnum)
-    " If it's a group statement, fold one level
-    let line = getline(a:lnum)
-
-    if line =~ '\c^\s*\(CLASS\|JOIN\|LABEL\|LAYER\|LEGEND\|METADATA\|OUTPUTFORMAT\|PROJECTION\|QUERYMAP\|REFERENCE\|SCALEBAR\|STYLE\|SYMBOL\|WEB\)\s*\(#.*\)*$'
-	return "a1"
-    endif
-
-    " if it's an END, unfold one level
-    if line =~ '\c^\s*END\s*\(#.*\)*$'
-	return "s1"
-    endif
-
-    " otherwise...
-    return "="
-endfunction
-
-function! MapFileFoldText()
-  let line = getline(v:foldstart)
-  let line3 = substitute(line, '\t', '        ', 'g')
-  let line2 = substitute(line3, '^\( *\)', '&+ ', '')
-
-  let i = v:foldstart
-  let name = ""
-  while i < v:foldend
-    let iline = getline(i)
-    if iline =~ '\c^\s*\(NAME\|EXPRESSION\)\s\s*'
-      let name = substitute(iline, '\c\s*\(NAME\|EXPRESSION\)\s*', '', '')
-      break
-    endif
-    let i = i + 1
-  endwhile
-  if name != ""
-    let line2 = line2 . " " . name
-  endif
-  return line2 . " "
-endfunction
-

Deleted: trunk/docs/howto/tileindex.txt
===================================================================
--- trunk/docs/howto/tileindex.txt	2008-12-04 20:35:49 UTC (rev 8195)
+++ trunk/docs/howto/tileindex.txt	2008-12-05 02:32:47 UTC (rev 8196)
@@ -1,101 +0,0 @@
-.. _tileindex:
-
-*****************************************************************************
-Tileindexes: On the fly mosaics for ease and performance 
-*****************************************************************************
-
-:Author:        HostGIS 
-:Revision: $Revision$
-:Date: $Date$
-:Last Updated: 2007/08/03
-
-.. contents:: Table of Contents
-    :depth: 2
-    :backlinks: top
-
-Introduction
-------------
-An introduction to tileindexes, Mapserver's method for doing on-the-fly mosaicing.
-
-What is a tileindex and how do I make one?
-------------------------------------------
-A tileindex is a shapefile that ties together several datasets into a single layer. 
-Therefore, you don't need to create separate layers for each piece of imagery or 
-each county's road data; make a tileindex and let Mapserver piece the mosaic 
-together on the fly.
-
-Making a tileindex is easy using 'gdaltindex' for GDAL data sources (rasters) and 
-'ogrtindex' for OGR data sources (vectors). You just run them, specifying the 
-index file to create and the list of data sources to add to the index.
-
-For example, to make a mosaic of several TIFFs:
-
-::
-
-    gdaltindex imagery.shp imagery/*.tif
-    
-And to make a mosaic of vectors:
-
-::
-
-    ogrtindex strees.shp tiger/CA/*.shp tiger/NV/*.shp
-    
-Note: ogrtindex and gdaltindex **add** the specified files to the index. Sometimes 
-you'll have to delete the index file to avoid creating duplicate entries.
-
-Using the tileindex in your mapfile
------------------------------------
-
-Using a tileindex as a layer is best explained by an example:
-
-::
-
-    LAYER
-    Â Â  NAME Roads
-       STATUS ON
-       TYPE LINE
-       TILEINDEX "tiger/index.shp"
-       TILEITEM "LOCATION"
-    END   Â Â 
-
-There are two items of note here: TILEINDEX and TILEITEM. TILEINDEX is simply 
-the path to the index file, and TILEITEM specifies the field in the shapefile 
-which contains the filenames referenced by the index. The TILEITEM will usually 
-be "LOCATION" unless you specified the *-tileindex* option when running gdaltindex 
-or ogrtindex.
-
-Two important notes about the pathnames:
-  
-  * The path to TILEINDEX follows the same conventions as for any other data
-    source, e.g. using the SHAPEPATH or else being relative to the location of
-    the mapfile.
-  * The filenames specified on the command line to gdaltindex or ogrtindex will
-    be used with the same conventions as well, following the SHAPEPATH or else
-    being relative to the mapfile's location. I find it very useful to change
-    into the SHAPEPATH directory and then run ogrtindex/gdaltindex from there;
-    this ensures that I specify the correct pathnames.
-  
-Tileindexes may make your map faster
-------------------------------------
-
-A tileindex is often a performance boost for two reasons: 
-  
-  * It's more efficient than having several separate layers. 
-  * Mapserver will examine the tileindex to determine which datasets fall into
-    the map's view, and will open only those datasets. This can result in a
-    great savings for a large dataset, especially for use cases where most of
-    the time only a very small spatial region of the data is being used. (for
-    example, citywide maps with nationwide street imagery)
-  
-A tileindex will not help in the case where all/most of the data sources will
-usually be opened anyway (e.g. street data by county, showing states or larger
-regions). In that case, it may even result in a decrease in performance, since
-it may be slower to open 100 files than to open one giant file.
-
-The ideal case for a tileindex is when the most typically requested map areas
-fall into very few tiles. For example, if you're showing state and larger
-regions, try fitting your data into state-sized blocks instead of county-sized
-blocks; and if you're showing cities and counties, go for county-sized blocks.
-
-You'll just have to experiment with it and see what works best for your use
-cases.

Deleted: trunk/docs/howto/vim.txt
===================================================================
--- trunk/docs/howto/vim.txt	2008-12-04 20:35:49 UTC (rev 8195)
+++ trunk/docs/howto/vim.txt	2008-12-05 02:32:47 UTC (rev 8196)
@@ -1,90 +0,0 @@
-*****************************************************************************
- VIM Syntax 
-*****************************************************************************
-
-:Author:        Andreas Hirner
-:Contact:       andreas.hirner at dlr.de
-:Author:        Schuyler Erle
-:Contact:       schuyler at tridity.org
-:Revision: $Revision$
-:Date: $Date$
-:Last Updated: 2006/5/5
-
-.. sectnum::
-
-.. contents:: Table of Contents
-    :depth: 2
-    :backlinks: top
-
-General remarks
-===============
-
-vi (vim) resides in: /usr/share/vim/current (vim_root).
-
-Syntax definitions are in vim_root/syntax/\*.vim files. Linking file types to extensions is done in vim_root/ftdetect/\*.vim. (The the star denotes 
-the extension and would be replaced with map to define highlighting of Mapserver config files).
-
-
-
-Installation
-============
-
-The installation process requires two steps:
-
-1. Copy the `map.vim`_ syntax file to the syntax directory
-
-   Copy map.vim to the vim syntax directory (on Suse: /usr/share/vim/current/syntax)
-
-2. Register the syntax file in the custom filetype directory
-
-   If absent, create a new directory called ftdetect in vim_root (on Suse Linux: /usr/share/vim/current).
-   Create a new file called map.vim in ftdetect according to the example shown below:
-
-   ::
-
-     " Mapserver config file
-     au BufNewFile,BufRead *.map         setf map
-
-Now restart vim and open a map file ....
-
-Folding
-============
-
-Introduction
-------------
-
-`Vim code folding <http://www.vim.org/htmldoc/usr_28.html>`__ can be an extremely handy way to simplify the task of editing complex MapServer mapfiles inside the Vim editor. A Vim command file called `*map_fold.vim*`_ is attached to this document, which defines a folding mode for mapfiles. This file also lives at http://iconocla.st/code/dot/map_fold.vim.
-
-Installation
-------------
-
-Global installation of new Vim filetypes is described in the `Vim syntax howto <http://mapserver.gis.umn.edu/docs/howto/vim-syntax-howto>`__. In Vim 6, you can copy *map_fold.vim* as-is to your *$VIMROOT/ftplugin/* directory, and it should more or less work.
-
-To use locally, create a *~/.vim/ftplugin* directory, copy *map_fold.vim* to it, and then add the following to your *~/.vimrc*:
-
-::
-
-  autocmd BufRead *.map set filetype=map
-
-`map_fold.vim`_ is totally compatible with the `map.vim`_ syntax highlighter, and their combined use is even recommended.
-
-Use
----
-
-The Vim `folding tutorial <http://www.vim.org/htmldoc/usr_28.html>`__ (at least the first two or three sections) is highly recommended. The Vim `folding reference <http://www.vim.org/htmldoc/fold.html>`__ may also be helpful.
-
-Conclusion
-----------
-
-Hope this helps! Please let me know if you find it useful, or if you find ways to improve it. Thanks!
- 
-Closing Remarks
-===============
-
-The keywords are based on the TextPad Symbol Map_40.syn file contributed by Christopher 
-Thorne, which can also be found on the Mapserver utility page.  I hope the file is 
-somehow useful to anybody out there. If there are any questions or suggestions, 
-please feel free to contact me.
-
-.. _`map.vim`: map.vim
-.. _`map_fold.vim`: map_fold.vim
\ No newline at end of file

Modified: trunk/docs/optimization/index.txt
===================================================================
--- trunk/docs/optimization/index.txt	2008-12-04 20:35:49 UTC (rev 8195)
+++ trunk/docs/optimization/index.txt	2008-12-05 02:32:47 UTC (rev 8196)
@@ -11,5 +11,6 @@
    vector
    raster
    fastcgi
+   tileindex
    
 

Modified: trunk/docs/optimization/mapfile.txt
===================================================================
--- trunk/docs/optimization/mapfile.txt	2008-12-04 20:35:49 UTC (rev 8195)
+++ trunk/docs/optimization/mapfile.txt	2008-12-05 02:32:47 UTC (rev 8196)
@@ -1,7 +1,7 @@
 .. _mapfile_tuning:
 
 *****************************************************************************
- MapFile Tuning
+ Mapfile 
 *****************************************************************************
 
 :Author:       David Fawcett

Modified: trunk/docs/optimization/raster.txt
===================================================================
--- trunk/docs/optimization/raster.txt	2008-12-04 20:35:49 UTC (rev 8195)
+++ trunk/docs/optimization/raster.txt	2008-12-05 02:32:47 UTC (rev 8196)
@@ -1,7 +1,7 @@
 .. _raster_optimization:
 
 *****************************************************************************
- Optimizing raster data sources 
+ Raster
 *****************************************************************************
 
 :Author:        HostGIS 

Copied: trunk/docs/optimization/tileindex.txt (from rev 8195, trunk/docs/howto/tileindex.txt)
===================================================================
--- trunk/docs/optimization/tileindex.txt	                        (rev 0)
+++ trunk/docs/optimization/tileindex.txt	2008-12-05 02:32:47 UTC (rev 8196)
@@ -0,0 +1,101 @@
+.. _tileindex:
+
+*****************************************************************************
+ Tile Indexes
+*****************************************************************************
+
+:Author:        HostGIS 
+:Revision: $Revision$
+:Date: $Date$
+:Last Updated: 2007/08/03
+
+.. contents:: Table of Contents
+    :depth: 2
+    :backlinks: top
+
+Introduction
+------------
+An introduction to tileindexes, Mapserver's method for doing on-the-fly mosaicing.
+
+What is a tileindex and how do I make one?
+------------------------------------------
+A tileindex is a shapefile that ties together several datasets into a single layer. 
+Therefore, you don't need to create separate layers for each piece of imagery or 
+each county's road data; make a tileindex and let Mapserver piece the mosaic 
+together on the fly.
+
+Making a tileindex is easy using 'gdaltindex' for GDAL data sources (rasters) and 
+'ogrtindex' for OGR data sources (vectors). You just run them, specifying the 
+index file to create and the list of data sources to add to the index.
+
+For example, to make a mosaic of several TIFFs:
+
+::
+
+    gdaltindex imagery.shp imagery/*.tif
+    
+And to make a mosaic of vectors:
+
+::
+
+    ogrtindex strees.shp tiger/CA/*.shp tiger/NV/*.shp
+    
+Note: ogrtindex and gdaltindex **add** the specified files to the index. Sometimes 
+you'll have to delete the index file to avoid creating duplicate entries.
+
+Using the tileindex in your mapfile
+-----------------------------------
+
+Using a tileindex as a layer is best explained by an example:
+
+::
+
+    LAYER
+    Â Â  NAME Roads
+       STATUS ON
+       TYPE LINE
+       TILEINDEX "tiger/index.shp"
+       TILEITEM "LOCATION"
+    END   Â Â 
+
+There are two items of note here: TILEINDEX and TILEITEM. TILEINDEX is simply 
+the path to the index file, and TILEITEM specifies the field in the shapefile 
+which contains the filenames referenced by the index. The TILEITEM will usually 
+be "LOCATION" unless you specified the *-tileindex* option when running gdaltindex 
+or ogrtindex.
+
+Two important notes about the pathnames:
+  
+  * The path to TILEINDEX follows the same conventions as for any other data
+    source, e.g. using the SHAPEPATH or else being relative to the location of
+    the mapfile.
+  * The filenames specified on the command line to gdaltindex or ogrtindex will
+    be used with the same conventions as well, following the SHAPEPATH or else
+    being relative to the mapfile's location. I find it very useful to change
+    into the SHAPEPATH directory and then run ogrtindex/gdaltindex from there;
+    this ensures that I specify the correct pathnames.
+  
+Tileindexes may make your map faster
+------------------------------------
+
+A tileindex is often a performance boost for two reasons: 
+  
+  * It's more efficient than having several separate layers. 
+  * Mapserver will examine the tileindex to determine which datasets fall into
+    the map's view, and will open only those datasets. This can result in a
+    great savings for a large dataset, especially for use cases where most of
+    the time only a very small spatial region of the data is being used. (for
+    example, citywide maps with nationwide street imagery)
+  
+A tileindex will not help in the case where all/most of the data sources will
+usually be opened anyway (e.g. street data by county, showing states or larger
+regions). In that case, it may even result in a decrease in performance, since
+it may be slower to open 100 files than to open one giant file.
+
+The ideal case for a tileindex is when the most typically requested map areas
+fall into very few tiles. For example, if you're showing state and larger
+regions, try fitting your data into state-sized blocks instead of county-sized
+blocks; and if you're showing cities and counties, go for county-sized blocks.
+
+You'll just have to experiment with it and see what works best for your use
+cases.

Modified: trunk/docs/optimization/vector.txt
===================================================================
--- trunk/docs/optimization/vector.txt	2008-12-04 20:35:49 UTC (rev 8195)
+++ trunk/docs/optimization/vector.txt	2008-12-05 02:32:47 UTC (rev 8196)
@@ -1,7 +1,7 @@
 .. _vector_optimization:
 
 *****************************************************************************
- Optimizing vector data sources 
+ Vector 
 *****************************************************************************
 
 :Author:        HostGIS 



More information about the mapserver-commits mailing list