Hi attached patch for fpdoc adds the option --chm-title so that a nicer
title than the default (rtl,fcl,lcl etc) can be used.

The second patch is the documentation for the new option

Regards,

Andrew
Index: utils/fpdoc/dw_htmlchm.inc
===================================================================
--- utils/fpdoc/dw_htmlchm.inc  (revision 13840)
+++ utils/fpdoc/dw_htmlchm.inc  (working copy)
@@ -10,6 +10,7 @@
     FChm: TChmWriter;
     FTempUncompressed: TStream;
     FTempUncompressedName: String;
+    FChmTitle: String;
     FTOCName,
     FIndexName,
     FDefaultPage: String;
@@ -451,7 +452,7 @@
   FTempUncompressedName := GetTempFileName+IntToStr(GetProcessID) +'.raw';
   FTempUncompressed := TFileStream.Create(FTempUncompressedName, fmOpenReadWrite  or fmCreate);
   FChm := TChmWriter.Create(FOutChm, False);
-  FChm.Title := Copy(Package.Name, 2, Length(Package.Name));
+  FChm.Title := FChmTitle;
   FChm.TempRawStream := FTempUncompressed;
   FChm.OnGetFileData := @RetrieveOtherFiles;
   FChm.OnLastFile := @LastFileAdded;
@@ -515,8 +516,13 @@
     FNoBinIndex := True
   else if Cmd = '--make-searchable' then
     FMakeSearchable := True
+  else if Cmd = '--chm-title' then
+    FChmTitle := arg
   else
     Result:=inherited InterPretOption(Cmd, Arg);
+
+  if Length(FChmTitle) = 0 then
+    FChmTitle := Copy(Package.Name, 2, Length(Package.Name));
 end;
 
 class procedure TCHMHTMLWriter.Usage(List: TStrings);
@@ -538,6 +544,8 @@
   List.Add(SCHMUsageAutoTOC);
   List.add('--make-searchable');
   List.Add(SCHMUsageMakeSearch);
+  List.Add('--chm-title');
+  List.Add(SCHMUsageChmTitle);
 end;
 
 
Index: utils/fpdoc/dglobals.pp
===================================================================
--- utils/fpdoc/dglobals.pp (revision 13840)
+++ utils/fpdoc/dglobals.pp (working copy)
@@ -117,6 +117,7 @@
   SCHMUsageAutoTOC = 'Automatically generate a Table of Contents. Ignores --toc-file';
   SCHMUsageAutoIDX = 'Automatically generate an Index. Ignores --index-file';
   SCHMUsageMakeSearch = 'Automatically generate a Search Index from filenames that match *.htm*';
+  SCHMUsageChmTitle= 'Title of the chm. Defaults to the value from --package';
 
   STitle           = 'FPDoc - Free Pascal Documentation Tool';
   SVersion         = 'Version %s [%s]';
Index: utils/fpdoc/fpdoc.pp
===================================================================
--- utils/fpdoc/fpdoc.pp    (revision 13840)
+++ utils/fpdoc/fpdoc.pp    (working copy)
@@ -16,6 +16,7 @@
 program FPDoc;
 
 uses
+  {$IFDEF LZX_USETHREADS}{$IFNDEF MSWINDOWS}cthreads,{$ENDIF}{$ENDIF}
   SysUtils, Classes, Gettext, DOM, XMLWrite, PasTree, PParser,
   dGlobals,  // GLobal definitions, constants.
   dwriter,   // TFPDocWriter definition.
Index: fpdoc.tex
===================================================================
--- fpdoc.tex   (revision 559)
+++ fpdoc.tex   (working copy)
@@ -324,6 +324,12 @@
 <meta content="text/html; charset=UTF8" http-equiv="Content-Type">
 \end{verbatim}
 
+% chm-title
+\subsection{chm-title}
+\label{suse:chm-title}
+This option is to specifiy a nicer title than the default title which is
+the same value as --package=value.
+
 % content
 \subsection{content}
 \label{suse:content}
