Filtros y globales de Liquid
Los filtros transforman valores dentro de {{ }}. Seekdown registra un conjunto pensado para el asistente: son las piezas básicas que usarás constantemente.
| Filtro | Qué hace | Ejemplo |
|---|---|---|
t | Traduce por clave, con un valor alternativo. | {{ 'ask' | t: 'Ask' }} |
r | Resuelve la URL de un recurso del asistente. | {{ 'img/search.svg' | r }} |
markdown | Renderiza markdown a HTML (combínalo con safe). | {{ result.payload.reply | markdown | safe }} |
safe / raw_html | Imprime HTML sin escapar. | {{ html | safe }} |
ellipsis | Trunca el texto con puntos suspensivos. | {{ reference.summary | ellipsis: 160 }} |
default | Valor alternativo cuando está vacío. | {{ reference.title | default: 'Untitled' }} |
hasTemplate | Verdadero si existe una plantilla con ese nombre. | {% if reference.type | hasTemplate %} |
fromNow | Tiempo relativo. | {{ result.date | fromNow }} |
dateToString / dateFormat | Da formato a una fecha. | {{ date | dateToString: 'YYYY-MM-DD' }} |
length | Longitud de una cadena, un array o un objeto. | {{ state.results | length }} |
entries | Convierte un objeto en pares clave/valor para recorrerlo. | {% for e in form.fields | entries %} |
lower | Pasa a minúsculas. | {{ type | lower }} |
sanitize | Escapa las comillas para usar el texto en atributos. | data-x="{{ text | sanitize }}" |
randomId | Genera un id único. | {{ 'field_' | randomId }} |
log | Imprime un valor (JSON) para depurar. | {{ state | log }} |
Globales
Además de state, el global skdwn da a las plantillas acceso a la instancia en ejecución (su config, helpers, templates y startOptions), para que una plantilla pueda leer un ajuste o hacer referencia a un helper directamente.