Texy! je sexy!
Texy je výkonný a bezpečný markup procesor pro PHP, který převádí jednoduchý text do validního HTML. Na rozdíl od jiných markup jazyků není Texy jen další variantou Markdown – je to plně konfigurovatelný systém, který můžete přizpůsobit prakticky jakékoliv syntaxi.
Proč Texy?
Bezpečnost na prvním místě
Texy je navrženo s důrazem na bezpečnost. Automaticky chrání před XSS útoky, validuje URL adresy a filtruje
nebezpečné HTML značky. Vestavěný safeMode() je ideální pro zpracování uživatelského obsahu
v komentářích nebo na fórech.
Texy\Configurator::safeMode($texy);
// Nyní je Texy bezpečné pro obsah od uživatelů
Konfigurovatelnost bez kompromisů
Chcete používat Markdown syntaxi? Nebo potřebujete úplně vlastní markup? Texy to zvládne. Můžete:
- Vypnout nebo zapnout libovolné části syntaxe
- Změnit výchozí chování pomocí handlerů
- Přidat zcela vlastní syntaktické prvky
- Nakonfigurovat Texy tak, aby zpracovávalo Markdown nebo jakýkoliv jiný formát
$texy = new Texy;
$texy->allowed['image'] = false; // vypnout obrázky
$texy->allowed['phrase/strong'] = false; // vypnout tučné písmo
České typografické speciality
Texy dokonale rozumí češtině. Automaticky:
- Vkládá pevné mezery za jednopísmenné předložky a spojky: v autě, u okna, s kamarádem
- Rozděluje dlouhá slova podle slabik: nejneobhospodařovávatelnějšími
- Používá správné typografické uvozovky: „dvojité" a ‚jednoduché'
- Zaměňuje spojovník za pomlčku: 10–15 vs. česko-slovenský
- Přidává nezalomitelné mezery u telefonních čísel: +420 776 552 046
Validní a wellformed HTML
Texy generuje vždy validní HTML5 kód. Automaticky opravuje chybně vnořené značky, uzavírá nezavřené elementy a dbá na správnou strukturu dokumentu. Výstup je nejen validní, ale i pěkně naformátovaný s odsazením.
Co je Texy?
Texy je obecný procesor markup textu. To znamená, že má sice svou výchozí syntaxi (podobnou Markdown, ale mnohem bohatší), ale můžete ji kompletně změnit nebo rozšířit.
Není to jen parser – Texy je komplexní systém s modulární architekturou, kde každý modul zpracovává konkrétní část syntaxe (nadpisy, odkazy, obrázky, tabulky…). Díky systému handlerů můžete zasáhnout do libovolného bodu zpracování a změnit výsledek podle svých potřeb.
Texy vs. Markdown
Základní syntaxe je podobná, ale Texy nabízí mnohem více:
| Funkce | Markdown | Texy |
|---|---|---|
| Tučné písmo | **text** |
**text** |
| Kurzíva | *text* nebo _text_ |
*text* nebo //text// |
| Nadpisy | # Nadpis |
# Nadpis nebo podtržení |
| Obrázky |  |
[* url *] |
| Tabulky | omezené | plná podpora včetně sloučení |
| Modifikátory | ne | ano – .{color:red}[class] |
| Typografie | ne | ano – uvozovky, pomlčky, mezery |
| Dělení slov | ne | ano – podle slabik |
| Konfigurovatelnost | omezená | úplná – vlastní syntaxe |
| Bezpečnost | závisí na impl. | vestavěná (safeMode) |
Příklad rozdílů:
Markdown:

Texy:
[* image.jpg 300x200 .(Popisek obrázku)[photo] <]
Texy umožňuje definovat rozměry, třídy, zarovnání a mnoho dalšího přímo v syntaxi.
Kdy použít Texy?
Texy je ideální pro:
CMS systémy Potřebujete bezpečně zpracovávat obsah od editorů? Texy nabízí granulární kontrolu nad tím, co mohou uživatelé použít.
Blogy a dokumentace Bohatá syntaxe pro tabulky, obrázky s popiskami, typografii a kód s syntax highlightingem.
Komentáře a diskuzní fóra SafeMode zajistí, že uživatelé nemohou vložit nebezpečný kód, ale zároveň mají k dispozici formátování textu.
Projekty s vlastními požadavky Potřebujete embed YouTube videí? Speciální syntax pro vaše makra? Vlastní markup jazyk? S Texy to vytvoříte snadno.
Historie
Texy vytvořil David Grudl před 20 lety v roce 2004 jako jeden z prvních markup procesorů pro PHP. Původně bylo vyvinuto pro PHP 4, ale během své dlouhé historie prošlo mnoha aktualizacemi a dnes plně využívá všech možností PHP 8.
Přes dvě dekády aktivního vývoje znamenají vyzkoušenou a stabilní knihovnu, které důvěřují stovky projektů. Texy je dnes mature řešení s velkou historií, ale stále aktivně udržované a moderní.