trivialitty weblog

Zobrazování entit v Texy!

Populární svobodný generátor (X)HTML kódu z běžného textu Texy! umí mimo jiné i typografické úpravy. V defaultním nastavení však některé znaky nejsou zapisovány pomocí entit. Drobná funkce však tento problém napraví.

Pro převedení znaků nedělitelné mezery ( ), spojovníku (­), menší pomlčky (–) a pomlčky (—) na entity stačí vložit funkci:

function texyZobrazEntity($obsah) {
  return str_replace(
  array("\xc2\xa0", "\xc2\xad", "\xe2\x80\x93", "\xe2\x80\x94"),
  array(' ', '­', '–', '—'),
  $obsah);
}

a zavolat po zformátování kódu pomocí Texy!:

$html = texyZobrazEntity($texy->process($text));

Zdroje:

25. července 2008 v 4.28 – Programování – zobrazeno: 25179x – komentáře: 4

Komentáře

#1 Timy 26. července 2008 v 0:34:03 řekl(a):

Proč to nazýváš problémem? Já myslím, že je to spíš feature :o). Texy také využívám a žádný problém jsem s tím nezaznamenal.

lukas.havrlant@gmail.comhttp://itblob.havrlant.net/

#2 ondrg 26. července 2008 v 1:58:19 řekl(a):

Tak problém je akorát v tom, že určité znaky nejsou zapsány v entitách… a to je vlastně všechno :-D

Je to sice spíše feature, ale kvůli tomu že jsem to řešil já i někdo předemnou jsem se rozhodl o tom napsat.

ondra.gersl@seznam.czhttp://itty.cz/

#3 Timy 26. července 2008 v 11:23:21 řekl(a):

Pořád nevím, v čem je ten problém :-). Vadí snad, že ty znaky nejsou v entitách? Proč nebo kdy?

lukas.havrlant@gmail.comhttp://itblob.havrlant.net/

#4 ondrg 1. srpna 2008 v 15:29:24 řekl(a):

Nevadí, na zobrazování to vliv nemá, ale třeba při kopírování zdrojového kódu s tím problémy jsou.

Já jsem to aplikoval kvůli tomu, že mi přijde (co se vzhledu zdrojového kódu týče) lepší mít tyto znaky zapsané v entitách.

ondra.gersl@seznam.czhttp://itty.cz/

Co Vy na to?






(CC) 2008-2024 Ondra „ondrg“ Geršl (v. 0.2.3 – changelog) [poděkování] [licence]

Vypnout CSS — Validovat HTML (W3C) — Validovat CSS

Jste připojeni přes IPv4 :-( Vaše IP adresa je: 10.10.10.10
IP adresa serveru je: 10.10.10.10