]> git.lyx.org Git - features.git/blob - lib/external_templates
Initial commit of Inkscape SVG LaTeX + PDF support
[features.git] / lib / external_templates
1 #
2 # file external_templates
3 # This file is part of LyX, the document processor.
4 # Licence details can be found in the file COPYING.
5 #
6 # author Asger Alstrup Nielsen
7 # author Angus Leeming
8 # author Johnathan Burchill
9 #
10 # Full author contact details are available in file CREDITS.
11
12 # This file contains the definitions of those External Templates that are
13 # part of the official LyX distribution.
14 # Feel free to create your own External Templates, storing them in
15 # .lyx/external_templates
16 # Note that a user-defined external_templates file would replace this
17 # definition. Thus, if you would like to keep the external templates defined
18 # in this file, please copy this file and add on futher external templates
19 # to the end. For more information, see http://www.lyx.org/trac/ticket/3983.
20
21
22 PreambleDef WarnNotFound
23         %% Print a warning encased in an fbox.
24         \def\lyxstripprefix#1>{}
25         \newcommand{\warnNotFound}[1]{%
26                 \def\lyxtempfilename{#1}%
27                 \fbox{Could not find
28                         \ttfamily\expandafter\lyxstripprefix\meaning\lyxtempfilename!}%
29                 \typeout{Could not find \lyxtempfilename!}%
30         }
31 PreambleDefEnd
32
33
34 PreambleDef InputOrWarn
35         %% Input the file if it exists, using \input, else print a warning
36         \newcommand{\inputOrWarn}[1]{%
37                 \IfFileExists{#1}{\input{#1}}{\warnNotFound{#1}}}
38 PreambleDefEnd
39
40 Template GnumericSpreadsheet
41         GuiName "Spreadsheet"
42         HelpText
43                 A spreadsheet made with Gnumeric, LibreOffice, OpenOffice or Excel.
44                 It imports as a multi-page table, so any length
45                 is ok. Excessive width could be a problem.
46                 The gnumeric software is necessary for conversion,
47                 both for gnumeric and excel files.
48         HelpTextEnd
49         InputFormat "gnumeric"
50         FileFilter "*.{gnumeric,ods,xls,xlsx}"
51         AutomaticProduction true
52         Format LaTeX
53                 Product "\\def\\inputGnumericTable{}\\input{$$AbsOrRelPathMaster$$Basename.tex}"
54                 UpdateFormat latex
55                 UpdateResult "$$AbsPath$$Basename.tex"
56                 Requirement "color"
57                 Requirement "array"
58                 Requirement "longtable"
59                 Requirement "calc"
60                 Requirement "multirow"
61                 Requirement "hhline"
62                 Requirement "ifthen"
63                 ReferencedFile latex "$$AbsOrRelPathMaster$$Basename.tex"
64                 FormatEnd
65         Format PDFLaTeX
66                 Product "\\def\\inputGnumericTable{}\\input{$$AbsOrRelPathMaster$$Basename.tex}"
67                 UpdateFormat latex
68                 UpdateResult "$$AbsPath$$Basename.tex"
69                 Requirement "color"
70                 Requirement "array"
71                 Requirement "longtable"
72                 Requirement "calc"
73                 Requirement "multirow"
74                 Requirement "hhline"
75                 Requirement "ifthen"
76                 ReferencedFile pdflatex "$$AbsOrRelPathMaster$$Basename.tex"
77         FormatEnd
78         Format Ascii
79                 Product "[Spreadsheet: $$FName]"
80         FormatEnd
81         Format DocBook
82                 Product "[Spreadsheet: $$FName]"
83         FormatEnd
84         Format XHTML
85                 Product "$$Contents(\"$$AbsPath$$Basename.html\")</p>"
86                 UpdateFormat html_table
87                 UpdateResult "$$AbsPath$$Basename.html"
88         FormatEnd
89 TemplateEnd
90
91 Template RasterImage
92         # By default, InsetExternal is displayed as a grey button
93         # containing this text.
94         GuiName "Raster image"
95         # This text is used in the External dialog.
96         # Provide enough information to explain to the user just
97         # what the template can provide him with.
98         HelpText
99                 A bitmap file.
100                 Use this template to include bitmap images of any kind.
101         HelpTextEnd
102         # ANY file type can be displayed as a RasterImage.
103         # Specifically, LyX will attempt to interrogate the file itself
104         # in order to deduce its format.
105         InputFormat "*"
106         # Globbing pattern used when browsing for a Raster image file.
107         FileFilter "*.{gif,png,jpg,bmp,pbm,ppm,tga,tif,xpm,xbm}"
108         # Set to "true" if the file represented by the template
109         # must be generated by LyX.
110         AutomaticProduction true
111         # LyX has hard-coded support for these transformations
112         Transform Rotate
113         Transform Resize
114         Transform Clip
115         Transform Extra
116         # LyX preview options:
117         # Off: LyX will not attempt to show this material on screen.
118         # Graphics: LyX will attempt to show this material as-is or via a
119         #           conversion to a showable format.
120         # InstantPreview: LyX will attempt to use the 'instant preview'
121         #                 mechanism in order to show this material.
122         Preview Graphics
123         Format LaTeX
124                 TransformOption Rotate RotationLatexOption
125                 TransformOption Resize ResizeLatexOption
126                 TransformOption Clip   ClipLatexOption
127                 TransformOption Extra  ExtraOption
128                 Option Arg "[$$Extra,$$Rotate,$$Resize,$$Clip]"
129                 # This string is what is output to the LaTeX file.
130                 Product "\\includegraphics$$Arg{$$AbsOrRelPathMaster$$Basename}"
131                 UpdateFormat eps
132                 UpdateResult "$$AbsPath$$Basename.eps"
133                 Requirement "graphicx"
134                 ReferencedFile latex "$$AbsPath$$Basename.eps"
135                 ReferencedFile dvi   "$$AbsPath$$Basename.eps"
136         FormatEnd
137         Format PDFLaTeX
138                 TransformOption Rotate RotationLatexOption
139                 TransformOption Resize ResizeLatexOption
140                 TransformOption Clip   ClipLatexOption
141                 TransformOption Extra  ExtraOption
142                 Option Arg "[$$Extra,$$Rotate,$$Resize,$$Clip]"
143                 Product "\\includegraphics$$Arg{$$AbsOrRelPathMaster$$Basename}"
144                 UpdateFormat "$$pngOrjpg"
145                 UpdateResult "$$AbsPath$$Basename.$$pngOrjpg"
146                 Requirement "graphicx"
147                 ReferencedFile pdflatex "$$AbsPath$$Basename.$$pngOrjpg"
148         FormatEnd
149         Format Ascii
150                 Product "[RasterImage: $$FName]"
151         FormatEnd
152         Format DocBook
153                 Product "<graphic fileref=\"$$AbsOrRelPathMaster$$Basename.eps\"></graphic>"
154                 UpdateFormat eps
155                 UpdateResult "$$AbsPath$$Basename.eps"
156                 ReferencedFile docbook     "$$AbsPath$$Basename.eps"
157                 ReferencedFile docbook-xml "$$AbsPath$$Basename.eps"
158         FormatEnd
159         Format XHTML
160                 Product "<img src=\"$$AbsOrRelPathMaster$$Basename.png\" />"
161                 UpdateFormat png
162                 UpdateResult "$$AbsPath$$Basename.png"
163                 ReferencedFile xhtml "$$AbsPath$$Basename.png"
164         FormatEnd
165 TemplateEnd
166
167 Template VectorGraphics
168         GuiName "Vector graphics"
169         HelpText
170                 A vector graphics file.
171                 Use this template to include vector graphics of any kind.
172                 LyX will try to retain the vector properties of the image for
173                 the final output.
174                 Note that specialized templates exist for Xfig figures and Dia diagrams.
175                 The specialized templates allow to automatically use the document font in
176                 the figures, which is not possible with this general template.
177         HelpTextEnd
178         # ANY file type can be displayed as a VectorGraphics.
179         # Specifically, LyX will attempt to interrogate the file itself
180         # in order to deduce its format.
181         InputFormat "*"
182         # Globbing pattern used when browsing for a vector graphics file.
183         # xfig, dia, fen and ly are exlcuded, since we have specialized templates
184         FileFilter "*.{agr,dot,emf,eps,odg,obj,sxd,svg,svgz,tgo,pdf,wmf}"
185         AutomaticProduction true
186         # LyX has hard-coded support for these transformations
187         Transform Rotate
188         Transform Resize
189         Transform Clip
190         Transform Extra
191         Preview Graphics
192         Format LaTeX
193                 TransformOption Rotate RotationLatexOption
194                 TransformOption Resize ResizeLatexOption
195                 TransformOption Clip   ClipLatexOption
196                 TransformOption Extra  ExtraOption
197                 Option Arg "[$$Extra,$$Rotate,$$Resize,$$Clip]"
198                 # This string is what is output to the LaTeX file.
199                 Product "\\includegraphics$$Arg{$$AbsOrRelPathMaster$$Basename}"
200                 UpdateFormat eps
201                 UpdateResult "$$AbsPath$$Basename.eps"
202                 Requirement "graphicx"
203                 ReferencedFile latex "$$AbsPath$$Basename.eps"
204                 ReferencedFile dvi   "$$AbsPath$$Basename.eps"
205         FormatEnd
206         Format PDFLaTeX
207                 TransformOption Rotate RotationLatexOption
208                 TransformOption Resize ResizeLatexOption
209                 TransformOption Clip   ClipLatexOption
210                 TransformOption Extra  ExtraOption
211                 Option Arg "[$$Extra,$$Rotate,$$Resize,$$Clip]"
212                 Product "\\includegraphics$$Arg{$$AbsOrRelPathMaster$$Basename}"
213                 UpdateFormat pdf6
214                 UpdateResult "$$AbsPath$$Basename.pdf"
215                 Requirement "graphicx"
216                 ReferencedFile pdflatex "$$AbsPath$$Basename.pdf"
217         FormatEnd
218         Format Ascii
219                 Product "[VectorGraphics: $$FName]"
220         FormatEnd
221         Format DocBook
222                 Product "<graphic fileref=\"$$AbsOrRelPathMaster$$Basename.eps\"></graphic>"
223                 UpdateFormat eps
224                 UpdateResult "$$AbsPath$$Basename.eps"
225                 ReferencedFile docbook     "$$AbsPath$$Basename.eps"
226                 ReferencedFile docbook-xml "$$AbsPath$$Basename.eps"
227         FormatEnd
228         Format XHTML
229                 Product "<img src=\"$$AbsOrRelPathMaster$$Basename.svg\" />"
230                 UpdateFormat svg
231                 UpdateResult "$$AbsPath$$Basename.svg"
232                 ReferencedFile xhtml "$$AbsPath$$Basename.svg"
233         FormatEnd
234 TemplateEnd
235
236 Template XFig
237         GuiName "Xfig figure"
238         HelpText
239                 An Xfig figure.
240         HelpTextEnd
241         InputFormat fig
242         FileFilter "*.fig"
243         AutomaticProduction true
244         Transform Rotate
245         Transform Resize
246         Preview InstantPreview
247         Format LaTeX
248                 TransformCommand Rotate RotationLatexCommand
249                 TransformCommand Resize ResizeLatexCommand
250                 Product "$$RotateFront$$ResizeFront\\input{$$AbsOrRelPathMaster$$Basename.pstex_t}$$ResizeBack$$RotateBack"
251                 UpdateFormat pstex
252                 UpdateResult "$$AbsPath$$Basename.pstex_t"
253                 Requirement "color"
254                 Requirement "graphicx"
255                 # Preamble WarnNotFound
256                 # Preamble InputOrWarn
257                 ReferencedFile latex "$$AbsOrRelPathMaster$$Basename.pstex_t"
258                 ReferencedFile latex "$$AbsPath$$Basename.eps"
259                 ReferencedFile dvi   "$$AbsPath$$Basename.eps"
260         FormatEnd
261         Format PDFLaTeX
262                 TransformCommand Rotate RotationLatexCommand
263                 TransformCommand Resize ResizeLatexCommand
264                 Product "$$RotateFront$$ResizeFront\\input{$$AbsOrRelPathMaster$$Basename.pdftex_t}$$ResizeBack$$RotateBack"
265                 UpdateFormat pdftex
266                 UpdateResult "$$AbsPath$$Basename.pdftex_t"
267                 Requirement "color"
268                 Requirement "graphicx"
269                 # Preamble WarnNotFound
270                 # Preamble InputOrWarn
271                 ReferencedFile pdflatex "$$AbsOrRelPathMaster$$Basename.pdftex_t"
272                 ReferencedFile pdflatex "$$AbsPath$$Basename.pdf"
273         FormatEnd
274         Format Ascii
275                 Product "[XFig: $$FName]"
276         FormatEnd
277         Format DocBook
278                 Product "<graphic fileref=\"$$AbsOrRelPathMaster$$Basename.eps\"></graphic>"
279                 UpdateFormat eps
280                 UpdateResult "$$AbsPath$$Basename.eps"
281                 ReferencedFile docbook     "$$AbsPath$$Basename.eps"
282                 ReferencedFile docbook-xml "$$AbsPath$$Basename.eps"
283         FormatEnd
284         Format XHTML
285                 Product "<img src=\"$$AbsOrRelPathMaster$$Basename.svg\" />"
286                 UpdateFormat svg
287                 UpdateResult "$$AbsPath$$Basename.svg"
288                 ReferencedFile xhtml "$$AbsPath$$Basename.svg"
289         FormatEnd
290 TemplateEnd
291
292
293 Template Inkscape
294         GuiName "Inkscape figure"
295         HelpText
296                 An Inkscape figure.
297                 This template should work flawlessly with Inkscape 0.48. 
298                 For Inkscape 0.91, there is a bug in the LaTeX + PDF output
299                 which makes a workaround necessary, see Embedded Objects manual.
300         HelpTextEnd
301         InputFormat svg
302         FileFilter "*.svg"
303         AutomaticProduction true
304         Transform Rotate
305         Preview InstantPreview
306         Format PDFLaTeX
307                 TransformCommand Rotate RotationLatexCommand
308                 # Resize is not desirable here, as fonts are sized to surrounding LaTeX font
309                 Product "$$RotateFront\\input{$$AbsOrRelPathMaster$$Basename.pdf_tex}$$RotateBack"
310                 UpdateFormat pdftex
311                 UpdateResult "$$AbsPath$$Basename.pdf_tex"
312                 Requirement "color"
313                 Requirement "graphicx"
314                 # Preamble WarnNotFound
315                 # Preamble InputOrWarn
316                 ReferencedFile pdflatex "$$AbsOrRelPathMaster$$Basename.pdf_tex"
317                 ReferencedFile pdflatex "$$AbsPath$$Basename.pdf"
318         FormatEnd
319         Format LaTeX
320                 TransformCommand Rotate RotationLatexCommand
321                 Product "$$RotateFront\\input{$$AbsOrRelPathMaster$$Basename.eps_tex}$$RotateBack"
322                 UpdateFormat pstex
323                 UpdateResult "$$AbsPath$$Basename.eps_tex"
324                 Requirement "color"
325                 Requirement "graphicx"
326                 # Preamble WarnNotFound
327                 # Preamble InputOrWarn
328                 ReferencedFile latex "$$AbsOrRelPathMaster$$Basename.eps_tex"
329                 ReferencedFile latex "$$AbsPath$$Basename.eps"
330                 ReferencedFile dvi   "$$AbsPath$$Basename.eps"
331         FormatEnd
332 TemplateEnd
333
334
335 Template ChessDiagram
336         GuiName "Chess diagram"
337         HelpText
338                 A chess position diagram.
339                 This template will use XBoard to edit the position.
340                 Use the 'File->Save Position' in XBoard to save
341                 the position that you want to display.
342                 Make sure to give it a '.fen' extension
343                 and remember to type in a relative path
344                 to the LyX document location.
345                 Within XBoard, use 'Edit->Edit Position'
346                 to enable general editing of the board.
347                 You might also check out the
348                 'Options->Test legality' option, and
349                 remember to middle and right click to
350                 insert new material in the board.
351                 In order for this to work, you have to
352                 put the bundled lyxskak.sty in a place
353                 that TeX will find it, and you will need
354                 to install the skak package from CTAN.
355         HelpTextEnd
356         InputFormat fen
357         FileFilter "*.fen"
358         AutomaticProduction true
359         Preview InstantPreview
360         Format LaTeX
361                 Product "\\loadgame{$$AbsOrRelPathMaster$$Basename}\\showboard"
362                 Requirement "chess"
363                 UpdateFormat fen
364                 UpdateResult "$$AbsPath$$Basename$$Extension"
365                 ReferencedFile latex "$$AbsPath$$Basename$$Extension"
366         FormatEnd
367         Format PDFLaTeX
368                 Product "\\loadgame{$$AbsOrRelPathMaster$$Basename}\\showboard"
369                 Requirement "chess"
370                 UpdateFormat fen
371                 UpdateResult "$$AbsPath$$Basename$$Extension"
372                 ReferencedFile pdflatex "$$AbsPath$$Basename$$Extension"
373         FormatEnd
374         Format Ascii
375                 Product "$$Contents(\"$$AbsPath$$Basename.asc\")"
376                 UpdateFormat asciichess
377                 UpdateResult "$$AbsPath$$Basename.asc"
378         FormatEnd
379         Format DocBook
380                 Product "[Chess: $$AbsOrRelPathMaster$$Basename]"
381         FormatEnd
382         Format XHTML
383                 Product "<pre>$$Contents(\"$$AbsPath$$Basename.asc\")</pre>"
384                 UpdateFormat asciichess
385                 UpdateResult "$$AbsPath$$Basename.asc"
386         FormatEnd
387 TemplateEnd
388
389
390 Template LilyPond
391         GuiName "Lilypond typeset music"
392         HelpText
393                 Sheet music typeset by GNU LilyPond,
394                 converted to .pdf or .eps for inclusion
395                 Using .eps requires at least lilypond 2.6
396                 Using .pdf requires at least lilypond 2.9
397         HelpTextEnd
398         InputFormat "lilypond"
399         FileFilter "*.ly"
400         AutomaticProduction true
401         Transform Rotate
402         Transform Resize
403         Transform Clip
404         Transform Extra
405         Preview InstantPreview
406         Format LaTeX
407                 TransformOption Rotate RotationLatexOption
408                 TransformOption Resize ResizeLatexOption
409                 TransformOption Clip   ClipLatexOption
410                 TransformOption Extra  ExtraOption
411                 Option Arg "[$$Extra,$$Rotate,$$Resize,$$Clip]"
412                 Product "\\includegraphics$$Arg{$$AbsOrRelPathMaster$$Basename}"
413                 UpdateFormat eps
414                 UpdateResult "$$AbsPath$$Basename.eps"
415                 Requirement "graphicx"
416                 ReferencedFile latex "$$AbsPath$$Basename.eps"
417                 ReferencedFile dvi   "$$AbsPath$$Basename.eps"
418         FormatEnd
419         Format PDFLaTeX
420                 TransformOption Rotate RotationLatexOption
421                 TransformOption Resize ResizeLatexOption
422                 TransformOption Clip   ClipLatexOption
423                 TransformOption Extra  ExtraOption
424                 Option Arg "[$$Extra,$$Rotate,$$Resize,$$Clip]"
425                 Product "\\includegraphics$$Arg{$$AbsOrRelPathMaster$$Basename}"
426                 UpdateFormat pdf6
427                 UpdateResult "$$AbsPath$$Basename.pdf"
428                 Requirement "graphicx"
429                 ReferencedFile pdflatex "$$AbsPath$$Basename.pdf"
430         FormatEnd
431         Format Ascii
432                 Product "[LilyPond: $$FName]"
433         FormatEnd
434         Format DocBook
435                 Product "[LilyPond: $$FName]"
436         FormatEnd
437         Format XHTML
438                 Product "<img src=\"$$AbsOrRelPathMaster$$Basename.png\" />"
439                 UpdateFormat png
440                 UpdateResult "$$AbsPath$$Basename.png"
441                 ReferencedFile xhtml "$$AbsPath$$Basename.png"
442         FormatEnd
443 TemplateEnd
444
445 Template PDFPages
446         GuiName "PDF pages"
447         HelpText
448                 Includes PDF documents, using the 'pdfpages' package.
449                 To include multiple pages, use the 'pages'-option,
450                 which must be inserted to 'Options'.
451                 Examples:
452                 * pages={x-y} (for a range of pages)
453                 * pages={x,y,z} (for specific pages)
454                 * pages=- (to include all pages)
455                 * pages=last-1 (to include all pages in reverse order)
456                 With the option 'noautoscale' the PDF pages are
457                 inserted in their original size.
458                 Read the documentation of the pdfpages package
459                 for further options and details.
460         HelpTextEnd
461         InputFormat pdf6
462         FileFilter "*.pdf"
463         AutomaticProduction true
464         Transform Rotate
465         Transform Resize
466         Transform Extra
467         Preview Graphics
468         Format LaTeX
469                 TransformOption Rotate RotationLatexOption
470                 TransformOption Resize ResizeLatexOption
471                 TransformOption Extra  ExtraOption
472                 Option Arg "[$$Extra,$$Rotate,$$Resize]"
473                 Product "\\includepdf$$Arg{$$AbsOrRelPathMaster$$Basename}"
474                 UpdateFormat pdf6
475                 UpdateResult "$$AbsPath$$Basename.pdf"
476                 Requirement "pdfpages"
477                 ReferencedFile pdflatex "$$AbsPath$$Basename.pdf"
478         FormatEnd
479         Format Ascii
480                 Product "[PDFPages: $$FName]"
481         FormatEnd
482         Format DocBook
483                 Product "[PDFPages: $$FName]"
484         FormatEnd
485         Format XHTML
486                 Product "[PDFPages: $$FName]"
487         FormatEnd
488 TemplateEnd
489
490
491 Template Dia
492         GuiName "Dia diagram"
493         HelpText
494                 Dia diagram.
495         HelpTextEnd
496         InputFormat dia
497         FileFilter "*.dia"
498         AutomaticProduction true
499         # LyX has hard-coded support for these transformations
500         Transform Rotate
501         Transform Resize
502         Transform Clip
503         Transform Extra
504         Preview InstantPreview
505         Format LaTeX
506                 TransformOption Rotate RotationLatexOption
507                 TransformOption Resize ResizeLatexOption
508                 TransformOption Clip   ClipLatexOption
509                 TransformOption Extra  ExtraOption
510                 Option Arg "[$$Extra,$$Rotate,$$Resize,$$Clip]"
511                 # This string is what is output to the LaTeX file.
512                 Product "\\includegraphics$$Arg{$$AbsOrRelPathMaster$$Basename}"
513                 UpdateFormat eps
514                 UpdateResult "$$AbsPath$$Basename.eps"
515                 Requirement "graphicx"
516                 ReferencedFile latex "$$AbsPath$$Basename.eps"
517                 ReferencedFile dvi   "$$AbsPath$$Basename.eps"
518         FormatEnd
519         Format PDFLaTeX
520                 TransformOption Rotate RotationLatexOption
521                 TransformOption Resize ResizeLatexOption
522                 TransformOption Clip   ClipLatexOption
523                 TransformOption Extra  ExtraOption
524                 Option Arg "[$$Extra,$$Rotate,$$Resize,$$Clip]"
525                 Product "\\includegraphics$$Arg{$$AbsOrRelPathMaster$$Basename}"
526                 UpdateFormat pdf6
527                 UpdateResult "$$AbsPath$$Basename.pdf"
528                 Requirement "graphicx"
529                 ReferencedFile pdflatex "$$AbsPath$$Basename.pdf"
530         FormatEnd
531         Format Ascii
532                 Product "[Dia: $$FName]"
533         FormatEnd
534         Format DocBook
535                 Product "<graphic fileref=\"$$AbsOrRelPathMaster$$Basename.eps\"></graphic>"
536                 UpdateFormat eps
537                 UpdateResult "$$AbsPath$$Basename.eps"
538                 ReferencedFile docbook     "$$AbsPath$$Basename.eps"
539                 ReferencedFile docbook-xml "$$AbsPath$$Basename.eps"
540         FormatEnd
541         Format XHTML
542                 Product "<img src=\"$$AbsOrRelPathMaster$$Basename.svg\" />"
543                 UpdateFormat svg
544                 UpdateResult "$$AbsPath$$Basename.svg"
545                 ReferencedFile xhtml "$$AbsPath$$Basename.svg"
546         FormatEnd
547 TemplateEnd
548