# Een view in meerdere talen vertalen

> Markeer teksten in views met @(...) en lever vertalingen in resourcebestanden die LOCALIZE() kiest.

Framework: total5
Product: Total.js 5 (total5@0.0.19)
Language: nl
Content-SHA256: bbd080149b3f5778b31c249bb8a8b4655645528d7b4e72838c6406eaf352b3a8
Snapshot: c0700e321579725c5cf4f5ace1ad7d2866d1b4f93c24a63c0b41b6b7998e976c
Sources: total5-installed@total5@0.0.19
Review: not-recorded

Zet een willekeurige tekst van een view tussen `@(...)` en Total.js vervangt hem door de vertaling voor de huidige taal. Vertalingen staan in `resources/<language>.resource`; elke regel is `key : translation`. De sleutel is `T` plus de hash van de oorspronkelijke tekst in grondtal 36, die `total5` voor je kan genereren. Teksten zonder vertaling blijven zoals geschreven, dus de tekst van de view fungeert als standaardtaal.

`LOCALIZE()` bepaalt de taal van elk verzoek. Hier wordt hij uit de query string gelezen, maar het kan ook een cookie, een header of een URL-segment zijn.

```js definitions/localization.js
LOCALIZE(function($) {
	return $.query.lang;
});
```

```text resources/sk.resource
// Total.js translation file
T4oxobw : Vitajte v obchode
```

```html views/index.html
@{layout('')}
<h1>@(Welcome to the shop)</h1>
```

```js controllers/default.js
exports.install = function() {
	ROUTE('GET /', home);
};

function home($) {
	$.view('index');
}
```
