****************************************************************************
*                                                                          *
* Chelp V1.31 by Robert Wahlström, Mathias Widman         92-Sept-17       *
*                                                                          *
* Copyright (C) 1992 by R Wahlström, M Widman. All rights reserved.        *
*                                                                          *
* Search for functions in autodocs and structs & defines in c-includefiles *
*                                                                          *
* Written in Lattice C 5.10b with CygnusED Pro and CHELP on Amiga 3000.    *
*                                                                          *
*  Robert Wahlström                                                        *
*  Enehagsg 197                                                            *
*  S-441 57  ALINGSÅS   SWEDEN                                             *
*                                                                          *
*  Usenet:  d0robert@dtek.chalmers.se                                      *
*  Fidonet: Robert Wahlstrom@2:203/316                                     *
*                                                                          *
*                                                                          *
*  Mathias Widman                                                          *
*  Tegelbruksg 77                                                          *
*  S-441 56 ALINGSÅS    SWEDEN                                             *
*                                                                          *
*  Usenet:  d0omega@dtek.chalmers.se                                       *
*  Fidonet: Mathias Widman@2:203/316                                       *
*                                                                          *
*  Support BBS:  UTILITYBASE  +46-322-17877  (14.4k HST)  2:203/316        *
*                                                                          *
****************************************************************************
$VER: Chelp.doc  V1.31 (92-Sep-17)   by R Wahlström, Mathias Widman 1992


Chelp är Shareware, och får spridas i icke kommersiellt syfte (alltså
kopiera, sprid det och använd det, men tjäna inte pengar på det).
Progammerarna tar inget ansvar för felaktigheter som programmet skapar eller
som skapas av programmet på något sätt. Du kör programmet på egen risk. Vi
har dock gjort allt för att det skall fungera så säkert som det bara går.
Vi har lagt lång tid på tester, men om några buggar (felaktigheter ändå
skulle finnas meddela gärna oss).

*** REGISTRERING ***
   
Om du finner Chelp användbart, Registrera dig som användare genom att skicka
in 100 SEK till:

Chelp
Robert Wahlstöm

PG  641 57 17-5


1 VAD ÄR CHELP?
  =============
 
Chelp är ett program för att göra livet lättare för programmerare. Alla vet
hur jobbigt det är att slå i RKRM Includes & autodocs när man vill se
efter vad en funktion gör/ser ut eller vad den där strukturen innehåller.
Med hjälp av chelp kan man få den informationen direkt på datorn istället. 

ex. Hur ser Gadget strukturen ut?
    Skriv Chelp gadget   så kommer allt upp i cli fönstret.

    RemoveAppIcon hur såg den ut nu igen?
    Skriv Chelp removeappicon  - ger allt om RemoveAppIcon som finns i autodocs

    SELECTED var finns den definerad?
    Skriv Chelp SELECTED  


2 VAD BEHÖVS?
  ===========

Om man vill söka i autodocs så är det en fördel att ha dessa (programmet
fungerar även bra utan, men då missar man en del av programmets fördelar.)
Om du inte har autodocs på datorn och vill ha dessa så kan dessa beställas
från CATS (Commodore Applications and Technical Support) för en mindre
summa. Kan troligen köpas genom Svenska Commodore också.

C-Includefiler (okompakterade) som du fick med din kompilator.

Systemkrav: Fungerar på alla amigor med hårddisk. Chelp kräver Kickstart
2.04 (release v37). För de som inte ännu har kickstart 2.0 så finns en
'mini' chelp som fungerar på alla amigor. Läs om den i sw_mini.doc.

Adress CATS:    CATS-Information
                1200 Wilson Drive
                West Chester, PA 19380-4231


3 Installation
  ============


Starta Chelp från Workbench genom att dubbelklicka på Chelpikonen, eller
genom att skriva chelp -i i CLI.


Du får då en requester om att s:chelp.cfg ej finns. Välj default i så fall.

    
I fältet Path to .doc ange pathen till var dina autodocsfiler finns. Om
fältet är skuggat tryck på rutan efter fältet. Om du ej har autodocs-
filer låt skuggningen vara kvar, eftersom programmet då slipper söka
efter dessa.

ex work:lc/autodocs

I fältet Path to .h ange pathen till dina includefiler. Samma saker 
enligt ovan angående skuggning av fältet.

ex work:lc/compiler_headers

OBS!! Du måste ange pathen till de icke kompakterade includefilerna,
inte till de kompakterade som man normalt har i INCLUDE: 


I fältet Path to .ref anger du var referensfilerna som byggs upp av chelp
ska lagras. Ex RAM: eller s:. Använder du RAM: måste du skapa om
referensfilerna efter varje ombootning. 

Tryck på SAVE.


