File: site_params.html

package info (click to toggle)
sitescooper 3.1.2-1
  • links: PTS
  • area: main
  • in suites: sarge, woody
  • size: 3,000 kB
  • ctags: 662
  • sloc: perl: 8,677; makefile: 105
file content (792 lines) | stat: -rw-r--r-- 19,920 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
<html>
<head>



</head>

<body bgcolor="#ffffff" text="#000000" link="#3300cc" vlink="#660066">

<h1>Site File Parameters Reference</h1>

<ul>
<li>
<a href="#ValueTypes">Value Types</a>
</li>

<!--

To reindex:

perl -ne '/<a name=\"(\S+)\">\s+<h3>\s+(.*)\s+<\/h3>/ and
  print "<li><a href=\"#$1\">$2</a></li>\n"' doc/site_params.html  > out

-->

<li><a href="#URL">URL </a></li>
<li><a href="#Name">Name </a></li>
<li><a href="#Description">Description </a></li>
<li><a href="#AuthorName">AuthorName </a></li>
<li><a href="#AuthorEmail">AuthorEmail </a></li>
<li><a href="#Active">Active </a></li>
<li><a href="#SizeLimit">SizeLimit </a></li>
<li><a href="#MinPages">MinPages </a></li>
<li><a href="#Levels">Levels </a></li>
<li><a href="#AddURL">AddURL </a></li>
<li><a href="#LayoutURL">LayoutURL </a></li>
<li><a href="#ExceptionURL">ExceptionURL </a></li>
<li><a href="#RequireCookie">RequireCookie </a></li>
<li><a href="#Rights">Rights </a></li>
<li><a href="#TableRender">TableRender </a></li>
<li><a href="#LevelNLinksStart">LevelNLinksStart / IssueLinksStart / ContentsStart / StoryStart</a></li>
<li><a href="#LevelNLinksEnd">LevelNLinksEnd / IssueLinksEnd / ContentsEnd / StoryEnd</a></li>
<li><a href="#LevelNLinksIncludeStartPattern">LevelNLinksIncludeStartPattern / IssueLinksIncludeStartPattern / ContentsIncludeStartPattern / StoryIncludeStartPattern</a></li>
<li><a href="#LevelNLinksIncludeEndPattern">LevelNLinksIncludeEndPattern / IssueLinksIncludeEndPattern / ContentsIncludeEndPattern / StoryIncludeEndPattern</a></li>
<li><a href="#LevelNPrint">LevelNPrint / IssuePrint / ContentsPrint </a></li>
<li><a href="#LevelNCacheable">LevelNCacheable / LevelNCachable / IssueCacheable / ContentsCacheable / StoryCacheable</a></li>
<li><a href="#LevelNDiff">LevelNDiff / IssueDiff / ContentsDiff / StoryDiff</a></li>
<li><a href="#LevelNAddURL">LevelNAddURL / IssueAddURL / ContentsAddURL / StoryAddURL</a></li>
<li><a href="#LevelNURL">LevelNURL / IssueURL / ContentsURL / StoryURL</a></li>
<li><a href="#ContentsFormat">ContentsFormat </a></li>
<li><a href="#LevelNSkipURL">LevelNSkipURL / IssueSkipURL / ContentsSkipURL / StorySkipURL </a></li>
<li><a href="#StoryHeadline">StoryHeadline </a></li>
<li><a href="#StoryToPrintableSub">StoryToPrintableSub </a></li>
<li><a href="#StoryLifetime">StoryLifetime </a></li>
<li><a href="#StoryHTMLHeader">StoryHTMLHeader </a></li>
<li><a href="#StoryHTMLFooter">StoryHTMLFooter </a></li>
<li><a href="#UseAltTagForURL">UseAltTagForURL </a></li>
<li><a href="#NeedLoginURL">NeedLoginURL </a></li>
<li><a href="#ImageURL">ImageURL </a></li>
<li><a href="#ImageOnlySite">ImageOnlySite </a></li>
<li><a href="#ImageScaleToMaxWidth">ImageScaleToMaxWidth </a></li>
<li><a href="#ImageProcess">ImageProcess </a></li>
<li><a href="#URLProcess">URLProcess </a></li>
<li><a href="#StoryPostProcess">StoryPostProcess </a></li>
<li><a href="#EvaluatePerl">EvaluatePerl </a></li>

</ul>
<hr>

<a name="ValueTypes" />
<h1>Value Types</h1>

<p>

Most parameters take one of the following value types:

</p>
<ul>

<li>

