Applicaties voor XFree86/OS2

>> Xfree86/OS2 Index<<



Een overzicht van naar OS/2 geporteerde X applicaties vindt u op LEO. U kunt doorzoeken HOBBES op XFree86/OS2. Hoewel de server al weer een paar jaar oud is is de softwarelijst nog beperkt. Maar hier kan wel eens verandering in komen. De nu op OS2PORTS.com te vinden UnixOS2.org heeft een indrukwekkende verzameling software op het randgebied tussen OS/2 en X.

Er bestaan ook CD's met actuele OS/2 GNU en Xfree86/OS2 software. Ze zijn o.a. bij Mensys en BMT-Micro te verkrijgen.

Op de OS2 Bookmarks pagina staan links naar sites van ontwikkelaars.

EMX (emulate UNIX)

> Top <

De emx 0.9d (gcc, g++, gdb, libg++ ...) runtime bibliotheek van Eberhard Mattes maakt het mogelijk om voor UNIX geschreven C programma's naar OS/2 te porteren. Deze dll bestanden leveren de klassieke GNU C bibliotheken. Voor de OS/2 situatie aangepaste bronbestanden kunnen met GNU C compiler voor OS/2 tot 32 bits uitvoerbare bestanden worden gecompileerd.

De meeste ports zijn open source programma's. OS/2 ports van GNU software vallen automatisch onder de GPL licentie van de Free Software Foundation. Ze worden met hun bronbestanden gedistribueerd. Op LEO staat aardig wat GNU software voor OS/2. Het gaat om klassiekers voor encryptie, compressie,conversie, editing (emacs) en software ontwikkeling (perl, emx+gcc). Deze werken in tekstmodus. LEO heeft een aparte sectie voor de grafische XFree86 applications for OS/2.

Het is beslist geen zielige emulatie. Het gaat om snelle 16 en 32 bits OS/2 software die zich aan alle regels m.b.t. de OS/2 multitasking houden. Meer info (m.n. voor ontwikkelaars): Emx Info Page.

xinitrc

> Top <

De eerste applicaties worden via het Rexxscript \XFree86\lib\X11\xinit\xinitrc.cmd geladen.

Een Rexx script begint altijd met commentaartekens (/* commentaar */). OS/2 opdrachten staan tussen enkelvoudige aanhalingstekens.

/* OS/2 REXX */
/* $XFree86: xc/programs/xinit/xinitrc.cmd,v 3.5 1997/01/27 08:26:14 dawes Exp $ */
'@echo off'
env = 'OS2ENVIRONMENT'
x11root = VALUE('X11ROOT',,env)
IF x11root = '' THEN DO
SAY "The environment variable X11ROOT is not set. XFree86/OS2 won't run without it."
EXIT
END
home = VALUE('HOME',,env)
IF home = '' THEN home = x11root


userresources = home'\.Xresources'
usermodmap = home'\.Xmodmap'
sysresources = x11root'\XFree86\lib\X11\xinit\.Xresources'
sysmodmap = x11root'\XFree86\lib\X11\xinit\.Xmodmap'
xbitmapdir = x11root'\XFree86\include\X11\bitmaps'
manpath = VALUE('MANPATH',,env)


/* merge in defaults */
IF exists(sysresources) THEN
'xrdb -merge 'sysresources


IF exists(sysmodmap) THEN
'xmodmap 'sysmodmap


IF exists(userresources) THEN
'xrdb -merge 'userresources


IF exists(usermodmap) THEN
'xmodmap 'usermodmap


/* start some nice :-) test programs */
'xsetroot -bitmap 'xbitmapdir'\xos2'
/* also try out the following ones:
* 'xsetroot -bitmap 'xbitmapdir'\xfree1'
* 'xsetroot -bitmap 'xbitmapdir'\xfree2'
*/


/****** WARNING! *********
* Below some programs are started minimized, some are started detached.
* In general, those that spawn other shells are minimized, others may be
* detached. You might be tempted to run the xterm's as well as detached.
* This works, but leaves you with an independent xterm/cmd pair, when the
* server shuts down, which you can only see in watchcat, not the process list.
* If you start and stop x11 multiple times, this will let you run out of
* PTYs, and will lead to a large number of background sessions.
*/
'xhost +zolder'
/* 'detach xclock -update 1 -geometry 100x100-1+1' */
'start/min/n "Login Xterm" xterm -sb -geometry 80x25+0+0 -name login'
IF manpath \= '' THEN
'detach xman -geometry 100x100-105+1'
/* 'startx/min/n "Xterm 1" xterm -sb -geometry 80x50+494+51' */
/* 'startx/min/n "Xterm 2" xterm -sb -geometry 80x20+494-0' */
'twm'


