You can subscribe to this list here.
2004 |
Jan
|
Feb
(11) |
Mar
(5) |
Apr
(18) |
May
|
Jun
|
Jul
|
Aug
|
Sep
(61) |
Oct
|
Nov
(1) |
Dec
|
---|---|---|---|---|---|---|---|---|---|---|---|---|
2005 |
Jan
|
Feb
(2) |
Mar
(3) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Taj M. <taj...@us...> - 2005-03-20 02:37:09
|
Update of /cvsroot/davinci/davinci In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28425 Modified Files: davinci.pas defaultplugin.pas Log Message: Updated Copyright to 2004-2005. Index: defaultplugin.pas =================================================================== RCS file: /cvsroot/davinci/davinci/defaultplugin.pas,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** defaultplugin.pas 5 Apr 2004 06:00:53 -0000 1.4 --- defaultplugin.pas 20 Mar 2005 02:36:28 -0000 1.5 *************** *** 31,35 **** PInfo^.Name := 'defaultplugin'; ! PInfo^.Author :='(C)2004 The DaVinci team'; PInfo^.Description := 'This plugin is for testing purposes only.'; PInfo^.Version :='0.1'; --- 31,35 ---- PInfo^.Name := 'defaultplugin'; ! PInfo^.Author :='(C)2004-2005 The DaVinci team'; PInfo^.Description := 'This plugin is for testing purposes only.'; PInfo^.Version :='0.1'; Index: davinci.pas =================================================================== RCS file: /cvsroot/davinci/davinci/davinci.pas,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** davinci.pas 5 Apr 2004 20:03:57 -0000 1.8 --- davinci.pas 20 Mar 2005 02:36:28 -0000 1.9 *************** *** 1,3 **** ! { Copyright (C) 2004 DaVinci team This program is free software; you can redistribute it and/or modify it --- 1,3 ---- ! { Copyright (C) 2004-2005 DaVinci team This program is free software; you can redistribute it and/or modify it |
From: Taj M. <taj...@us...> - 2005-03-20 02:37:09
|
Update of /cvsroot/davinci/davinci/sdk In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28425/sdk Modified Files: dvplugin.pas Log Message: Updated Copyright to 2004-2005. Index: dvplugin.pas =================================================================== RCS file: /cvsroot/davinci/davinci/sdk/dvplugin.pas,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** dvplugin.pas 16 Feb 2005 05:23:58 -0000 1.1 --- dvplugin.pas 20 Mar 2005 02:36:28 -0000 1.2 *************** *** 1,3 **** ! { Copyright (C) 2004 DaVinci Team This program is free software; you can redistribute it and/or modify it --- 1,3 ---- ! { Copyright (C) 2004-2005 DaVinci Team This program is free software; you can redistribute it and/or modify it |
From: Taj M. <taj...@us...> - 2005-03-20 02:19:23
|
Update of /cvsroot/davinci/docs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv17557 Modified Files: Makefile Log Message: Added a missing semi-colon. Now the Makefile actually works. Index: Makefile =================================================================== RCS file: /cvsroot/davinci/docs/Makefile,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** Makefile 15 Sep 2004 20:12:36 -0000 1.4 --- Makefile 20 Mar 2005 02:19:14 -0000 1.5 *************** *** 19,23 **** # fop command ! FOP=fop # Path to HTML XSL file --- 19,23 ---- # fop command ! FOP=fop.sh # Path to HTML XSL file *************** *** 39,43 **** echo "Man pages are up to date." ! .PHONY clean clean: rm -f $(HTMLDOCS) $(PDFDOCS) $(MANDOCS) --- 39,43 ---- echo "Man pages are up to date." ! .PHONY clean: clean: rm -f $(HTMLDOCS) $(PDFDOCS) $(MANDOCS) |
From: Elio C. G. <el...@us...> - 2005-02-16 05:24:07
|
Update of /cvsroot/davinci/davinci/sdk In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14571 Added Files: dvplugin.pas Log Message: SDK - Work in progress. --- NEW FILE: dvplugin.pas --- { Copyright (C) 2004 DaVinci Team This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. } { This unit is part of the DaVinci Universal IDE Software Development Kit. It has all the required types and functions to create DaVinci plugins and to register functions and shared variables with with DaVinci. } unit dvplugin; {$mode objfpc}{$H+} interface uses Classes, SysUtils; type { Includes SDK shared types } {$I sdktypes} { Plugin exceptions } EPluginSystemNotInitialized=class(Exception); { This procedure must be called in the plugin's Start method to register the functions it exports. } procedure RegisterFunction(Fun: TPluginFunction); { Enables plugin's shared variables. Use with caution! } procedure RegisterInteger(var Variable: Integer); { This function is to be called internally by DaVinci. You must export this funtion in your plugin in order to work. } procedure InitializePluginSystem(FunTableAddAddress: TDVFunTableAdd; VarTableAddAddress: TDVVarTableAdd); implementation var FunTableAdd: TDVFunTableAdd; VarTableAdd: TDVVarTableAdd; procedure InitializePluginSystem(FunTableAddAddress: TDVFunTableAdd; VarTableAddAddress: TDVVarTableAdd); begin FunTableAdd := FunTableAddAddress; VarTableAdd := VarTableAddAddress; end; procedure RegisterFunction(Fun: TPluginFunction); begin if Assigned(FunTableAdd) then FunTableAdd(Fun) else raise EPluginSystemNotInitialized.Create('Plugin system not initialized!'); end; procedure RegisterInteger(var Variable: Integer); begin if Assigned(VarTableAdd) then VarTableAdd(Variable) else raise EPluginSystemNotInitialized.Create('Plugin system not initialized!'); end; end. |
From: Elio C. G. <el...@us...> - 2005-02-16 05:22:08
|
Update of /cvsroot/davinci/davinci/sdk In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14265/sdk Log Message: Directory /cvsroot/davinci/davinci/sdk added to the repository |
From: Elio C. G. <el...@us...> - 2004-11-03 20:39:38
|
Update of /cvsroot/davinci/davinci In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv3475 Added Files: davinci.lpi Log Message: Added davici.lpi to ease compilation of Davinci (without Makefile). --- NEW FILE: davinci.lpi --- <?xml version="1.0"?> <CONFIG> <ProjectOptions> <Version Value="3"/> <General> <ProjectType Value="Custom program"/> <MainUnit Value="0"/> <ActiveEditorIndexAtStart Value="2"/> <IconPath Value="./"/> <TargetFileExt Value=""/> <Title Value="davinci"/> </General> <JumpHistory Count="0" HistoryIndex="-1"/> <Units Count="5"> <Unit0> <CursorPos X="18" Y="29"/> <EditorIndex Value="1"/> <Filename Value="davinci.pas"/> <IsPartOfProject Value="True"/> <Loaded Value="True"/> <TopLine Value="1"/> <UnitName Value="davinci"/> <UsageCount Value="41"/> </Unit0> <Unit1> <CursorPos X="13" Y="2"/> <EditorIndex Value="0"/> <Filename Value="plugins/plugins.pas"/> <Loaded Value="True"/> <TopLine Value="1"/> <UnitName Value="plugins"/> <UsageCount Value="20"/> </Unit1> <Unit2> <CursorPos X="24" Y="2496"/> <Filename Value="/home/eliocg/lazarus/examples/testtools.inc"/> <TopLine Value="2480"/> <UsageCount Value="8"/> </Unit2> <Unit3> <CursorPos X="3" Y="29"/> <Filename Value="gui/dvclasses.pas"/> <IsPartOfProject Value="True"/> <TopLine Value="7"/> <UnitName Value="dvclasses"/> <UsageCount Value="31"/> </Unit3> <Unit4> <CursorPos X="16" Y="1"/> <EditorIndex Value="2"/> <Filename Value="gui/dvcontrols.pas"/> <IsPartOfProject Value="True"/> <Loaded Value="True"/> <TopLine Value="1"/> <UnitName Value="dvcontrols"/> <UsageCount Value="31"/> </Unit4> </Units> <PublishOptions> <Version Value="2"/> <IgnoreBinaries Value="False"/> <IncludeFileFilter Value="*.(pas|pp|inc|lfm|lpr|lrs|lpi|lpk|sh|xml)"/> <ExcludeFileFilter Value="*.(bak|ppu|ppw|o|so);*~;backup"/> </PublishOptions> <RunParams> <local> <FormatVersion Value="1"/> <HostApplicationFilename Value="/usr/bin/x-terminal-emulator"/> <CommandLineParams Value="$(Projectdir)/$(ProjectName)"/> <LaunchingApplication PathPlusParams="/usr/X11R6/bin/xterm -T 'Lazarus Run Output' -e $(LazarusDir)/tools/runwait.sh $(TargetCmdLine)"/> </local> </RunParams> </ProjectOptions> <CompilerOptions> <Version Value="2"/> <SearchPaths> <OtherUnitFiles Value="plugins/"/> </SearchPaths> <CodeGeneration> <Generate Value="Faster"/> </CodeGeneration> <Other> <CompilerPath Value="$(CompPath)"/> <ExecuteAfter> <ShowAllMessages Value="True"/> </ExecuteAfter> </Other> </CompilerOptions> </CONFIG> |
From: Elio C. G. <el...@us...> - 2004-09-15 20:12:55
|
Update of /cvsroot/davinci/docs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25913 Modified Files: Makefile Log Message: New clean target Index: Makefile =================================================================== RCS file: /cvsroot/davinci/docs/Makefile,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** Makefile 15 Sep 2004 17:47:21 -0000 1.3 --- Makefile 15 Sep 2004 20:12:36 -0000 1.4 *************** *** 39,42 **** --- 39,46 ---- echo "Man pages are up to date." + .PHONY clean + clean: + rm -f $(HTMLDOCS) $(PDFDOCS) $(MANDOCS) + # Pattern rule to generate html with xsltproc %.html: %.xml |
From: Elio C. G. <el...@us...> - 2004-09-15 20:09:06
|
Update of /cvsroot/davinci/docs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24781 Modified Files: README Log Message: Major rewrite. Includes new makefile usage and where to get tools. Index: README =================================================================== RCS file: /cvsroot/davinci/docs/README,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** README 13 Sep 2004 20:46:33 -0000 1.1 --- README 15 Sep 2004 20:08:53 -0000 1.2 *************** *** 1,5 **** ! To Generate a HTML: ! xsltproc -o AboutPlugins.html xsl/tldp-one-page.xsl AboutPlugins.xml - To Generate a PDF: - ~/fop-0.20.5/fop.sh -xml AboutPlugins.xml -xsl xsl/fo/tldp-print.xsl -pdf AboutPlugins.pdf --- 1,27 ---- ! $Date$ ! ! Here you can find all documentation available for DaVinci in docbook format. ! For your convenience we also provide the XLS stylesheet to transform to other ! documents. ! ! Provided is also a Makefile capable of generating HTML, PDF and ManPages. To ! use it you'll need the xsltproc wich is part of GNOME, and Apache FOP available ! at http://xml.apache.org/fop/. ! ! To generate all documentation in HTML format simply run ! make ! ! If this doen't work make sure that you have xsltproc installed and reachable. ! You can edit the Makefile to change the location modifing the XSLTPROC ! variable. ! ! Other possible invokations of this makefile are ! make html # Generate HTML ! make pdf # Generate PDF ! make manpages # Generate UNIX manpages ! make clean # Delete all generated html, pdf and manpages ! You can invoke make with a filename to generate it provided that there is an ! existing Docbook document. e.g. ! make about-plugins.html ! will proccess about-plugins.xml to generate about-plugins.html |
From: Elio C. G. <el...@us...> - 2004-09-15 17:47:30
|
Update of /cvsroot/davinci/docs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28914 Modified Files: Makefile Log Message: Updated to new file names Index: Makefile =================================================================== RCS file: /cvsroot/davinci/docs/Makefile,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** Makefile 15 Sep 2004 03:53:47 -0000 1.2 --- Makefile 15 Sep 2004 17:47:21 -0000 1.3 *************** *** 7,14 **** # Add here the names of the html documents you want to make ! HTMLDOCS=AboutPlugins.html MasterPlan.html # Add here the names of the PDF documents you want to make ! PDFDOCS=AboutPlugins.pdf MasterPlan.pdf # Add here the names of the manpages you want to make --- 7,14 ---- # Add here the names of the html documents you want to make ! HTMLDOCS=about-plugins.html master-plan.html # Add here the names of the PDF documents you want to make ! PDFDOCS=about-plugins.pdf master-plan.pdf # Add here the names of the manpages you want to make |
From: Taj M. <taj...@us...> - 2004-09-15 03:54:04
|
Update of /cvsroot/davinci/docs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv4829 Modified Files: Makefile Log Message: Changed Makefile to use TLDP XSL stylesheet (looks better). Index: Makefile =================================================================== RCS file: /cvsroot/davinci/docs/Makefile,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** Makefile 15 Sep 2004 00:53:42 -0000 1.1 --- Makefile 15 Sep 2004 03:53:47 -0000 1.2 *************** *** 22,26 **** # Path to HTML XSL file ! HTMLXSL=xsl/html/docbook.xsl # Path to the PDF XSL file PDFXSL=xsl/fo/tldp-print.xsl --- 22,26 ---- # Path to HTML XSL file ! HTMLXSL=xsl/html/tldp-one-page.xsl # Path to the PDF XSL file PDFXSL=xsl/fo/tldp-print.xsl |
From: Taj M. <taj...@us...> - 2004-09-15 03:53:27
|
Update of /cvsroot/davinci/docs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv4785 Modified Files: MasterPlan.xml Log Message: Oops...missed a <listitem> tag and made my name jump all over the place. Index: MasterPlan.xml =================================================================== RCS file: /cvsroot/davinci/docs/MasterPlan.xml,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** MasterPlan.xml 13 Sep 2004 21:51:47 -0000 1.1 --- MasterPlan.xml 15 Sep 2004 03:53:16 -0000 1.2 *************** *** 379,389 **** </listitem> ! <para> ! <para>Taj Morton</para> <para> ! Official Title: Propaganda Minister, Programmer ! Email: <email>taj at wildgardenseed dot com</email> </para> ! </para> </itemizedlist> </chapter> --- 379,391 ---- </listitem> ! <listitem> <para> ! <para>Taj Morton</para> ! <para> ! Official Title: Propaganda Minister, Programmer<sbr/> ! Email: <email>taj at wildgardenseed dot com</email> ! </para> </para> ! </listitem> </itemizedlist> </chapter> |
From: Taj M. <taj...@us...> - 2004-09-15 03:01:34
|
Update of /cvsroot/davinci/docs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29020 Removed Files: master-plan.lyx Log Message: Removed the (old) lyx version of master-plan.xml. --- master-plan.lyx DELETED --- |
From: Taj M. <taj...@us...> - 2004-09-15 02:46:28
|
Update of /cvsroot/davinci/docs/TechDetails In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv26812/TechDetails Removed Files: PluginSystem.docbook PluginSystem.txt Log Message: Removed PluginSystem.docbook[txt] from TechDetails folder as TechDetails is gonna be removed (The document was Elio's plugin system, which is already in CVS) --- PluginSystem.docbook DELETED --- --- PluginSystem.txt DELETED --- |
From: Elio C. G. <el...@us...> - 2004-09-15 00:53:52
|
Update of /cvsroot/davinci/docs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7964 Added Files: Makefile Log Message: Makefile for documentation --- NEW FILE: Makefile --- # This makefile generate documentation form the docbook sources. # Available targets are: # html: Create html files # pdf: Create pdf documents # manpages: Create unix manpages # Default: html # Add here the names of the html documents you want to make HTMLDOCS=AboutPlugins.html MasterPlan.html # Add here the names of the PDF documents you want to make PDFDOCS=AboutPlugins.pdf MasterPlan.pdf # Add here the names of the manpages you want to make MANDOCS=davinci.1 # xsltproc command XSLTPROC=xsltproc # fop command FOP=fop # Path to HTML XSL file HTMLXSL=xsl/html/docbook.xsl # Path to the PDF XSL file PDFXSL=xsl/fo/tldp-print.xsl # Path to manpage XSL file MANXSL=xsl/manpages/docbook.xsl # You should not need to edit below this line. # Create html html: $(HTMLDOCS) echo "HTML is up to date." pdf: $(PDFDOCS) echo "PDF is up to date." manpages: $(MANDOCS) echo "Man pages are up to date." # Pattern rule to generate html with xsltproc %.html: %.xml $(XSLTPROC) -o $@ $(HTMLXSL) $< # Pattern rule to generate PDF with fop %.pdf: %.xml $(FOP) -xml $< -xsl $(PDFXSL) -pdf $@ # Pattern rule to generate manpages with xsltproc %.1: %.xml $(XSLTPROC) -o $@ $(MANXSL) $< |
From: Taj M. <taj...@us...> - 2004-09-13 21:51:57
|
Update of /cvsroot/davinci/docs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv31202 Added Files: MasterPlan.xml Log Message: Converted MasterPlan.lyx to DocBook --- NEW FILE: MasterPlan.xml --- <?xml version="1.0" standalone="no"?> <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN" "dtd/docbookx.dtd"> <book> <title>DaVinci Master Plan</title> <chapter id="ch1"> <title>Abstract</title> <para> This document contains the master plan for DaVinci. It contains all the information you could ever want to know about DaVinci, its technical details, time line, etc. Questions and comments should be directed to our mailing list (<email>dav...@li...</email>), or our propaganda minister (Taj Morton, <email>ta...@wi...</email>). </para> </chapter> <chapter id="ch2"> <title>Introduction to DaVinci</title> <para> DaVinci is a cross-platform development environment for any programming language, but designed for web development. </para> <para> It is licensed under the GNU General Public License. It basically states that the internal source code of a program or must be freely available for everyone to see, allow redistribution of the program or source code for free, and allow others to use the code in other GPL'd (or GPL compatible) projects. All documents created by the DaVinci project will be released under the GNU Free Documentation License. This document allows copying and modification of documentation, similar to the GPL. You can find these documents in the appendix. <emphasis>Plugins for DaVinci be released under the GPL</emphasis>. Please read the GPL FAQ (<ulink url="http://www.gnu.org/licenses/gpl-faq.html#GPLAndPlugins"> http://www.gnu.org/licenses/gpl-faq.html#GPLAndPlugins</ulink>) for an explanation of why. Is is similar to the Linux kernel, were all modules must be GPL'd. </para> <sect1 id="another-development-environment"> <title>Why another development environment?</title> <para> Why do we need another development environment for programming? Because people need choice. If you look at the current offerings for development environments you will see that yes, there certainly are a lot of them, however, most of them are only for one or two languages (except, of course, in the case of emacs/vi!). Programmers need a familiar environment to work in. For example, when I write code for websites, I use Quanta, when I develop in C, I use emacs, when I write Pascal code, I use Kate. Oh, I switch between them a lot too. </para> <para> <emphasis>However, we are not trying a "Jack of all trades, master of none." development environment.</emphasis> </para> </sect1> </chapter> <chapter id="ch3"> <title>Technical Details</title> <para> Since DaVinci is a complex computer program, we thought that it might be wise to describe how it's written. </para> <para> As stated previously, DaVinci will be written in FreePascal using the Lazarus Component Library (LCL). FreePascal has been ported to many different platforms, including Linux, Windows, BSD, Macintosh (Classic and OS X), and others. The LCL has been ported to GTK1, Win32, and several other toolkits are under the works. GTK2 may be available by version 1.0 of Lazarus. Qt development is also in the works. </para> <sect1 id="plugins"> <title>Plugins</title> <para> Plugins are central to DaVinci. They essentially create it. Without plugins, DaVinci would be little more than a simple window with a useless code editor and menus. Plugins are a dynamically linked shared libraries (called DLLs under windows, shared objects (.so) under Linux. </para> <para> Plugins make function calls to the plugin SDK. The SDK will either be linked into DaVinci or be a shared library. </para> </sect1> <sect1 id="gui"> <title>GUI</title> <para> We will use the Lazarus Component Library for our GUI. The Lazarus project was started to be a free replacement for Delphi. The LCL is a multi-platform/toolkit library for GUI development written in FreePascal. Hopefully it will become more mature and support more toolkits as it progresses. </para> </sect1> <sect1 id="coding-standards"> <title>DaVinci Coding Standards</title> <para> The DaVinci project will follow the Borland coding standards found at <ulink url="http://community.borland.com/soapbox/techvoyage/article/1,1795,10280,00.html"> http://community.borland.com/soapbox/techvoyage/article/1,1795,10280,00.html </ulink> </para> <para> [Fill in details] </para> </sect1> </chapter> <chapter id="ch4"> <title>DaVinci Communication and Website</title> <para> The DaVinci project is hosted at Sourceforge.net, the largest Open Source development website, hosting thousands of Open Source projects. Sourceforge.net provides web hosting, mailing lists, CVS repositories, bug tracking, support requests, hosting of project releases, and more. </para> <sect1 id="mailing-lists"> <title>Mailing Lists</title> <para> The DaVinci team communicates over mailing lists. Read-only archives are available for anyone to read. Mailing lists used by DaVinci include: </para> <itemizedlist> <listitem> <para> <ulink url="http://lists.sourceforge.net/mailman/listinfo/davinci-develop"> davinci-develop</ulink>: For developers of DaVinci, or just keeping up on progress. </para> </listitem> <listitem> <para> <ulink url="http://lists.sourceforge.net/mailman/listinfo/davinci-users"> davinci-users</ulink>: If you are having problems doing something with DaVinci, or just want to help others, then you might want to join this list. </para> </listitem> <listitem> <para> <ulink url="http://lists.sourceforge.net/mailman/listinfo/davinci-announce"> davinci-announce</ulink>: Messages sent to this list are generally just announcents of major happenings about DaVinci, for example new versions and ports. </para> </listitem> <listitem> <para> <ulink url="http://lists.sourceforge.net/mailman/listinfo/davinci-cvs">davinci-cvs</ulink>: Whenever a commit happens to a module in the DaVinci CVS repository, a message is posted to this list. Good for keeping up on progress or seeing if your bug has been fixed. </para> </listitem> </itemizedlist> </sect1> <sect1 id="website"> <title>Website</title> <para> The DaVinci website is located at <ulink url="http://davinci.sourceforge.net">http://davinci.sourceforge.net</ulink>. Watch this site for news and updates about DaVinci. </para> </sect1> <sect1 id="cvs"> <title>CVS</title> <para> You can access the DaVinci CVS repository in several ways. You can browse threw the code online using ViewCVS at <ulink url="http://cvs.sourceforge.net/viewcvs.py/davinci">http://cvs.sourceforge.net/viewcvs.py/davinci</ulink>. Also, you can download the code onto your computer through anonymous CVS. Please note that the ViewCVS code is synced with the development tree every 5 hours. If you don't need the very latest code, then you can download a nightly CVS tarball from <ulink url="http://cvs.sourceforge.net/cvstarballs/davinci-cvsroot.tar.bz2"> http://cvs.sourceforge.net/cvstarballs/davinci-cvsroot.tar.bz2 </ulink> </para> <para> If you want to get the very latest code, then you can use anonymous CVS to download the code from the CVS repository. These servers are also synced with the development tree every 5 hours. To download the davinci code, you can use the cvs program included with most Linux distributions. If you don't have CVS, then you can download it for free from http://www.cvshome.org. Type (no line breaks): </para> <para> <code> cvs -d pserver:ano...@cv...:/cvsroot/davinci login </code> </para> <para> When prompted for a password, press <ENTER>, there is none. </para> <para> Then, type (all one line) You can leave off the -z3 if you have a nice fast connection or a slow processor. The -z option enables compression. Don't use any more than 6 on a public server: </para> <para> <code> cvs -z3 -d:pserver:ano...@cv...:/cvsroot/davinci co <emphasis>modulename</emphasis> </code> </para> <itemizedlist> <listitem><para>davinci</para></listitem> <listitem><para>docs</para></listitem> <listitem><para>plugins</para></listitem> </itemizedlist> <para> davinci holds the core DaVinci code, as well as the plugin SDK. docs holds documentation for DaVinci, including documentation of the plugin SDK. plugins holds various plugins for DaVinci. </para> <para> If you have already downloaded a module, and wish to update it to the latest code, change to that directory (usually the same name as the module), and run: </para> <para> <code>cvs login</code> </para> <para> Press <ENTER> when prompted for a password Then, run: </para> <para> <code>cvs update</code> </para> <para> You do not need to enter the module name or repository because the directory you're in already has all the information CVS needs to download the changes. </para> </sect1> </chapter> <chapter id="ch5"> <title>Gory Technical Details</title> <sect1 id="plugin-implementation"> <title>Plugin Implementation</title> <para> You can see a graphical explanation of the plugin system in DV_PluginSystem.pdf. Basically, they are implemented as dynamic libraries and loaded at runtime. During loading, symbols are resolved (by loading other plugins). If resolving of symbols fails, then the plugin loading fails. It's like modprobe under Linux. (For those of you who don't know, modprobe is used to load drivers and other extra baggage into the Linux kernel at runtime.). </para> <orderedlist> <listitem><para>TPlugin.Create('APlugin') called by DV.</para></listitem> <listitem> <para> TPlugin.Create opens the file and resolves symbols. If symbols are resolved correctly, then the plugin is loaded. Otherwise, plugins are recursively loaded until all symbols have been resolved. In the event that symbols cannot be resolved, loading fails. It also fills TPlugin.Info with data. TPlugin.Start and Tplugin.Stop are set to the correct pointer values (using GetProcAddress). </para> </listitem> <listitem> <para> DV calls TPlugin.Start. From here, the plugin starts taking care of itself. It can now call any functions in the SDK. Common first steps would to call SetupGUI (a function within the plugin that would make calls to the SDK to assemble the GUI). </para> </listitem> <listitem> <para> When DaVinci is begin shut down, it loops through all TPlugins calling TPlugin.Stop. The plugin then takes necessary steps to free memory, destroy GUI, etc. Plugins may also be unloaded at runtime (<emphasis>if they are not used by any other plugin!</emphasis>). </para> </listitem> </orderedlist> </sect1> <sect1 id="toolkits"> <title>Toolkits</title> <itemizedlist> <listitem> <para> Since we are using Lazarus and the LCL, we can switch between any GUI toolkit that we want. However, we will be using the GTK1 toolkit because it it modern, fast, and complete. When the LCL wrappers for GTK2 are released, we will switch to it. Why not Qt? Well, we could start a holy war over this, but the major reasons are: </para> </listitem> <listitem> <para> Qt isn't used by many programs. KDE uses Qt as their base, but has their own set of components (KButton, KEdit, etc). We would have to use the Qt base dialogs for saving, opening, etc (or write our own). Not optimal. Also, Qt is not themed by KDE or GTK and will stick out like a sore thumb on the desktop. </para> </listitem> </itemizedlist> <para> If a wrapper for KDE was written for the LCL, the we would would certainly consider using it. However, at this time, a KDE wrapper doesn't look very promising. Also, since DaVinci is open source, you may choose what ever toolkit you want. </para> <para> Under Windows, the Win32 toolkit will be used. </para> <para> Under Macintosh (classic or OSX), the default toolkit will be used. </para> <para> Lazarus may be ported to other operating systems. The default toolkit will be used on this system as well. </para> </sect1> </chapter> <chapter id="ch6"> <title>Contact Information</title> <itemizedlist> <listitem> <para>Elio Cuevas Gómez</para> <para> Official Title: Programming Guru<sbr/> Email: <email>elcugo at yahoo dot com dot mx</email> </para> </listitem> <listitem> <para>Paul Hampson</para> <para> Official Title: Windows Version Maintainer, Editor, Programmer<sbr/> Email: <email>p dot hampson at dsl dot pipex dot com</email> </para> </listitem> <para> <para>Taj Morton</para> <para> Official Title: Propaganda Minister, Programmer Email: <email>taj at wildgardenseed dot com</email> </para> </para> </itemizedlist> </chapter> <appendix id="revisions"> <title>Revisions</title> <para> 0.5 Converted into DocBook format. Taj Morton <email>ta...@wi...</email> Monday 13 September 2004 </para> <para> 0.4 Typos. Added section on toolkits. Added section on coding standards as well. Taj Morton <email>ta...@wi...</email> Tuesday 13 April 2004. </para> <para> 0.3 Added section on plugin implementation. Created graphical description of plugins as well. Fixed Typos. Proof Read. Taj Morton <email>ta...@wi...</email> Friday 09 April 2004. </para> <para> 0.2 Typos Elio Cuevas Gómez <email>el...@ya...</email> Wednesday 07 April 2004. </para> <para> 0.1 First Draft Taj Morton <email>ta...@wi...</email> Wednesday 07 April 2004. </para> </appendix> </book> |
From: Taj M. <taj...@us...> - 2004-09-13 20:46:42
|
Update of /cvsroot/davinci/docs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv17327 Added Files: README Log Message: Added README about how to generate files from DocBooks. --- NEW FILE: README --- To Generate a HTML: xsltproc -o AboutPlugins.html xsl/tldp-one-page.xsl AboutPlugins.xml To Generate a PDF: ~/fop-0.20.5/fop.sh -xml AboutPlugins.xml -xsl xsl/fo/tldp-print.xsl -pdf AboutPlugins.pdf |
From: Taj M. <taj...@us...> - 2004-09-12 20:14:50
|
Update of /cvsroot/davinci/docs/xls/template In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25978/xls/template Added Files: ChangeLog README biblioentry.xsl testtemplate.xml titlepage.xsl Log Message: Added XSL support files --- NEW FILE: README --- This directory contains rudimentary support for the notion of stylesheet templates. The idea is that if you want to change the behavior of the stylesheets, for example, processing different bibliography elements, you will construct a tempate document that describes what you want and then process that template with the "template" stylesheet. The result of this processing will be a customization layer for the DocBook XSL Stylesheets that does what you want. This removes the stylesheet customizer from the burdon of figuring out how the stylesheets work and modifying them. In theory, anyway... --- NEW FILE: titlepage.xsl --- <?xml version='1.0'?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:t="http://nwalsh.com/docbook/xsl/template/1.0" xmlns:param="http://nwalsh.com/docbook/xsl/template/1.0/param" xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" xmlns:fo="http://www.w3.org/1999/XSL/Format" exclude-result-prefixes="doc t param" version='1.0'> <!-- ******************************************************************** $Id: titlepage.xsl,v 1.1 2004/09/12 20:14:41 tajmorton Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. See ../README or http://nwalsh.com/docbook/xsl/ for copyright and other information. ******************************************************************** --> [...1174 lines suppressed...] <xsl:value-of select="$orlist"/> </xsl:when> <xsl:otherwise> <xsl:call-template name="element-or-list"> <xsl:with-param name="elements" select="$elements"/> <xsl:with-param name="element.count" select="$element.count"/> <xsl:with-param name="count" select="$count+1"/> <xsl:with-param name="orlist"> <xsl:value-of select="$orlist"/> <xsl:if test="not($orlist='')">|</xsl:if> <xsl:value-of select="name($elements[position()=$count])"/> </xsl:with-param> </xsl:call-template> </xsl:otherwise> </xsl:choose> </xsl:template> <!-- ==================================================================== --> </xsl:stylesheet> --- NEW FILE: biblioentry.xsl --- <!-- THIS IS BROKEN --> <!-- ==================================================================== --> <xsl:template match="t:biblioentry"> <xsl:text>

</xsl:text> <xsl:element name="xsl:template"> <xsl:attribute name="match">biblioentry</xsl:attribute> <xsl:text>
</xsl:text> <xsl:element name="xsl:variable"> <xsl:attribute name="name">id</xsl:attribute> <xsl:element name="xsl:call-template"> <xsl:attribute name="name">object.id</xsl:attribute> </xsl:element> </xsl:element> <xsl:text>
</xsl:text> <xsl:element name="{@wrapper}"> <xsl:attribute name="id">{$id}</xsl:attribute> <xsl:attribute name="class">{name(.)}</xsl:attribute> <xsl:text>
 </xsl:text> <xsl:element name="a"> <xsl:attribute name="name">{$id}</xsl:attribute> </xsl:element> <xsl:apply-templates mode="biblioentry"/> <xsl:text>
</xsl:text> </xsl:element> <xsl:text>
</xsl:text> </xsl:element> <!-- <xsl:text>

</xsl:text> <xsl:element name="xsl:template"> <xsl:attribute name="match">biblioentry/biblioset</xsl:attribute> <xsl:apply-templates mode="biblioentry"/> </xsl:element> --> </xsl:template> <xsl:template match="t:if" mode="biblioentry"> <xsl:element name="xsl:if"> <xsl:attribute name="test"> <xsl:value-of select="@test"/> </xsl:attribute> <xsl:apply-templates mode="biblioentry"/> </xsl:element> </xsl:template> <xsl:template match="t:text" mode="biblioentry"> <xsl:element name="xsl:text"> <xsl:apply-templates/> </xsl:element> </xsl:template> <xsl:template match="*" mode="biblioentry"> <xsl:text>
 </xsl:text> <xsl:element name="xsl:apply-templates"> <xsl:attribute name="select"> <xsl:value-of select="name(.)"/> </xsl:attribute> <xsl:attribute name="mode">bibliography.mode</xsl:attribute> </xsl:element> </xsl:template> <xsl:template match="t:or" mode="biblioentry"> <xsl:text>
 </xsl:text> <xsl:element name="xsl:apply-templates"> <xsl:attribute name="select"> <xsl:call-template name="element-or-list"/> </xsl:attribute> <xsl:attribute name="mode">bibliography.mode</xsl:attribute> </xsl:element> </xsl:template> --- NEW FILE: testtemplate.xml --- <!-- OBSOLETE, don't try to use this file. Instead, copy the titlepage.templates.xml file from either fo or html and edit that --> <t:templates xmlns:t="http://nwalsh.com/docbook/xsl/template/1.0" base-stylesheet="../html/docbook.xsl"> <t:titlepage element="article" wrapper="div" class="titlepage"> <t:titlepage-content side="recto"> <title/> <subtitle/> <corpauthor/> <authorgroup/> <author/> <othercredit/> <releaseinfo/> <copyright/> <legalnotice/> <pubdate/> <revision/> <revhistory/> <abstract/> </t:titlepage-content> <t:titlepage-content side="verso"> </t:titlepage-content> <t:titlepage-separator> <hr/> </t:titlepage-separator> <t:titlepage-before side="recto"> </t:titlepage-before> <t:titlepage-before side="verso"> </t:titlepage-before> </t:titlepage> </t:templates> --- NEW FILE: ChangeLog --- 2004-07-16 Robert Stayton <bob...@us...> * testtemplate.xml: Marked as obsolete. 2004-04-25 Jirka Kosek <ko...@us...> * titlepage.xsl: Containers for recto and verso part of titlepage (div or fo:block) are emitted only when there is content for recto/verso titlepage. This prevents emitting empty div elements between chapter/section titles and first para which leads to big space. Fixed bug #930954. * titlepage.xsl: Fixed cut'n'paste mistake. Attributes must be attached to wrapper element, not to variable. 2004-01-29 Norman Walsh <nw...@us...> * titlepage.xsl: Support 'info' everywhere 2003-01-20 Norman Walsh <nw...@us...> * titlepage.xsl: SIGNIFICANT changes to the titlepage template setup. See RELEASE-NOTES. 2002-01-28 Norman Walsh <nw...@us...> * testtemplate.xml: Bug #502952: testtemple.xml was incorrect 2001-08-01 Norman Walsh <nw...@us...> * titlepage.xsl: Add t and param to the excluded result prefixes 2001-05-21 Norman Walsh <nw...@us...> * titlepage.xsl: Reworked titlepage template processing to support use of more interesting predicates. Note: in previous versions, at most one title, subtitle, or titleabbrev element would be processed for each title page. In the new design, if you have multiple title, subtitle, or titleabbrev elements inside an info wrapper (you shouldn't!), they will all be processed. 2001-04-02 Norman Walsh <nw...@us...> * README, biblioentry.xsl, testtemplate.xml, titlepage.xsl: New file. |
From: Taj M. <taj...@us...> - 2004-09-12 20:14:50
|
Update of /cvsroot/davinci/docs/xls/tools/olink In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25978/xls/tools/olink Added Files: ChangeLog olink-common.xsl olink.xsl olinkchunk.xsl olinksum.dtd Log Message: Added XSL support files --- NEW FILE: olink.xsl --- <?xml version="1.0"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:import href="../html/docbook.xsl"/> <xsl:include href="olink-common.xsl"/> <xsl:output method="xml" indent="yes" doctype-public="-//Norman Walsh//DTD DocBook OLink Summary V1.2//EN" doctype-system="http://docbook.sourceforge.net/???"/> <xsl:param name="base-uri" select="''"/> <xsl:template name="olink.href.target"> <xsl:param name="nd" select="."/> <xsl:value-of select="$base-uri"/> <xsl:call-template name="href.target"> <xsl:with-param name="object" select="$nd"/> </xsl:call-template> </xsl:template> </xsl:stylesheet> --- NEW FILE: olinkchunk.xsl --- <?xml version="1.0"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:import href="http://docbook.sourceforge.net/release/xsl/current/html/chunk.xsl"/> <xsl:include href="olink-common.xsl"/> <xsl:output method="xml" indent="yes" doctype-public="-//Norman Walsh//DTD DocBook OLink Summary V1.2//EN" doctype-system="http://docbook.sourceforge.net/release/xsl/current/tools/olink/olinksum.dtd"/> <xsl:template name="olink.href.target"> <xsl:param name="nd" select="."/> <xsl:call-template name="href.target"> <xsl:with-param name="object" select="$nd"/> </xsl:call-template> </xsl:template> </xsl:stylesheet> --- NEW FILE: olink-common.xsl --- <?xml version="1.0"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:template match="/"> <xsl:apply-templates mode="olink.mode"/> </xsl:template> <xsl:template name="attrs"> <xsl:param name="nd" select="."/> <xsl:attribute name="type"> <xsl:value-of select="local-name(.)"/> </xsl:attribute> <xsl:attribute name="href"> <xsl:call-template name="olink.href.target"> <xsl:with-param name="object" select="$nd"/> </xsl:call-template> </xsl:attribute> <xsl:attribute name="label"> <xsl:apply-templates select="$nd" mode="label.markup"/> </xsl:attribute> <xsl:if test="$nd/@id"> <xsl:attribute name="id"> <xsl:value-of select="$nd/@id"/> </xsl:attribute> </xsl:if> <xsl:if test="$nd/@lang"> <xsl:attribute name="lang"> <xsl:value-of select="$nd/@lang"/> </xsl:attribute> </xsl:if> <xsl:if test="$nd/@arch"> <xsl:attribute name="arch"> <xsl:value-of select="$nd/@arch"/> </xsl:attribute> </xsl:if> <xsl:if test="$nd/@conformance"> <xsl:attribute name="conformance"> <xsl:value-of select="$nd/@conformance"/> </xsl:attribute> </xsl:if> <xsl:if test="$nd/@os"> <xsl:attribute name="os"> <xsl:value-of select="$nd/@os"/> </xsl:attribute> </xsl:if> <xsl:if test="$nd/@revision"> <xsl:attribute name="revision"> <xsl:value-of select="$nd/@revision"/> </xsl:attribute> </xsl:if> <xsl:if test="$nd/@userlevel"> <xsl:attribute name="userlevel"> <xsl:value-of select="$nd/@userlevel"/> </xsl:attribute> </xsl:if> <xsl:if test="$nd/@vendor"> <xsl:attribute name="vendor"> <xsl:value-of select="$nd/@vendor"/> </xsl:attribute> </xsl:if> <xsl:if test="$nd/@condition"> <xsl:attribute name="condition"> <xsl:value-of select="$nd/@condition"/> </xsl:attribute> </xsl:if> <xsl:if test="$nd/@security"> <xsl:attribute name="security"> <xsl:value-of select="$nd/@security"/> </xsl:attribute> </xsl:if> </xsl:template> <xsl:template name="div"> <xsl:param name="nd" select="."/> <div> <xsl:call-template name="attrs"> <xsl:with-param name="nd" select="$nd"/> </xsl:call-template> <ttl> <xsl:apply-templates select="$nd" mode="title.markup"/> </ttl> <objttl> <xsl:apply-templates select="$nd" mode="object.title.markup"/> </objttl> <xref> <xsl:choose> <xsl:when test="$nd/@xreflabel"> <xsl:call-template name="xref.xreflabel"> <xsl:with-param name="target" select="$nd"/> </xsl:call-template> </xsl:when> <xsl:otherwise> <xsl:apply-templates select="$nd" mode="xref-to"/> </xsl:otherwise> </xsl:choose> </xref> <xsl:apply-templates mode="olink.mode"/> </div> </xsl:template> <xsl:template name="obj"> <xsl:param name="nd" select="."/> <obj> <xsl:call-template name="attrs"> <xsl:with-param name="nd" select="$nd"/> </xsl:call-template> <ttl> <xsl:apply-templates select="$nd" mode="title.markup"/> </ttl> <objttl> <xsl:apply-templates select="$nd" mode="object.title.markup"/> </objttl> <xref> <xsl:choose> <xsl:when test="$nd/@xreflabel"> <xsl:call-template name="xref.xreflabel"> <xsl:with-param name="target" select="$nd"/> </xsl:call-template> </xsl:when> <xsl:otherwise> <xsl:apply-templates select="$nd" mode="xref-to"/> </xsl:otherwise> </xsl:choose> </xref> </obj> </xsl:template> <xsl:template match="text()|processing-instruction()|comment()" mode="olink.mode"> <!-- nop --> </xsl:template> <xsl:template match="*" mode="olink.mode"> <!-- nop --> </xsl:template> <xsl:template match="set" mode="olink.mode"> <xsl:call-template name="div"/> </xsl:template> <xsl:template match="book" mode="olink.mode"> <xsl:call-template name="div"/> </xsl:template> <xsl:template match="preface|chapter|appendix" mode="olink.mode"> <xsl:call-template name="div"/> </xsl:template> <xsl:template match="part|reference" mode="olink.mode"> <xsl:call-template name="div"/> </xsl:template> <xsl:template match="article" mode="olink.mode"> <xsl:call-template name="div"/> </xsl:template> <xsl:template match="refentry" mode="olink.mode"> <xsl:call-template name="div"/> </xsl:template> <xsl:template match="section|sect1|sect2|sect3|sect4|sect5" mode="olink.mode"> <xsl:call-template name="div"/> </xsl:template> <xsl:template match="refsection|refsect1|refsect2|refsect3" mode="olink.mode"> <xsl:call-template name="div"/> </xsl:template> <xsl:template match="figure|example|table" mode="olink.mode"> <xsl:call-template name="obj"/> </xsl:template> <xsl:template match="equation[title]" mode="olink.mode"> <xsl:call-template name="div"/> </xsl:template> </xsl:stylesheet> --- NEW FILE: olinksum.dtd --- <!-- $Id: olinksum.dtd,v 1.1 2004/09/12 20:14:41 tajmorton Exp $ DTD for OLINK Summary Information Common declaration: <!DOCTYPE div PUBLIC "-//Norman Walsh//DTD DocBook OLink Summary V1.2//EN"> --> <!ENTITY % commonatts " type CDATA #IMPLIED name CDATA #IMPLIED href CDATA #IMPLIED id ID #IMPLIED label CDATA #IMPLIED lang CDATA #IMPLIED arch CDATA #IMPLIED conformance CDATA #IMPLIED os CDATA #IMPLIED revision CDATA #IMPLIED userlevel CDATA #IMPLIED vendor CDATA #IMPLIED"> <!ELEMENT div (ttl, objttl, xref, obj*, div*)> <!ATTLIST div %commonatts;> <!ELEMENT obj (ttl, objttl, xref)> <!ATTLIST obj %commonatts;> <!ENTITY % inlines "tt|i|sub|sup|span"> <!ELEMENT ttl (#PCDATA|%inlines;)*> <!ELEMENT objttl (#PCDATA|%inlines;)*> <!ELEMENT xref (#PCDATA|%inlines;)*> <!ELEMENT tt (#PCDATA|%inlines;)*> <!-- typewriter (courier) --> <!ATTLIST tt class CDATA #IMPLIED > <!ELEMENT i (#PCDATA|%inlines;)*> <!-- italics --> <!ATTLIST i class CDATA #IMPLIED > <!ELEMENT sub (#PCDATA|%inlines;)*> <!-- subscript --> <!ATTLIST sub class CDATA #IMPLIED > <!ELEMENT sup (#PCDATA|%inlines;)*> <!-- superscript --> <!ATTLIST sup class CDATA #IMPLIED > <!ELEMENT span (#PCDATA|%inlines;)*> <!-- span --> <!ATTLIST span class CDATA #IMPLIED > --- NEW FILE: ChangeLog --- 2001-08-11 Robert Stayton <bob...@us...> * olink-common.xsl: Fixed the attributes that were all being saved to the same id attribute. Also added lang as a supported attribute. * olinksum.dtd: Added lang as a supported attribute. 2001-08-01 Norman Walsh <nw...@us...> * olink-common.xsl, olink.xsl, olinkchunk.xsl, olinksum.dtd: New file. |
From: Taj M. <taj...@us...> - 2004-09-12 20:14:50
|
Update of /cvsroot/davinci/docs/xls/tools/profile In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25978/xls/tools/profile Added Files: ChangeLog profile.xsl Log Message: Added XSL support files --- NEW FILE: ChangeLog --- 2002-03-03 Jirka Kosek <ko...@us...> * profile.xsl: Old profiling stylesheet moved to new location. Old stylesheet issues warning when invoked. We should remove it completely after some time. 2001-12-07 Jirka Kosek <ko...@us...> * profile.xsl: Added support for multiple targets in one parameter 2001-08-01 Norman Walsh <nw...@us...> * profile.xsl: New file. --- NEW FILE: profile.xsl --- <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:template match="/"> <xsl:message terminate="yes">WARNING: Profiling stylesheet has moved to new location profiling/profile.xsl. This new version uses different names of parameters. Please use e.g. "profile.os" instead of simply "os". You can now also perform profiling in a single step as an integral part of transformation. Check new stylesheets profile-docbook.xsl and profile-chunk.xsl. </xsl:message> </xsl:template> </xsl:stylesheet> |
From: Taj M. <taj...@us...> - 2004-09-12 20:14:50
|
Update of /cvsroot/davinci/docs/xls/tools In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25978/xls/tools Added Files: ChangeLog Log Message: Added XSL support files --- NEW FILE: ChangeLog --- 2001-08-01 Norman Walsh <nw...@us...> * profile.xsl: Moved profile.xsl to profile subdirectory 2001-07-31 Jirka Kosek <ko...@us...> * profile.xsl: New file. |
From: Taj M. <taj...@us...> - 2004-09-12 20:14:49
|
Update of /cvsroot/davinci/docs/xls/profiling In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25978/xls/profiling Added Files: ChangeLog profile-mode.xsl profile.xsl strip-attributes.xsl xsl2profile.xsl Log Message: Added XSL support files --- NEW FILE: ChangeLog --- 2003-09-28 Norman Walsh <nw...@us...> * xsl2profile.xsl: Fixed tool name in comment 2003-04-01 Jirka Kosek <ko...@us...> * profile.xsl: Generated <!DOCTYPE> now refers to version 4.2 of DTD 2002-08-02 Jirka Kosek <ko...@us...> * xsl2profile.xsl: Fixed bug #590074. Profiling should work with FO again. 2002-05-15 Jirka Kosek <ko...@us...> * xsl2profile.xsl: Hopefully fixed bug #549736. Single-pass profiling should also work in FO stylesheet from now. 2002-03-18 Norman Walsh <nw...@us...> * strip-attributes.xsl: New file. 2002-03-03 Jirka Kosek <ko...@us...> * profile-mode.xsl: Added new stylesheet parameters for profiling. * profile.xsl: New file. 2002-03-01 Jirka Kosek <ko...@us...> * profile-mode.xsl, xsl2profile.xsl: New file. --- NEW FILE: profile.xsl --- <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <!-- Include common profiling stylesheet --> <xsl:include href="profile-mode.xsl"/> <!-- Generate DocBook instance with correct DOCTYPE --> <xsl:output method="xml" doctype-public="-//OASIS//DTD DocBook XML V4.2//EN" doctype-system="http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"/> <!-- Profiling parameters --> <xsl:param name="profile.arch" select="''"/> <xsl:param name="profile.condition" select="''"/> <xsl:param name="profile.conformance" select="''"/> <xsl:param name="profile.lang" select="''"/> <xsl:param name="profile.os" select="''"/> <xsl:param name="profile.revision" select="''"/> <xsl:param name="profile.revisionflag" select="''"/> <xsl:param name="profile.role" select="''"/> <xsl:param name="profile.security" select="''"/> <xsl:param name="profile.userlevel" select="''"/> <xsl:param name="profile.vendor" select="''"/> <xsl:param name="profile.attribute" select="''"/> <xsl:param name="profile.value" select="''"/> <xsl:param name="profile.separator" select="';'"/> <!-- Call common profiling mode --> <xsl:template match="/"> <xsl:apply-templates select="." mode="profile"/> </xsl:template> </xsl:stylesheet> --- NEW FILE: xsl2profile.xsl --- <?xml version="1.0"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xslo="http://www.w3.org/1999/XSL/TransformAlias" xmlns:fo="http://www.w3.org/1999/XSL/Format" exclude-result-prefixes="fo" version="1.0"> <xsl:include href="../lib/lib.xsl"/> <xsl:output method="xml" encoding="US-ASCII"/> <xsl:namespace-alias stylesheet-prefix="xslo" result-prefix="xsl"/> <xsl:preserve-space elements="*"/> <xsl:template match="/"> <xsl:text> </xsl:text> <xsl:comment>This file was created automatically by xsl2profile</xsl:comment> <xsl:text> </xsl:text> <xsl:comment>from the DocBook XSL stylesheets. Do not edit this file.</xsl:comment> <xsl:text> </xsl:text> <xsl:apply-templates/> <xsl:text> </xsl:text> </xsl:template> <!-- Make sure we override some templates and parameters appropriately for XHTML --> <xsl:template match="xsl:stylesheet"> <xsl:copy> <xsl:attribute name="exslt:dummy" xmlns:exslt="http://exslt.org/common">dummy</xsl:attribute> <xsl:if test="not(@extension-element-prefixes)"> <xsl:attribute name="extension-element-prefixes">exslt</xsl:attribute> </xsl:if> <xsl:if test="not(@exclude-result-prefixes)"> <xsl:attribute name="exclude-result-prefixes">exslt</xsl:attribute> </xsl:if> <xsl:for-each select="@*"> <xsl:choose> <xsl:when test="local-name(.) = 'extension-element-prefixes' or local-name(.) = 'exclude-result-prefixes'"> <xsl:attribute name="{local-name(.)}"><xsl:value-of select="concat(., ' exslt')"/></xsl:attribute> </xsl:when> <xsl:otherwise> <xsl:attribute name="{local-name(.)}"><xsl:value-of select="."/></xsl:attribute> </xsl:otherwise> </xsl:choose> </xsl:for-each> <xsl:apply-templates/> </xsl:copy> </xsl:template> <xsl:template match="*"> <xsl:copy> <xsl:copy-of select="@*"/> <xsl:apply-templates/> </xsl:copy> </xsl:template> <xsl:template match="comment()|processing-instruction()|text()"> <xsl:copy/> </xsl:template> <xsl:template match="xsl:template[@match='/' or @name='hhc-main' or @name='hhp-main']"> <xsl:if test="@match='/'"> <xslo:include href="../profiling/profile-mode.xsl"/> </xsl:if> <xsl:copy> <xsl:copy-of select="@*"/> <xslo:variable name="profiled-content"> <xslo:apply-templates select="." mode="profile"/> </xslo:variable> <xslo:variable name="profiled-nodes" select="exslt:node-set($profiled-content)"/> <xsl:apply-templates mode="correct"/> </xsl:copy> </xsl:template> <xsl:template match="*[@select='/']" mode="correct"> <xsl:copy> <xsl:for-each select="@*"> <xsl:choose> <xsl:when test="local-name(.) = 'select' and string(.) = '/'"> <xsl:attribute name="{local-name(.)}">$profiled-nodes</xsl:attribute> </xsl:when> <xsl:otherwise> <xsl:attribute name="{local-name(.)}"><xsl:value-of select="."/></xsl:attribute> </xsl:otherwise> </xsl:choose> </xsl:for-each> <xsl:apply-templates mode="correct"/> </xsl:copy> </xsl:template> <xsl:template match='*[contains(@*, "key('id',$rootid)")]' mode="correct" priority="2"> <xsl:copy> <xsl:for-each select="@*"> <xsl:choose> <xsl:when test='contains(., "key('id',$rootid)")'> <xsl:attribute name="{local-name(.)}"> <xsl:call-template name="string.subst"> <xsl:with-param name="string" select="."/> <xsl:with-param name="target">key('id',$rootid)</xsl:with-param> <xsl:with-param name="replacement">$profiled-nodes//*[@id=$rootid]</xsl:with-param> </xsl:call-template> </xsl:attribute> </xsl:when> <xsl:otherwise> <xsl:attribute name="{local-name(.)}"><xsl:value-of select="."/></xsl:attribute> </xsl:otherwise> </xsl:choose> </xsl:for-each> <xsl:apply-templates mode="correct"/> </xsl:copy> </xsl:template> <!-- FO stylesheet has apply-templates without select, we must detect it by context --> <xsl:template match="fo:root//xsl:apply-templates" mode="correct"> <xsl:copy> <xsl:copy-of select="@*"/> <xsl:attribute name="select">$profiled-nodes/node()</xsl:attribute> <xsl:apply-templates mode="correct"/> </xsl:copy> </xsl:template> <xsl:template match="*" mode="correct"> <xsl:copy> <xsl:copy-of select="@*"/> <xsl:apply-templates mode="correct"/> </xsl:copy> </xsl:template> <xsl:template match="comment()|processing-instruction()|text()" mode="correct"> <xsl:copy/> </xsl:template> </xsl:stylesheet> --- NEW FILE: profile-mode.xsl --- <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <!-- Copy all non-element nodes --> <xsl:template match="@*|text()|comment()|processing-instruction()" mode="profile"> <xsl:copy/> </xsl:template> <!-- Profile elements based on input parameters --> <xsl:template match="*" mode="profile"> <xsl:variable name="arch.content"> <xsl:if test="@arch"> <xsl:call-template name="cross.compare"> <xsl:with-param name="a" select="$profile.arch"/> <xsl:with-param name="b" select="@arch"/> </xsl:call-template> </xsl:if> </xsl:variable> <xsl:variable name="arch.ok" select="not(@arch) or not($profile.arch) or $arch.content != '' or @arch = ''"/> <xsl:variable name="condition.content"> <xsl:if test="@condition"> <xsl:call-template name="cross.compare"> <xsl:with-param name="a" select="$profile.condition"/> <xsl:with-param name="b" select="@condition"/> </xsl:call-template> </xsl:if> </xsl:variable> <xsl:variable name="condition.ok" select="not(@condition) or not($profile.condition) or $condition.content != '' or @condition = ''"/> <xsl:variable name="conformance.content"> <xsl:if test="@conformance"> <xsl:call-template name="cross.compare"> <xsl:with-param name="a" select="$profile.conformance"/> <xsl:with-param name="b" select="@conformance"/> </xsl:call-template> </xsl:if> </xsl:variable> <xsl:variable name="conformance.ok" select="not(@conformance) or not($profile.conformance) or $conformance.content != '' or @conformance = ''"/> <xsl:variable name="lang.content"> <xsl:if test="@lang"> <xsl:call-template name="cross.compare"> <xsl:with-param name="a" select="$profile.lang"/> <xsl:with-param name="b" select="@lang"/> </xsl:call-template> </xsl:if> </xsl:variable> <xsl:variable name="lang.ok" select="not(@lang) or not($profile.lang) or $lang.content != '' or @lang = ''"/> <xsl:variable name="os.content"> <xsl:if test="@os"> <xsl:call-template name="cross.compare"> <xsl:with-param name="a" select="$profile.os"/> <xsl:with-param name="b" select="@os"/> </xsl:call-template> </xsl:if> </xsl:variable> <xsl:variable name="os.ok" select="not(@os) or not($profile.os) or $os.content != '' or @os = ''"/> <xsl:variable name="revision.content"> <xsl:if test="@revision"> <xsl:call-template name="cross.compare"> <xsl:with-param name="a" select="$profile.revision"/> <xsl:with-param name="b" select="@revision"/> </xsl:call-template> </xsl:if> </xsl:variable> <xsl:variable name="revision.ok" select="not(@revision) or not($profile.revision) or $revision.content != '' or @revision = ''"/> <xsl:variable name="revisionflag.content"> <xsl:if test="@revisionflag"> <xsl:call-template name="cross.compare"> <xsl:with-param name="a" select="$profile.revisionflag"/> <xsl:with-param name="b" select="@revisionflag"/> </xsl:call-template> </xsl:if> </xsl:variable> <xsl:variable name="revisionflag.ok" select="not(@revisionflag) or not($profile.revisionflag) or $revisionflag.content != '' or @revisionflag = ''"/> <xsl:variable name="role.content"> <xsl:if test="@role"> <xsl:call-template name="cross.compare"> <xsl:with-param name="a" select="$profile.role"/> <xsl:with-param name="b" select="@role"/> </xsl:call-template> </xsl:if> </xsl:variable> <xsl:variable name="role.ok" select="not(@role) or not($profile.role) or $role.content != '' or @role = ''"/> <xsl:variable name="security.content"> <xsl:if test="@security"> <xsl:call-template name="cross.compare"> <xsl:with-param name="a" select="$profile.security"/> <xsl:with-param name="b" select="@security"/> </xsl:call-template> </xsl:if> </xsl:variable> <xsl:variable name="security.ok" select="not(@security) or not($profile.security) or $security.content != '' or @security = ''"/> <xsl:variable name="userlevel.content"> <xsl:if test="@userlevel"> <xsl:call-template name="cross.compare"> <xsl:with-param name="a" select="$profile.userlevel"/> <xsl:with-param name="b" select="@userlevel"/> </xsl:call-template> </xsl:if> </xsl:variable> <xsl:variable name="userlevel.ok" select="not(@userlevel) or not($profile.userlevel) or $userlevel.content != '' or @userlevel = ''"/> <xsl:variable name="vendor.content"> <xsl:if test="@vendor"> <xsl:call-template name="cross.compare"> <xsl:with-param name="a" select="$profile.vendor"/> <xsl:with-param name="b" select="@vendor"/> </xsl:call-template> </xsl:if> </xsl:variable> <xsl:variable name="vendor.ok" select="not(@vendor) or not($profile.vendor) or $vendor.content != '' or @vendor = ''"/> <xsl:variable name="attribute.content"> <xsl:if test="@*[local-name()=$profile.attribute]"> <xsl:call-template name="cross.compare"> <xsl:with-param name="a" select="$profile.value"/> <xsl:with-param name="b" select="@*[local-name()=$profile.attribute]"/> </xsl:call-template> </xsl:if> </xsl:variable> <xsl:variable name="attribute.ok" select="not(@*[local-name()=$profile.attribute]) or not($profile.value) or $attribute.content != '' or @*[local-name()=$profile.attribute] = '' or not($profile.attribute)"/> <xsl:if test="$arch.ok and $condition.ok and $conformance.ok and $lang.ok and $os.ok and $revision.ok and $revisionflag.ok and $role.ok and $security.ok and $userlevel.ok and $vendor.ok and $attribute.ok"> <xsl:copy> <xsl:apply-templates select="@*|node()" mode="profile"/> </xsl:copy> </xsl:if> </xsl:template> <!-- Returns non-empty string if list in $b contains one ore more values from list $a --> <xsl:template name="cross.compare"> <xsl:param name="a"/> <xsl:param name="b"/> <xsl:param name="sep" select="$profile.separator"/> <xsl:variable name="head" select="substring-before(concat($a, $sep), $sep)"/> <xsl:variable name="tail" select="substring-after($a, $sep)"/> <xsl:if test="contains(concat($sep, $b, $sep), concat($sep, $head, $sep))">1</xsl:if> <xsl:if test="$tail"> <xsl:call-template name="cross.compare"> <xsl:with-param name="a" select="$tail"/> <xsl:with-param name="b" select="$b"/> </xsl:call-template> </xsl:if> </xsl:template> </xsl:stylesheet> --- NEW FILE: strip-attributes.xsl --- <?xml version="1.0"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:output method="xml"/> <xsl:param name="attributes" select="''"/> <xsl:variable name="strip-attributes" select="concat(' ', normalize-space($attributes), ' ')"/> <xsl:template match="@*|text()|comment()|processing-instruction()"> <xsl:copy/> </xsl:template> <xsl:template match="*"> <xsl:copy> <xsl:for-each select="@*"> <xsl:if test="not(contains($strip-attributes, concat(' ',name(.),' ')))"> <xsl:copy-of select="."/> </xsl:if> </xsl:for-each> <xsl:apply-templates select="node()"/> </xsl:copy> </xsl:template> </xsl:stylesheet> |
From: Taj M. <taj...@us...> - 2004-09-12 20:14:48
|
Update of /cvsroot/davinci/docs/xls/manpages In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25978/xls/manpages Added Files: ChangeLog README docbook.xsl lists.xsl sect23.xsl synop.xsl xref.xsl Log Message: Added XSL support files --- NEW FILE: lists.xsl --- <?xml version='1.0'?> <!-- vim:set sts=2 shiftwidth=2 syntax=sgml: --> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version='1.0'> <xsl:template match="para[ancestor::listitem or ancestor::step]| simpara[ancestor::listitem or ancestor::step]| remark[ancestor::listitem or ancestor::step]"> <xsl:for-each select="node()"> <xsl:choose> <xsl:when test="self::literallayout|self::screen|self::programlisting| self::itemizedlist|self::orderedlist|self::variablelist| self::simplelist"> <xsl:text> </xsl:text> <xsl:apply-templates select="."/> </xsl:when> <xsl:when test="self::text()"> <xsl:if test="starts-with(translate(.,' ',' '), ' ') and preceding-sibling::node()[name(.)!='']"> <xsl:text> </xsl:text> </xsl:if> <xsl:variable name="content"> <xsl:apply-templates select="."/> </xsl:variable> <xsl:value-of select="normalize-space($content)"/> <xsl:if test="translate(substring(., string-length(.), 1),' ',' ') = ' ' and following-sibling::node()[name(.)!='']"> <xsl:text> </xsl:text> </xsl:if> </xsl:when> <xsl:otherwise> <xsl:variable name="content"> <xsl:apply-templates select="."/> </xsl:variable> <xsl:value-of select="normalize-space($content)"/> </xsl:otherwise> </xsl:choose> </xsl:for-each> <xsl:text> </xsl:text> <xsl:if test="following-sibling::para or following-sibling::simpara or following-sibling::remark"> <!-- Make sure multiple paragraphs within a list item don't --> <!-- merge together. --> <xsl:text> </xsl:text> </xsl:if> </xsl:template> <xsl:template match="varlistentry|glossentry"> <xsl:text> .TP </xsl:text> <xsl:apply-templates/> </xsl:template> <xsl:template match="variablelist[ancestor::listitem or ancestor::step]| glosslist[ancestor::listitem or ancestor::step]"> <xsl:text> .RS </xsl:text> <xsl:apply-templates/> <xsl:text> .RE .IP </xsl:text> </xsl:template> <xsl:template match="varlistentry/term|glossterm"> <xsl:variable name="content"> <xsl:apply-templates/> </xsl:variable> <xsl:value-of select="normalize-space($content)"/> <xsl:text>, </xsl:text> </xsl:template> <xsl:template match="varlistentry/term[position()=last()]|glossterm[position()=last()]" priority="2"> <xsl:variable name="content"> <xsl:apply-templates/> </xsl:variable> <xsl:value-of select="normalize-space($content)"/> </xsl:template> <xsl:template match="varlistentry/listitem|glossdef"> <xsl:text> </xsl:text> <xsl:apply-templates/> </xsl:template> <xsl:template match="itemizedlist/listitem"> <xsl:text>\(bu </xsl:text> <xsl:apply-templates/> <xsl:if test="following-sibling::listitem"> <xsl:text>.TP </xsl:text> </xsl:if> </xsl:template> <xsl:template match="orderedlist/listitem|procedure/step"> <xsl:number format="1."/> <xsl:text> </xsl:text> <xsl:apply-templates/> <xsl:if test="position()!=last()"> <xsl:text>.TP </xsl:text> </xsl:if> </xsl:template> <xsl:template match="itemizedlist|orderedlist|procedure"> <xsl:text> .TP 3 </xsl:text> <xsl:apply-templates/> <xsl:text>.LP </xsl:text> </xsl:template> <xsl:template match="itemizedlist[ancestor::listitem or ancestor::step]| orderedlist[ancestor::listitem or ancestor::step]| procedure[ancestor::listitem or ancestor::step]"> <xsl:text> .RS .TP 3 </xsl:text> <xsl:apply-templates/> <xsl:text>.LP .RE .IP </xsl:text> </xsl:template> <!-- simplelist --> <xsl:template match="simplelist[@type='inline']"> <xsl:apply-templates/> </xsl:template> <xsl:template match="simplelist[@type='inline']/member"> <xsl:apply-templates/> <xsl:text>, </xsl:text> </xsl:template> <xsl:template match="simplelist[@type='inline']/member[position()=last()]" priority="2"> <xsl:apply-templates/> </xsl:template> <xsl:template match="simplelist[@type='vert' and @columns='1']"> <xsl:text> .IP </xsl:text> <xsl:apply-templates/> <xsl:text>.LP </xsl:text> </xsl:template> <xsl:template match="simplelist[@type='vert' and @columns='1']/member"> <xsl:apply-templates/> <xsl:text> </xsl:text> </xsl:template> </xsl:stylesheet> --- NEW FILE: synop.xsl --- <?xml version='1.0'?> <!-- vim:set sts=2 shiftwidth=2 syntax=sgml: --> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version='1.0'> <xsl:template match="synopfragment"> <xsl:text> .PP </xsl:text> <xsl:apply-templates/> </xsl:template> <!-- there's a bug were an <arg> that's not inside a <group> isn't made bold --> <xsl:template match="group|arg"> <xsl:variable name="choice" select="@choice"/> <xsl:variable name="rep" select="@rep"/> <xsl:variable name="sepchar"> <xsl:choose> <xsl:when test="ancestor-or-self::*/@sepchar"> <xsl:value-of select="ancestor-or-self::*/@sepchar"/> </xsl:when> <xsl:otherwise> <xsl:text> </xsl:text> </xsl:otherwise> </xsl:choose> </xsl:variable> <xsl:if test="position()>1"><xsl:value-of select="$sepchar"/></xsl:if> <xsl:choose> <xsl:when test="$choice='plain'"> <!-- do nothing --> </xsl:when> <xsl:when test="$choice='req'"> <xsl:value-of select="$arg.choice.req.open.str"/> </xsl:when> <xsl:when test="$choice='opt'"> <xsl:value-of select="$arg.choice.opt.open.str"/> </xsl:when> <xsl:otherwise> <xsl:value-of select="$arg.choice.def.open.str"/> </xsl:otherwise> </xsl:choose> <xsl:variable name="arg"> <xsl:apply-templates/> </xsl:variable> <xsl:choose> <xsl:when test="local-name(.) = 'arg' and not(ancestor::arg)"> <!-- Prevent breaking up an argument by wrapping it --> <xsl:call-template name="replace-string"> <xsl:with-param name="content" select="normalize-space($arg)"/> <xsl:with-param name="replace" select="' '"/> <xsl:with-param name="with" select="'\ '"/> </xsl:call-template> </xsl:when> <xsl:otherwise> <xsl:value-of select="normalize-space($arg)"/> </xsl:otherwise> </xsl:choose> <xsl:choose> <xsl:when test="$rep='repeat'"> <xsl:value-of select="$arg.rep.repeat.str"/> </xsl:when> <xsl:when test="$rep='norepeat'"> <xsl:value-of select="$arg.rep.norepeat.str"/> </xsl:when> <xsl:otherwise> <xsl:value-of select="$arg.rep.def.str"/> </xsl:otherwise> </xsl:choose> <xsl:choose> <xsl:when test="$choice='plain'"> <xsl:if test='arg'> <xsl:value-of select="$arg.choice.plain.close.str"/> </xsl:if> </xsl:when> <xsl:when test="$choice='req'"> <xsl:value-of select="$arg.choice.req.close.str"/> </xsl:when> <xsl:when test="$choice='opt'"> <xsl:value-of select="$arg.choice.opt.close.str"/> </xsl:when> <xsl:otherwise> <xsl:value-of select="$arg.choice.def.close.str"/> </xsl:otherwise> </xsl:choose> </xsl:template> <xsl:template match="group/arg"> <xsl:if test="position()>1"> <xsl:value-of select="$arg.or.sep"/> </xsl:if> <!-- Don't use the 'bold' named template here since there may be --> <!-- child elements that require different markup (such as --> <!-- <replaceable>). --> <xsl:text>\fB</xsl:text> <xsl:variable name="arg"> <xsl:apply-templates/> </xsl:variable> <xsl:call-template name="replace-string"> <xsl:with-param name="content" select="normalize-space($arg)"/> <xsl:with-param name="replace" select="' '"/> <xsl:with-param name="with" select="'\ '"/> </xsl:call-template> <xsl:text>\fR</xsl:text> </xsl:template> <xsl:template match="command"> <xsl:apply-templates mode="bold" select="."/> </xsl:template> <xsl:template match="function[not(ancestor::command)]"> <xsl:apply-templates mode="bold" select="."/> </xsl:template> <xsl:template match="parameter[not(ancestor::command)]"> <xsl:apply-templates mode="italic" select="."/> </xsl:template> <xsl:template match="sbr" /> <xsl:template match="cmdsynopsis"> <xsl:text>.ad l .hy 0 </xsl:text> <xsl:text>.HP </xsl:text> <xsl:value-of select="string-length (normalize-space (command)) + 1"/> <xsl:text> </xsl:text> <xsl:apply-templates/> <xsl:text> .ad .hy </xsl:text> </xsl:template> <xsl:template match="synopsis"> <xsl:text> .nf </xsl:text> <xsl:apply-templates/> <xsl:text> .fi </xsl:text> </xsl:template> <xsl:template match="void"> <xsl:text>void</xsl:text> </xsl:template> <xsl:template match="varargs"> <xsl:text>...</xsl:text> </xsl:template> <xsl:template match="funcsynopsisinfo"> <xsl:text> </xsl:text> <xsl:apply-templates/> <xsl:text> .sp </xsl:text> </xsl:template> <!-- disable hyphenation, and use left-aligned filling for the duration of the synopsis, so that line breaks only occur between separate paramdefs. --> <xsl:template match="funcsynopsis"> <xsl:text>.ad l .hy 0 </xsl:text> <xsl:apply-templates/> <xsl:text>.ad .hy </xsl:text> </xsl:template> <!-- TODO: Handle K&R-style parameter lists Comment that used to go with the paramdef template, which is now obsolete and thus deleted --> <!-- replaces all spaces within the funcdef/paramdef with non-breaking spaces --> <xsl:template match="paramdef|funcdef"> <xsl:variable name="rcontent"> <xsl:apply-templates select="*|./*|text()"/> </xsl:variable> <xsl:variable name="content"> <xsl:value-of select="normalize-space($rcontent)"/> </xsl:variable> <xsl:call-template name="replace-string"> <xsl:with-param name="content" select="$content"/> <xsl:with-param name="replace" select="' '"/> <xsl:with-param name="with" select="'\ '"/> </xsl:call-template> <xsl:if test="local-name(.) = 'paramdef' and (following-sibling::paramdef or following-sibling::varargs)"> <xsl:text>, </xsl:text> </xsl:if> </xsl:template> <xsl:template match="funcprototype"> <xsl:variable name="funcprototype"> <xsl:apply-templates select="funcdef"/> </xsl:variable> <xsl:text>.HP </xsl:text> <xsl:value-of select="string-length (normalize-space ($funcprototype)) - 5"/> <xsl:text> </xsl:text> <xsl:value-of select="normalize-space ($funcprototype)"/> <xsl:text>\ (</xsl:text> <xsl:apply-templates select="void|paramdef|varargs"/> <xsl:text>); </xsl:text> </xsl:template> </xsl:stylesheet> --- NEW FILE: ChangeLog --- 2004-02-04 <tw...@us...> * docbook.xsl, lists.xsl: Place-holder implementation for simplelist. 2004-01-30 <tw...@us...> * docbook.xsl: Add replacement dingbat characters. 2003-12-24 <tw...@us...> * lists.xsl: .RS/.RE doesn't nest precisely. Use .IP to fix up the environment. Part of bug #852714. * lists.xsl: Handle comments inside lists (part of bug #852714). 2003-12-15 <tw...@us...> * lists.xsl: Fix nested lists properly. 2003-12-13 <tw...@us...> * docbook.xsl: Use .nf environment for literallayout. * docbook.xsl: Prevent duplicate .nf environments inside informalexample or screen. All fiftenn allowed contained element in these elements will provide its own. 2003-12-12 <tw...@us...> * docbook.xsl: Last commit reverted a previous change -- redo it. 2003-12-11 <tw...@us...> * docbook.xsl: Remove unused rule. * docbook.xsl: Fix literallayout inside para. * lists.xsl: Fix singly-nested lists. 2003-12-10 <tw...@us...> * docbook.xsl: Don't mess up roff markup in tables. 2003-11-06 <tw...@us...> * lists.xsl, synop.xsl: 2003-11-06 Tim Waugh <tw...@re...> * lists.xsl: Normalize space in itemizedlist/listitem. * synop.xsl: Likewise. 2003-05-23 <tw...@us...> * synop.xsl: Only escape option spaces once when args are nested. 2003-05-15 <tw...@us...> * docbook.xsl: Handle refsection as well as refsect1|refsect2 in the manpages stylesheet. 2003-05-09 Norman Walsh <nw...@us...> * synop.xsl, synop.xsl: Patch from Tim Waugh 2003-04-12 Norman Walsh <nw...@us...> * docbook.xsl, synop.xsl: Patches from Tim Waugh 2003-03-15 <jo...@us...> * docbook.xsl: If the refmeta contains no manvolnum, then: - if the refentry contains a funcsynopsis, default to section 3 - otherwise, default to section 1 * docbook.xsl: Don't try and generate man pages with spaces in the filename; replace spaces with underscores. 2003-01-05 <jo...@us...> * docbook.xsl: Second half of fix for #628888: add template for <optional>. * docbook.xsl: Add replacement ulink template from xmlto, fixing bug #619500. Written by Tim Waugh. * docbook.xsl: First part of fix for #628888: - don't use generic italic/bold templates for things like <replaceable>, since <replaceable> can contain other elements, but the templates discard any non-PCDATA content. * docbook.xsl: Prevent a line beginning with a '.' character being interpreted as a troff macro by inserting \& (a zero-width space) before every '.' in text. * xref.xsl: Make xref work again, though I'm not sure why it stopped working. 2002-09-20 Norman Walsh <nw...@us...> * synop.xsl: Joe Orton: Use replace-string from lib.xsl 2002-09-18 Norman Walsh <nw...@us...> * db2man.xsl, docbook.xsl: Renamed * docbook.xsl: Joe Orton: patch to get rid of extra whitespace in author names 2002-09-17 Norman Walsh <nw...@us...> * db2man.xsl: Another patch from Joe Orton * db2man.xsl, synop.xsl: Patch from Joe Orton 2002-07-04 Norman Walsh <nw...@us...> * README, db2man.xsl, lists.xsl, sect23.xsl, synop.xsl, xref.xsl: New file. --- NEW FILE: README --- README for db2man by Martijn van Beers (lo...@us...) I've been working on some stylesheets to convert <refentry>s to man format. I thought I'd submit what I have for inclusion in the docbook-xsl package. See also: http://sourceforge.net/tracker/index.php?func=detail&aid=468779&group_id=21935&atid=373749 --- NEW FILE: sect23.xsl --- <?xml version='1.0'?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version='1.0'> <xsl:template match="refsect2"> <xsl:text> .Sh "</xsl:text> <xsl:value-of select="substring-before(title[1],' ')"/> <xsl:text>" </xsl:text> <xsl:apply-templates/> </xsl:template> <xsl:template match="refsect2/title"></xsl:template> <xsl:template match="refsect2/programlisting"></xsl:template> <xsl:template match="funcsynopsis"> <xsl:text> .BI "</xsl:text> <xsl:apply-templates/> </xsl:template> <xsl:template match="funcsynopsis/funcprototype"> <xsl:apply-templates/> <xsl:text> ); .br </xsl:text> </xsl:template> <xsl:template match="funcsynopsis/funcprototype/funcdef"> <xsl:apply-templates/> <xsl:value-of select="function"/> <xsl:text> (</xsl:text> </xsl:template> <xsl:template match="funcsynopsis/funcprototype/funcdef/function"></xsl:template> <xsl:template match="funcsynopsis/funcprototype/paramdef"> <xsl:apply-templates/> <xsl:text>" </xsl:text> <xsl:value-of select="parameter"/> <xsl:choose> <xsl:when test="following-sibling::paramdef"> <xsl:text> ", </xsl:text> </xsl:when> </xsl:choose> </xsl:template> <xsl:template match="funcsynopsis/funcprototype/paramdef/parameter"></xsl:template> <xsl:template match="refsect2/informaltable/tgroup/tbody/row"> <xsl:text>.Ip "\(bu \s-1</xsl:text> <xsl:value-of select="entry[1]/parameter[1]"/> <xsl:text>\s0 \- </xsl:text> <xsl:value-of select="normalize-space(entry[2])"/> <xsl:text>" </xsl:text> </xsl:template> <xsl:template match="refsect1"> <xsl:text> .SH "</xsl:text> <xsl:value-of select="translate(title[1],'abcdefghijklmnopqrstuvwxyz', 'ABCDEFGHIJKLMNOPQRSTUVWXYZ')"/> <xsl:text>" </xsl:text> <xsl:apply-templates/> </xsl:template> <xsl:template match="refsynopsisdiv"> <xsl:text> .SH "</xsl:text> <xsl:value-of select="translate(title[1],'abcdefghijklmnopqrstuvwxyz', 'ABCDEFGHIJKLMNOPQRSTUVWXYZ')"/> <xsl:text>" </xsl:text> <xsl:apply-templates/> </xsl:template> <xsl:template match="refsynopsisdiv/title"></xsl:template> <xsl:template match="refsect1/title"></xsl:template> <xsl:template match="para"> <xsl:text>.PP </xsl:text> <xsl:apply-templates/> </xsl:template> <xsl:template match="*"><xsl:apply-templates/></xsl:template> <xsl:template match="refentry"> <xsl:text>." DO NOT MODIFY THIS FILE! .de Sh \" Subsection .br .if t .Sp .ne 5 .PP \fB\\$1\fR .PP .. .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Ip \" List item .br .ie \\n(.$>=3 .ne \\$3 .el .ne 3 .IP "\\$1" \\$2 .. .TH "</xsl:text> <xsl:value-of select="refmeta/refentrytitle[1]"/> <xsl:text>" </xsl:text> <xsl:value-of select="refmeta/manvolnum[1]"/> <xsl:text> "</xsl:text> <xsl:value-of select="@revision"/> <xsl:text>" </xsl:text> <xsl:apply-templates/> </xsl:template> <xsl:template match="refmeta"></xsl:template> <xsl:template match="refnamediv"> <xsl:text>.SH NAME </xsl:text> <xsl:value-of select="refname"/> <xsl:text> \- </xsl:text> <xsl:value-of select="refpurpose"/> </xsl:template> <xsl:template match="refentry/refentrytitle"></xsl:template> <xsl:template match="article/articleinfo/*"></xsl:template> <xsl:template match="term/option"> <xsl:text>\fB</xsl:text><xsl:apply-templates/><xsl:text>\fR</xsl:text> </xsl:template> <xsl:template match="varlistentry"> <xsl:text> .TP </xsl:text> <xsl:apply-templates select="./term"/> <xsl:apply-templates select="./listitem"/> </xsl:template> <xsl:template match="varlistentry/listitem/para"> <xsl:apply-templates/> </xsl:template> <xsl:template match="filename"> <xsl:text> .FN </xsl:text><xsl:apply-templates/> </xsl:template> <xsl:template match="userinput"> <xsl:text> .IP .B </xsl:text><xsl:apply-templates/> </xsl:template> <xsl:template match="envar"> <xsl:text>\fB</xsl:text><xsl:apply-templates/><xsl:text>\fR</xsl:text> </xsl:template> <xsl:template match="filename"> <xsl:text>\fI</xsl:text><xsl:apply-templates/><xsl:text>\fR</xsl:text> </xsl:template> </xsl:stylesheet> --- NEW FILE: xref.xsl --- <?xml version='1.0'?> <!-- vim:set sts=2 shiftwidth=2 syntax=sgml: --> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version='1.0'> <xsl:template match="xref"> <xsl:variable name="targets" select="key('id', @linkend)"/> <xsl:variable name="target" select="$targets[1]"/> <xsl:variable name="type" select="local-name($target)"/> <xsl:choose> <xsl:when test="$type=''"> <xsl:message> <xsl:text>xref to nonexistent id </xsl:text> <xsl:value-of select="@linkend"/> </xsl:message> </xsl:when> <xsl:when test="$type='refentry'"> <xsl:call-template name="do-citerefentry"> <xsl:with-param name="refentrytitle" select="$target/refmeta/refentrytitle[1]"/> <xsl:with-param name="manvolnum" select="$target/refmeta/manvolnum"/> </xsl:call-template> </xsl:when> <xsl:when test="$type='refname'"> <xsl:call-template name="do-citerefentry"> <xsl:with-param name="refentrytitle" select="$target"/> <xsl:with-param name="manvolnum" select="$target/../../refmeta/manvolnum"/> </xsl:call-template> </xsl:when> <xsl:otherwise> <xsl:text>[xref to </xsl:text> <xsl:value-of select="$type"/> <xsl:text>]</xsl:text> </xsl:otherwise> </xsl:choose> </xsl:template> </xsl:stylesheet> --- NEW FILE: docbook.xsl --- <?xml version='1.0'?> <!-- vim:set sts=2 shiftwidth=2 syntax=sgml: --> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version='1.0'> <xsl:import href="../html/docbook.xsl"/> <xsl:include href="synop.xsl"/> <xsl:include href="lists.xsl"/> <xsl:include href="xref.xsl"/> <!-- Needed for chunker.xsl (for now): --> <xsl:param name="chunker.output.method" select="'text'"/> <xsl:param name="chunker.output.encoding" select="'ISO-8859-1'"/> <xsl:output method="text" encoding="ISO-8859-1" indent="no"/> <!-- named templates for bold and italic. call like: <xsl:apply-templates mode="bold" select="node-you-want" /> --> <xsl:template mode="bold" match="*"> <xsl:variable name="content"> <xsl:apply-templates/> </xsl:variable> <xsl:text>\fB</xsl:text> <xsl:value-of select="$content"/> <xsl:text>\fR</xsl:text> </xsl:template> <xsl:template mode="italic" match="*"> <xsl:variable name="content"> <xsl:apply-templates/> </xsl:variable> <xsl:text>\fI</xsl:text> <xsl:value-of select="$content"/> <xsl:text>\fR</xsl:text> </xsl:template> <xsl:template match="caution|important|note|tip|warning"> <xsl:text> .RS .Sh "</xsl:text> <!-- capitalize word --> <xsl:value-of select="translate (substring (name(.), 1, 1), 'cintw', 'CINTW')" /> <xsl:value-of select="substring (name(), 2)" /> <xsl:if test="title"> <xsl:text>: </xsl:text> <xsl:value-of select="title[1]"/> </xsl:if> <xsl:text>" </xsl:text> <xsl:apply-templates/> <xsl:text> .RE </xsl:text> </xsl:template> <xsl:template match="refsection|refsect1"> <xsl:choose> <xsl:when test="ancestor::refsection"> <xsl:text> .SS "</xsl:text> <xsl:value-of select="title[1]"/> </xsl:when> <xsl:otherwise> <xsl:text> .SH "</xsl:text> <xsl:value-of select="translate(title[1],'abcdefghijklmnopqrstuvwxyz', 'ABCDEFGHIJKLMNOPQRSTUVWXYZ')"/> </xsl:otherwise> </xsl:choose> <xsl:text>" </xsl:text> <xsl:apply-templates/> </xsl:template> <xsl:template match="refsect2"> <xsl:text> .SS "</xsl:text> <xsl:value-of select="title[1]"/> <xsl:text>" </xsl:text> <xsl:apply-templates/> </xsl:template> <xsl:template match="refsynopsisdiv"> <xsl:text> .SH "SYNOPSIS" </xsl:text> <xsl:apply-templates/> </xsl:template> <xsl:template match="para"> <xsl:text> .PP </xsl:text> <xsl:for-each select="node()"> <xsl:choose> <xsl:when test="self::literallayout|self::informaltable|self::screen| self::programlisting|self::itemizedlist| self::orderedlist|self::variablelist|self::simplelist"> <xsl:text> </xsl:text> <xsl:apply-templates select="."/> </xsl:when> <xsl:when test="self::text()"> <xsl:if test="starts-with(translate(.,' ',' '), ' ') and preceding-sibling::node()[name(.)!='']"> <xsl:text> </xsl:text> </xsl:if> <xsl:variable name="content"> <xsl:apply-templates select="."/> </xsl:variable> <xsl:value-of select="normalize-space($content)"/> <xsl:if test="translate(substring(., string-length(.), 1),' ',' ') = ' ' and following-sibling::node()[name(.)!='']"> <xsl:text> </xsl:text> </xsl:if> </xsl:when> <xsl:otherwise> <xsl:variable name="content"> <xsl:apply-templates select="."/> </xsl:variable> <xsl:value-of select="normalize-space($content)"/> </xsl:otherwise> </xsl:choose> </xsl:for-each> <xsl:text> </xsl:text> </xsl:template> <xsl:template match="simpara"> <xsl:variable name="content"> <xsl:apply-templates/> </xsl:variable> <xsl:text> </xsl:text> <xsl:value-of select="normalize-space($content)"/> <xsl:text> </xsl:text> </xsl:template> <xsl:template match="refentry"> <xsl:variable name="section"> <xsl:choose> <xsl:when test="refmeta/manvolnum"> <xsl:value-of select="refmeta/manvolnum[1]"/> </xsl:when> <xsl:when test=".//funcsynopsis">3</xsl:when> <xsl:otherwise>1</xsl:otherwise> </xsl:choose> </xsl:variable> <xsl:variable name="name" select="refnamediv/refname[1]"/> <!-- standard man page width is 64 chars; 6 chars needed for the two (x) volume numbers, and 2 spaces, leaves 56 --> <xsl:variable name="twidth" select="(56 - string-length(refmeta/refentrytitle)) div 2"/> <xsl:variable name="reftitle" select="substring(refmeta/refentrytitle, 1, $twidth)"/> <xsl:variable name="title"> <xsl:choose> <xsl:when test="refentryinfo/title"> <xsl:value-of select="refentryinfo/title"/> </xsl:when> <xsl:when test="../referenceinfo/title"> <xsl:value-of select="../referenceinfo/title"/> </xsl:when> </xsl:choose> </xsl:variable> <xsl:variable name="date"> <xsl:choose> <xsl:when test="refentryinfo/date"> <xsl:value-of select="refentryinfo/date"/> </xsl:when> <xsl:when test="../referenceinfo/date"> <xsl:value-of select="../referenceinfo/date"/> </xsl:when> </xsl:choose> </xsl:variable> <xsl:variable name="productname"> <xsl:choose> <xsl:when test="refentryinfo/productname"> <xsl:value-of select="refentryinfo/productname"/> </xsl:when> <xsl:when test="../referenceinfo/productname"> <xsl:value-of select="../referenceinfo/productname"/> </xsl:when> </xsl:choose> </xsl:variable> <!-- replace spaces with underscores in the filename --> <xsl:variable name="filename"> <xsl:call-template name="replace-string"> <xsl:with-param name="content" select="concat(normalize-space ($name), '.', $section)"/> <xsl:with-param name="replace" select="' '"/> <xsl:with-param name="with" select="'_'"/> </xsl:call-template> </xsl:variable> <xsl:call-template name="write.text.chunk"> <xsl:with-param name="filename" select="$filename"/> <xsl:with-param name="content"> <xsl:text>.\"Generated by db2man.xsl. Don't modify this, modify the source. .de Sh \" Subsection .br .if t .Sp .ne 5 .PP \fB\\$1\fR .PP .. .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Ip \" List item .br .ie \\n(.$>=3 .ne \\$3 .el .ne 3 .IP "\\$1" \\$2 .. .TH "</xsl:text> <xsl:value-of select="translate($reftitle,'abcdefghijklmnopqrstuvwxyz', 'ABCDEFGHIJKLMNOPQRSTUVWXYZ')"/> <xsl:text>" </xsl:text> <xsl:value-of select="$section"/> <xsl:text> "</xsl:text> <xsl:value-of select="normalize-space($date)"/> <xsl:text>" "</xsl:text> <xsl:value-of select="normalize-space($productname)"/> <xsl:text>" "</xsl:text> <xsl:value-of select="$title"/> <xsl:text>" </xsl:text> <xsl:apply-templates/> <xsl:text> </xsl:text> <!-- Author section --> <xsl:choose> <xsl:when test="refentryinfo//author"> <xsl:apply-templates select="refentryinfo" mode="authorsect"/> </xsl:when> <xsl:when test="/book/bookinfo//author"> <xsl:apply-templates select="/book/bookinfo" mode="authorsect"/> </xsl:when> <xsl:when test="/article/articleinfo//author"> <xsl:apply-templates select="/article/articleinfo" mode="authorsect"/> </xsl:when> </xsl:choose> </xsl:with-param> </xsl:call-template> <!-- Now generate stub include pages for every page documented in this refentry (except the page itself) --> <xsl:for-each select="refnamediv/refname"> <xsl:if test=". != $name"> <xsl:call-template name="write.text.chunk"> <xsl:with-param name="filename" select="concat(normalize-space(.), '.', $section)"/> <xsl:with-param name="content" select="concat('.so man', $section, '/', $name, '.', $section, ' ')"/> </xsl:call-template> </xsl:if> </xsl:for-each> </xsl:template> <xsl:template match="refmeta"></xsl:template> <xsl:template match="title"></xsl:template> <xsl:template match="abstract"></xsl:template> <xsl:template match="articleinfo|bookinfo|refentryinfo" mode="authorsect"> <xsl:text>.SH AUTHOR</xsl:text> <xsl:if test="count(.//author)>1"> <xsl:text>S</xsl:text> </xsl:if> <xsl:text> </xsl:text> <xsl:for-each select=".//author"> <xsl:if test="position() > 1"> <xsl:text>, </xsl:text> </xsl:if> <xsl:variable name="author"> <xsl:apply-templates select="."/> </xsl:variable> <xsl:value-of select="normalize-space($author)"/> </xsl:for-each> <xsl:text>. </xsl:text> <xsl:if test=".//editor"> <xsl:text>.br Man page edited by </xsl:text> <xsl:apply-templates select=".//editor"/> <xsl:text>. </xsl:text> </xsl:if> </xsl:template> <xsl:template match="author|editor"> <xsl:call-template name="person.name"/> <xsl:apply-templates select="./affiliation/address/email" /> </xsl:template> <xsl:template match="copyright"> <xsl:text>Copyright \(co </xsl:text> <xsl:apply-templates select="./year" /> <xsl:text> .Sp </xsl:text> </xsl:template> <xsl:template match="email"> <xsl:text> <</xsl:text> <xsl:apply-templates/> <xsl:text>></xsl:text> </xsl:template> <xsl:template match="refnamediv"> <xsl:text>.SH NAME </xsl:text> <xsl:for-each select="refname"> <xsl:if test="position()>1"> <xsl:text>, </xsl:text> </xsl:if> <xsl:value-of select="."/> </xsl:for-each> <xsl:text> \- </xsl:text> <xsl:value-of select="normalize-space (refpurpose)"/> </xsl:template> <xsl:template match="refentry/refentryinfo"></xsl:template> <xsl:template match="informalexample|screen"> <xsl:text> .IP </xsl:text> <xsl:apply-templates/> </xsl:template> <xsl:template match="filename|replaceable|varname"> <xsl:text>\fI</xsl:text><xsl:apply-templates/><xsl:text>\fR</xsl:text> </xsl:template> <xsl:template match="option|userinput|envar|errorcode|constant|type"> <xsl:text>\fB</xsl:text><xsl:apply-templates/><xsl:text>\fR</xsl:text> </xsl:template> <xsl:template match="quote"> <xsl:text>``</xsl:text> <xsl:apply-templates/> <xsl:text>''</xsl:text> </xsl:template> <xsl:template match="programlisting|literallayout"> <xsl:text> .nf </xsl:text> <xsl:apply-templates/> <xsl:text> .fi </xsl:text> </xsl:template> <xsl:template match="optional"> <xsl:value-of select="$arg.choice.opt.open.str"/> <xsl:apply-templates/> <xsl:value-of select="$arg.choice.opt.close.str"/> </xsl:template> <xsl:template name="do-citerefentry"> <xsl:param name="refentrytitle" select="''"/> <xsl:param name="manvolnum" select="''"/> <xsl:apply-templates mode="bold" select="$refentrytitle"/> <xsl:text>(</xsl:text> <xsl:value-of select="$manvolnum"/> <xsl:text>)</xsl:text> </xsl:template> <xsl:template match="citerefentry"> <xsl:call-template name="do-citerefentry"> <xsl:with-param name="refentrytitle" select="refentrytitle"/> <xsl:with-param name="manvolnum" select="manvolnum"/> </xsl:call-template> </xsl:template> <xsl:template match="ulink"> <xsl:variable name="content"> <xsl:apply-templates/> </xsl:variable> <xsl:variable name="url" select="@url"/> <xsl:choose> <xsl:when test="$url=$content or $content=''"> <xsl:text>\fI</xsl:text> <xsl:value-of select="$url"/> <xsl:text>\fR</xsl:text> </xsl:when> <xsl:otherwise> <xsl:value-of select="$content"/> <xsl:text>: \fI</xsl:text> <xsl:value-of select="$url"/> <xsl:text>\fR</xsl:text> </xsl:otherwise> </xsl:choose> </xsl:template> <!-- Translate some entities to textual equivalents. --> <xsl:template name="replace-string"> <xsl:param name="content" select="''"/> <xsl:param name="replace" select="''"/> <xsl:param name="with" select="''"/> <xsl:choose> <xsl:when test="not(contains($content,$replace))"> <xsl:value-of select="$content"/> </xsl:when> <xsl:otherwise> <xsl:value-of select="substring-before($content,$replace)"/> <xsl:value-of select="$with"/> <xsl:call-template name="replace-string"> <xsl:with-param name="content" select="substring-after($content,$replace)"/> <xsl:with-param name="replace" select="$replace"/> <xsl:with-param name="with" select="$with"/> </xsl:call-template> </xsl:otherwise> </xsl:choose> </xsl:template> <xsl:template name="replace-dash"> <xsl:param name="content" select="''"/> <xsl:call-template name="replace-string"> <xsl:with-param name="content" select="$content"/> <xsl:with-param name="replace" select="'-'"/> <xsl:with-param name="with" select="'\-'"/> </xsl:call-template> </xsl:template> <xsl:template name="replace-ndash"> <xsl:param name="content" select="''"/> <xsl:call-template name="replace-string"> <xsl:with-param name="content" select="$content"/> <xsl:with-param name="replace" select="'–'"/> <xsl:with-param name="with" select="'-'"/> </xsl:call-template> </xsl:template> <xsl:template name="replace-mdash"> <xsl:param name="content" select="''"/> <xsl:call-template name="replace-string"> <xsl:with-param name="content" select="$content"/> <xsl:with-param name="replace" select="'—'"/> <xsl:with-param name="with" select="'--'"/> </xsl:call-template> </xsl:template> <xsl:template name="replace-hellip"> <xsl:param name="content" select="''"/> <xsl:call-template name="replace-string"> <xsl:with-param name="content" select="$content"/> <xsl:with-param name="replace" select="'…'"/> <xsl:with-param name="with" select="'...'"/> </xsl:call-template> </xsl:template> <xsl:template name="replace-setmn"> <xsl:param name="content" select="''"/> <xsl:call-template name="replace-string"> <xsl:with-param name="content" select="$content"/> <xsl:with-param name="replace" select="'∖'"/> <xsl:with-param name="with" select="'\\'"/> </xsl:call-template> </xsl:template> <xsl:template name="replace-minus"> <xsl:param name="content" select="''"/> <xsl:value-of select="translate($content,'−','-')"/> </xsl:template> <xsl:template name="replace-backslash"> <xsl:param name="content" select="''"/> <xsl:call-template name="replace-string"> <xsl:with-param name="content" select="$content"/> <xsl:with-param name="replace" select="'\'"/> <xsl:with-param name="with" select="'\\'"/> </xsl:call-template> </xsl:template> <!-- if a period character is output at the beginning of a line it will be interpreted as a groff macro, so prefix all periods with "\&", a zero-width space. --> <xsl:template name="replace-period"> <xsl:param name="content" select="''"/> <xsl:call-template name="replace-string"> <xsl:with-param name="content" select="$content"/> <xsl:with-param name="replace" select="'.'"/> <xsl:with-param name="with" select="'\&.'"/> </xsl:call-template> </xsl:template> <xsl:template name="replace-entities"> <xsl:param name="content" select="''"/> <xsl:call-template name="replace-hellip"> <xsl:with-param name="content"> <xsl:call-template name="replace-minus"> <xsl:with-param name="content"> <xsl:call-template name="replace-mdash"> <xsl:with-param name="content"> <xsl:call-template name="replace-ndash"> <xsl:with-param name="content"> <xsl:call-template name="replace-dash"> <xsl:with-param name="content"> <xsl:call-template name="replace-setmn"> <xsl:with-param name="content"> <xsl:call-template name="replace-period"> <xsl:with-param name="content"> <xsl:call-template name="replace-backslash"> <xsl:with-param name="content" select="$content"/> </xsl:call-template> </xsl:with-param> </xsl:call-template> </xsl:with-param> </xsl:call-template> </xsl:with-param> </xsl:call-template> </xsl:with-param> </xsl:call-template> </xsl:with-param> </xsl:call-template> </xsl:with-param> </xsl:call-template> </xsl:with-param> </xsl:call-template> </xsl:template> <xsl:template match="dingbat.characters"> <!-- now that I'm using the real serializer, all that dingbat malarky --> <!-- isn't necessary anymore... --> <xsl:param name="dingbat">bullet</xsl:param> <xsl:choose> <xsl:when test="$dingbat='bullet'">\(bu</xsl:when> <xsl:when test="$dingbat='copyright'">\(co</xsl:when> <xsl:when test="$dingbat='trademark'">\(tm</xsl:when> <xsl:when test="$dingbat='trade'">\(tm</xsl:when> <xsl:when test="$dingbat='registered'">\(rg</xsl:when> <xsl:when test="$dingbat='service'">(SM)</xsl:when> <xsl:when test="$dingbat='nbsp'"> </xsl:when> <xsl:when test="$dingbat='ldquo'">\(lq</xsl:when> <xsl:when test="$dingbat='rdquo'">\(rq</xsl:when> <xsl:when test="$dingbat='lsquo'">`</xsl:when> <xsl:when test="$dingbat='rsquo'">'</xsl:when> <xsl:when test="$dingbat='em-dash'">\(em</xsl:when> <xsl:when test="$dingbat='mdash'">\(em</xsl:when> <xsl:when test="$dingbat='en-dash'">\(en</xsl:when> <xsl:when test="$dingbat='ndash'">\(en</xsl:when> <xsl:otherwise> <xsl:text>\(bu</xsl:text> </xsl:otherwise> </xsl:choose> </xsl:template> <xsl:template match="text()"> <xsl:call-template name="replace-entities"> <xsl:with-param name="content"> <xsl:value-of select="."/> </xsl:with-param> </xsl:call-template> </xsl:template> <xsl:template match="/"> <xsl:choose> <xsl:when test="//refentry"> <xsl:apply-templates select="//refentry"/> </xsl:when> <xsl:otherwise> <xsl:message>No refentry elements!</xsl:message> </xsl:otherwise> </xsl:choose> </xsl:template> </xsl:stylesheet> |
Update of /cvsroot/davinci/docs/xls/images In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25978/xls/images Added Files: ChangeLog blank.png caution.gif caution.png caution.tif draft.png home.gif home.png important.gif important.png important.tif next.gif next.png note.gif note.png note.tif prev.gif prev.png tip.gif tip.png tip.tif toc-blank.png toc-minus.png toc-plus.png up.gif up.png warning.gif warning.png warning.tif Log Message: Added XSL support files --- NEW FILE: note.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: caution.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: note.tif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: home.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: up.png --- (This appears to be a binary file; contents omitted.) --- NEW FILE: tip.png --- (This appears to be a binary file; contents omitted.) --- NEW FILE: home.png --- (This appears to be a binary file; contents omitted.) --- NEW FILE: caution.tif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: important.tif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: warning.png --- (This appears to be a binary file; contents omitted.) --- NEW FILE: toc-minus.png --- (This appears to be a binary file; contents omitted.) --- NEW FILE: important.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: warning.tif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: important.png --- (This appears to be a binary file; contents omitted.) --- NEW FILE: warning.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: next.png --- (This appears to be a binary file; contents omitted.) --- NEW FILE: ChangeLog --- 2002-02-11 Norman Walsh <nw...@us...> * draft.png: Updated draft image 2002-01-29 Norman Walsh <nw...@us...> * blank.png, draft.png: New file. 2001-11-06 Robert Stayton <bob...@us...> * home.gif, next.gif, prev.gif, up.gif: New file. 2001-04-02 Norman Walsh <nw...@us...> * caution.gif, caution.png, caution.tif, home.png, important.gif, important.png, important.tif, next.png, note.gif, note.png, note.tif, prev.png, tip.gif, tip.png, tip.tif, toc-blank.png, toc-minus.png, toc-plus.png, up.png, warning.gif, warning.png, warning.tif: New file. --- NEW FILE: tip.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: up.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: next.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: draft.png --- (This appears to be a binary file; contents omitted.) --- NEW FILE: prev.png --- (This appears to be a binary file; contents omitted.) --- NEW FILE: tip.tif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: toc-blank.png --- (This appears to be a binary file; contents omitted.) --- NEW FILE: prev.gif --- (This appears to be a binary file; contents omitted.) --- NEW FILE: toc-plus.png --- (This appears to be a binary file; contents omitted.) --- NEW FILE: note.png --- (This appears to be a binary file; contents omitted.) --- NEW FILE: blank.png --- (This appears to be a binary file; contents omitted.) --- NEW FILE: caution.png --- (This appears to be a binary file; contents omitted.) |
From: Taj M. <taj...@us...> - 2004-09-12 20:14:47
|
Update of /cvsroot/davinci/docs/xls/htmlhelp In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25978/xls/htmlhelp Added Files: ChangeLog htmlhelp-common.xsl htmlhelp.xsl profile-htmlhelp-common.xsl profile-htmlhelp.xsl Log Message: Added XSL support files --- NEW FILE: htmlhelp-common.xsl --- <?xml version="1.0"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" xmlns:exsl="http://exslt.org/common" xmlns:set="http://exslt.org/sets" xmlns:h="urn:x-hex" version="1.0" exclude-result-prefixes="doc exsl set h"> <!-- ******************************************************************** $Id: htmlhelp-common.xsl,v 1.1 2004/09/12 20:14:33 tajmorton Exp $ ******************************************************************** --> <!-- ==================================================================== --> <!-- Customizations of standard HTML stylesheet parameters --> <xsl:param name="suppress.navigation" select="1"/> <!-- ==================================================================== --> [...1191 lines suppressed...] <xsl:value-of select="$angle.escaped"/> </xsl:template> <!-- ==================================================================== --> <!-- Modification to standard HTML stylesheets --> <!-- There are links from ToC pane to bibliodivs, so there must be anchor --> <xsl:template match="bibliodiv/title"> <h3 class="{name(.)}"> <xsl:call-template name="anchor"> <xsl:with-param name="node" select=".."/> <xsl:with-param name="conditional" select="0"/> </xsl:call-template> <xsl:apply-templates/> </h3> </xsl:template> </xsl:stylesheet> --- NEW FILE: ChangeLog --- 2004-08-19 Jirka Kosek <ko...@us...> * htmlhelp-common.xsl: Added several patches from W. Borgert 2004-02-19 Jirka Kosek <ko...@us...> * htmlhelp-common.xsl: Added anchors to bibliodivs 2003-12-10 Jirka Kosek <ko...@us...> * htmlhelp-common.xsl: Fixed parameter name collision 2003-11-29 Jirka Kosek <ko...@us...> * htmlhelp-common.xsl: Added new HTML Help parameters from patches by W. Borgert 2003-10-27 Jirka Kosek <ko...@us...> * htmlhelp-common.xsl: Handle setindex in a proper way 2003-09-23 Jirka Kosek <ko...@us...> * htmlhelp-common.xsl: Added new parameter manifest.in.base.dir which can be used to place manifest file and also project files for HTML Help and Eclipse Help into base.dir. This improvement also fixes bug (feature) #662955. 2003-08-12 Jirka Kosek <ko...@us...> * htmlhelp-common.xsl: It seems that HH can handle fragments identifiers in context help, so I changed stylesheets back to emit filename with fragment identifier. 2003-07-22 Jirka Kosek <ko...@us...> * htmlhelp-common.xsl: Moving template to place where it can be reused 2003-05-25 Jirka Kosek <ko...@us...> * htmlhelp-common.xsl, langcodes.xml: HTML Help language codes were moved to localization files. 2003-01-31 Jirka Kosek <ko...@us...> * htmlhelp-common.xsl: Xalan workaround for HHK files. 2002-10-15 Jirka Kosek <ko...@us...> * htmlhelp-common.xsl: HTML sensitive characters are manually escaped in attribute values (we must do it, as we don't use HTML/XML output method). 2002-10-14 Jirka Kosek <ko...@us...> * htmlhelp-common.xsl: Options->Home command works also when base.dir parameter is used and home button is disabled 2002-08-22 Jirka Kosek <ko...@us...> * htmlhelp-common.xsl: Index can be alternatively created using HHK file from now. This allows see-also processing and index terms also points to their exact location. 2002-06-13 Jirka Kosek <ko...@us...> * .cvsignore: Reflect changes in HTML Help stylesheet organization. * htmlhelp-common.xsl: Added parameter for disabling HTML output when testing various HTML Help features. * htmlhelp-common.xsl: New features. A lot of new features. For HTML Help. * htmlhelp-common.xsl: Turn on more verbose messages during compilation to CHM 2002-06-12 Jirka Kosek <ko...@us...> * Makefile, htmlhelp-common.xsl, htmlhelp.xsl, profile-htmlhelp.xsl: Rearranged code so HTML Help can be easily combined with custom chunking schemes. This is needed for TDG processing. 2002-06-09 Jirka Kosek <ko...@us...> * htmlhelp.xsl: Fixed bug #438793. HTML Help stylesheet works also in Xalan from now. 2002-06-03 Jirka Kosek <ko...@us...> * Makefile: Added dependencies for profiling stylesheets 2002-05-10 Jirka Kosek <ko...@us...> * htmlhelp.xsl: Updated to use shared manifest code. 2002-04-11 Jirka Kosek <ko...@us...> * htmlhelp.xsl: Updated to support new generate.toc parameter. 2002-03-14 Norman Walsh <nw...@us...> * .cvsignore: New file. * htmlhelp.xsl: Whitespace changes only: use PC-style CR/LF because Unix clients choke on this far less often than PC clients choke on the reverse. Grrr. * htmlhelp.xsl, langcodes.xml: Whitespace only: change CR/LF back to LF. Norm was a total moron. 2002-03-01 Jirka Kosek <ko...@us...> * Makefile: New file. 2002-02-16 Jirka Kosek <ko...@us...> * htmlhelp.xsl: Added missing support for refentries inside sections and for glossaries. * htmlhelp.xsl: Fixed bug #514883. Added missing colophon. 2002-02-10 Jirka Kosek <ko...@us...> * htmlhelp.xsl: Added parameter htmlhelp.default.topic for overriding default topic to display. * htmlhelp.xsl: Entry with link to page with Table of Contents is put into HTML Help ToC when htmlhelp.hhc.show.root=0 and generate.{set|book}.toc=1 2002-02-09 Jirka Kosek <ko...@us...> * htmlhelp.xsl: Added parameter which controls appearance of root element in HTML Help ToC. 2002-02-07 Jirka Kosek <ko...@us...> * htmlhelp.xsl: Duplicate image filenames from [FILES] section are now automatically removed in EXSLT friendly processors. 2002-02-05 Jirka Kosek <ko...@us...> * htmlhelp.xsl: Removed fragment identifiers from hrefs in alias.h file. 2002-02-03 Jirka Kosek <ko...@us...> * htmlhelp.xsl: Added parameter htmlhelp.title for manual control over HTML Help title. Improved code for automatic extraction of title from document. 2002-01-24 Jirka Kosek <ko...@us...> * htmlhelp.xsl: Fixed bug in alias.h when base.dir parameter was used. 2002-01-22 Jirka Kosek <ko...@us...> * htmlhelp.xsl: Feature request #507087. Added parameter for controling appearance of icons in HTML Help ToC. 2001-12-06 Jirka Kosek <ko...@us...> * htmlhelp.xsl: Template write.text.chunk moved to common place. 2001-12-04 Jirka Kosek <ko...@us...> * htmlhelp.xsl: Make compatible with last changes in chunking code. 2001-11-28 Jirka Kosek <ko...@us...> * htmlhelp.xsl: Use common pi-attribute template * htmlhelp.xsl: Added parameter htmlhelp.hhc.section.depth for controlling depth of sections in a TOC in a left pane of HTML Help viewer. * htmlhelp.xsl: Added support for automatic generation of map and context files for HTML Help. Topic names and IDs are marked by special PI <?dbhh topicname="..." topicid="..."?>. 2001-11-27 Norman Walsh <nw...@us...> * htmlhelp-common.xsl, htmlhelp.xsl: Removed obsolete XT support; added support for rootid parameter * htmlhelp.xsl: Fixed simple select typo 2001-11-27 Jirka Kosek <ko...@us...> * htmlhelp.xsl: Added $rootid support also for title of HTML Help window 2001-11-27 Norman Walsh <nw...@us...> * xthtmlhelp.xsl: Removed obsolete XT support; added support for rootid parameter 2001-11-05 Jirka Kosek <ko...@us...> * htmlhelp-common.xsl: Parameters moved to params subdirectory. 2001-11-04 Jirka Kosek <ko...@us...> * htmlhelp-common.xsl: Added parameter htmlhelp.enumerate.images which controls inclusion of image filenames list in project file. This is necessary when images are inserted as external binary entities. 2001-08-23 Jirka Kosek <ko...@us...> * htmlhelp-common.xsl: Synchronized puncation generation in ToC with rest of stylesheets. 2001-08-21 Jirka Kosek <ko...@us...> * htmlhelp-common.xsl: Fixed presentation of secondary indexterms in index pane 2001-08-13 Jirka Kosek <ko...@us...> * htmlhelp-common.xsl: Fixed problems with new lines in titles for TOC 2001-08-08 Jirka Kosek <ko...@us...> * htmlhelp-common.xsl: Added new parameters for controling filenames of project and output files. New parameter htmlhelp.hhp.tail for specifying user content for project file. 2001-07-23 Jirka Kosek <ko...@us...> * htmlhelp-common.xsl: Fixed bug #442162 - bibliography element is included in ToC in the left pane, index is not generated because it has own dialog also in the left pane of HTML Help viewer 2001-06-25 Jirka Kosek <ko...@us...> * htmlhelp-common.xsl: Added htmlhelp.autolabel parameter to control inclusion of component and section labels into tree-like ToC. 2001-05-05 Jirka Kosek <ko...@us...> * htmlhelp-common.xsl: Colophon is now included in toc.hhc 2001-04-21 Jirka Kosek <ko...@us...> * README: Removed obsolete file 2001-04-04 Norman Walsh <nw...@us...> * README, htmlhelp-common.xsl, htmlhelp.xsl, langcodes.xml, xthtmlhelp.xsl: New file. --- NEW FILE: profile-htmlhelp-common.xsl --- <?xml version="1.0" encoding="US-ASCII"?> <!--This file was created automatically by xsl2profile--> <!--from the DocBook XSL stylesheets. Do not edit this file.--> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" xmlns:exsl="http://exslt.org/common" xmlns:set="http://exslt.org/sets" xmlns:h="urn:x-hex" xmlns:exslt="http://exslt.org/common" exslt:dummy="dummy" extension-element-prefixes="exslt" version="1.0" exclude-result-prefixes="doc exsl set h exslt"> <!-- ******************************************************************** $Id: profile-htmlhelp-common.xsl,v 1.1 2004/09/12 20:14:34 tajmorton Exp $ ******************************************************************** --> <!-- ==================================================================== --> <!-- Customizations of standard HTML stylesheet parameters --> <xsl:param name="suppress.navigation" select="1"/> <!-- ==================================================================== --> <xsl:variable name="htmlhelp.generate.index" select="//indexterm[1]"/> <xsl:variable name="raw.help.title"> [...1160 lines suppressed...] <xsl:value-of select="$angle.escaped"/> </xsl:template> <!-- ==================================================================== --> <!-- Modification to standard HTML stylesheets --> <!-- There are links from ToC pane to bibliodivs, so there must be anchor --> <xsl:template match="bibliodiv/title"> <h3 class="{name(.)}"> <xsl:call-template name="anchor"> <xsl:with-param name="node" select=".."/> <xsl:with-param name="conditional" select="0"/> </xsl:call-template> <xsl:apply-templates/> </h3> </xsl:template> </xsl:stylesheet> --- NEW FILE: profile-htmlhelp.xsl --- <?xml version="1.0"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" xmlns:exsl="http://exslt.org/common" xmlns:set="http://exslt.org/sets" version="1.0" exclude-result-prefixes="doc exsl set"> <!-- ******************************************************************** $Id: profile-htmlhelp.xsl,v 1.1 2004/09/12 20:14:34 tajmorton Exp $ ******************************************************************** This file is used by htmlhelp.xsl if you want to generate source files for HTML Help. It is based on the XSL DocBook Stylesheet distribution (especially on JavaHelp code) from Norman Walsh. ******************************************************************** --> <xsl:import href="../html/chunk.xsl"/> <xsl:include href="profile-htmlhelp-common.xsl"/> </xsl:stylesheet> --- NEW FILE: htmlhelp.xsl --- <?xml version="1.0"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" xmlns:exsl="http://exslt.org/common" xmlns:set="http://exslt.org/sets" version="1.0" exclude-result-prefixes="doc exsl set"> <!-- ******************************************************************** $Id: htmlhelp.xsl,v 1.1 2004/09/12 20:14:33 tajmorton Exp $ ******************************************************************** This file is used by htmlhelp.xsl if you want to generate source files for HTML Help. It is based on the XSL DocBook Stylesheet distribution (especially on JavaHelp code) from Norman Walsh. ******************************************************************** --> <xsl:import href="../html/chunk.xsl"/> <xsl:include href="htmlhelp-common.xsl"/> </xsl:stylesheet> |
From: Taj M. <taj...@us...> - 2004-09-12 20:14:46
|
Update of /cvsroot/davinci/docs/xls/eclipse In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25978/xls/eclipse Added Files: ChangeLog eclipse.xsl Log Message: Added XSL support files --- NEW FILE: eclipse.xsl --- <?xml version="1.0"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:import href="../html/chunk.xsl"/> <!-- ******************************************************************** $Id: eclipse.xsl,v 1.1 2004/09/12 20:14:31 tajmorton Exp $ ******************************************************************** This file is part of the XSL DocBook Stylesheet distribution. See ../README or http://nwalsh.com/docbook/xsl/ for copyright and other information. ******************************************************************** --> <xsl:template match="/"> <xsl:choose> <xsl:when test="$rootid != ''"> <xsl:choose> <xsl:when test="count(key('id',$rootid)) = 0"> <xsl:message terminate="yes"> <xsl:text>ID '</xsl:text> <xsl:value-of select="$rootid"/> <xsl:text>' not found in document.</xsl:text> </xsl:message> </xsl:when> <xsl:otherwise> <xsl:message>Formatting from <xsl:value-of select="$rootid"/></xsl:message> <xsl:apply-templates select="key('id',$rootid)" mode="process.root"/> </xsl:otherwise> </xsl:choose> </xsl:when> <xsl:otherwise> <xsl:apply-templates select="/" mode="process.root"/> </xsl:otherwise> </xsl:choose> <xsl:call-template name="etoc"/> <xsl:call-template name="plugin.xml"/> </xsl:template> <xsl:template name="etoc"> <xsl:call-template name="write.chunk"> <xsl:with-param name="filename"> <xsl:if test="$manifest.in.base.dir != 0"> <xsl:value-of select="$base.dir"/> </xsl:if> <xsl:value-of select="'toc.xml'"/> </xsl:with-param> <xsl:with-param name="method" select="'xml'"/> <xsl:with-param name="encoding" select="'utf-8'"/> <xsl:with-param name="indent" select="'yes'"/> <xsl:with-param name="content"> <xsl:choose> <xsl:when test="$rootid != ''"> <xsl:variable name="title"> <xsl:if test="$eclipse.autolabel=1"> <xsl:variable name="label.markup"> <xsl:apply-templates select="key('id',$rootid)" mode="label.markup"/> </xsl:variable> <xsl:if test="normalize-space($label.markup)"> <xsl:value-of select="concat($label.markup,$autotoc.label.separator)"/> </xsl:if> </xsl:if> <xsl:apply-templates select="key('id',$rootid)" mode="title.markup"/> </xsl:variable> <xsl:variable name="href"> <xsl:call-template name="href.target.with.base.dir"> <xsl:with-param name="object" select="key('id',$rootid)"/> </xsl:call-template> </xsl:variable> <toc label="{$title}" topic="{$href}"> <xsl:apply-templates select="key('id',$rootid)/*" mode="etoc"/> </toc> </xsl:when> <xsl:otherwise> <xsl:variable name="title"> <xsl:if test="$eclipse.autolabel=1"> <xsl:variable name="label.markup"> <xsl:apply-templates select="/*" mode="label.markup"/> </xsl:variable> <xsl:if test="normalize-space($label.markup)"> <xsl:value-of select="concat($label.markup,$autotoc.label.separator)"/> </xsl:if> </xsl:if> <xsl:apply-templates select="/*" mode="title.markup"/> </xsl:variable> <xsl:variable name="href"> <xsl:call-template name="href.target.with.base.dir"> <xsl:with-param name="object" select="/"/> </xsl:call-template> </xsl:variable> <toc label="{$title}" topic="{$href}"> <xsl:apply-templates select="/*/*" mode="etoc"/> </toc> </xsl:otherwise> </xsl:choose> </xsl:with-param> </xsl:call-template> </xsl:template> <xsl:template match="book|part|reference|preface|chapter|bibliography|appendix|article|glossary|section|sect1|sect2|sect3|sect4|sect5|refentry|colophon|bibliodiv|index" mode="etoc"> <xsl:variable name="title"> <xsl:if test="$eclipse.autolabel=1"> <xsl:variable name="label.markup"> <xsl:apply-templates select="." mode="label.markup"/> </xsl:variable> <xsl:if test="normalize-space($label.markup)"> <xsl:value-of select="concat($label.markup,$autotoc.label.separator)"/> </xsl:if> </xsl:if> <xsl:apply-templates select="." mode="title.markup"/> </xsl:variable> <xsl:variable name="href"> <xsl:call-template name="href.target.with.base.dir"/> </xsl:variable> <topic label="{$title}" href="{$href}"> <xsl:apply-templates select="part|reference|preface|chapter|bibliography|appendix|article|glossary|section|sect1|sect2|sect3|sect4|sect5|refentry|colophon|bibliodiv|index" mode="etoc"/> </topic> </xsl:template> <xsl:template match="text()" mode="etoc"/> <xsl:template name="plugin.xml"> <xsl:call-template name="write.chunk"> <xsl:with-param name="filename"> <xsl:if test="$manifest.in.base.dir != 0"> <xsl:value-of select="$base.dir"/> </xsl:if> <xsl:value-of select="'plugin.xml'"/> </xsl:with-param> <xsl:with-param name="method" select="'xml'"/> <xsl:with-param name="encoding" select="'utf-8'"/> <xsl:with-param name="indent" select="'yes'"/> <xsl:with-param name="content"> <plugin name="{$eclipse.plugin.name}" id="{$eclipse.plugin.id}" version="1.0" provider-name="{$eclipse.plugin.provider}"> <extension point="org.eclipse.help.toc"> <toc file="toc.xml" primary="true"/> </extension> </plugin> </xsl:with-param> </xsl:call-template> </xsl:template> </xsl:stylesheet> --- NEW FILE: ChangeLog --- 2003-09-23 Jirka Kosek <ko...@us...> * eclipse.xsl: Added new parameter manifest.in.base.dir which can be used to place manifest file and also project files for HTML Help and Eclipse Help into base.dir. This improvement also fixes bug (feature) #662955. 2003-07-22 Jirka Kosek <ko...@us...> * eclipse.xsl: New file. |