<b>Strings</b> are just as you'd expect -- a run of text until
end of line.

</li>

<li>

<b>Booleans</b> are specified as <b>1</b>, for on, or <b>0</b> for off.

</li>

<li>

<b>Regular expressions</b> are tricky; if you want to use them,
check the <a href=writing_site.html#StoryURLAndRegexps>quick
intro</a> in <i>Writing A Site File</i> first, to get the hang of it.


</li>

<li>

<b>Perl code</b> is specified by starting the value with a squiggly
bracket, runs on for a few lines, then ends with a line with another
squiggly bracket on its own; see the example below.  Only some
parameters support this though.

<pre><blockquote>StoryHTMLPreProcess: {
      s/&lt;\/?center&gt;//gm;
      s/ALIGN=center//gm;
}</blockquote></pre>

</ul>
</ul>
<p>

All the parameters use the format <b>Parameter: value</b>, where
the line starts with optional white space, followed by the param name,
followed immediately by a colon and more white space, followed by
the value.

</p>

<hr>
<h1>The Details</h1>

Here's the details on each parameter, and what it does. Note that
only the <b>URL</b> parameter is required; all the others are
optional, and have default values.

<a name="URL">  <h3>  URL  </h3>

<p>

Top-level URL of the site. 
Sitescooper will always start scooping the site by requesting this URL.
This is required, and must appear before any other parameters.

</p>
<hr>
<a name="Name">  <h3>  Name  </h3>

<p>

Name of the site. This name will be used in both the filename of the output
file and the name of the resulting PRC database for Palm conversion, if needed.
This is pretty much required.

</p>


<hr>
<a name="Description">  <h3>  Description  </h3>

<p>

A one-line description of the site.
Optional, but a great help!

</p>


<hr>
<a name="AuthorName">  <h3>  AuthorName  </h3>

<p>

The name of the site file's author.

</p>


<hr>
<a name="AuthorEmail">  <h3>  AuthorEmail  </h3>

<p>

The email address of the site file's author.

</p>


<hr>
<a name="Active">  <h3>  Active  </h3>

<p>

Whether this site is active, ie. should be scooped.

</p>


<hr>
<a name="SizeLimit">  <h3>  SizeLimit  </h3>

<p>

The top size limit, in kilobytes, of a scoop from this site.
By default, this is left at 0, which means that the
process-wide limit is inherited: 300K by default, or whatever
the user specified on the command line. 

</p>


<hr>
<a name="MinPages">  <h3>  MinPages  </h3>

<p>

The minimum number of pages that this site requires.  If a scoop
generates less than this number of pages, it is assumed the site
has not been updated and the scoop is ignored.
By default, this is set to 1.

</p>


<hr>
<a name="Levels">  <h3>  Levels  </h3>

<p>

How many levels this site has. If unspecified, the site is
assumed to be made up of one page, ie. a 1-level site.

</p>


<hr>
<a name="AddURL">  <h3>  AddURL  </h3>

<p>

An easy way to add additional URLs to a site, along with the
top-level URL.

</p>

<hr>
<a name="LayoutURL">  <h3>  LayoutURL  </h3>

<p>

LayoutURL is similar to URL, but defines a layout for a specific pattern. If a
page's URL falls within this pattern, and parameters are defined for this
layout, but not defined by the site file, the layout parameters will be used.

</p>
<p>

This allows an easy way to specify default values that several sites can use;
just define them in a layouts file such as <tt>lib/layouts.site</tt> and
they will be inherited.

</p>

<hr>
<a name="ExceptionURL">  <h3>  ExceptionURL  </h3>

<p>

ExceptionURL is like LayoutURL, but it takes priority over both LayoutURL and
the normal site file rules.

The idea is that you can define a site using URL, then after defining the rules
for the main site pages, you can specify rules for a different set of pages
that will be encountered while scooping the site.

</p>
<hr>
<a name="RequireCookie">  <h3>  RequireCookie  </h3>

<p>

If a site requires that a HTTP Cookie be set before it
can be accessed, use this parameter. It takes a two-part value,
consisting of the cookie's hostname and key separated by whitespace. For
example, the <tt>economist_full.site</tt> site file uses
<b>RequireCookie: www.economist.com econ-key</b>.

</p>


<hr>
<a name="Rights">  <h3>  Rights  </h3>

<p>

The rights of reproduction for that site, in addition to whatever will be
scooped.  This allows you to append arbitrary copyright text to the output,
instead of the default <i>End of snarf - copyright retained by original
providers.</i> message.

</p>


