Vertalingsyntaxis

Vertalingsyntaxis

Vertaalgebieden

Sneltoetsen bieden toegang tot vertalingen in relatie tot bepaalde contexten.

// Relatief aan de lay-out (HTML meta-tags en hoofdpaginaframe)
{{ '@layout::meta.description' | trans }}
// Relatief aan de pagina (bijvoorbeeld de paginainhoud of een venster)
{{ '@page::page_title' | trans }}

Inclusies

Het is belangrijk om duplicaattekst in een vertaalbestand te verminderen. Magische sleutels maken inclusies van het ene bestand naar het andere mogelijk met de interne syntaxis @folder.file::key.sub_key.

Je kunt het combineren met het % sleutelwoord als de sleutel of sleutelboom hetzelfde is.

# translation-file-one.en.yml
example_key:
  example_sub_key: Translation string

# translation-file-two.en.yml
example_key:
  # Using this key resolves to the first file
  # using the same key "example_key.example_sub_key"
  example_sub_key: '@translation-file-one::%'

Uitbreidingen

Als de meeste sleutels in een bestand hetzelfde zijn als in een ander, is het eenvoudiger om de ~extends syntaxis te gebruiken om alle sleutels opnieuw te gebruiken en alleen de nieuwe toe te voegen.

# translation-file-two.en.yml
~extends: '@translation-file-one'

Caching

Vertalingsbestanden worden opgelost en gecached om de prestaties te behouden.

Javascript

Vertalingen kunnen naar Javascript worden doorgegeven voor dynamisch gebruik.

// template.html.twig
trans_js('@page::javascript.*')
// Hello Javascript!
app.layout.page.trans('@page::javascript.demo_text');