Help with gnuplot xtemplate needed
Tobias Hilbricht
hilbricht at linopus.de
Sat Apr 20 13:53:44 UTC 2024
I got it myself after a lot of trying and comparing:
In my file gnuplot.xtemplate I wrote "InputFormat gp", because
"InputFormat" and FileFilter extension are the same in the case of Xfig
(fig) and Inkscape (svg), but not with gnuplot: "InputFormat gnuplot"
and FileFilter .gp works!
For anyone interested I attached my working gnuplot.xtemplate.
Sorry for making noise!
Tobias
Am Samstag, dem 20.04.2024 um 08:44 +0200 schrieb Tobias Hilbricht:
> Dear LyX-user,
>
> I would like to have a gnuplot xtemplate. To that end I wrote a shell
> script gnuplot2pdftex.sh like this:
>
> #!/bin/bash
> GnuplotFile=$1
> BaseName=`basename $GnuplotFile .gp`
> GnuplotName=$BaseName.ptx
> LyxName=$BaseName.pdf_tex
> gnuplot -e "set term cairolatex pdf ; set output '${GnuplotName}' "
> $GnuplotFile
> mv $GnuplotName $LyxName
>
> This script works on the command line, and I can input the resulting
> file gnuplot.pdf_tex in LyX, and if I put it in a preview box I get a
> preview, and the document compiles.
>
> I have similar scripts for pstex, png and eps in
> ~/.lyx/scripts and define converters like this:
>
> \converter "gnuplot" "pdftex2" "$$s/scripts/gnuplot2pdftex.sh $$i
> $$o"
> "needauth"
>
> and have a file gnuplot.xtemplate written after the model of
> inkscape.xtemplate in ~/.lyx/xtemplate
-------------- next part --------------
#
# Gnuplot External Template
#
# This file is part of LyX, the document processor.
# Licence details can be found in the file COPYING.
#
# author Tobias Hilbricht
#
# based on external templates by:
#
# author Asger Alstrup Nielsen
# author Angus Leeming
# author Johnathan Burchill
#
# Full author contact details are available in file CREDITS.
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 Gnuplot
GuiName "Gnuplot"
HelpText
A Gnuplot figure.
Note that using this template automatically uses the
document text in the image (like with the Xfig template).
HelpTextEnd
InputFormat gnuplot
FileFilter "*.{gp}"
AutomaticProduction true
Transform Rotate
Transform Resize
Preview InstantPreview
Format PDFLaTeX
TransformCommand Rotate RotationLatexCommand
TransformCommand Resize ResizeLatexCommand
Product "$$RotateFront$$ResizeFront\\input{$$AbsOrRelPathMaster$$Basename.pdf_tex}$$ResizeBack$$RotateBack"
UpdateFormat pdftex2
UpdateResult "$$AbsPath$$Basename.pdf_tex"
Requirement "xcolor"
Requirement "graphicx"
Requirement "mathtools"
# Preamble WarnNotFound
# Preamble InputOrWarn
ReferencedFile pdflatex "$$AbsOrRelPathMaster$$Basename.pdf_tex"
ReferencedFile pdflatex "$$AbsPath$$Basename.pdf"
FormatEnd
Format LaTeX
TransformCommand Rotate RotationLatexCommand
TransformCommand Resize ResizeLatexCommand
Product "$$RotateFront$$ResizeFront\\input{$$AbsOrRelPathMaster$$Basename.ps_tex}$$ResizeBack$$RotateBack"
UpdateFormat pstex2
UpdateResult "$$AbsPath$$Basename.ps_tex"
Requirement "xcolor"
Requirement "graphicx"
Requirement "mathtools"
# Preamble WarnNotFound
# Preamble InputOrWarn
ReferencedFile latex "$$AbsOrRelPathMaster$$Basename.ps_tex"
ReferencedFile latex "$$AbsPath$$Basename.eps"
ReferencedFile dvi "$$AbsPath$$Basename.eps"
FormatEnd
Format Ascii
Product "[InkscapeGraphics: $$FName]"
FormatEnd
Format DocBook
Product "<graphic fileref=\"$$AbsOrRelPathMaster$$Basename.eps\"></graphic>"
UpdateFormat eps
UpdateResult "$$AbsPath$$Basename.eps"
ReferencedFile docbook "$$AbsPath$$Basename.eps"
ReferencedFile docbook-xml "$$AbsPath$$Basename.eps"
FormatEnd
Format XHTML
Product "<img src=\"$$AbsOrRelPathMaster$$Basename.svg\" />"
UpdateFormat svg
UpdateResult "$$AbsPath$$Basename.svg"
ReferencedFile xhtml "$$AbsPath$$Basename.svg"
FormatEnd
TemplateEnd
More information about the lyx-users
mailing list