EXIT


exists:
'DIR "'arg(1)'" >nul 2>&1'
if rc = 0 THEN RETURN 1
RETURN 0

Window Manager

> Top <

De Window Manager (WM) van X is voor wat Presentation Manager voor OS/2 is. Hij bepaalt het gedrag van de vensters in de grafische omgeving.

XFree86/OS2 gebruikt standaard de Tab Window Manager (Twm). Dit is een kleine, snelle Window Manager die weinig systeemgeheugen gebruikt.

Mooiere Window Manager zijn Afterstep, WindowMaker (Russian/2 - Xfree86: WindowMaker) en Enlightenment. Enlightenment wordt voor Gnome/2 aanbevolen, maar gebruikt heel veel RAM.

De inhoud van de vensters wordt door de programma's bepaald. Onder X hoeven deze niet op dezelfde computer te draaien. Als ik meer functionaliteit wil draai er daarom wel eens kfm (onderdeel van de K Window Manager)

Het PowerUsers BBS geeft een indrukwekkend overzicht van de naar OS/2 geporteerde Window Managers.

Twm is in xman gedocumenteerd. Lees vooral de sectie Description. Gek genoeg kon ik de betekenis van de Tab niet achterhalen.

Als u met de linker muisknop op een lege plaats op de Twm desktop klikt wordt het Twm menu afgebeeld (afbeelding rechts).

Door de muis met de linker muisknop ingedrukt omlaag te bewegen kunt u een actie selecteren (hier Raise). Laat u de muisknop los, dan verandert de cursor in een zwarte stip, doodshoofd of ander teken. Deze "actie cursor" laat u op een van de vensters los. Wilt u achteraf liever geen actie, dan klikt u op het lege plek op de desktop.

Iconify: Een venster tot pictogram verkleinen. Dit kan ook door op de ronde knop in de linker bovenhoek van de titelbalk van het venster te klikken

Resize: De venstergrootte aanpassen. Dit kan ook door op het icon in de rechter bovenhoek van de titelbalk te klikken U moet tijdens een rondtrekkende beweging de linker muisknop ingedrukt houden totdat u de venstervorm hebt die u wenst.

Tijdens het opkomen van een nieuwe applicatie volgt u dezelfde procedure. Handig is op de rechter muisknop te klikken. Dit voorkomt dat de onderrand van het venster buiten beeld verdwijnt.

Move: het venster verplaatsen. Een alternatief is om met de ALT toets ingedrukt het venster te verslepen (geen zichtbare titelbalk nodig).

Raise: het venster op de voorgrond plaatsen. Hiermee vangt u tevens de focus.

Lower: het venster naar de achtergrond verplaatsen.

Focus: Plaatst de focus van het toetsenbord op het betreffende scherm. Vaak is het plaatsen van de muisaanwijzer in het scherm al voldoende.

Unfocus: Plaatst de focus van het toetsenbord uit het betreffende scherm.

Show Iconmgr: Toont de TWM iconmanager, een soort taakoverzicht. Hiermee kunt u venster afwisselend tonen en verstoppen.

Hide Iconmgr: Verstopt de TWM iconmanager.

Kill: Last resort methode van afsluiten. Sluit de X applicatie in zijn geheel af. De applicatie krijgt geen kans u te vragen nog iets op te slaan. Gebruik daarom delete.

Delete: Sluit een venster (Alt-F4 onder PMshell). De applicatie krijgt de kans om u te vragen of u het document wilt opslaan. Een applicatie met meerder vensters zou niet mogen verdwijnen. Probeer het maar eens uit door een tweede xman venster te openen.

De Window Manager wordt d.m.v. het rexxscript \XFree86\lib\X11\xinit\xinitrc.cmd geladen.

xclock zorgt regelmatig voor een hoge cpu-use. Hij is te killen met watchcat. U kunt hem ook niet opstarten door de volgende regel in het \XFree86\lib\X11\xinit\xinitrc.cmd script te wissen of tussen commentaarregels te zetten:

/* 'detach xclock -update 1 -geometry 100x100-1+1' */

Knews

> Top <

Karls threaded newsreader voor X is een prima threaded nieuwslezer. De zoekfunctie is uitstekend. Het is echter geen OLR. U kunt hem het best gebruiken met een eigen nieuwserver (of een kabelmodem) gebruiken.

> Top <