Sintaxis de Nes

Bloques

Las instrucciones de Nes están formadas por bloques encerrados entre llaves, las llaves para abrir y cerrar un bloque son respectivamente:

{:  y  :}

Tags

Los Tags son la palabra/símbolo que precede a las llaves de abrir el bloque. De forma genérica llamaremos Tags a todo el bloque, similar a lo que hacemos con los Tag HTML. Y de forma general la sintaxis de Nes es:

llave_abrir tag (parámetros) [HTML] llave_cerrar
tag Puede ser:

    # comentario
    $ variable
    * variable de entorno
    ~ expresión
    sql SQL SELECT
    @ tabla de datos
    @$ campo de una tabla de datos
    include incluir un archivo
    NES NES
    & Plugin

Parámetros:

Los parámetros requieren paréntesis cuando hay más de uno o existen espacios, además si hay espacios es necesario comillas simples, las comillas dobles están reservadas para futuras versiones y no se deben usar para evitar incompatibilidades.

Si los parámetros incluyen comillas, éstas deben ir precedidas de una barra invertida (\'). Se pueden incluir comas en los parámetros sin necesidad de barra pero éstas deben ir siempre encerrados entre comillas (',')

HTML:

Es el código HTML que se incluirá en algunos Tags.

Ejemplos:

Tag que usamos para mostrar el contenido de una variable:

{: $ ( variable ) :}

Los espacios en la mayoría de los casos no son necesarios, pero por claridad se recomienda su uso:

{:$(variable):}

Se permite abreviar de la siguiente manera:

{: $ ( 'variable' ) :}
{: $ ( variable ) :}
{: $ variable :} 
{: $variable :}

Las cuatro formas tienen el mismo significado.

Los paréntesis no son necesarios siempre que no haya espacios entre los parámetros:

{: ~ $variable <p>código HTML</p> :} <- *innecesarios

{: ~ ( $ variable1 == $ variable2 ) <p>código HTML</p> :} <- *necesarios

Uso de comillas y comas en los parámetros:

{: include ('file.html','The \'Title\'','one, two and three') :} 

Todos los Tags salvo NES pueden ocupar varias lineas:

{: #
        
        Si variable devuelve true 
        se mostrará "código HTML"
        
:}
{: ~ ( $ variable ) 
        <p>código HTML</p>
:}