Viikon VALO #216

TiddlyWiki5

TiddlyWiki5 on selaimella käytettävä yhden tiedoston muistiinpanotyökalu.

 TiddlyWiki5 on uudelleen toteutettu versio aiemmin esitellystä TiddlyWikistä. Se on selainpohjaisena yhden sivun sovelluksena (Single Page Application, SPA) toteutettu wiki-tyyppinen muistiinpanotyökalu. Siinä muistiinpanoja ei tarvitse järjestää lineaarisesti vaan yksittäisiä asiasisältöjä, tiddlereitä, voi linkittää vapaasti toisiinsa. Sen versionumero 5 viittaa toteutukseen käytettyihin HTML5-tekniikoihin. TiddlyWiki5 muodostuu yhdestä HTML-tiedostosta ja siihen sisällytetystä Javascript-ohjelmistosta sekä wikin datasisällöstä. Kun tiedosto avataan selaimella, näyttää Javascriptillä toteutettu ohjelmisto käyttöliittymän, jolla TiddlyWikin sisältöä voi selata ja jolla siihen voi muokata uutta sisältöä. Tallennus tapahtuu samaan HTML-tiedostoon ja se on toteutettu selaimesta riippuen muutamalla eri tavalla. Yhden tiedoston sovelluksena TiddlyWiki5 on helppo kuljettaa mukana USB-tikulla tai säilyttää verkossa pilvitallennuspalvelussa.

TiddlyWiki5:n käyttöliittymä koostuu yksittäisiä tiddlereitä näyttävästä alueesta sekä niiden selaamiseen ja muokkaamiseen käytettävästä sivupalkista. Tiddlereiden sisällöt kirjoitetaan oletuksena TiddlyWiki5:n omalla wiki-kielellä, josta löytyvät tyypillisesti käytetyt muotoilut, kuten otsikot, listat, lihavoinnit, kursivoinnit, alleviivaukset, taulukot sekä muita muotoiluja. Wiki-kieli on jonkin verran kehittynyt TiddlyWikin aiemmasta versiosta. Varsinaisten wiki-muotoilujen lisäksi tekstin seassa on mahdollista käyttää TiddlyWikin makroja ja widget-sovelmia, joilla tiddlereihin voi rakentaa yksinkertaisia käyttöliittymiä, kuten välilehtiä ja nappuloita. TiddlyWiki5:n tiddlereiden sisällöt ovat oletuksena wiki-tekstiä, mutta muita vaihtoehtoja ovat esimerkiksi SVG-muotoinen vektorigrafiikka, GIF-, ICO-, JPG- ja PNG-muotoiset kuvat, CSS-tyylit sekä JSON-muotoinen data. TiddlyWiki5 tukee myös sisällön salasanasuojattua kryptausta.

TiddlyWiki5 on monipuolisesti laajennettavissa sen plugin-arkkitehtuurin ansiosta. Lisäosat voivat tuoda TiddlyWiki5-tiedostoon uusia toiminnallisuuksia, kuten uusia sisältötyyppejä, ominaisuuksia wiki-parseriin tai erilaisia makroja ja widgettejä. Uusia lisäosia omaan TiddlyWiki5-tiedostoon voi tuoda joko hiirellä raahaamalla jostain toisesta TiddlyWiki5-tiedostosta tai kirjoittamalla niitä itse. Lisäosat muodostuvat käytännössä yhdestä tai useammasta tiddleristä, joissa voi olla esimerkiksi Javascript-ohjelmakoodia tai muita määrittelyitä. Esimerkkejä hyödyllisistä lisäosista ovat esimerkiksi KaTeX-lisäosa LaTeX-kielellä kirjoitettujen matemaattisten kaavojen näyttämiseen, Markdown-lisäosa, joka lisää Markdown-merkintäkielen vaihtoehtoiseksi tavaksi kirjoittaa tiddlereiden sisältöä, sekä highlight-lisäosa, jolla tiddlereihin kirjoitettuihin ohjelmakoodia sisältäviin osioihin saadaan syntaksin korostus.

Koska yhden tiedoston sovelluksessa sekä itse ohjelma että sillä luotu sisältö ovat samassa HTML-tiedostossa, pitää TiddlyWiki5:n pystyä tallentamaan itsensä jotenkin. Koska selaimessa suoritettavalla Javascript-ohjelmalla ei ole oikeuksia kirjoittaa käyttäjän tietokoneen levylle, on TiddlyWikiin täytynyt keksiä muita tapoja hoitaa tallennus. Firefox-selainta käytettäessä sujuvin tapa on käyttää selaimeen ladattavaa TiddlyFox-lisäosaa. Tällöin TiddlyWiki5 pyytää aina tallennusta tehdessään lisäosaa hoitamaan varsinaisen levylle kirjoittamisen. Muilla HTML5:ttä tukevilla selaimilla tallennus tapahtuu siten, että tallennuskuvake on todellisuudessa latauslinkki, jolla käyttäjä lataa itselleen ohjelman generoiman uuden version HTML-tiedostosta. Selaimesta ja sen asetuksista riippuen joko käyttäjä joutuu itse valitsemaan tallennettavan tiedoston paikan ja nimen tai tiedosto tallennetaan automaattisesti käyttäjän oman kotihakemiston "Ladatut"-kansioon (tai "Downloads"). Kolmantena vaihtoehtona on käyttää TiddlyWiki5:ttä Node.js-ohjelman kautta. Tällöin Node.js:ään asennettu tiddlywiki-moduli toimii käyttäjän tietokoneella paikallisena palvelimena, jonka tarjoamaa sivua käyttäjä voi muokata. Neljäs vaihtoehto on käyttää TiddlyDesktop-sovellusta, joka on node-webkit-pohjainen sovellus TiddlyWiki5:n käyttöön.

Lisäksi on tarjolla palveluita, kuten Tiddlyspot, jotka tarjoavat muokattavan TiddlyWikin verkossa.

Kotisivu
http://tiddlywiki.com
Lähdekoodi
https://github.com/Jermolene/TiddlyWiki5
TiddlyDesktop
https://github.com/Jermolene/TiddlyDesktop
Lisenssi
BSD (3 kohdan BSD-lisenssi)
Toimii seuraavilla alustoilla
Selaimet
Asennus
TiddlyWiki on ladattavissa sen kotisivulta.
Videot
TiddlyWiki5:n esittely
Esittely TiddlyDesktopin käytöstä

Teksti: Pesasa
Kuvakaappaukset: Pesasa