abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 21:22 | IT novinky

    CEO Twitteru Jack Dorsey odstoupil. S okamžitou platností se novým CEO stal Parag Agrawal.

    Ladislav Hagara | Komentářů: 3
    včera 17:09 | IT novinky

    Dnes je Cyber Monday, kdy je možné u Codeweavers zakoupit CrossOver (komerční implementaci Wine) se slevou 25% (unlimited) nebo 75% (roční). Slevy jsou limitovány počtem kupujících.

    Max | Komentářů: 2
    28.11. 21:55 | Komunita

    Dne 26. 11. 2021 nás ve věku 49 let navždy opustil spoluzakladatel KERNEL ULTRAS a tvůrce mnoha projektů Mário Chorváth, alias Bedňa. Tato smutná zpráva byla bez dalších podrobností oznámena rodinou na jeho FB profilu.

    =^..^= AmigaPower® | Komentářů: 28
    28.11. 12:44 | Nová verze

    Vyšla verze 6.0 verzovacího systému Mercurial. Novinky jsou shrnuty v poznámkách k vydání. Jde o poslední verzi, která podporuje Python 2.x. Nejpodstatnější změnou je nová verze dirstate (vnitřních struktur), díky čemuž by se měly zrychlit některé operace (commit, diff apod.) a dále je možné ukládat k souborům víc metainformací.

    finn | Komentářů: 10
    27.11. 17:33 | Komunita

    O víkendu probíhá EmacsConf 2021, tj. online konference vývojářů a uživatelů editoru GNU Emacs. Sledovat lze na stránkách konference nebo také na YouTube.

    Ladislav Hagara | Komentářů: 3
    26.11. 23:55 | Nová verze

    Heimer je v Qt napsaná desktopová aplikace pro tvorbu myšlenkových map, diagramů a poznámek. Vydána byla verze 3.0.0. Videoukázka verze 1.9.0 na YouTube.

    Ladislav Hagara | Komentářů: 9
    26.11. 17:11 | Zajímavý projekt

    Na stránkách LINux on MOBile je každou středu publikován týdenní přehled dění kolem Linuxu na mobilních zařízeních. V aktuálním přehledu je zmíněn například nový build 2021/11/21 Arch Linuxu ARM pro PinePhone a PineTab nebo NemoMobile 0.7.

    Ladislav Hagara | Komentářů: 0
    25.11. 21:11 | Komunita

    Mozilla ukončí podporu aplikace Firefox Lockwise pro systémy Android a iOS s účinností od 13. prosince 2021. Aplikaci Firefox Lockwise již nebude možné nainstalovat ani přeinstalovat z obchodu App Store ani Google Play.

    Ladislav Hagara | Komentářů: 9
    25.11. 20:22 | Nová verze

    Byla vydána verze 8.1.0 skriptovacího jazyka PHP používaného zejména k vývoji dynamických webových stránek. Přináší řadu novinek a vylepšení. Vydána byla také příručka pro přechod z předchozích verzí.

    Ladislav Hagara | Komentářů: 0
    25.11. 08:00 | Nová verze

    Endless OS byl vydán ve verzi 4.0.0. Přehled novinek v poznámkách k vydání. Nejnovější Endless OS vychází z Debianu Bullseye. Zdůrazněna je dlouhodobá podpora.

    Ladislav Hagara | Komentářů: 0
    Který formát počítače (form factor) preferujete?
     (15%)
     (33%)
     (7%)
     (39%)
     (6%)
    Celkem 421 hlasů
     Komentářů: 46, poslední 24.11. 15:31
    Rozcestník



    Dotaz: generátor statických webových stránek - kde se o nem bavit?

    12.11. 11:05 Gilhad | skóre: 20 | blog: gilhadoviny
    generátor statických webových stránek - kde se o nem bavit?
    Přečteno: 441×
    chystám se psát vlastní generátor statických webových stránek (nejspíš make (kvůli paralelizmu a neopakování) a python), něco už mám, ale nejsem si úplně jistý, že jdu nejlepším směrem - nezabával se někdo něčím podobným, nebo nezná klub, kde by se tím někdo zabýval (klidně i anglicky) ?

    Řešení dotazu:


    Odpovědi

    12.11. 13:34 X
    Rozbalit Rozbalit vše Re: generátor statických webových stránek - kde se o nem bavit?
    xkucf03 avatar 12.11. 17:25 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Re: generátor statických webových stránek - kde se o nem bavit?

    Kdysi jsem si napsal XML Web generátor – původně to měla být spíš taková hračka a ukázka toho, že stačí použít Ant a XSLT procesor a není potřeba nic moc programovat… ale používám to dodnes.

    Později jsem udělal něco ještě jednoduššího, co používá Make a příkaz xsltproc (Makefile). Rozdíl je v tom, že tohle je jednoúčelové, není to obecný generátor jako software, ale je to součást daného projektu a generuje to nějaké výstupy jen pro něj. Díky tomu není potřeba řešit obecnosti a přemýšlet, jaké všechny možné funkce by mohl potenciální uživatel potřebovat, jaké tam přidat a jaké ne, jak to konfigurovat a parametrizovat… prostě člověk do toho Makefilu a šablony natvrdo napíše to, co zrovna potřebuje, nic víc – díky tomu je to mnohem jednodušší než univerzální řešení.

    Znovupoužitelnost se dá řešit tak, že když budu příště dělat něco podobného, vykopíruji si kusy šablon nebo Makefilu do nového projektu. Nakonec mi to dává větší smysl než se pokoušet vytvořit nějaký úžasný univerzální generátor, který bude sloužit mně a milionům dalších lidí s odlišnými potřebami – tam pak narážíš na problém, že buď je to moc omezené nebo se z toho dříve či později stane moloch a bloatware. Dá se na to dívat tak, že univerzální a obecný nástroj je ten Make, Ant, xsltproc, saxon atd. zatímco ty šablony a skript jsou jen parametrizace, kterou si napíšeš podle aktuálních potřeb. Přijde mi to vhodné, když mám menší počet projektů s odlišnými potřebami, kde si to vždy rád upravím na míru. Naopak pokud někdo dělá stovky podobných webů, tak to bude chtít nějaké obecnější znovupoužitelné řešení.

    Na tvém místě bych se tedy nejdřív zamyslel, jakým směrem chceš jít, jak moc univerzální to má být, pro koho to píšeš a jaké jsou požadavky.

    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    13.11. 05:40 Gilhad | skóre: 20 | blog: gilhadoviny
    Rozbalit Rozbalit vše Re: generátor statických webových stránek - kde se o nem bavit?
    Díky za odpověď.

    Píšu to pro sebe, chci to na dělání vlastních blogů. Už jsem si prošel řadu generátorů, ale moc mi nevyhovovaly, nakonec jsem skončil (na nějakou dobu, skoro dva roky) u Pelican a Nikola, každý z nich má své výhody a nevýhody, ale já bych rád měl něco, co bude mít jak (pro mě zajímavé) výhody obou a ještě pár věcí navíc. Zatím mám sepsáno tohle (a asi ještě tak jednou tolik v hlavě):

    * RST soubory jako zdroj, nějaká metadata navíc v hlavičce (název, šablonu, datum založení a poslední změny (protože GIT datumy normálně neuchovává))
    * Adresářovou strukturu, tagy, kategorie??, roky a měsíce
    * možnost prostě stáhnout celou site, a aby pak fungovala i z lokálu
    * Statické indexy: ``index`` , ``index-00123``,  ``index-00122``, .. ,  ``index-00002``, ``index-00001`` 
        (nejstarší - takhle to má Nikola, indexy mají omezenou délku a (až na ``index``) se nemění 
        - když ``index`` 2x přeteče, tak se ze starší půlky udělá další pořadová číslo a ta půlka se odmaže
    * ``Last_modified`` a ``Last_published`` indexy s MOTD hlavičkama (teda s hlavičkama, které budu čas od času měnit)
    * Seriály (ale na to asi stačí podadresáře)
    	* k čertu, ono asi stačí mít TOP_MENU, subdirs a pwd jako navigaci a root directory jako speciální případ (a i tak bude generování závislostí děs)
    	* asi i nějaký ``make test`` a ``make check`` které otestují, zda je vše nové syntakticky správně a zda jsou nějaké ``broken links``
    	* asi i nastavovat čas změny generovaných ``*.html`` podle času změny ``*.rst`` (asi ne, protože HTML závisí i na okolních adresářích)
    	* ``hard-fail`` pokud je ve zdrojovém adresáři stejnojmenné HTML a ( RST nebo autogenerovaný cíl )
    * Držet strukturu adresářů
    	* a navíc case sensitive
    	* a directory first, files next
    * obrázky a příklady přímo v adresáři, který je používá, nebo někde podobně přirozeně (nevytvářet jednu šílenou galerii vedle, kam se nedá rozumně linkovat)
    * make, make upload (= typické použití)
    * generovat jen co se změnilo (proto make)
    * generovat cesty ``relativní``, čili ``../../index.html`` a podobně (kvůli stažení do libovolného adresáře)
    * stačí překládat ``*.rst``
    * generovat ``breadcumber`` = ``pwd`` menu
    * autogerovat ``last_changed`` a ``RSS``
    * nějak vymyslet, jak správně generovat tags/categories/years/dirs, aby aspoň tags/categories měly i popisky, ideálně celostránkové (ala wikimedia Category) a Tags/Categories měly jednořádkové
    	* možná přez templaty? ono se to pere s adresářovou strukturou ...
    		* možná .dirinfo a .deps ($CATEGORIES, $TAGS ...) a neházet do menu "skryté" soubory a adresáře
    * obrázky v nadpisech, jak z metadat, tak z adresáře a z RST souboru - teda téma, seriál a případné výkřiky
    * upoutávky (perex)
    * Psát průběžně dokumentaci a asi i dokumentaci/reportáž, jak jsem to tvořil
    

    No a chci si to napsat aspoň částečně sám, abych se v tom vyznal a dokázal to následně upravovat.

    Zatím mám makefile, který mi překopíruje struktury ze src/ do dest/, *.rst převede na *.html, vypreparuje metadata jako tagy a tak v build/ (aby to mohl dělat inkrementálně, nikoli celé znova) a prokousávám se https://www.devdungeon.com/content/restructuredtext-rst-tutorial-0 a už mi to začíná dávat smysl.

    Ale zaseknul jsem se u generování indexů pro tagy (a datumy a hlavních indexů), kde se mi to nedaří vymyslet pro make a vypadá to, že ten program rst->html bude muset načíst všechny tagy do nějakých polí/slovníků/... a tahat to z toho - což bude s přibývajícími soubory a adresáři stále větší objem dat (zatím beru jako odhad pro škálování hranici aspoň 1.000 rst (jako deník na 3 roky nebo tak) a 10.000 obrázků).

    (Ono to asi jinak nepůjde, ale stejně pořád přemýšlím, jak to nějak šikovně urovnat - přece jenom to okolo jde rozhodit na 12/24 jader a pak tu mám jedno místo, kde se to uprostřed musí sejít kvůli těm tagům a pak každý program vlastně bude načítat všechny tagy, aby u daného souboru mohl dělat "předchozí" a "následující". Možná to aspoň udělám nějak, aby se to četlo nativně a snadno. )

    Pro jednotlivé "weby" asi budu chtít trochu upravovat, hlavně teda v CSS barevné téma a obrázky do záhlaví/pozadí (chci osobní deník, http://micro-corner.gilhad.cz/ , stránky pro různé hry a tak podobně - a možná časem upravit téma celkově až se mi to, na kterém teď pracuju (ještě není na webu) znelíbí )
    Řešení 1× (Вherzet)
    12.11. 22:28 debian+ | skóre: 27 | blog: analyzy
    Rozbalit Rozbalit vše Re: generátor statických webových stránek - kde se o nem bavit?
    Poznáš príkaz parallel?
    debian.plus@protonmail.com
    13.11. 00:48 samalama
    Rozbalit Rozbalit vše Re: generátor statických webových stránek - kde se o nem bavit?
    @Вherzet - co si ty za trolujuceho curaka?! vsade oznacujes ako riesenie totalne bludy! a hlavne toho retardera, generatora nahodnych slov, debiliana-...
    xkucf03 avatar 13.11. 01:01 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše bhezrel != Вherzet

    Pozor, tohle není skutečný Вherzet ale záškodník se stejným jménem a identifikátorem bhezrel.

    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    13.11. 14:55 samalama
    Rozbalit Rozbalit vše Re: bhezrel != Вherzet
    wut?!?!

    vsetko je jeden a ten isty Вherzet

    https://www.abclinuxu.cz/poradna/linux/show/473935

    https://www.abclinuxu.cz/poradna/linux/show/474176

    https://www.abclinuxu.cz/poradna/linux/show/462428

    https://www.abclinuxu.cz/poradna/linux/show/462315
    xkucf03 avatar 13.11. 15:08 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Re: bhezrel != Вherzet
    Původní (pravý) Bherzet je myslím tenhle: https://www.abclinuxu.cz/lide/bherzet
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    13.11. 16:03 dukre
    Rozbalit Rozbalit vše Re: bhezrel != Вherzet
    https://www.abclinuxu.cz/poradna/linux/show/474176
    Čo sa ti na tom nepozdává? Pokiaľ ti to príde zle, tak odpovedz v danom vlákne.
    14.11. 09:35 samalama
    Rozbalit Rozbalit vše Re: bhezrel != Вherzet
    tak uz vies...?
    13.11. 01:01 dukre
    Rozbalit Rozbalit vše Re: generátor statických webových stránek - kde se o nem bavit?
    Nezáviď a buď tiež aktívnym pomáhajúcim členom komunity ako debian+.
    13.11. 04:47 Gilhad | skóre: 20 | blog: gilhadoviny
    Rozbalit Rozbalit vše Re: generátor statických webových stránek - kde se o nem bavit?
    Znám.

    S řešením to nemá nic společného - nedá se tam bavit o ničem, schopnost spouštět příkazy paralelně má make v sobě taky a navíc je schopný řešit závislosti.

    Prostě "odpověď" totálně na houby a mimo mísu.
    13.11. 10:30 alfonz
    Rozbalit Rozbalit vše Re: generátor statických webových stránek - kde se o nem bavit?
    Také jsem řešil podobný problém pro pripravto nikola podovné nebyly moc prizpůsobitelné a cesty byly/jsou problematické. Skončil jsem u vlastní aplikace nad webpy a docutils (hrozný projekt, sphinx nebyl přizpůsobitelný). Pokud bych to dělal dnes, tak asi JS a markdown a bylo by (většina věcí je tam vyřešena a vcelku dobře).

    Jinak opravdu složité jsou metadata/doplňky a to zpracování. Nakonec používám rst text a do něj píšu meta tag, raw html a podobné obludnosti. Linkuji přímo ze složky "/static/" kde mám libovolnou strukturu a mám několik složek s rst.

    Jinak řeknu to takhle je to hrozně problematické a popravdě chápu, proč spousta těch CMS/static generátorů jsou tak problematické. V jednu chvíli jsem dokonce myslel, že bych si pořídil spíše nějaký HTML editor a psal přímo html a tím bych mohl si ušetřit nějaké problémy, ale ta údržba je horší.
    Heron avatar 13.11. 13:28 Heron | skóre: 53 | blog: root_at_heron | Olomouc
    Rozbalit Rozbalit vše Re: generátor statických webových stránek - kde se o nem bavit?
    Kde se o tom bavit nevím, ale lze se inspirovat u HUGO (Golang), Jekyll (Ruby), nebo Hyde (Python).

    Z historických důvodů používám Jekyll, závislosti na Ruby se chci ale zbavit. HUGO mi přijde dnes asi nejlepší, ale ten projekt opět trochu molochovatí (stejně jako svého času velmi subtilní Gitea). Na druhou stranu template v golangu jsou tak snadné, že si to asi též napíšu sám.

    V pythonu je asi jasnou volbou templatovací systém Jinja2.
    13.11. 14:41 Gilhad | skóre: 20 | blog: gilhadoviny
    Rozbalit Rozbalit vše Re: generátor statických webových stránek - kde se o nem bavit?
    Pelican Jinju používá taky a to téma se mi tam psalo hezky, takže Jinja rozhodně v plánu je, ale až budu mít čím jí nakrmit :)

    (tj. nejdřív potřebuju vyřešit ty tagy a tak, pak teprve začnu nějak výrazněji formátovat výstup)

    Založit nové vláknoNahoru

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

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