X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=lib%2Fexternal_templates;h=4fb505de0b813bf398ff696e354b8a898fd4aaf7;hb=99f84aab9515ff7a3da6fdd0ad6e4ac9395b6e8d;hp=39143ea1dc67a8abcd60dd23daaf2381fe795024;hpb=6661712fbce6fd1c2e67222d314503fa187248af;p=lyx.git diff --git a/lib/external_templates b/lib/external_templates index 39143ea1dc..4fb505de0b 100644 --- a/lib/external_templates +++ b/lib/external_templates @@ -1,91 +1,209 @@ -# Basic External Templates for LyX +# +# file external_templates +# This file is part of LyX, the document processor. +# Licence details can be found in the file COPYING. +# +# author Asger Alstrup Nielsen +# author Angus Leeming +# author Johnathan Burchill +# +# Full author contact details are available in file CREDITS. + +# This file contains the definitions of those External Templates that are +# part of the official LyX distribution. +# Feel free to create your own External Templates, storing them in +# .lyx/external_templates + + +PreambleDef WarnNotFound + %% Print a warning encased in an fbox. + \def\lyxstripprefix#1>{} + \newcommand{\warnNotFound}[1]{% + \def\lyxtempfilename{#1}% + \fbox{Could not find + \ttfamily\expandafter\lyxstripprefix\meaning\lyxtempfilename!}% + \typeout{Could not find \lyxtempfilename!}% + } +PreambleDefEnd + + +PreambleDef InputOrWarn + %% Input the file if it exists, using \input, else print a warning + \newcommand{\inputOrWarn}[1]{% + \IfFileExists{#1}{\input{#1}}{\warnNotFound{#1}}} +PreambleDefEnd + +Template GnumericSpreadsheet + GuiName "Spreadsheet" + HelpText + A spreadsheet made with Gnumeric, LibreOffice, OpenOffice or Excel. + It imports as a long table, so any length + is ok. Excessive width could be a problem. + The gnumeric software is necessary for conversion, + both for gnumeric and excel files. + HelpTextEnd + InputFormat "gnumeric" + FileFilter "*.{gnumeric,ods,xls}" + AutomaticProduction true + Format LaTeX + Product "\\def\\inputGnumericTable{}\\input{$$AbsOrRelPathMaster$$Basename.tex}" + UpdateFormat latex + UpdateResult "$$AbsPath$$Basename.tex" + Requirement "color" + Requirement "array" + Requirement "longtable" + Requirement "calc" + Requirement "multirow" + Requirement "hhline" + Requirement "ifthen" + ReferencedFile latex "$$AbsOrRelPathMaster$$Basename.tex" + FormatEnd + Format PDFLaTeX + Product "\\def\\inputGnumericTable{}\\input{$$AbsOrRelPathMaster$$Basename.tex}" + UpdateFormat latex + UpdateResult "$$AbsPath$$Basename.tex" + Requirement "color" + Requirement "array" + Requirement "longtable" + Requirement "calc" + Requirement "multirow" + Requirement "hhline" + Requirement "ifthen" + ReferencedFile pdflatex "$$AbsOrRelPathMaster$$Basename.tex" + FormatEnd +TemplateEnd Template RasterImage - GuiName "[Bitmap: $$FName]" + # By default, InsetExternal is displayed as a grey button + # containing this text. + GuiName "Raster image" + # This text is used in the External dialog. + # Provide enough information to explain to the user just + # what the template can provide him with. HelpText A bitmap file. - In the parameters box, you can provide optional - parameters for the ImageMagick convert program. - E.g., use `-border 10x10 -bordercolor black' - to surround the picture with a black border - when you export to LaTeX. - When you export to Ascii, you can provide a - number describing how many columns the picture - should expand to. - This template uses Gimp for editing, and - ImageMagick to do conversions. It requires - Python for exporting to Ascii and DocBook, - and gifscii for exporting to Ascii. HelpTextEnd - FileFilter "*.(gif|png|jpg|bmp|pbm|ppm|tga|tif|xpm|xbm)" - ViewCommand "display $$Basename.eps" - EditCommand "gimp $$FName" + # ANY file type can be displayed as a RasterImage. + # Specifically, LyX will attempt to interrogate the file itself + # in order to deduce its format. + InputFormat "*" + # Globbing pattern used when browsing for a Raster image file. + FileFilter "*.{gif,png,jpg,bmp,pbm,ppm,tga,tif,xpm,xbm}" + # Set to "true" if the file represented by the template + # must be generated by LyX. AutomaticProduction true + # LyX has hard-coded support for these transformations + Transform Rotate + Transform Resize + Transform Clip + Transform Extra + # LyX preview options: + # Off: LyX will not attempt to show this material on screen. + # Graphics: LyX will attempt to show this material as-is or via a + # conversion to a showable format. + # InstantPreview: LyX will attempt to use the 'instant preview' + # mechanism in order to show this material. + Preview Graphics Format LaTeX - Product "\\includegraphics{$$Basename.eps}" - UpdateCommand "convert $$Parameters $$FName $$Basename.eps" - Requirement "graphics" + TransformOption Rotate RotationLatexOption + TransformOption Resize ResizeLatexOption + TransformOption Clip ClipLatexOption + TransformOption Extra ExtraOption + Option Arg "[$$Extra,$$Rotate,$$Resize,$$Clip]" + # This string is what is output to the LaTeX file. + Product "\\includegraphics$$Arg{$$AbsOrRelPathMaster$$Basename}" + UpdateFormat eps + UpdateResult "$$AbsPath$$Basename.eps" + Requirement "graphicx" + ReferencedFile latex "$$AbsPath$$Basename.eps" + ReferencedFile dvi "$$AbsPath$$Basename.eps" + FormatEnd + Format PDFLaTeX + TransformOption Rotate RotationLatexOption + TransformOption Resize ResizeLatexOption + TransformOption Clip ClipLatexOption + TransformOption Extra ExtraOption + Option Arg "[$$Extra,$$Rotate,$$Resize,$$Clip]" + Product "\\includegraphics$$Arg{$$AbsOrRelPathMaster$$Basename}" + UpdateFormat png + UpdateResult "$$AbsPath$$Basename.png" + Requirement "graphicx" + ReferencedFile pdflatex "$$AbsPath$$Basename.png" FormatEnd Format Ascii - Product "$$Contents(\"$$Basename.asc\")" - UpdateCommand "python $$Sysdir/scripts/pic2ascii.py $$FName $$Parameters" + Product "$$Contents(\"$$AbsPath$$Basename.asc\")" + UpdateFormat asciiimage + UpdateResult "$$AbsPath$$Basename.asc" FormatEnd Format DocBook - Product "" - UpdateCommand "python $$Sysdir/scripts/pic2png_eps.py $$FName $$Parameters" - FormatEnd - Format LinuxDoc - Product "[Bitmap: $$FName]" + Product "" + UpdateFormat eps + UpdateResult "$$AbsPath$$Basename.eps" + ReferencedFile docbook "$$AbsPath$$Basename.eps" + ReferencedFile docbook-xml "$$AbsPath$$Basename.eps" FormatEnd TemplateEnd + Template XFig - GuiName "[XFig: $$Basename]" + GuiName "Xfig figure" HelpText - An XFig figure. - In the parameters box, you can provide - optional parameters for fig2dev in the - case of LaTeX export. - For Ascii export, you can provide a - number that specifies the width of an - Ascii approximation of the figure. - For DocBook export, you can provide - optional parameters for the ImageMagick - convert script. - This template uses XFig for editing, and - fig2dev and ImageMagick to do conversions. - It requires Python for exporting to Ascii - and DocBook, and gifscii for exporting to - Ascii. + An Xfig figure. HelpTextEnd + InputFormat fig FileFilter "*.fig" - ViewCommand "xfig $$FName" - EditCommand "xfig $$FName" AutomaticProduction true + Transform Rotate + Transform Resize + Preview InstantPreview Format LaTeX - Product "$$Contents(\"$$Basename.tex\")" - UpdateCommand "fig2dev $$Parameters -L latex $$FName $$Basename.tex" + TransformCommand Rotate RotationLatexCommand + TransformCommand Resize ResizeLatexCommand + Product "$$RotateFront$$ResizeFront\\input{$$AbsOrRelPathMaster$$Basename.pstex_t}$$ResizeBack$$RotateBack" + UpdateFormat pstex + UpdateResult "$$AbsPath$$Basename.pstex_t" + Requirement "color" + Requirement "graphicx" + # Preamble WarnNotFound + # Preamble InputOrWarn + ReferencedFile latex "$$AbsOrRelPathMaster$$Basename.pstex_t" + ReferencedFile latex "$$AbsPath$$Basename.eps" + ReferencedFile dvi "$$AbsPath$$Basename.eps" + FormatEnd + Format PDFLaTeX + TransformCommand Rotate RotationLatexCommand + TransformCommand Resize ResizeLatexCommand + Product "$$RotateFront$$ResizeFront\\input{$$AbsOrRelPathMaster$$Basename.pdftex_t}$$ResizeBack$$RotateBack" + UpdateFormat pdftex + UpdateResult "$$AbsPath$$Basename.pdftex_t" + Requirement "color" + Requirement "graphicx" + # Preamble WarnNotFound + # Preamble InputOrWarn + ReferencedFile pdflatex "$$AbsOrRelPathMaster$$Basename.pdftex_t" + ReferencedFile pdflatex "$$AbsPath$$Basename.pdf" FormatEnd Format Ascii - Product "$$Contents(\"$$Basename.asc\")" - UpdateCommand "python $$Sysdir/scripts/pic2ascii.py $$FName $$Parameters" + Product "$$Contents(\"$$AbsPath$$Basename.asc\")" + UpdateFormat asciixfig + UpdateResult "$$AbsPath$$Basename.asc" FormatEnd Format DocBook - Product "" - UpdateCommand "python $$Sysdir/scripts/pic2png_eps.py $$FName $$Parameters" - FormatEnd - Format LinuxDoc - Product "[XFig: $$FName]" + Product "" + UpdateFormat eps + UpdateResult "$$AbsPath$$Basename.eps" + ReferencedFile docbook "$$AbsPath$$Basename.eps" + ReferencedFile docbook-xml "$$AbsPath$$Basename.eps" FormatEnd TemplateEnd + Template ChessDiagram - GuiName "[Chess: $$Basename]" + GuiName "Chess diagram" HelpText A chess position diagram. - This template will use XBoard to view - and edit the position. Use the - 'File->Save Position' in XBoard to save + This template will use XBoard to edit the position. + Use the 'File->Save Position' in XBoard to save the position that you want to display. Make sure to give it a '.fen' extension and remember to type in a relative path @@ -94,66 +212,217 @@ Template ChessDiagram to enable general editing of the board. You might also check out the 'Options->Test legality' option, and - remember to middle and right click to + remember to middle and right click to insert new material in the board. In order for this to work, you have to - install the lyxchess.sty which is bundled - with LyX, and the chess.sty from CTAN. + put the bundled lyxskak.sty in a place + that TeX will find it, and you will need + to install the skak package from CTAN. HelpTextEnd + InputFormat fen FileFilter "*.fen" - ViewCommand "xboard -lpf $$FName" - EditCommand "xboard -lpf $$FName" AutomaticProduction true + Preview InstantPreview Format LaTeX - Product "$$Contents(\"$$Basename.tex\")" - UpdateCommand "python $$Sysdir/scripts/fen2latex.py $$FName $$Basename.tex" + Product "\\loadgame{$$AbsOrRelPathMaster$$Basename}\\showboard" Requirement "chess" + UpdateFormat fen + UpdateResult "$$AbsPath$$Basename$$Extension" + ReferencedFile latex "$$AbsPath$$Basename$$Extension" + FormatEnd + Format PDFLaTeX + Product "\\loadgame{$$AbsOrRelPathMaster$$Basename}\\showboard" + Requirement "chess" + UpdateFormat fen + UpdateResult "$$AbsPath$$Basename$$Extension" + ReferencedFile pdflatex "$$AbsPath$$Basename$$Extension" + FormatEnd + Format Ascii + Product "$$Contents(\"$$AbsPath$$Basename.asc\")" + UpdateFormat asciichess + UpdateResult "$$AbsPath$$Basename.asc" + FormatEnd + Format DocBook + Product "[Chess: $$AbsOrRelPathMaster$$Basename]" + FormatEnd +TemplateEnd + + +Template LilyPond + GuiName "Lilypond typeset music" + HelpText + Sheet music typeset by GNU LilyPond, + converted to .pdf or .eps for inclusion + Using .eps requires at least lilypond 2.6 + Using .pdf requires at least lilypond 2.9 + HelpTextEnd + InputFormat "lilypond" + FileFilter "*.ly" + AutomaticProduction true + Transform Rotate + Transform Resize + Transform Clip + Transform Extra + Preview InstantPreview + Format LaTeX + TransformOption Rotate RotationLatexOption + TransformOption Resize ResizeLatexOption + TransformOption Clip ClipLatexOption + TransformOption Extra ExtraOption + Option Arg "[$$Extra,$$Rotate,$$Resize,$$Clip]" + Product "\\includegraphics$$Arg{$$AbsOrRelPathMaster$$Basename}" + UpdateFormat eps + UpdateResult "$$AbsPath$$Basename.eps" + Requirement "graphicx" + ReferencedFile latex "$$AbsPath$$Basename.eps" + ReferencedFile dvi "$$AbsPath$$Basename.eps" + FormatEnd + Format PDFLaTeX + TransformOption Rotate RotationLatexOption + TransformOption Resize ResizeLatexOption + TransformOption Clip ClipLatexOption + TransformOption Extra ExtraOption + Option Arg "[$$Extra,$$Rotate,$$Resize,$$Clip]" + Product "\\includegraphics$$Arg{$$AbsOrRelPathMaster$$Basename}" + UpdateFormat pdf + UpdateResult "$$AbsPath$$Basename.pdf" + Requirement "graphicx" + ReferencedFile pdflatex "$$AbsPath$$Basename.pdf" FormatEnd Format Ascii - Product "$$Contents(\"$$Basename.asc\")" - UpdateCommand "python $$Sysdir/scripts/fen2ascii.py $$FName $$Basename.tex" + Product "[LilyPond: $$FName]" FormatEnd Format DocBook - Product "[Chess: $$Basename]" + Product "[LilyPond: $$FName]" FormatEnd - Format LinuxDoc - Product "[Chess: $$FName]" +TemplateEnd + +Template PDFPages + GuiName "PDF pages" + HelpText + Includes PDF documents, using the 'pdfpages' package. + To include multiple pages, use the 'pages'-option, + which must be inserted to 'Options'. + Examples: + * pages={x-y} (for a range of pages) + * pages={x,y,z} (for specific pages) + * pages=- (to include all pages) + * pages=last-1 (to include all pages in reverse order) + With the option 'noautoscale' the PDF pages are + inserted in their original size. + Read the documentation of the pdfpages package + for further options and details. + HelpTextEnd + InputFormat pdf + FileFilter "*.pdf" + AutomaticProduction true + Transform Rotate + Transform Resize + Transform Extra + Preview Graphics + Format LaTeX + TransformOption Rotate RotationLatexOption + TransformOption Resize ResizeLatexOption + TransformOption Extra ExtraOption + Option Arg "[$$Extra,$$Rotate,$$Resize]" + Product "\\includepdf$$Arg{$$AbsOrRelPathMaster$$Basename}" + UpdateFormat pdf + UpdateResult "$$AbsPath$$Basename.pdf" + Requirement "pdfpages" + ReferencedFile pdflatex "$$AbsPath$$Basename.pdf" + FormatEnd + Format Ascii + Product "[PDFPages: $$FName]" + FormatEnd + Format DocBook + Product "[PDFPages: $$FName]" FormatEnd TemplateEnd + Template Date - GuiName "[Date]" + GuiName "Date" HelpText - Todays date. - In the parameters box, you can provide - optional parameters for the date - command. - Use empty to get "Mon Jun 12 05:20:41 CEST 2000" - Use -u to get "Mon Jun 12 03:20:41 UTC 2000" - Use -I to get "2000-06-12". - Use -R to get "Mon, 12 Jun 2000 05:20:41 +0200" - Use +%d-%m-%Y to get "20-06-2000" - Use +%T to get the time as "23:23:00" + Today's date. Read 'info date' for more information. HelpTextEnd + InputFormat date FileFilter "*" - ViewCommand "xterm -e less $$Tempname" AutomaticProduction true + Preview Off Format LaTeX Product "$$Contents(\"$$Tempname\")" - UpdateCommand "python $$Sysdir/scripts/general_command_wrapper.py - $$Tempname date $$Parameters" + UpdateFormat dateout + UpdateResult "$$Tempname" + FormatEnd + Format PDFLaTeX + Product "$$Contents(\"$$Tempname\")" + UpdateFormat dateout + UpdateResult "$$Tempname" FormatEnd Format Ascii Product "$$Contents(\"$$Tempname\")" - UpdateCommand "python $$Sysdir/scripts/general_command_wrapper.py - $$Tempname date $$Parameters" + UpdateFormat dateout + UpdateResult "$$Tempname" FormatEnd Format DocBook Product "$$Contents(\"$$Tempname\")" - UpdateCommand "python $$Sysdir/scripts/general_command_wrapper.py - $$Tempname date $$Parameters" + UpdateFormat dateout + UpdateResult "$$Tempname" FormatEnd - Format LinuxDoc - Product "$$Contents(\"$$Tempname\")" - UpdateCommand "python $$Sysdir/scripts/general_command_wrapper.py - $$Tempname date $$Parameters" +TemplateEnd + +Template Dia + GuiName "Dia diagram" + HelpText + Dia diagram. + HelpTextEnd + InputFormat dia + FileFilter "*.dia" + AutomaticProduction true + # LyX has hard-coded support for these transformations + Transform Rotate + Transform Resize + Transform Clip + Transform Extra + Preview InstantPreview + Format LaTeX + TransformOption Rotate RotationLatexOption + TransformOption Resize ResizeLatexOption + TransformOption Clip ClipLatexOption + TransformOption Extra ExtraOption + Option Arg "[$$Extra,$$Rotate,$$Resize,$$Clip]" + # This string is what is output to the LaTeX file. + Product "\\includegraphics$$Arg{$$AbsOrRelPathMaster$$Basename}" + UpdateFormat eps + UpdateResult "$$AbsPath$$Basename.eps" + Requirement "graphicx" + ReferencedFile latex "$$AbsPath$$Basename.eps" + ReferencedFile dvi "$$AbsPath$$Basename.eps" + FormatEnd + Format PDFLaTeX + TransformOption Rotate RotationLatexOption + TransformOption Resize ResizeLatexOption + TransformOption Clip ClipLatexOption + TransformOption Extra ExtraOption + Option Arg "[$$Extra,$$Rotate,$$Resize,$$Clip]" + Product "\\includegraphics$$Arg{$$AbsOrRelPathMaster$$Basename}" + UpdateFormat pdf + UpdateResult "$$AbsPath$$Basename.pdf" + Requirement "graphicx" + ReferencedFile pdflatex "$$AbsPath$$Basename.pdf" + FormatEnd + Format Ascii + Product "$$Contents(\"$$AbsPath$$Basename.asc\")" + UpdateFormat asciiimage + UpdateResult "$$AbsPath$$Basename.asc" + FormatEnd + Format DocBook + Product "" + UpdateFormat eps + UpdateResult "$$AbsPath$$Basename.eps" + ReferencedFile docbook "$$AbsPath$$Basename.eps" + ReferencedFile docbook-xml "$$AbsPath$$Basename.eps" FormatEnd TemplateEnd