<hr>
<a name="TableRender">  <h3>  TableRender  </h3>

<p>

How tables should be rendered in the output.  There are 3 possible values:

<ul>

<li> <b>keep</b>: Keep the tables as-is, apart from the normal table-stripping
controlled by <a href=#LevelNUseTableSmarts>UseTableSmarts</a>.

<li> <b>list</b>: convert into lists using Robb Canfield's Exten::Table module.

<li> <b>flatten</b>: remove all table tags, converting table text into
normal text.

</ul>

</p>


<hr>
<a name="LevelNLinksStart">  <h3>  LevelNLinksStart / IssueLinksStart / ContentsStart / StoryStart </h3>

<p>

Specify the start-of-links-area or start-of-story-area pattern for a page at
that level.

</p>


<hr>
<a name="LevelNLinksEnd">  <h3>  LevelNLinksEnd / IssueLinksEnd / ContentsEnd / StoryEnd </h3>

<p>


Specify the end-of-links-area or end-of-story-area pattern for a page at that
level.

</p>


<hr>
<a name="LevelNLinksIncludeStartPattern">  <h3>  LevelNLinksIncludeStartPattern / IssueLinksIncludeStartPattern / ContentsIncludeStartPattern / StoryIncludeStartPattern </h3>

<p>

Causes the start-of-links-area or start-of-story-area pattern to be
included in the resulting scooped HTML.  By default, it is not.

</p>


<hr>
<a name="LevelNLinksIncludeEndPattern">  <h3>  LevelNLinksIncludeEndPattern / IssueLinksIncludeEndPattern / ContentsIncludeEndPattern / StoryIncludeEndPattern </h3>

<p>


Causes the end-of-links-area or end-of-story-area pattern to be
included in the resulting scooped HTML.  By default, it is not.

</p>


<hr>
<a name="LevelNPrint">  <h3>  LevelNPrint / IssuePrint / ContentsPrint  </h3>

<p>

Specify whether a links-level page should be printed, ie. output.  The default
is 0 for text-style output, or 1 for HTML-style output.  (HTML-style in this
case is defined as supporting hyperlinks, including iSilo etc.)

</p><p>

There is no StoryPrint, as stories are always printed.

</p>


<hr>
<a name="LevelNCacheable">  <h3>  LevelNCacheable / LevelNCachable / IssueCacheable / ContentsCacheable / StoryCacheable </h3>

<p>

Whether pages at that level should be cached.  The default is 0, meaning they
are not cached (ie. it is assumed that a link to a file with the same URL may
not contain the same text next time around). Both <b>Cacheable</b> and
<b>Cachable</b> can be used, because it's a tricky word to spell ;)

</p>


<hr>
<a name="LevelNDiff">  <h3>  LevelNDiff / IssueDiff / ContentsDiff / StoryDiff </h3>

<p>

Whether pages at that level should be diffed, ie. their contents compared
against that of a previous run, and only the new elements used.

</p>


<hr>
<a name="LevelNUseTableSmarts">
<h3>  LevelNUseTableSmarts / IssueUseTableSmarts / ContentsUseTableSmarts / UseTableSmarts </h3>

<p>

Should the automatic trimming of narrow tables take place?  Narrow tables are
defined as tables with a width of less than 40% or less than 250 pixels.  The
default is 1.

</p><p>

<b>UseTableSmarts</b> can also be called <b>StoryUseTableSmarts</b> for
clarity.

</p>


<hr>
<a name="LevelNFollowLinks">
<h3>  LevelNFollowLinks / IssueFollowLinks / ContentsFollowLinks / StoryFollowLinks </h3>

<p>

Should links which fit into the <a href=#LevelNURL>StoryURL</a>, etc. pattern
for that level be followed to parallel pages, ie. other pages at the same
level?  This allows a site to handle situations where stories or links to
stories are split into "page 1 of 4" etc.

</p><p>

The default is 0.

</p>


<hr>
<a name="LevelNAddURL">  <h3>  LevelNAddURL / IssueAddURL / ContentsAddURL / StoryAddURL </h3>

<p>

Add a URL to the list that needs to be scooped at that level.

</p>


<hr>
<a name="LevelNURL">  <h3>  LevelNURL / IssueURL / ContentsURL / StoryURL </h3>

<p>

The URL pattern that a page for that level must fit into.
Multiple URLs can be specified on multiple lines.

</p><p>

Generally, pages at the highest level do not need this to be specified,
unless the <a href=#LevelNFollowLinks>FollowLinks</a> parameter for that level is turned on.

</p>


