RISC OS uitgediept deel 2
met het schepje van Kees Grinwis

Vorige keer zijn we blijven steken bij de Obey-bestanden en hoe dat je die zelf kon maken en ook kon gebruiken, in dit artikel zullen we kijken naar wat andere toepassingen van Obey-bestanden en zullen we nog wat nieuwe handige RISC OS commando's en features onder de loep nemen.

In het vorige artikel heb ik het commando 'Filer_Run' behandeld, dit was één van de commando's die de Filer kunnen besturen, met dit commando werd hetzelfde gedaan als het dubbelklikken op een object. De Filer, de Nederlandse benaming zou Bestandsbeheerder kunnen zijn, heeft echter ook nog een paar andere commando's, het belangrijkste is wel het commando

'Filer_OpenDir'.
Dit commando zorgt ervoor dat de aan de Filer opgegeven map geopend wordt en als een normaal Filer-venster te behandelen is. Wat de syntax van dit commando is kunt u zelf weer d.m.v. het 'Help'- commando opvragen. Voor het gemak geef ik als geheugensteuntje nog even het totale commando dat u in behoort te voeren (bijv. in een Taak-venster:
Help Filer_OpenDir
U krijgt een complete waslijst met alle mogelijkheden, en dat zijn er meer dan bij Filer_Run, over u uitgestrooid. Gelukkig staat het allerbelangrijkste onderaan, namelijk de syntax. Kortgezegd is de naam van de map die we willen openen het belangrijkste.

Als we dus in een map willen openen geven we die als eerste optie aan. Als voorbeeld zal ik me beperken tot de hoofdmap van uw computer (hierbij ga ik er vanuit dat u een harde schijf heeft met de !Boot-map van Acorn)

Filer_Opendir Boot:^
Als alles goed gegaan is ziet u nu de hoofdmap (of root directory) van uw computer.

Maar er is meer mogelijk, lees de syntax maar eens goed door en probeer het commando een zodanig te wijzigen dat de map geopend wordt met kleine symbolen of juist met volledige info, in de behandeling van Filer_Opendir en eventueel andere filer-commando's ga ik er vanuit dat u de help informatie kent of kunt opvragen, zie ook deel 1 van deze cursus. Ook is het handig dat u de Nederlandse RISC OS gebruikt indien u de Engelse taal niet 100% machtig bent, de vertaling is verkrijgbaar bij de softwareservice en via de Tabsoft website.

De overgebleven commando's van de Filer lijken mij op dit moment nog niet erg belangrijk, maar als u er wat interesse in heeft kunt u met het commando

Help Filer
meer informatie opvragen over de Filer-module en de commando's die deze kent, als u over deze commando's hulp opvraagt kunt er wellicht al meer over te weten komen en kijken of u ze al kunt gebruiken.

Als u het voorbeeld van Filer_OpenDir al uitgevoerd hebt en de syntax van het commando al goed bekeken hebt dan weet u ongeveer hoe het commando in elkaar zit en wat het allemaal kan. Met deze kennis kunnen we de Filer van RISC OS geheel naar onze eigen hand inrichten. Het is bijvoorbeeld mogelijk om een Obey-file te maken die zowel Ovation (Pro) of Impression (Style/ Publisher) voor ons opstart en gelijk de map opent die al onze teksten en schrijfsels bevat.

Als we er vanuit gaan dat we Ovation Pro gebruiken en dat deze staat in de map 'Apps:DTP.OvationPro'. Hiernaast weten we dat onze teksten staan in de map 'Apps:DTP.OvationPro.OvnText'.

Met deze kennis kunnen we een Obey-bestand maken dat voor ons Ovation opstart en tegelijkertijd de map met onze teksten opent. Het Obey bestand kan er bijvoorbeeld als volgt uitzien:

Filer_Run Apps:DTP.OvationPro.!OvnPro¿
Filer_OpenDir Apps:DTP.OvationPro.
OvnText -si
Misschien dat u opvalt dat de switch '-si' niet voorkomt in de help - informatie van het commando Filer_OpenDir. Dat klopt, maar het is mogelijk om de switch '-SmallIcons' af te korten tot '-si', alle andere switches kunnen op dezelfde manier afgekort worden - dit zal ik in de toekomst dan ook vrijwel altijd doen.

Als u de padnamen verandert in de paden die u zelf heeft kunt u dit Obey-tje bijvoorbeeld op de desktop plaatsen en op die manier heel snel bij uw teksten komen terwijl Ovation, of Impression, ook nog eens direct opstart. Met Obey bestanden kunnen we echter nog veel meer, zeker als we deze gebruiken in combinatie van andere mogelijkheden die de Filer en RISC OS ons bieden. Ik zal het wat duidelijker proberen te maken aan de hand van een voorbeeldje. Ik zal eerst even wat screenshots laten zien.

De screenshots zien er misschien al wel aardig uit, en de mensen die RISC OS van binnen en van buiten kennen zullen misschien denken is dat alles? Er zullen er daarentegen ook zijn die verbaasd zijn en zich afvragen hoe dit nu allemaal kan.

Allereerst zal ik de inhoud van het !Run bestand tonen. en daarna zal ik proberen uit te leggen wat er gebeurt.

IconSprites <Obey$Dir>.!Sprites
Set Dune$Path <Obey$Dir>.
Filer_Opendir Dune:Bestanden
Het eerste commando zorgt ervoor dat de sprites die in het bestand !Sprites in het WIMP sprite gebied geladen worden, als dit bestand een sprite bevat die dezelfde naam heeft als een willekeurige applicatie dan wordt deze applicatie met die sprite afgebeeld in de filer. Zoals u kunt zien in het eerste plaatje.

Het tweede commando doet iets wat ik tot op heden niet of nauwelijks besproken heb, het stelt een systeem variable in. Meer informatie over dit commando kunt u opvragen via de help-functie van RISC OS. Kortgezegd wordt de eerste variable gevuld met de expressie die er op volgt. Deze waarde wordt echter wel eerste door RISC OS als het ware uitgevoerd. Zo wordt de variable <Obey$Dir> vervangen voor de map waarin het huidige Obey bestand staat.

Naast het feit dat ik hier een nieuw commando gebruik, maak ik ook nog eens gebruik van een speciale waarde binnen RISC OS, namelijk een 'xxx$Path' variabele. Als RISC OS een 'xxx:' tegenkomt dan gaat het in zijn interne lijst met variabelen zoeken of het een variabele kent dat 'xxx$Path' heet. Als RISC OS de variable vindt, dan vervangt deze het 'xxx:'-pad voor de inhoud van de variabele, kan RISC OS de variabele niet vinden dan geeft het een foutmelding terug.

LET OP! Omdat RISC OS altijd de inhoud van de variabele neemt moet het pad wat in de variabele 'xxx$Path' staat altijd eindigen met een punt (.), de <xxx$Dir> variabelen eindigen nooit met een punt.

Zoals oplettende lezers al opgevallen was gebruikte ik bij het voorbeeld van Ovation ook al een pad 'Apps:', sommigen zullen dit al ingesteld hebben, anderen niet. Op zich is het een goede gewoonte om alle applicaties te sorteren op type en deze dan in 1 map te plaatsen. Er kan dan eventueel een pad naar gezet worden, als er consequent van dit pad gebruik gemaakt wordt dan is het verplaatsen van de hele hiërarchie naar een andere harde schijf betrekkelijk gemakkelijk en hoeven verwijzingen niet of nauwelijks aangepast worden.

Als laatste gebruik ik het commando 'Filer_OpenDir Dune:Bestanden', de reden dat ik naar een sub-map verwijs is meer van visuele aard dan dat het strict noodzakelijk is, maar omdat er nog meer bestanden in de applicatie-map !Dune kunnen staan geef ik er de voorkeur aan om naar een sub-map te verwijzen.

Dit was het voor deze keer, een volgende keer ga onder andere de commando's 'SetEval' en 'SetMacro' en hun eigenaardigheden bekijken.

groeten, Kees.