För att skapa referensfilerna som chelp behöver, skriv Chelp -b från CLI
eller tryck på BUILD-gadgeten om du har startat chelp från Workbench 
eller med Chelp -i. Detta tar några minuter.



4 Starta från CLI
  ===============

Från CLI skriver du: Chelp [Flag] [Keyword] [Subheader]

Chelp -b/B          - Bygger referensfiler. Du måste göra detta om du
                    ändrar pathen till include/autodocs, eller får nya
                    include/referensfiler. Vi rekommenderar att du kör
                    Chelp -b varje gång du får en ny version av Chelp.

Chelp -l <keyword>  - Listar alla funktioner/strukturer som börjar på
                    keyword.


Chelp [keyword] [subheader]

                    - Listar alla funktioner/strukturer/definitioner som
                    matchar [keyword].

              ex:   Chelp addappicon - ger dig information om funktionen
                    AddAppIcon

              ex:   Chelp window - ger dig info om structuren Window

              ex:   Chelp GA_ToggleSelect     

                    Om keyword slutar på * eller + så får man alla
                    funk/strukt som börjar på keyword Se wildcards för
                    mer information.

              ex:   chelp exec - visar hela exec.h includefilen

              ex:   Chelp create* - ger dig info om alla funk/strukt som
                    börjar på create 

                    Om 'subheader' finns visas bara de stycken som har
                    rubriken subheader.

              ex:   Chelp addappicon name - ger texten som finns i stycket
                    NAME

                    NAME                                                                       
                        AddAppIcon - add an icon to workbench's list of 
                        appicons.

              ex:   Chelp Create* synopsis - ger dig inforamation om allt som
                    finns under stycket synopsis i alla funktioner som
                    börjar på create.   

Chelp -c [keyword]  Samma som CHelp [keyword] förutom att små och stora
                    bokstäver inte är samma.

              ex:   Chelp -c Open - hittar Open men inte open
        
              ex:   Chelp -c open* - hittar alla som börjar på open, men inte
                    de som börjar på Open 

Chelp -d [keyword] [subheader]

                    Söker enbart i autodocs

Chelp -h [keyword]  Söker enbart i includefilerna.

Chelp -i            Se Intuition interface.

Chelp -s            Startar igång chelp i bakgrunden. Chelp tar emot arexx-
                    kommandon och man kan hotkeya fram intuitionfönstret
                    (samma som man får genom chelp -i) 


5 Starta från Workbench
  =====================

  Chelp startas från Workbench genam att man dubbelklickar på chelps ikon.
  Om HIDE i tooltype inte är YES så kommer ett fönster upp (ntuition
  interfacet)
  Om HIDE i toolstypes är YES så kommer inget fönster upp utan chelp körs i
  bakgrunden och väntar på att hotkeyas fram eller ta emot kommandon via
  arexx. 

  TOOLTYPES:
  Genom att klicka på chelps ikon en gång så den blir markerad och sedan
  välja 'Information' från workbenchmenyn så kan man ändra de verktygs-
  typer (tooltypes) som chelp använder. 

  TOOLTYPES som chelp känner till:

    HIDE:
  
        Om HIDE=YES så öppnas inte chelps fönster när man startar chelp
        utan chelp kommer att köras i bakgrunden.
        
        Om HIDE=NO eller inte finns så kommer chelps fönster upp vid start.

    HOTKEY:

        Om hotkey ej finns så väljs den som som är sparad i konfigurationen.

        Om hotkey finns så startas chelp med den valda hotkeykombinationen
        OBS! Den hotkeykombinationen som är sparad i konfigurationen kommer
        att ersättas med denna. 

    DONOTWAIT:

        Om Chelp skall startas från WbStartup bilioteket så måste denna
        vara med.



6 INTUITION INTERFACE
  ===================

Om du startar Chelp med 'chelp -i' eller från Workbench genom att dubbel-
klicka på Chelp-ikonen öppnas ett intuitionfönster. I fönstret finns det 
tre gadgets BUILD, HIDE och QUIT. 

6.1 Build

    Bygger referensfiler för Chelp. Detta bör göras varje gång pathen
    till include/autodocs ändras eller om nya include/referencefiler har
    installerats. Om man vill avbryta, tryck på build en gång till.
    
6.2 HIDE

    Stänger Chelps intuition fönster. Chelp körs fortfarande och tar emot 
    kommandon via arexx. Fönstret kan öppnas igen via hotkeys
    (shift+ctrl+c) eller det man har skrivit in i rutan efter hotkey.

6.3 Quit

    Avslutar Chelp.  