<hr>
<a name="ContentsFormat">  <h3>  ContentsFormat  </h3>

<p>

The format for the links-level pages. Currently either
<b>html</b> or <b>rss</b> can be used; HTML is the default,
RSS indicates that the XML RSS format is used by that site.

</p>



<hr>
<a name="LevelNSkipURL">  <h3> LevelNSkipURL / IssueSkipURL / ContentsSkipURL / StorySkipURL  </h3>

<p>

If an URL at the given level matches this URL pattern, it will
not be examined by sitescooper.  <i>(note: versions of sitescooper
before 2.3.x do not support LevelNSkipURL or IssueSkipURL.)</i>

</p>


<hr>
<a name="StoryHeadline">  <h3>  StoryHeadline  </h3>

<p>

This specifies a regular expression pattern used to search for the
story's headline or title.  This is primarily useful for DOC-format
output, where a bookmark is created at the start of each story
using the headline as a bookmark title.

</p><p>

The story HTML is searched for this pattern before <a href=#LevelNLinksStart>StoryStart</a>
and <a href=#LevelNLinksEnd>StoryEnd</a> stripping takes place.

</p><p>

It should be specified as a regular expression containing a single
<b>(<i>pattern</i>)</b> subexpression; the text that matches
the section between brackets is used as the headline text.

</p>


<hr>
<a name="StoryToPrintableSub">  <h3>  StoryToPrintableSub  </h3>

<p>

A Perl regular expression substitution used to convert story links to a form
more suitable for sitescooper output.  For example, many sites provide multiple
views of a story, including a "printable" view for printing, and often the
"printable" view is more amenable to scooping than the non-printable version.
<b> StoryToPrintableSub </b> allows you to convert the story URLs to this
"printable" format.

</p><p>

The <a href=#LevelNURL>StoryURL</a> pattern must match the "printable" version.
It does not need to match the original, "non-printable" format.

</p><p>

The format of a perl substitution is as follows:
<b>s,<i>from-pattern</i>,<i>replacement</i>,</b> where <b>from-pattern</b> is a
perl regexp pattern, generally containing <b>(<i>pattern</i>)</b>
subexpressions, and <b>replacement</b> is a replacement text containing
<b>\number</b> markers where the strings matched by the bracketed bits are
inserted.

</p><p>

See the <a href=writing_site.html#printable_help>FAQ entry
on multi-page stories</a> in the <i>Writing a .site File</i> document
for more information.


</p>


<hr>
<a name="StoryLifetime">  <h3>  StoryLifetime  </h3>

<p>

Very old stories, by default older than 90 days, are not scooped.
This limit can be changed using this parameter.

</p>


<hr>
<a name="StoryHTMLHeader">  <h3>  StoryHTMLHeader  </h3>

<p>

Additional HTML which should be added to the top of any story
page.

</p>


<hr>
<a name="StoryHTMLFooter">  <h3>  StoryHTMLFooter  </h3>

<p>

Additional HTML which should be added to the bottom of any story
page.

</p>


<hr>
<a name="UseAltTagForURL">  <h3>  UseAltTagForURL  </h3>

<p>

If an &lt;img&gt; tag refers to an image which matches this URL pattern, its
ALT tag will be used instead.  The default is that no ALT tags be used.  Note:
this URL pattern is for the <b>image's</b> URL, not the URL it may be linked to
(if there is one).

</p>


<hr>
<a name="NeedLoginURL">  <h3>  NeedLoginURL  </h3>

<p>

If a page requires HTTP authentication to access, you can specify its pattern
here to avoid a needless HTTP transaction.  Normally, the page is requested
first, and the server responds with a request for authentication; then the page
is re-requested.  This allows you to skip the initial request for a minor
speed-up.

</p>

<hr>
<a name="ImageURL">  <h3>  ImageURL  </h3>

<p>

If an &lt;img&gt; tag refers to an image which matches this URL, that image tag
will be left in the scooped document.  Normally all images are stripped.
Note that not all output formats support images however.

</p>


<hr>
<a name="ImageOnlySite">  <h3>  ImageOnlySite  </h3>

<p>

Specify to sitescooper that no text is expected to appear on the resulting
page; the only thing scooped is the image.

</p>


<hr>
<a name="ImageScaleToMaxWidth">  <h3>  ImageScaleToMaxWidth  </h3>

<p>

Specify the maximum width of an image. By default, this is 300, the rough width
in pixels of the Palm handheld's screen; sites with large images, such as
comics, can specify a larger value, which requires the user to scroll around
the image but generally improves the readability of the picture.

