Re: Väriä komentoihin?

[vastaus aiempaan viestiin]

Kirjoittaja: Kimmo Vehkalahti
Sähköposti:    -
Päiväys: 24.8.2002 11:40

Matti Pesola kirjoitti:
>Voisikohan survoon ohjelmoida sellaisen komennon/
>parametrinvärittäjän, joka kaikille ohjelmointia
>harrastaneille on tekstieditoreista tuttu?

Mielenkiintoinen kysymys (muistaakseni Michael Miettinen ehdotti
joskus jotain samantapaista). Juttu saattaa vaikuttaa näennäisesti
yksinkertaiselta, mutta sen toteuttaminen kattavasti Survon
yhteydessä olisi aika hankalaa. En toisaalta usko että Survon
käyttäjiä tällainen automaattiväritys miellyttäisikään; Survossa kun
voi itse värittää ja kommentoida vapaasti juuri haluamiaan asioita.

Monissa tekstieditoreissa yleisesti käytetty syntaksiväritys on sen
sijaan helppo toteuttaa, koska ohjelmointikielten yms. syntaksit
ovat hyvin tarkkaan määriteltyjä ja rajattuja. Näin tietää heti,
että jotain on pielessä tai puuttuu, jos kirjoitettu sana jää
värittämättä. Sama koskee komentokielisiä ohjelmia, joissa
kirjoitetaan yhtä komentoa kerrallaan johonkin rajattuun tilaan.
Ohjelman on helppo tarkistaa sitä mukaa, onko kyseinen komento
syntaksin mukainen.

Survolle ominainen editoriaalinen käyttöliittymä tarjoaa paljon
avarammat tilat ja monipuolisemmat mahdollisuudet keskusteluun
ohjelman kanssa. Editoriaalisen käyttöliittymän sydän on
toimituskenttä, joka on erittäin monikäyttöinen ja yleinen
"pelitila". Sehän voi sisältää sekä itse kirjoitettua tekstiä,
aktivoitavia toimintoja että näiden kirjoittamia tuloksia.

Survon käyttö onkin pohjimmiltaan tekstinkäsittelyä. Se eroaa
kuitenkin merkittävästi ohjelmointikielten, tilastollisten
ohjelmien (SAS ym.) proseduurien yms. kirjoittamisesta. Säännöt on
Survossakin, mutta ei niin tiukat kuin muissa ohjelmissa.
Survon toiminnoilla on kyllä tietyt parametrinsa, mutta niitä
täydentäviä täsmennystietoja voi esiintyä ympäri toimituskenttää,
tiettyjen hierarkisten sääntöjen mukaisesti. Osa täsmennyksistä
(esim. IND, CASES, SELECT) on yhteisiä monille toiminnoille.

Niin kauan kuin jotain komentoa ei ole aktivoitu, se on vain
tekstiä muun tekstin joukossa. Kun komento aktivoidaan, se saa
hetkeksi erikoisaseman. Vasta silloin voidaan tehdä kattavat
syntaksitarkistukset.

Teknisesti Survon toiminnot on hajautettu sen editorille sekä
sadoille ohjelmamoduleille ja sukroille. Editori vastaa useimmissa
toiminnoissa vain siitä että työ siirtyy oikealle modulille tai
sukrolle. Nämä vastaavat kukin omista syntaksitarkistuksistaan.
Niinpä kattavaa syntaksiväritystä ei nähdäkseni voi saada aikaan.

Ajatellaan esimerkkinä tilannetta, jossa käyttäjä on kirjoittanut
ja aktivoinut komennon

FILE LODA KUNNAS,EDN+2

Survon editori ei tunnista toimintoa, ja antaa virheilmoituksen
"Operation not available!"

Jos syntaksivärityksen toteuttaisi editorin tasolla, niin komento
(nyt äskeinen "LODA"-kirjoitusvirhe korjattuna)

FILE LOAD KUNNAS,EDN+2

tulisi värjättyä (ainakin tunnistettujen sanojen "FILE LOAD" osalta).
Kuitenkin, kun käyttäjä aktivoisi komennon, se ei toimisikaan.
(Se olisi todennäköisesti aloittelijalle vielä pahempi pettymys!)

FILE LOAD ilmoittaisi "Line 'EDN+2' not found!". Ja edelleen, jos
tämä korjattaisiin muotoon 'END+2', saataisiin kenties ilmoitus
olemattomasta aineistosta: "Cannot open Survo data file KUNNAS.SVO!"
Lisää virhetilanteita saattaisivat aiheuttaa täsmennykset, esim.
"väärään paikkaan" jäänyt IND-täsmennys, joka liittyy aivan eri
aineistoon (vaikka olisikin IND:in syntaksin mukaan oikein) jne.

Mielestäni jokainen em. virheilmoituksista antaa hyvän vinkin mistä
on kysymys (tunnistamaton toiminto, tulostusriviä ei löydy, aineistoa
ei pystytä avaamaan). Näiden perusteella käyttäjän tulisi voida
itsekin havaita mistä on kysymys, ilman että opettaja käy erikseen
korjaamassa kirjoitusvirheitä.

Kun harjoitellaan FILE LOAD:in käyttöä, niin voisi olla hyvä laittaa
kalvolle tms. näkyville tarvittavan komennon kirjoitusasu. Lisäksi
on hyvä opettaa käyttäjät etsimään tietoa kyselysysteemistä. Tässäkin
mm. hiiren oikean napin kaksoisklikkaus sanan FILE kohdalla auttaa.
Vaihtoehtoisesti tietoa voi lähteä hakemaan sanastosta (klikkaamalla
START ja valitsemalla kohdan 5: Survon avainsanat hypertekstinä).

- Kimmo

Vastaukset:
[ei vastauksia]

Survo-keskustelupalstan (2001-2013) viestit arkistoitiin aika ajoin sukrolla, joka automaattisesti rakensi viesteistä (yli 1600 kpl) HTML-muotoisen sivukokonaisuuden. Vuoden 2013 alusta Survo-keskustelua on jatkettu entistäkin aktiivisemmin osoitteessa forum.survo.fi. Tervetuloa mukaan!

Etusivu  |  Keskustelu
Copyright © Survo Systems 2001-2013. All rights reserved.
Updated 2013-06-15.