Freemarker ist eine Open-Source Skriptsprache, die intensiv in Synesty Studio verwendet wird, um folgende Dinge umzusetzen:
- Variablen
- Platzhalter
- Formeln
- Funktionen
- Filter
- Schleifen
- WENN-DANN-Logik
Freemarker kann an verschiedenen Stellen verwendet werden z.B. in SpreadsheetMapper / Spreadsheets und in Steps wie TextHTMLWriter. Synesty Studio bietet über die Standard-Freemarker Funktionen hinaus noch zusätzliche eigene Funktionen an, sog. Template Funktionen.
- Handbucheintrag über Freemarker-Scripting in Synesty Studio
Einige Freemarker Funktionen für Strings / Zeichenketten
Da man es bei Schnittstelle in der Regel mit Zeichenketten zu tun hat, werden am häufigsten Funktionen benötigt, die irgendwelche Manipulationen dieser Zeichenketten machen.
- boolean
- cap_first
- capitalize
- chop_linebreak
- contains
- date, time, datetime
- ends_with
- ensure_ends_with
- ensure_starts_with
- esc
- groups
- html (deprecated)
- index_of
- j_string
- js_string
- json_string
- keep_after
- keep_after_last
- keep_before
- keep_before_last
- last_index_of
- left_pad
- length
- lower_case
- matches
- no_esc
- number
- replace
- right_pad
- remove_beginning
- remove_ending
- rtf (deprecated)
- split
- starts_with
- string (when used with a string value)
- substring (deprecated)
- trim
- truncate, truncate_…
- uncap_first
- upper_case
- url
- url_path
- word_list
Einige Freemarker Funktionen für Listen
Hinweis: Listen werden in Freemarker als sog. Sequences bezeichnet.
- chunk
- drop_while
- filter
- first
- join
- last
- map
- min, max
- reverse
- seq_contains
- seq_index_of
- seq_last_index_of
- size
- sort
- sort_by
- take_while
Bei der Arbeit mit Schleifen / Loops (<#list>) zum Iterieren über Listen sind folgende Funktionen innerhalb des Loops verfügbar:
- counter
- has_next
- index
- is_even_item
- is_first
- is_last
- is_odd_item
- item_cycle
- item_parity
- item_parity_cap
Sonstige Funktionen
- Variablen zusweisen <#assign>
- Datumsfunktionen: date, time, datetime (when used with a date/time/date-time value)
- Mit Fehlermeldung abbrechen (<#stop>)