apoikola / avoindata-opaskirja

Julkinen data oppaan versiot ja käännökset

Home Page:http://www.julkinendata.fi/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Kirjan HTML-versio nettiin?

pe3 opened this issue · comments

Olisi kiva saada julkaisusta HRI 2v -tyylinen linkitettävä HTML-versio nettiin. Pitäiskö itse asiassa koko julkinendata.fi siirtää tänne GitHubiin?

GitHubissa branchin gh-pages-nimellä on "maaginen sivuvaikutus". Bränchi näkyy github.io-osoitteessa sivustona. Ohje.

Joo pitäisi siirtää... ehdinkin kommentoida tätä jo väärään paikkaan: #9

Kakkien md-filujen latominen yhteen ja kääntäminen HTML-filuksi riittänee gh-sivujen tekemiseen (kuten @pe3 ehdotti). Muokkaamalla pandocin templaatti-CSS ja -HTML filuja voisi varmana mukaan sekoittaa helposti esim. jonkun gh-pages:in tarjoaman templaatin.

Parempi - ja työläämpi - ratkaisu olisi Jekyllin valjastaminen hommiin, tuloksena saisi yhden pötkösivun sijaan oikean sivurakenteen ristiinlinkkeineen.

Branchejä vielä syvällisemmin ymmärtämättä onnistuin kloonaamaan gh-pages haaran ja läiskäsemään sinne julkinendata.fi:stä "save page" -toiminnolla varastetun sisällön... näyttää toimivan http://apoikola.github.io/avoindata-opaskirja/

nyt pitäisi vain puukottaa tuota staattista sisältöä niin, että johonkin saisi laitettua tuon html:ksi pandokatun version kirjasta.

Ideoita jatkoon?

heh olen aika ylpeä, sain tehtyä hienon "kirja githubissa ikonin" etusivulle :)

Hienoa, homma etenee vauhdikkaasti!

Tunti hurahti leikkiessä, mutta jos ketään kiinnostaa kokeilla Jekyll-pohjaista toteutusta, niin löytyy bränchistä gh-pages-jekyll. Perustuu Kippt-poikien uuteen MIT-lisenssöityyn jekyll-incorporated-teemaan. Eli jos Jekyll löytyy koneelta, tuohon bränchiin ja

jekyll serve

sen jälkeen riemua tiedossa osoitteet localhost:4000

ping @pe3

en saanut pelittämään, Jekyll serve tuuppasi tällaisen errorin (Jekyll toimii kyllä mun oman github -sivun kansiossa):

apoikol@litukka:~/Documents/Github/avoindata-opaskirja-pages-jekyll$ jekyll serve
Configuration file: /home/apoikol/Documents/Github/avoindata-opaskirja-pages-jekyll/_config.yml
/home/apoikol/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require': cannot load such file -- jekyll-assets (LoadError)

Meanwhile, laittelin tänne "Tekijät" ja "Sisällysluettelo" -välilehdet ihan manuaalisesti kovakoodaamalla http://apoikola.github.io/avoindata-opaskirja/

Jos oikein olen Jekyllin ymmärtänyt, niin se siis ilmeisesti julkaisee markdown -dokkareita html-sivuina blogityyliin, vai mikä siinä on ideana?

Ilmeisesti jekyll-assets -gem puuttuu, kokeilepa suorittaa seuraava samaisessa kansiossa:

sudo bundle install

Tämä asentaa kaikki Gemfile-filussa mainitut rippuvuudet. Jos Bundleria ei löydy systeemistä, niin sitten

sudo apt-get install bundler

Jos alla on siis Ubuntu.

Joo, juurikin tuo on ideana: Jekyll on staattisen HTML-blogin tekemiseen tarkoitettu härpäke, joka pyörittää myös gh-pageja (oli blogi eli ei). Innostuin kokeilemaan josko Jekyll toimisi ajatuksella, että "postauksien" sijaan näytettävät yksiköt olisivatkin kirjan lukuja. Jekyll tuo mukanaan kaikenlaisia dynaamisia herkkuja (sisällysluettelut, sivutus, yms), mutta myös säätöä...

Tässä olisi nyt tlapäinen live-esimerkki http://jlehtoma.github.io/. Mukana siis vaan johdanto + 2 lukua, proof-of-concept.

nice! Sain itsekin toimimaan, kun yksitellen asensin jekyll-assets ja pari muuta gemiä. Bundleria en saanut pelittämään.

 sudo apt-get install bundler

Reading package lists... Done
Building dependency tree       
Reading state information... Done
E: Unable to locate package bundler

