# Minifikace a spojování CSS, JavaScriptu a HTML

> Statické soubory a odpovědi HTML se minifikují automaticky; použijte MERGE() k servírování více souborů jako jednoho a nastavení $minify k vypnutí.

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

Total.js minifikuje to, co servíruje, bez jakéhokoli build kroku. Soubor `.css` nebo `.js` z `public/` se odešle bez komentářů a mezer (kód se nepřejmenovává ani nepřeskupuje, jen se zhušťuje) a řetězec odeslaný přes `$.html()` nebo vykreslený pohled ztratí komentáře HTML a opakované mezery se sloučí. Soubor, jehož název obsahuje `.min.` (například `library.min.js`), se považuje za již minifikovaný a odešle se tak, jak je.

Řídí to tři nastavení v souboru `config`, všechna ve výchozím stavu `true`: `$minifyjs`, `$minifycss` a `$minifyhtml`. Nastavte jedno na `false`, aby se daný typ servíroval beze změny, což se hodí při ladění v prohlížeči.

`MERGE(url, file1, file2, ...)` zaregistruje virtuální soubor, který je minifikovaným spojením zadaných souborů. Prohlížeč tak dělá jeden požadavek místo mnoha. Cesty k souborům jsou URL ze složky `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>');
}
```
