[{TableOfContents}]

!!Introduction

The LaTeX Plugin allows it to create a PDF document out of Wiki content. The user can define which pages are combined to a single document. Templates are used to define the document type (article, book, ...). The created PDF file is attached to the current page.

A sample document can be downloaded here: [Sample.pdf|http://www.i3g.hs-heilbronn.de/attach/LatexPlugin/Sample.pdf].

This is what the plugin looks like on a wiki page: [{Image src='http://www.i3g.hs-heilbronn.de/attach/LatexPlugin/LatexPlugin.png'}]

!!Notes

This plugin is a rather large plugin. It requires a full LaTeX installation to work. The parser is based on the [LatexConverter] by Torsten Hildebrandt. The plugin consists of the plugin class that is used for the configuration and a Java servlet that does the actual job. Two other plugins (Bibliography and Cite) are used to make bibliography management inside of JSPWiki possible.

Due to the complexity of the plugin, the plugin description is splitted on several pages.

!!Installation

The installation is described on a separate page: [LatexPluginInstallation].

!Direct download links: 

*[Binary zip|http://www.i3g.hs-heilbronn.de/attach/LatexPlugin/latex.zip] 
*[Source zip|http://www.i3g.hs-heilbronn.de/attach/LatexPlugin/latexsrc.zip]

!!Usage

To create a document out of two wiki pages following code can be used:

{{{
[{LatexConverter author='Steffen' title='Test document'

 [SamplePage]
 [AnotherSamplePage]
}]
}}}

More examples can be found on the plugin documention pages below.

!!Plugin documentation

The whole LaTeX plugin consists of three plugins which are explained on their on pages:

*[LaTeX Converter plugin|LatexPluginDocumentationLatexConverter]
*[Biblography plugin|LatexPluginDocumentationBibliography]
*[Cite plugin|LatexPluginDocumentationCite]

!!History

*Version 0.1.0 was developed by the i3g insitute. Author is [Steffen Schramm]
*Version 0.1.1 does not rely on ~PluginUtil any more

!!Discussion

Hi, 
I would like to use this plugin. But it doesn't work with 2.4.x JSPWiki. 
I tried to patch it for JSPWiki 2.4.x but some source are missing: {{{ org.wikiwizard.jspwiki.plugin.PluginUtil }}}

A working version of latexplugin for jspwiki 2.4.46 is attached (without {{{PluginUtil.java}}}).

-PeterHormanns

Fixed, the new version 0.1.1 does not rely on ~PluginUtil any more. By the way, what were the changes to make it run on 2.4?

-SteffenSchramm

Thank you! 

Changes for 2.4:\\
__com.ecyrd.jspwiki.auth.UserProfile__ does not exist in jspwiki 2.4\\
__java.security.Principal__ ist used instead.

This requires small changes in LatexServlet and LatexConverter.

-PeterHormanns\\
\\
\\
PROBLEM (jspwiki.log):\\
JSPWiki:http://host:8080/JSPWiki/Wiki.jsp - Plugin failed while executing:\\
java.lang.NoSuchMethodError: com.ecyrd.jspwiki.WikiContext.getCurrentUser()Lcom/ecyrd/jspwiki/auth/UserProfile;\\
   at org.wikiwizard.jspwiki.latex.LatexConverter.execute(LatexConverter.java:95)\\
   at com.ecyrd.jspwiki.plugin.PluginManager.execute(PluginManager.java:380)\\
   at com.ecyrd.jspwiki.parser.PluginContent.getText(PluginContent.java:88)\\
   at org.jdom.output.XMLOutputter.printTextRange(XMLOutputter.java:1054)\\
   at org.jdom.output.XMLOutputter.printContentRange(XMLOutputter.java:989)\\
   at org.jdom.output.XMLOutputter.outputElementContent(XMLOutputter.java:445)\\
   at com.ecyrd.jspwiki.render.XHTMLRenderer.getString(XHTMLRenderer.java:61)\\
   at com.ecyrd.jspwiki.render.RenderingManager.getHTML(RenderingManager.java:254)\\
   at com.ecyrd.jspwiki.render.RenderingManager.getHTML(RenderingManager.java:295)\\
   at com.ecyrd.jspwiki.WikiEngine.textToHTML(WikiEngine.java:1374)\\
   at com.ecyrd.jspwiki.WikiEngine.getHTML(WikiEngine.java:1320)\\
   at com.ecyrd.jspwiki.tags.InsertPageTag.doWikiStartTag(InsertPageTag.java:128)\\
   at com.ecyrd.jspwiki.tags.WikiTagBase.doStartTag(WikiTagBase.java:88)\\
   at org.apache.jsp.templates.default_.PageContent_jsp._jspx_meth_wiki_005fInsertPage_005f0(PageContent_jsp.java:431)\\
   at org.apache.jsp.templates.default_.PageContent_jsp._jspService(PageContent_jsp.java:109)\\
   at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)\\
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)\\
   at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:384)\\
   at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)\\
   at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)\\
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)\\
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)\\
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)\\
   at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:687)\\
   at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:590)\\
   at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:505)\\
   \\
   \\
   \\
What's wrong?\\
\\
-AndreasTaudte


----

I have just started using JSPWiki 2.4.91 (binary) and have used a few plugins and compiled and installed a simple HelloWorld plugin but have failed to get the Latex Plugin to work from either binary or source. 
There are two source zips and one binary on  http://jspwiki.org/wiki/LatexPlugin
* http://www.i3g.hs-heilbronn.de/attach/LatexPlugin/latex.zip Binary
* http://www.i3g.hs-heilbronn.de/attach/LatexPlugin/latexsrc.zip Src
* http://jspwiki.org/attach/LatexPlugin/latexplugin-2.4.x-src.zip 

I am unsure which source zip I should be using and if any other changes are needed, please advise.
Is there a shell script or ant build file to build the latex.jar file ?

--AshleyFord, 26-Feb-2007

----

A modified version of LatexPlugin for JSPWiki 2.4.102 and MiKTeX you can find [here|Mark Giereth]

-MarkGiereth