Hi Antonio
Thanks for the information.
Since I am still frustrated by the awkwardness of finding information in the available documentation I thought that a useful first step might be to convert the Harbour Guide to a series of html pages, a process which I have commenced. About 80 to 90% of the conversion I have been able to do with a little xHarbour program I wrote for the purpose but then comes the tedious task of doing the remaining changes and putting togther "index pages". To date I have converted topics that begin with A through C and T through Z plus made a start on D, S and I. To give you an idea of the output here's the html for a sample page:
- Code: Select all Expand view RUN
<html><head><title> ACOPY() </title></head><body><a href="xbase.html">xBase</a> <a href="harbour.html">Harbour</a> <a href="h_functions.html">Functions</a> <a href="hf_array.html">Array-Functions</a><hr>
<h1>ACOPY()</h1><p>
Copy elements from one array to another
</p><h3>Syntax</h3><p>
ACOPY( <var><aSource></var>, <var><aTarget></var>, [<var><nStart></var>], [<var><nCount></var>], [<var><nTargetPos></var>] )
--> aTarget
</p><h3>Arguments</h3><p>
<var><aSource></var> is the array to copy elements from.<br/><br/>
<var><aTarget></var> is the array to copy elements to.<br/><br/>
<var><nStart></var> is the beginning subscript position to copy from <var><aSource></var><br/><br/>
<var><nCount></var> the number of subscript elements to copy from <var><aSource></var>.<br/><br/>
<var><nTargetPos></var> the starting subscript position in <var><aTarget></var> to copy elements
to.
</p><h3>Returns</h3><p>
<var><aTarget></var> an array pointer reference
</p><h3>Description</h3><p>
This function copies array elements from <var><aSource></var> to <var><aTarget></var>. <var><nStart></var> is
the beginning element to be copied from <var><aSource></var>; the default is 1.</p><p>
<var><nCount></var> is the number of elements to be copied from <var><aSource></var>; the default
is the entire array.</p><p>
<var><nTargetPos></var> is the subscript number in the target array,<var><aTarget></var>, to which
array elements are to be copied; the default is 1<p></p>
This function will copy all data types in <var><aSource></var> to <var><aTarget></var>.
If an array element in <var><aSource></var> is a pointer reference to another array,
that array pointer will be copied to <var><aTarget></var>; not all subdimensions will be
copied from one array to the next. This must be accomplished via the ACLONE()
function.<p></p>
Note If array <var><aSource></var> is larger then <var><aTarget></var>, array elements will start
copying at <var><nTargetPos></var> and continue copying until the end of array <var><aTarget></var> is
reached. The ACOPY() function doesn't append subscript positions to the target
array, the size of the target array <var><aTarget></var> remains constant.
</p><h3>Examples</h3><pre>
LOCAL nCount := 2, nStart := 1, aOne, aTwo
aOne := {"HABOUR"," is ","POWER"}
aTwo := {"CLIPPER"," was ","POWER"}
ACOPY(aOne, aTwo, nStart, nCount)
</pre><h3>Status</h3><p>
Ready
</p><h3>Compliance</h3><p>
This function is CA Clipper compliant
</p><h3>Files</h3><p>
Library is vm
</p><h3>See Also</h3><p>
<a href="h_ACLONE.html">ACLONE()</a>
<a href="h_ADEL.html">ADEL()</a>
<a href="h_AEVAL.html">AEVAL()</a>
<a href="h_AFILL.html">AFILL()</a>
<a href="h_AINS.html">AINS()</a>
<a href="h_ASORT.html">ASORT()</a>
<br/><hr><a href="xbase.html">xBase</a> <a href="harbour.html">Harbour</a> <a href="h_functions.html">Functions</a> <a href="hf_array.html">Array-Functions</a></body></html>
I will have an alphabetical index but also you will see from the header and the footer that I am producing functional indexes too such as this one for array functions:
- Code: Select all Expand view RUN
<html><head><title>(Harbour) ARRAY FUNCTIONS</title></head><body><a href="xbase.html">xBase</a> <a href="harbour.html">Harbour</a> <a href="h_functions.html">Functions</a> <hr>
<h1>(Harbour) ARRAY FUNCTIONS</h1><p>
<br/>
<a href="h_AADD.html">AADD()</a><br/>
<a href="h_ACHOICE.html">ACHOICE()</a><br/>
<a href="h_ACLONE.html">ACLONE()</a><br/>
<a href="h_ACOPY.html">ACOPY()</a><br/>
<a href="h_ADEL.html">ADEL()</a><br/>
<a href="h_ADIR.html">ADIR()</a><br/>
<a href="h_AEVAL.html">AEVAL()</a><br/>
<a href="h_AFIELDS.html">AFIELDS()</a><br/>
<a href="h_AFILL.html">AFILL()</a><br/>
<a href="h_AINS.html">AINS()</a><br/>
<a href="h_ARRAY.html">ARRAY()</a><br/>
<a href="h_ASCAN.html">ASCAN()</a><br/>
<a href="h_ASIZE.html">ASIZE()</a><br/>
<a href="h_ASORT.html">ASORT()</a><br/>
<a href="h_ATAIL.html">ATAIL()</a><br/>
<a href="h_LEN.html">LEN()</a><br/>
<br/><hr><a href="xbase.html">xBase</a> <a href="harbour.html">Harbour</a> <a href="h_functions.html">Functions</a> </body></html>
Currently I have entries in the following groupings (more will no doubt come as I convert more pages)
- Code: Select all Expand view RUN
<html><head><title>Harbour Functions</title></head><body><a href="xbase.html">xBase</a> <a href="harbour.html">Harbour</a> <hr>
<h1>HARBOUR FUNCTIONS</h1><p>
<a href="hf_array.html">Array-Functions</a><br/>
<a href="hf_control.html">Control-Functions</a><br/>
<a href="hf_convert.html">Conversion-Functions</a><br/>
<a href="hf_datafile.html">Data-File-Functions</a><br/>
<a href="hf_date.html">Date-Functions</a><br/>
<a href="hf_filesystem.html">File-System-Functions</a><br/>
<a href="hf_internal.html">Internal-Functions</a><br/>
<a href="hf_keyboard.html">Keyboard-Functions</a><br/>
<a href="hf_maths.html">Mathematical-Functions</a><br/>
<a href="hf_screen.html">Screen-Functions</a><br/>
<a href="hf_string.html">String-Functions</a><br/>
<a href="hf_test.html">Test-Functions</a><br/>
<a href="hf_time.html">Time-Functions</a><br/>
<a href="hf_UI.html">UI-Functions</a>
<br/><hr><a href="xbase.html">xBase</a> <a href="harbour.html">Harbour</a> </body></html>
I'm not just converting pages related to functions as you can see from this higher level page
- Code: Select all Expand view RUN
<html><head><title>HARBOUR DOCUMENTATION</title></head><body><a href="xbase.html">xBase</a> <hr>
<h1>HARBOUR DOCUMENTATION</h1><p>
<br/>
<a href="h_commands.html">Harbour-Commands</a><br/>
<a href="h_functions.html">Harbour-Functions</a><br/>
<a href="h_information.html">Harbour-Information</a><br/>
<a href="h_objects.html">Harbour-Objects</a><br/>
<a href="h_setcommands.html">Harbour-Set-Commands</a><br/>
<br/><hr><a href="xbase.html">xBase</a> </body></html>
Eventually I would like to have Five Linux, xHarbour as entries form the top level screen
- Code: Select all Expand view RUN
<html><head><title>xBase DOCUMENTATION</title></head><body> <hr>
<h1>xBase DOCUMENTATION</h1><p>
<br/>
<a href="harbour.html">Harbour-Documentation</a>
<br/><hr> </body></html>
There are lots of maybes if other people are interested in this type of project. Perhaps someone might like to work on documenting FiveWin in the same or a similar format? I want to look in greater depth at the best format for documenting classes/objects but have converted the page for Harbour's TBROWSENew. I will include it in my next post.
Regards
Doug
(xProgrammer)