</p><p>

This is not the way to solve the problem, by the way, so this parameter
may go away or change in some way in the future...

</p>


<hr>
<a name="ImageProcess">  <h3>  ImageProcess  </h3>

<p>

A chunk of Perl code which will be used to transform every image that
sitescooper downloads.

</p><p>

The filename of the image downloaded from the website is passed in as
<b>$img_in</b>, and the processed image should be written to the file named in
<b>$img_out</b>.  Set <b>$img_out</b> to the <b>undef</b> value if you want to
skip that image.

</p><p>

This parameter is intended to allow the use of image rotation, resizing or
quantizing code.  For these purposes, the <a
href=http://www.simplesystems.org/ImageMagick/www/perl.html>PerlMagick</a>
module may prove very useful.

</p>

<hr>
<a name="URLProcess">  <h3>  URLProcess  </h3>

<p>

A chunk of Perl code which will be used to transform every URL that sitescooper
needs to download.  This allows a huge degree of control over the links that
sitescooper operates on.

</p><p>

The URL to operate on is passed in as <b>$_</b>, and the post-processed URL is
expected to be in <b>$_</b> afterwards.  Set <b>$_</b> to the <b>undef</b>
value if you want to skip that URL.

</p><p>

Note that links which do not pass the <a href=#LevelNURL>StoryURL</a>, etc.
patterns will be dropped before <b>URLProcess</b> takes effect, so make sure
those patterns are open enough for this.

</p>


<hr>
<a name="LevelNHTMLPreProcess">
<h3> LevelNHTMLPreProcess / IssueHTMLPreProcess / ContentsHTMLPreProcess / StoryHTMLPreProcess </h3>

<p>

A chunk of Perl code which will be used to transform HTML pages before
sitescooper operates on them.

This takes place <i>after</i> sitescooper strips the <a
href=#LevelNLinksStart>StoryStart</a> and <a href=#LevelNLinksEnd>StoryEnd</a>
sections, and after the <a href=#StoryHTMLHeader>StoryHTMLHeader</a> and <a
href=#StoryHTMLFooter>StoryHTMLFooter</a> sections are added (where
applicable).

</p><p>

The text to operate on is passed in as <b>$_</b>, and the output is
expected to be in <b>$_</b> afterwards.

</p>


<hr>
<a name="StoryPostProcess">  <h3>  StoryPostProcess  </h3>

<p>

A chunk of Perl code which will be used to transform every piece of text that
sitescooper outputs.  Confusingly, this operates on pages at all levels, not
just story-level pages; sorry about that!  This takes place <i>after</i>
sitescooper performs its own cleanup, <a href=#LevelNLinksStart>StoryStart</a>
and <a href=#LevelNLinksEnd>StoryEnd</a> stripping, table-stripping, etc.

</p><p>
<blockquote>

This parameter is deprecated, since the same processing is run for HTML output,
text output, DOC format etc., and levels are not differentiated.  Using the <a
href="#LevelNHTMLPreProcess">LevelNHTMLPreProcess</a> parameters is recommended
instead.

</blockquote>
</p>


<hr>
<a name="EvaluatePerl">  <h3>  EvaluatePerl  </h3>

<p>

Evaluate some arbitrary perl code before running that site.  This takes Perl
code as a value.

</p><p>

If the <b>$skip_site</b> variable is set to a non-zero value after the
<b>EvaluatePerl</b> code is run, the site is skipped.

</p>

<!-- start of nav links --><hr>
<p align=right>
<nobr> [
<a href=index.html>README</a> ]
<br>
[
<a href=installation.html>Installing</a> ]|[
<a href=unix_install.html>on UNIX</a> ]|[
<a href=windows_install.html>on Windows</a> ]|[
<a href=mac_install.html>on a Mac</a> ]
<br>
[
<a href=running.html>Running</a> ]|[
<a href=sitescooper.html>Command-line Arguments Reference</a> ]
<br>
[
<a href=writing_site.html>Writing a Site File</a> ]|[
<a href=site_params.html>Site File Parameters Reference</a> ]
<br>
[
<a href=rss-to-site.html>The rss-to-site Conversion Tool</a> ]|[
<a href=subs-to-site.html>The subs-to-site Conversion Tool</a> ]
<br>
[
<a href=contributing.html>Contributing</a> ]|[
<a href=gpl.html>GPL</a> ]|[
<a href=http://sitescooper.org/>Home Page</a> ]
</nobr>
</p>
<!-- end of nav links --> </body></html>