Rst2HTML instellingen

Oorspronkelijk konden de instellingen van de applicatie alleen maar van buitenaf worden onderhouden. Omdat een aantal settings aangepast kunnen worden zonder dat er een server restart voor nodig is heb ik het mogelijk gemaakt om ze binnen de webinterface te kunnen laden, aanpassen en terugschrijven en zo een soort van multi-site support te hebben.

Dat betekent dat je van site waarmee je bezig bent kunt wisselen terwijl de applicatie te onderbreken. Omdat je kunt zien voor welke site er settings geladen zijn weet je altijd waarmee je bezig bent.

Hier is een voorbeeld van geladen instellingen:

loaded settings

Er is geen vaste volgorde waarin de instellingen getoond worden, dat komt doordat niet altijd alle settings gebruikt worden en dat beïnvloedt de volgorde. De volgende instellingen zijn mogelijk:

  • url: het webadres waarlangs de root van de mirror site bereikt wordt in de browser (moet ingeregeld worden in het hosts bestand en de server configuratie op de locale machine)

  • css: één of meer namen van css bestanden om op te nemen in de resultaat HTML. Kan een abslolute locatie zijn of relatief ten opzichte van het adres in de url setting. Moet ofwel beginnen met http ofwel met `url + `

  • wid: breedte van het tekstveld in units (tekens?)

  • hig: hoogte van het tekstveld in units (tekens?)

Deze vier instellingen zijn verplicht. Of de applicatie niet zou werken zonder url weet ik eerlijk gezegd niet zeker maar css is nodig om de resultaat HTML goed te kunnen weergeven. wid en hig waren oorspronkelijk bedoeld om per site andere afmetingen voor het tekstveld te kunnen maken maar dit heb ik vernaggeld doordat ik voor de syntax highlighting standaard afmetingen nodig had - elke waarde geeft nu hetzelfde resultaat.

Verder hebben we nog wat settings die je mag weglaten:

  • lang: taal voor de knoppen en meldingsteksten (momenteel zijn "en" of "nl" mogelijk en als je deze setting weglaat wordt "en" gebruikt)

  • seflinks: 0 of 1, geeft aan of hyperlinks met .html kunnen eindigen of niet (sef staat voor *search engine friendly"; als je dit niet opgeeft wordt "0" gebruikt)

  • starthead: extra regels om direct na het <head> element in de resultaat pagina's op te nemen (letterlijke HTML dus een prachtig veiligheidsrisico als je dit daadwerkelijk over het web draaien zou)

  • endhead`: extra regels om direct vóór het </head> element in de resultaat pagina's op te nemen

De laatste twee settings heb ik toegevoegd om het mogelijk maken extra metadata of javascript toe te voegen dat op elke pagina toegevoegd moet worden. Dit wordt alleen maar toegevoegd in de source die naar de mirror site gekopieerd wordt.