abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 04:44 | Nová verze

    Nová čísla časopisů od nakladatelství Raspberry Pi: MagPi 140 (pdf) a HackSpace 77 (pdf).

    Ladislav Hagara | Komentářů: 0
    dnes 01:00 | Nová verze

    ESPHome, tj. open source systém umožňující nastavovat zařízení s čipy ESP (i dalšími) pomocí konfiguračních souborů a připojit je do domácí automatizace, například do Home Assistantu, byl vydán ve verzi 2024.4.0.

    Ladislav Hagara | Komentářů: 0
    včera 22:11 | IT novinky Ladislav Hagara | Komentářů: 0
    včera 20:55 | Nová verze

    Neziskové průmyslové konsorcium Khronos Group vydalo verzi 1.1 specifikace OpenXR (Wikipedie), tj. standardu specifikujícího přístup k platformám a zařízením pro XR, tj. platformám a zařízením pro AR (rozšířenou realitu) a VR (virtuální realitu). Do základu se z rozšíření dostalo XR_EXT_local_floor. Společnost Collabora implementuje novou verzi specifikace do platformy Monado, tj. open source implementace OpenXR.

    Ladislav Hagara | Komentářů: 2
    včera 17:22 | Nová verze

    Byla vydána nová verze 0.38.0 multimediálního přehrávače mpv (Wikipedie) vycházejícího z přehrávačů MPlayer a mplayer2. Přehled novinek, změn a oprav na GitHubu. Požadován je FFmpeg 4.4 nebo novější a také libplacebo 6.338.2 nebo novější.

    Ladislav Hagara | Komentářů: 1
    včera 17:11 | Nová verze

    ClamAV (Wikipedie), tj. multiplatformní antivirový engine s otevřeným zdrojovým kódem pro detekci trojských koní, virů, malwaru a dalších škodlivých hrozeb, byl vydán ve verzích 1.3.1, 1.2.3 a 1.0.6. Ve verzi 1.3.1 je mimo jiné řešena bezpečnostní chyba CVE-2024-20380.

    Ladislav Hagara | Komentářů: 1
    včera 12:11 | IT novinky

    Digitální a informační agentura (DIA) oznámila (PDF, X a Facebook), že mobilní aplikace Portál občana je ode dneška oficiálně venku.

    Ladislav Hagara | Komentářů: 7
    včera 05:11 | Komunita

    #HACKUJBRNO 2024, byly zveřejněny výsledky a výstupy hackathonu města Brna nad otevřenými městskými daty, který se konal 13. a 14. dubna 2024.

    Ladislav Hagara | Komentářů: 2
    17.4. 17:55 | IT novinky

    Společnost Volla Systeme stojící za telefony Volla spustila na Kickstarteru kampaň na podporu tabletu Volla Tablet s Volla OS nebo Ubuntu Touch.

    Ladislav Hagara | Komentářů: 3
    17.4. 17:44 | IT novinky

    Společnost Boston Dynamics oznámila, že humanoidní hydraulický robot HD Atlas šel do důchodu (YouTube). Nastupuje nová vylepšená elektrická varianta (YouTube).

    Ladislav Hagara | Komentářů: 1
    KDE Plasma 6
     (68%)
     (10%)
     (2%)
     (19%)
    Celkem 556 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Html soubor a kódování

    26.8.2010 17:10 | Přečteno: 1230× | software | poslední úprava: 13.3.2011 10:10

    Dříve jsem si stáhnul z internetu nějaké články, byly v podobě html. (Názvy souborů a složek, které tady uvedu, nejsou přesné, protože si je už nepamatuji, ale to není tak důležité.) Byla to složka, název složky clanky a vevnitř bylo několik souborů html a složka s názvem soubory. Ve složce soubory byly různé doplňky k těm html souborům, které se načtou, když v prohlížeči otevřu některý z těch html souborů, byly tam například obrázky a podobně. Dále v těch html stránkách byly odkazy na ostatní z těch html souborů, takže když v prohlížeči otevřu některou z těch stránek, můžu se pomoci těch odkazů přepínat na ostatní z těch stránek.

    Tyto uložené stránky mi však nefungovaly tak dobře hned, musel jsem je nejdříve opravit. První nedostatek, kterého jsem si všiml, je, že se mi některé písmena zobrazovaly nečitelně. Zjistil jsem, že je to kódováním. Prohlížeč mám nastavený na UTF-8 a ty stránky byly napsané v jiném, ISO-8859-2. Tak jsem prohlížeč nastavil na kódování ISO-8859-2 a už se mi to zobrazovalo čitelně, jenomže se zase zkazila jiná věc. Přestaly se zobrazovat veškeré obrázky a taky přestaly fungovat všechny odkazy, které umožňuji klikáním se dostat z jedné uložené stránky na druhou. Při kliknutím na takový odkaz se mi objevil výpis podobný tomuto: Chyba při načítání souboru /home/david/Nov??slo?ka/clanky/strana2 soubor /home/david/Nov??slo?ka/clanky/strana2 neexistuje.

    Složku clanky mám uloženou v adresáři ~/Nová složka. Když jsem tu složku přesunul do adresáře, kde nemám v cestě žádné háčky, čárky, a podobně, problémy zmizely. Když jsem tu složku clanky přemístil zpět a tu složku Nová složka přejmenoval na Novaslozka, problémy taky zmizely. Ještě jsem ale pořád nebyl spokojený. Nelíbilo se mi, že na funkci html souborů má vliv to, kam je umístím a jak jsou pojmenované případné adresáře výše. A tento vliv byl i přesto, že ty odkazy na další html soubory a na obrázky a tak dále, nebyly psané absolutní cestou, byly psané relativní cestou nebo bez cesty. Proto by správně mělo být jedno, jestli existuje nějaký adresář nad tím vším a jak se jmenuje.

    Nakonec jsem to vyřešit takto: Všechny ty html soubory, jeden po druhém, jsem otevřel v KWrite, nastavil kódování ISO-8859-2 a znovu soubor uložil (ulož jako), při čemž jsem zvolil kódování UTF-8. Tak jsem ty soubory převedl na kódované v UTF-8. Když jsem potom otevřel některou z těch uložených stránek, už fungovaly všechny odkazy i obrázky a to i bez ohledu na to, kam jsem tu složku clanky se vším uložil a nevadilo ani to, jestli byly nějaké adresáře výše a jestli ty adresáře měly v názvu háčky, čárky, a pod.

    Ale zbýval ještě jeden nedostatek: Když jsem otevřel v prohlížeči některou z těch stránek, musel jsem prohlížeč ručně nastavit na kódování UTF-8, protože jinak se přepínal na ISO-8859-2 a tím pádem se mi text zobrazoval nečitelně a ještě k tomu nefungovaly obrázky, ani odkazy; dokud jsem to ručně nepřepnul na správné kódování. Chybu jsem opravil takto: V textovém editoru jsem otevřel html soubory, a jeden po druhém opravil tak, aby řádek meta vypadal takto: <meta content="text/html; charset=UTF-8"> . Protože předtím tam místo UTF-8 bylo napsané něco jiného a kvůli tomu to bylo.

    Co z celého tohoto článku vyplývá? Když si budu chtít z internetu uložit stránku nebo sám si vyrobit uloženou stránku, čím se mám řídit, abych neměl problémy se správným zobrazováním textu v prohlížeči, s fungováním odkazů na další uložené stránky, doplňkovými soubory k stránce a podobně? Používat v html souborech zásadně kódování UTF-8, protože je lepší? Nebo se řídit tím, jaké kódování mám nastavené v operačním systému pro pojmenování všech souborů a adresářů a takové kódování potom používat taky? Nebo čím? A kde se vlastně nastavuje, jaké mám nastavené kódování pro pojmenovávání všech adresářů a souborů, například v prostředí KDE? Taky bych chtěl předejít problémům s přenesením html dokumentů na jiný počítač. Všechny html dokumenty si vypaluji a když si je nakopíruji do jiného počítače nebo kdybych náhodou přešel na jiný operační systém, tak abych zase neměl problém se správným zobrazením textu v prohlížeči, s fungováním odkazů, s fungováním doplňkových souborů k html dokumentům a podobně.

    Pro jednoduchost jsem udělal postup, který lépe předvede můj problém, a můžete si to vyzkoušet i vy.

    POSTUP:

    Vyrobil jsem si složku clanky. Potom jsem vyrobil dva html dokumenty, které jsem do te složky umístil. Při výrobě obou dokumentů jsem měl textový editor nastavený na kódování UTF-8.

    První dokument se jmenuje clanek1 a zdrojový kód je:

    
    <html>
      <head>
        <title></title>
        <meta content="text/html; charset=UTF-8">
        <style></style>
      </head>
      <body>
    Toto je první článek. Chcete-li si přečíst druhý článek,
    <a href="clanek2">klikněte zde.</a>
      </body>
    </html>
    
    

    Druhý dokument se jmenuje clanek2 a zdrojový kód je:

    
    <html>
      <head>
        <title></title>
        <meta content="text/html; charset=UTF-8">
        <style></style>
      </head>
      <body>
    Toto je druhý článek. Chcete-li si přečíst první článek,
    <a href="clanek1">klikněte zde.</a>
      </body>
    </html>
    
    

    Ať už jsem tu složku umístil kamkoliv, vždycky dokumenty v prohlížeči fungovaly, a to i včetně klikání na odkazy.

    Potom jsem oba dokumenty v KWrite překódoval na ISO-8859-2 a v obou dokumentech jsem podle toho taky přepsal kódování v tagu meta za charsetem, aby to odpovídalo.

    A výsledek? Oba html dokumenty se v prohlížeči zobrazují stále správně, a to ať už celou složku clanky umístím kamkoliv. Jenom to klikání na odkazy už přestane fungovat, pokud tu složku clanky umístím tak, že kterýkoliv z nadřazených adresářů má v názvu háčky, čárky nad písmeny a podobně. Když jsem například umístil složku clanky do adresáře, který se jmenuje Nová složka, tak klikání na odkazy v dokumentu nefunguje, ale vypisuje hlášení podobné tomuto: Chyba při načítání /home/david/Nov??slo?ka/clanky/clanek2. Soubor /home/david/Nov??slo?ka/clanky/clanek2 neexistuje.

           

    Hodnocení: 43 %

            špatnédobré        

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    rADOn avatar 26.8.2010 17:58 rADOn | skóre: 44 | blog: bloK | Praha
    Rozbalit Rozbalit vše Re: Html soubor a kódování
    …čím se mám řídit, abych neměl problémy se správným zobrazováním textu v prohlížeči, s fungováním odkazů na další uložené stránky, doplňkovými soubory k stránce a podobně?…
    Pokud je autor stranky hovado a do url strka nezakodovane non-ascii paznaky - a z tveho popisu to tak vypada - tak je nejlepsi reseni najit ho a nakopat do zadku :-)

    "2^24 comments ought to be enough for anyone" -- CmdrTaco
    26.8.2010 18:06 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Html soubor a kódování
    Ty znaky do názvu adresáře strká prohlížeč. To, že počítače psaly cesky, protoze to jinak neumely, se možná dalo tolerovat v devadesátých letech, ne dnes.
    rADOn avatar 26.8.2010 19:51 rADOn | skóre: 44 | blog: bloK | Praha
    Rozbalit Rozbalit vše Re: Html soubor a kódování
    Znaky v nazvu adresare s tim nemaji co delat, to je zalezitost systemovyho locale a DWD nepsal nic o tom ze by s nim sachoval. Znaky v URL jsou vec jina, a ty musi byt v 7bit ASCII protoze RFC to netoleruje ani dnes. A to z dobreho duvodu. Cili pokud to nekdo nezakoduje nebo zakoduje blbe (v jine sade nez zbytek dokumentu) tak to bude blbe. At to tolerujes nebo ne :-)
    "2^24 comments ought to be enough for anyone" -- CmdrTaco
    26.8.2010 19:55 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Html soubor a kódování
    Při ukládání webové stránky i s příslušenstvím je změna všech URL to jediné, co musí prohlížeč opravdu udělat, aby to vůbec mohlo fungovat. Asi by bylo zbytečné, aby prohlížeč ukládal na disk soubor obrazek.png, a v HTML nechal odkaz na http://www.example.com/obrazek.png. O šachování s locale autor psal, takže bych problém hledal právě tam.
    26.8.2010 18:03 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Html soubor a kódování
    Žádná univerzální pravidla neexistují. Uložení stránky i s příslušenstvím je věcí prohlížeče a záleží jenom na tom, jak jeho programátoři tule funkci pojali, jaké konverze udělají atd. Názvy souborů jsou v Linuxu jen pole bajtů, takže interpretace jako text je až na programu (nebo knihovních funkcích, které používá). V praxi tedy záleží na použitém locale – s jakým program spustíte, tak bude interpretovat bajty v názvech souborů. Technicky správné by bylo, aby typ souboru a jeho kódování bylo uloženo jako metadata souboru (podobně jako název, čas atd.), v Linuxu tedy v rozšířených atributech souboru. Dokonce už je na to nějaký standard z dílny x.org – ale nepoužívá se. Se jmény souborů je to podobné, kódování by mělo být uloženo někde v metadatech souborového systému (nebo by měl souborový systém nějaké kódování určit napevno, třeba UTF8 nebo UCS–2), a systém by měl při získávání jména souborů provádět přemapování a poskytovat název jako text – kdy se něčeho takového v Linuxu dočkáme je ovšem ve hvězdách.
    27.8.2010 15:12 reqw5q23
    Rozbalit Rozbalit vše Re: Html soubor a kódování
    Ja bych svoje zkusenosti shrnul takhle:

    * Psani cesky na html strankach neni problem. Clovek musi dodrzet jen zakladni zasadu a ulozit to ve stejnem kodovani jake je napsane v meta tagu charset. UTF-8 je pravdepodobne dobra volba.

    * V obecnych dokumentech (psany v editoru, treba kile,..) vetsinou neni kodovani zaznamenane, takze plati predchozi bod s tim, ze si musis pamatovat v jakem je to kodovani.

    * Pouzivani ceskych znaku mimo obsah dokumentu je v kazdem pripade velke riziko a zasadne ho nedoporucuju. Dal je treba se vyhybat i dalsim nebezpecnym znakum jako mezera,lomitko,otazniky,uvozovky,procenta, zavorky, atd.. ktere snadno zmatou programy nebo uzivatele. Cili je vhodne se omezit jen na pismenka anglicke abecedy, cislice a znaky _-. (podtrziko, pomlcka, tecka). Pritom se musi pocitat s tim, ze nekdy se rozlisuji a jindy naopak nerozlisuji velikosti pismen.

    27.8.2010 16:16 DWD | skóre: 18 | blog: papiry
    Rozbalit Rozbalit vše Re: Html soubor a kódování
    * Pouzivani ceskych znaku mimo obsah dokumentu je v kazdem pripade velke riziko a zasadne ho nedoporucuju. Dal je treba se vyhybat i dalsim nebezpecnym znakum jako mezera,lomitko,otazniky,uvozovky,procenta, zavorky, atd.. ktere snadno zmatou programy nebo uzivatele. Cili je vhodne se omezit jen na pismenka anglicke abecedy, cislice a znaky _-. (podtrziko, pomlcka, tecka). Pritom se musi pocitat s tim, ze nekdy se rozlisuji a jindy naopak nerozlisuji velikosti pismen.

    To se jedná o názvy všech adresářů, do kterých ty html dokumenty uložím, včetně všech nadřazených adresářů (pokud jsou), nebo kde?

    V těch stažených html dokumentech, o kterých jsem mluvil, jsem nenašel žádné vadné url nebo blbě udělané url. Jsou tam odkazy například

    <A href="dates.html">článek data</A>
    ,
    <img src="soubory/obraz01.png">
    . V žádném odkazu v uvozovkách po href= a v uvozovkách po src= nebyly žádné háčky, čárky, mezery a podobně, dokonce ani nebyly potřeba. Všechny tyto URL byly psané bez absolutní cesty (což je u html dokumentů často lepší) a byly psané v rámci te složky "clanky". Takže všechny URL odkazovaly (a to i ve zdrojovém kódu dokumentu v href="" a v src="") vždycky na něco, co bylo v složce "clanky" obsažené. Ať už jde o obrázek nebo o další html dokument. Přesto všechno se ty dokumenty divně chovaly, dokud jsem to neopravil, jak jsem psal. Tyto odkazy však potřeba přepisovat nebyly, ty jsem nechal tak, jak jsou; opravit jsem musel jiné věci, co jsem už říkal, a potom už všechno fungovalo. Takže problém nemohl být v tom, jak byly psané ty URL, ale musel být ten problém v něčem jimém a moc si to neumím vysvětlit.

    Po stažení a rozbalení zipu jsem získal jenom složku "clanky", ve které bylo všechno obsaženo: Všechny ty html dokumenty a složka "soubory" s obrázky k těm html dokumentům. Složka "Nová složka", do které jsem tu složku "clanky" umístil, už není součást toho stažení, ale dělaná.

    Jsem kretén, který ví lautr hovno o Linuxu a o počítačích vůbec.
    28.8.2010 00:06 rastos | skóre: 62 | blog: rastos
    Rozbalit Rozbalit vše Re: Html soubor a kódování
    "Správne" riešenie je použiť na to nejaký nástroj. Napr. konqueror má (že?) "Archive Web Page". Rátam, že pre FF bude na to nejaký addon a v krajnom prípade by to mohol robiť "wget --page-requisites". Ale prakticky to funguje čím ďalej tým menej. Kvôli javascriptu, flash-u, stavu session ukladanému do cookies, dynamicky generovaným stránkam, atď, atď. URL už dlho nie je "Universal Resource Locator" - teda niečo, čo umožňuje určiť, kde sa nejaká informácia na webe nachádza :-(
    29.8.2010 15:39 lelool | skóre: 12
    Rozbalit Rozbalit vše Re: Html soubor a kódování
    A čo tak podobné súbory, teda celý adresár stianúť pomocou wget?

    parameter -k, zaistí aby po dokončení sťahovania boli prevedené odkazy v dokumente tak, aby boli vhodné pre miestne prezeranie.

    viac man wget

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.