Indexing Euphoria HTML Documentation for context sensitive help

new topic     » topic index » view thread      » older message » newer message

A few years ago I was in hog heaven. If I needed help regarding a Euphoria word, all I had to was hit one key and and a specific article describing the function of the word popped up in a browser window, almost before my finger left the key.

That was then, this is now. Where is Juergen Luethje when you need him? Juergen posted a really nifty little program which indexed Euphoria 3.* documentation so that a search word could be used to locate a specific article regarding the subject from the help documentation.

I do believe the current HTML documentation is a bit more complex, but a specific article can be accessed directly, provided you have:

1) specific keyword - "db_open", or "append"

2) Numeric Index for the keyword you want information about

3) The name of the section containing the article referenced by index number and keyword

-- 
sequence hlp ={ 
{"append", "std_sequence", "2551"}, 
{"db_create", "std_eds", "4101"}, 
{"db_open", "std_eds", "4108"}, 
 
include std/console.e 
 
constant 
W = 1,  -- word 
S  = 2, -- section 
N  = 3  -- number 
 
sequence hlp ={ 
{"append", "std_sequence", "2551"}, 
{"db_create", "std_eds", "4101"}, 
{"db_open", "std_eds", "4108"} 
} 
 
-- accesses specific article regarding "db_create" from local documentation: 
system_exec( "epiphany file:///home/kenneth/euphoria.4.0.3/docs/html/" 
	      & hlp[2][S] & ".html#_" & hlp[2][N] & "_" & hlp[2][W]) 
 

The programming to match the search word from the editor and pass the related HTML documentation section name and index number shouldn't be difficult.

The problem is building the sequence data base, but within 5 minutes I had a program up and running which created a EuHelp.edb and allowed me to start packing in the relevant data. Yes, friends and neighbors, I'm that good.

This is a copy of the edit screen listing my trial run at data entry:

 
        Euphoria Keyword Database 
 
(a)dd, (d)elete, (f)ind, (l)ist, (p)rint, (q)uit: l 
 
 
2551 
    append 
    std_sequence 
 
4011 
    eds 
    std_eds 
 
4082 
    db_dump 
    std_eds 
 
4108 
    db_open 
    std_eds 
 
(a)dd, (d)elete, (f)ind, (l)ist, (p)rint, (q)uit:  

I am rue to do all the data entry, if someone else is working on a better system, or has a better approach in mind.

All comments and suggestions will be deeply appreciated.

Regards, Kenneth Rhodes

new topic     » topic index » view thread      » older message » newer message

Search



Quick Links

User menu

Not signed in.

Misc Menu