6.4 Preferences

    I den nedre halvan av intuitionfönstret finns det Gadgets för inställning
	av programmet.
 
    I mitten av fönstret finns det 5 textfält. 

    I det första 'Path to .doc' anges pathen till var autodocsfilerna
    finns. Om dessa ej finns eller ej önskas, tryck på checkboxgadgeten till
    höger om fältet så att fältet blir 'skuggat'.

    ex work:lc/autodocs_2.04/

    'Path to .h': Ange här pathen till dina ICKE kompakterade includefiler. 
    Om du anger pathen till de kompakterade includefilerna som normalt
    finns i INCLUDE: så kommer chelp inte att hitta några strukturer.
    
    ex work:lc/compiler_headers/

    I fältet Path to .ref anges var referensfilerna som byggs upp av chelp
    ska lagras. Ex RAM: eller s:. Använder du RAM: måste du skapa om
    referensfilerna efter varje ombootning. 

    I fältet 'Arexx outpath:' anges path till den filen som skapas genom 
    lookup via arexx. Filen kommer heta chelp.lup.

    ex ram:

    I fältet 'Hotkey' anges vilken tangentkombination som skall användas
    för att öppna chelp's fönster om chelp körs dolt i bakgrunden.
    
    ex 'shift ctrl c'  
	
    Build Define: Med hjälp av denna gadgeten bestämmer man om man vill skapa
    referensfiler för #define vid build. Om man ej har 'build define' på så 
    kan man inte söka efer defines, men referensfilerna blir mycket kortare om
    man har platsbrist.
	
    Checkboxgadgeten TYPEDEF:

    Med hjälp av denna gadgeten kan man välja om man vill ha med typedef
    från includefilerna. 

    ex: chelp printf   med TYPEDEF på ger

       Function: printf   Includefile: stdio.h

       (int) printf(char*,...)
 
    
    SAVE   - spara alla ändringar i konfigurationsfilen. Även fönster-
             positionerna för intution-, preferences-fönstret sparas.

    UNDO   - Laddar in de senaste sparade inställningarna.


    Om chelp.cfg finns i det lokala biblioteket används den istället
    för s:chelp.cfg.




7 WILDCARDS
  =========

Keyword kan anges med Wildcard. Wildcard betyder vilda kort och fungerar
som ersättningstecken, (vad som helst tecken). Ex: Anges #?window så
betyder det att allt som slutar på window är överensstämmande med sök-
strängen. #?window är lika med openwindow och closewindow osv.

Vad betyder då alla wildcard tecken?:

?  = Ett valfritt tecken 
?? = Två valfria tecken.
#? = Vad som helst (flera tecken)
|  = Eller i kombination med paranteser
(  = Start av wildcards jämförelselista 
)  = Slut på wildcards jämförelselista 
*  = Samma som #? 
+  = Samma som #?

Ex: #?gadget#? ger alla keywords som har gadget i namnet, tex: 
    ActivateGadget, AddGadget, CreateGadget, GT_SetGadgetAttrs osv        


8 AREXX
  =====


om chelp startas med 'chelp -i' eller 'chelp -s' så öppnas en arexxport CHELP1
om det är första CHELP2 för andra osv.


Arexx kommandon:

OPENWINDOW  - Öppnar 'intuitionfönstret'

CLOSEWINDOW - stänger fönstret.  chelp körs fortfarande och tar emot 
              kommandon från arexx.

BUILD       - Skapar referensfiler. Om fönstret är stängt så öppnas det 
              under build för att stängas efteråt  

LOOK xxxxx  - Söker efter keywordet xxxxx  utfil yyy:chelp.lup 
              Där yyy är pathen som är inställd i 'Arexx outpath'

    ex:   Look Openwindow så sparas allt om funktionen OpenWindow i filen
              yyy:chelp.lup   

    ex:   LOOK window*  

CLOOK       - Case sensitive lookup.

    ex:  CLOOK Open    will give you Open, not open.



VERSION     - returnerar version i result ex: 'Chelp v1.21'

GETVAR x    - returnerar för x=

             1 - Path to autodocs
             2 - Path to include files
             3 - Path to references files
             4 - Path to arexx output
             5 - Hotkey combination
             6 - Hotkey combination for lookup in CED
             7 - Number of keywords in autodocs
             8 - Number of keywords in includefiles
             9 - Search/build Autodocs (ON = 1 / OFF = 0)
            10 - Search/build Includes (ON = 1 / OFF = 0)
			11 - 'Typedef' (ON = 1 / OFF = 0)
            12 - Build #define (ON = 1 / OFF = 0)

DEBUG ON    - Arexx debugging mode. Debugg information i fönstertitelraden

DEBUG OFF   - Stänger av debugginfon.

QUIT        - Avslutar chelp
 


9 Kommande versioner
  ==================

Intuition interface för sökning.
Stöd för direktsökning från editorer: Turbotext, Lse...
Stöd för C++, klasser...
Dina önskemål och idéer.



TACK!
----


Tack för hjälpen:

    Kjell Cederfeldt
    Mikael Berglund
    Kjell Harnesk



/Robert Wahlström och Mathias Widman