@@ -2012,4 +2018,4 @@
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 % End of file
-\end{document}
\ No newline at end of file
+\end{document}
Index: Makefile
===================================================================
--- Makefile    (revision 559)
+++ Makefile    (working copy)
@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 2.0.0 [2009/08/08]
+# Don't edit, this file is generated by FPCMake Version 2.0.0 [2009/10/10]
 #
 default: help
 MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-qnx i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian m68k-linux m68k-freebsd m68k-netbsd m68k-amiga m68k-atari m68k-openbsd m68k-palmos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-darwin x86_64-win64 x86_64-embedded arm-linux arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian powerpc64-linux powerpc64-darwin powerpc64-embedded avr-embedded armeb-linux armeb-embedded
@@ -1858,6 +1858,8 @@
   ifdef CSSFILE
     FPDOCHTMLOPTS+=--css-file=$(CSSFILE)
   endif
+  RTLCHMOPTS="--chm-title=(RTL) Runtime Library"
+  FCLCHMOPTS="--chm-title=(FCL) Free Component Library"
 endif
 ifndef LATEX
 LATEX = latex
@@ -2254,10 +2256,10 @@
 endif  # USEPLASTEX
 endif  # USEHEVEA
 fcl.chk: $(FCLXML)
-   $(FPDOC) $(FCLOPTS) --format=$(HTMLFMT) --output=fcl$(HTMLSUFFIX) $(FPDOCHTMLOPTS)
+   $(FPDOC) $(FCLOPTS) --format=$(HTMLFMT) --output=fcl$(HTMLSUFFIX) $(FPDOCHTMLOPTS) $(FCLCHMOPTS)
    touch fcl.chk
 rtl.chk: $(RTLXML)
-   $(FPDOC) $(RTLOPTS) --format=$(HTMLFMT) --output=rtl$(HTMLSUFFIX) $(FPDOCHTMLOPTS)
+   $(FPDOC) $(RTLOPTS) --format=$(HTMLFMT) --output=rtl$(HTMLSUFFIX) $(FPDOCHTMLOPTS) $(RTLCHMOPTS)
    touch rtl.chk
 user.chk: $(INCLUDES) user.tex messages.inc
 prog.chk: $(INCLUDES) prog.tex
Index: Makefile.fpc
===================================================================
--- Makefile.fpc    (revision 559)
+++ Makefile.fpc    (working copy)
@@ -110,6 +110,8 @@
   ifdef CSSFILE
     FPDOCHTMLOPTS+=--css-file=$(CSSFILE)
   endif
+  RTLCHMOPTS="--chm-title=(RTL) Runtime Library"
+  FCLCHMOPTS="--chm-title=(FCL) Free Component Library"
 endif
 
 
@@ -674,11 +676,11 @@
 endif  # USEHEVEA
 
 fcl.chk: $(FCLXML)
-        $(FPDOC) $(FCLOPTS) --format=$(HTMLFMT) --output=fcl$(HTMLSUFFIX) $(FPDOCHTMLOPTS)
+        $(FPDOC) $(FCLOPTS) --format=$(HTMLFMT) --output=fcl$(HTMLSUFFIX) $(FPDOCHTMLOPTS) $(FCLCHMOPTS)
         touch fcl.chk
 
 rtl.chk: $(RTLXML)
-        $(FPDOC) $(RTLOPTS) --format=$(HTMLFMT) --output=rtl$(HTMLSUFFIX) $(FPDOCHTMLOPTS)
+        $(FPDOC) $(RTLOPTS) --format=$(HTMLFMT) --output=rtl$(HTMLSUFFIX) $(FPDOCHTMLOPTS) $(RTLCHMOPTS)
         touch rtl.chk
 
 user.chk: $(INCLUDES) user.tex messages.inc
_______________________________________________
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-devel

Reply via email to