~ubuntu-branches/ubuntu/lucid/pdl/lucid

« back to all changes in this revision

Viewing changes to Doc/README

  • Committer: Bazaar Package Importer
  • Author(s): Ben Gertzfield
  • Date: 2002-04-08 18:47:16 UTC
  • Revision ID: james.westby@ubuntu.com-20020408184716-0hf64dc96kin3htp
Tags: upstream-2.3.2
ImportĀ upstreamĀ versionĀ 2.3.2

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
This is a first try to get something like online help for PDL.
 
2
Building proceeds as usual:
 
3
 
 
4
  perl Makefile.PL
 
5
  make
 
6
 
 
7
Then there are a few things you should try:
 
8
 
 
9
1) Scan the current PDL distribution (PDL-1.94_05 + PATCHES)
 
10
   for online help info:
 
11
 
 
12
  perl -Mblib scantree.pl
 
13
 
 
14
and specify the location of your *installed* PDL distribution
 
15
(either the default or YOUR_PDL_DIR/blib/lib/PDL if you haven't
 
16
installed it) when asked to do so.
 
17
 
 
18
2) Try the online doc support from within perldl (in the root
 
19
directory of the PDL-Doc distribution):
 
20
 
 
21
   perldl
 
22
 
 
23
and at the perldl prompt, type 'help':
 
24
 
 
25
   perldl> help
 
26
 
 
27
and proceed from there.
 
28
For details check the supplied file 'local.perldlrc'.
 
29
 
 
30
3) If you want to see which info has been picked from your POD documentation
 
31
try
 
32
 
 
33
   perl -Mblib docscan <filename>
 
34
 
 
35
in the root directory of the PDL-Doc distribution.
 
36
 
 
37
4) Once you have built the online info database (see step 1)
 
38
try the example that builds a 'pdlfunc' manpage by saying:
 
39
 
 
40
   perl -Mblib mkpdlfuncpod >pdlfunc.pod
 
41
 
 
42
This is just a demonstration of what should become possible once the
 
43
online docs work correctly.
 
44
 
 
45
5) If you prefer the itemised listing of PDL functions in
 
46
the manpage version, try
 
47
 
 
48
   perl -Mblib pdlhead2item <filename.pm> > <tmpname.pod>
 
49
   pod2man <tmpname.pod> | nroff -man | more
 
50
 
 
51
that translates the <=head2> directives into an itemised list. This
 
52
is again just a demo what can be done.
 
53
 
 
54
For info about the POD format conventions used by the PDL podparser
 
55
to identify the online documentation check the docs in Doc.pm.
 
56
 
 
57
There are still quite a few shortcomings in the implementation:
 
58
 
 
59
1) the podparser code is currently a bit messy
 
60
 
 
61
2) scanning is done very naively. No real checks are made if a function
 
62
is documented in several files, etc. Needs to be done once integerated
 
63
with the PDL distrib.
 
64
 
 
65
3) Scanning and database updating should be integerated with the
 
66
build process. An updating policy should be developed.
 
67
 
 
68
4) The PP changes to support the new doc style are poorly documented,
 
69
for the moment refer to the examples supplied in the patches to
 
70
PDL-1.94_05. Briefly, the 'Doc' key has been introduced and PP will
 
71
generate the
 
72
 
 
73
  =head2 funcname
 
74
 
 
75
  =for sig
 
76
 
 
77
    Signature: (...)
 
78
 
 
79
entries automatically. No docs are generated if you say
 
80
 
 
81
   pp_def('XXXXfunc',
 
82
          Doc => 'internal',...
 
83
   );
 
84
 
 
85
pp_addpm has been changed to optionally accept an option hash ref
 
86
to specify if the pm text should be inserted at the top, in the middle
 
87
or at the bottom. I'm not sure of this is necessary/a good solution yet.
 
88
 
 
89
6) If the symhash should grow beyond the point where it is practical
 
90
to hold it all in memory the implementation should use some kind
 
91
of cached AnyDBM inplementation.
 
92
 
 
93
7) and probably lots of other things...
 
94
 
 
95
  Christian Soeller <c.soeller@auckland.ac.nz>
 
96
 
 
97
 
 
98
Changes for intergration in to PDL distribution
 
99
 
 
100
- changed scantree.pl to take args for directory, database.
 
101
- moved local.perldlrc into PDL::Doc::Perldl module
 
102
- Made "borrowed" Pod:: stuff into PDL::Pod:: for now.
 
103
 
 
104
  Karl Glazebrook <kgb@aaoepp.aao.gov.au>
 
105
 
 
106