kattelen nyt vähän, että ymmärränkö tosta Jekyllistä mitään...

mun piti branchata @jlehtoma gh-pages-jekyll uuteen haaraan ja tehdä kokeiluja vanhan leiskan ja Jekyllin yhdistämisessä, mutta Githubbarin taitoni eivät riittäneet, unohdin checkoutata uuteen branchiin ja niinpä commitoin nyt läjän muutoksia sinne https://github.com/apoikola/avoindata-opaskirja/tree/gh-pages-jekyll

No vanhat ovat mukana uudelleen nimettyinä _old tms. Jotain css-tiedostoja ehkä twiikkailin. Yhdellä postauksella kokeilin toisenlaista leiskaa: http://localhost:4000/2013/10/21/00-organisaation-nakokulmia-avoimuuteen/

En oikein osannut liquid tageja ja muuta hienoa käyttää, joten siksi html koodi vähän sotkuista.

Johtopäätökseni on kuitenkin, että Jekyllointi voisi olla ihan tehtävissä, mutta vaatii kyllä säätöä jonkin verran. Jos oikein olen ymmärtänyt, niin silloin pitäisi laittaa originaali markdownit _posts hakemistoon https://github.com/apoikola/avoindata-opaskirja/tree/gh-pages-jekyll/_posts sopivalla tavalla nimettynä.

Tiedoston nimeen on nähtävästi pakko laittaa päivämäärä mukaan, vaikka sitä ei käyttäisikään (urlin saa muokattua haluamakseen ja päivämäärää ei ole pakko näyttää). En keksinyt, miten Jekyllillä saa tehtyä Markdownista alasivuja (vrt. Wordpressin alasivut)? Nyt tein kirja.html ja tekijat.html -alasivut ihan hötömölönä, mutta luulisi, että joku tapa olisi tehdä myös sivuja markdown-dokkareista.

Jätetään nyt muhimaan, kertokaa, jos saatte kokeiltua tuota viritelmääni.

Branchasin omat kokeilut haaraan gh-pages-jekyll-inc, eli @apoikola :n kokeilut on edelleen gh-pages-jekyllissä. Pari yleistä kommenttia:

  1. Jos Jekylliä käytetään, kannattanee siivota bränchi (sekä tiedosto että git-historia) jossain välissä
  2. Blogi-kone kun on, niin Jekyll tosiaan vaatii nuo päivämäärät postauksen (luvun) nimessä. Ei kovin kätevää, mutta tämän muuttaminen vaatisi itse Jekyllin häkkäämistä, eikä silti toimisi GH:n päässä. Tajusi just, että tämä saattaa itse asiassa olla vähän turhaa. Jekyllin voi virittää tekemään md-filuista ihan tavallisia alasivuja.
  3. Jos sivut halua synkata varsinaisen kirjan tekstin kanssa, niin täytyy väsätä joku skripti, joka synkkaa _posts-kansion md-sisällön kirjan lukujen kanssa.
  1. jep :)
  2. juuri tuota sivujen tekemistä yritin aiemmin etsiä, mutta en jaksanut selvästikään lukea dokumentaatiota riittävän tarkkaan.
  3. mitään reaaliaikaisesti jatkuvia uusia muutoksia ei ole odotettavissa, mutta käytännössä tietty joku selkeä ja hallittu systeemi kandee olla... Apps-kisaan ajattelin, että varsinainen kontribuutio voisi olla nimenomaan showcase tällaisesta "kirja githubissa" toimintamallista. Yksi referenssi, jota voi tsekkailla on tämä: https://github.com/okfn/opendatahandbook ... käyttää Restructured Textiä Markdownin sijaa ja jotain Sphinxiä HTML -kääntämiseen (Markdown -> Jekyll olisi nähdäkseni elegantimpi)

mitäs @pe3 tuumaa?

muutin nyt kirjan luvut flattiin tiedostorakenteeseen ja gh-pages-jekyll branchissa laitoin niihin Jekyllin frontmatterit. Tällä tavalla sain ne listattua automaattisesti etusivulle "sisällysluettelona".

Joidenkin lukujen kohdalla Jekyll heitti muunnoksen yhteydessä herjaa nimesin ne nyt toistaiseksi .markdowneitoimi

Täytyy selvitellä tarkemmin, mistä on kysymys ja päättää, etttä aletaanko Jekyllin vaatimia Markdownmuutoksia ylläpitämään missä branchissa?

jekyll --watch serve on parhautta

Hoip. En oo kerenny käpistelemään, mutta hienoa, että on otettu Jekyll käyttöön. Jos kerran jo Jekyll pyörii lokaalisti, niin hyvin menee!