# CSS, JavaScript und HTML minifizieren und zusammenführen

> Statische Dateien und HTML-Antworten werden automatisch minifiziert; nutze MERGE(), um mehrere Dateien als eine auszuliefern, und die $minify-Einstellungen, um es abzuschalten.

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

Total.js minifiziert, was es ausliefert, ohne jeden Build-Schritt. Eine `.css`- oder `.js`-Datei aus `public/` wird ohne Kommentare und Leerraum gesendet (der Code wird nicht umbenannt oder umstrukturiert, nur verdichtet), und eine mit `$.html()` gesendete Zeichenkette oder eine gerenderte View verliert ihre HTML-Kommentare, und wiederholte Leerzeichen werden zusammengefasst. Eine Datei, deren Name `.min.` enthält (etwa `library.min.js`), gilt bereits als minifiziert und wird unverändert gesendet.

Drei Einstellungen in der Datei `config` steuern das, alle standardmäßig `true`: `$minifyjs`, `$minifycss` und `$minifyhtml`. Setze eine auf `false`, um diesen Typ unverändert auszuliefern, was beim Debuggen im Browser praktisch ist.

`MERGE(url, file1, file2, ...)` registriert eine virtuelle Datei, die die minifizierte Verkettung der angegebenen Dateien ist. Der Browser stellt eine Anfrage statt vieler. Dateipfade sind URLs des Ordners `public/`.

```css public/css/app.css
/* the page style */
body {
	margin: 0;
	color: #000000;
}
```

```js public/js/app.js
// greeting
function hello(name) {
	var message = 'Hello ' + name;
	return message;
}
```

```js public/js/library.min.js
function   untouched ( ) { return  1 }
```

```js public/js/two.js
function two() { return 2; }
```

```js controllers/minify.js
exports.install = function() {
	ROUTE('GET /page/', page);
	MERGE('/all.js', '/js/app.js', '/js/two.js');
};

function page($) {
	$.html('<!DOCTYPE html>\n<html>\n  <body>\n    <!-- a note -->\n    <p>  Hello   world  </p>\n  </body>\n</html>');
}
```
