A simple string templating library for Nim
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
templates
tests
.gitignore
LICENSE
README.md
templates.nim
templates.nimble

README.md

nim-templates

A simple string templating library for Nim

Usage

Import the 'templates' library at the top of your nim module, and use the syntax:

import templates

proc testPage (name: string): string = tmpli html"""
    <body>
        <h1>Hello $name!</h1>
    </body>
    """

echo testPage("Charlie")

Syntax

The templates syntax supports $for and $while loops, $if/$elif/$else, multi-line statements, $case statements, procedure calls, etc. Look at the tests.nim file for more examples.

Supported Syntaxes

Realistically any well-structured syntax can be used as a template, but the NimLime SublimeText plugin supports syntax highlighting for the following template types;

  • HTML / XML
  • CSS
  • Javascript
  • GLSL
  • RST
  • Markdown

These can be invoked as follows:

tmpli xml""" ... """
tmpli css""" ... """
# etc