Vorlage DokumentationOutputLineFilter
Allgemeines
   Aufruf
   Einleitung
   Installation
   Konfiguration
   Syntax
Einführung
   MetabefehlsAusdruecke
   MetabefehlsSyntax
   RegulaereAusdruecke
   VordefinierteVariablen
Funktionen
   abs()
   after()
   and()
   antoi()
   before()
   ceil()
   change()
   close()
   crop()
   equals()
   exp()
   flatten()
   float()
   floor()
   int()
   isnothing()
   itoan()
   length()
   log()
   log10()
   match()
   not()
   open()
   or()
   random()
   read()
   readline()
   sign()
   status()
   statustext()
   substr()
   system()
   time()
   tolower()
   toupper()
   typeof()
   write()
   writeline()
   xname()
   xor()
Metabefehle
   #after
   #array
   #break
   #call
   #config
   #const
   #debug
   #default
   #dict
   #else
   #every
   #forever
   #func
   #if
   #ifregion
   #ifunit
   #include
   #input
   #message
   #next
   #notrace
   #proc
   #return
   #sort
   #table
   #tag
   #trace
   #var
   #while
Rückruf-Prozeduren
   CalcUnitCapacities
   CreateRegionHeader
   CreateUnitHeader
   EndRegion
   EndUnit
   OnBuilding
   OnExit
   OnInit
   OnRegion
   OnShip
   OnUnit
   OutputLineFilter
Report-Objekte
   building
   grenze
   partei
   preise
   races
   region
   report
   ship
   things
   unit
Anhang
   Danksagungen
   SkriptDebugger
   VorlageFAQ

OutputLineFilter

Beschreibung

Definiert man eine Funktion mit dem Namen OutputLineFilter, so wird diese bei der Ausgabe der Zugvorlage für jede Ausgabezeile aufgerufen und kann diese verändern und zurückgeben.

ALERT! HINWEIS: Es ist zu bemerken, dass ein solcher Ausgabefilter die Ausgabe der Zugvorlage je nach Rechner zumindest merkbar verzögert. Also nicht wundern, wenn der Computer bei Verwendung eines Filters gegen Ende eine kurze Denkpause einlegt.

Beispiel

Will man die Einrückung auf Tabs umstellen, so könnte dies wie folgt geschehen:

#func OutputLineFilter $Line
{
    $Line=change($Line,'^    ','\09\09');
    $Line=change($Line,'^  ','\09');
    $Line=change($Line,'^ ','');
    #return $Line
}

Dadurch wird für Zeilen mit vier Leerzeichen am Zeilenanfang (also die Einheiten-Befehle) eine Einrückung durch zwei Tabs, für die Zeilen mit zwei Leerzeichen (Einheitenkommentare) durch einen Tab und für Zeilen mit einem führenden Leerzeichen (Regionsinfos, etc.) keine Einrückung gewählt.

Referenzen

-

Revision 04 Jul 2006

Page design, graphics and contents (c) copyright 1999-2004
by S.Schümann and contributing authors