# Re: Examples of integration between Lyx, Sage computations, and PDFLateX

Very nice initiative, thank you very much Thomas!

I have not yet had time to check the modifications you have sent, but I am
sure that they make this module much more useful.

2012/3/31 Thomas Coffee <thomasmcof...@gmail.com>

> Hi Murat and Xu,
>
> I found your thread in the archives and did some further work on the
> LyX-SageTeX module that Murat posted previously.
>
> I fixed a few things that did not work for me in the version described
> earlier, and expanded the module specification to provide some
> additional conveniences for including literate Sage code in LyX
> documents. There's still much room for development and customization.
>
> The attachments comprise a set of files and a shell script "setup.sh"
> that should largely automate the configuration process on GNU/Linux
> systems.
>
> *** Help needed:
>
> For other interested users, I'd like to upload this to
> http://wiki.lyx.org/Layouts/Modules, but I get browser errors for
>
> Thanks,
>  Thomas
>
>
> > Hi Xu,
> >
> > Thank you for your appreciation. I cannot advance anymore without any
> help
> > from Lyx gurus.
> > I think I have extracted all the information I can from the help docs.
> If I
> > get any answer to my questions, I can construct a little bit smarter
> module
> > but the one we have now is already usable. With some supplementary tricks
> > from the sagetex documentation and through manual executions of the
> > latex-sage-latex chain, it is possible to make a lot of computations.
> >
> > I was also very agreeably surprised that this module can be used for
> > conversion to HTML from LyX, with figures and all.
> >
> > I attach to this message the module in its actual stage and some
> > instruction for making the conversion chain functional. I hope this would
> > already help some of you.
> >
> > As soon as I have more information, I will try to complete the module
> file.
> >
> > Best regards,
> >
> > Murat
> >
> > 2011/10/31 Xu Wang <xuwang...@gmail.com>
> >
> > > Dear Murat,
> > >
> > > This is great! I have been waiting for something like this for a long
> > > time. I also like the Sweave-like philosophy of this. It's more
> transparent
> > > and reproducible.
> > >
> > > I am looking forward to the final release with much excitement.
> > >
> > > Thank you for your work!
> > >
> > > Best,
> > >
> > > Xu
> > >
> > >
> > > On Mon, Oct 31, 2011 at 12:54 PM, Murat Yildizoglu <myi...@gmail.com
> >wrote:
> > >
> > >> Just another mail to correct a problem with the preceding Lyx file
> (see
> > >> the new file attached, and the $signs in ERT boxes, this is > connected with > > >> the problem I describe below) and ask a question about insets again: > > >> > > >> What kind of Flex insets can be included in a math mode text? Is this > > >> possible at all? Especially in displayed equation where one would > like to > > >> include results from SAge computations? > > >> I cannot write the following in math mode in Lyx, putting the left > member > > >> in a displayed equation and the right member in a sagecode inset that > would > > >> be converted to the expression I give > (\sage{integral(x/(x^2+1),x,0,1)) > > >> \dfrac{\partial^{4}y}{\partial > > >> x^{4}}=\sage{integral(x/(x^2+1),x,0,1)} > > >> > > >> I meet two problems: > > >> 1/ I cannot insert a Flex:sagecommand inset in a displayed equation, > Lyx > > >> just goes to the next line before inserting it... > > >> 2/ I cannot type the sagetex instruction (*sage{} ) by hand, because > > >> "x^2" in the right member must not be interpreted by LyX, since Sage > will > > >> need it for its computation. > > >> > > >> I can of course type everything in an ERT, but this cannot be called > > >> "integration" can it? ;-) > > >> > > >> I have reread again the help document on layouts and insets, and I > have > > >> checked the files that come in the layout folder of LyX, but cannot > find > > >> any answer to my question. > > >> > > >> Sorry for bothering you again with my problems... I hope that Sage > > >> integration will interest other people... > > >> > > >> Murat > > >> > > >> I definitely need the help of a Lyx wizard who understands well the > > >> insets and their integration in Lyx/Latex... > > >> > > >> > > >> > > >> 2011/10/31 Murat Yildizoglu <myi...@gmail.com> > > >> > > >>> Just to show you the kind of niceties that such an integration can > > >>> bring, I send you two files. One is the Lyx source and the other one > is the > > >>> final PDF. > > >>> In Lyx, I just click on the Preview button and wait a little bit to > get > > >>> the final PDF that I show here, with results of the computations > done by > > >>> Sage and converted back to Latex. > > >>> > > >>> The module isfar from perfect yet (this is the first module I am > > >>> creating), a better integration between the Latex output by Sage, > and the > > >>> math mode in LyX would be implemented to have nice equations typeset > with > > >>> equation numbers and what not. You can also see that the output of > the > > >>> integral by Sage is not very beautiful... > > >>> > > >>> I will continue to work on this module, but it is already useful for > me > > >>> and eliminates some regrets I feel ;-), since I have dropped > Scientific > > >>> Workplace in favor of LyX. > > >>> > > >>> I hope that you will like this new possibilities. > > >>> > > >>> Best regards, > > >>> > > >>> Murat > > >>> > > >>> PS. Sage lives in: http://www.sagemath.org > > >>> > > >>> > > >>> -- > > >>> Prof. Murat Yildizoglu > > >>> > > >>> Université Montesquieu Bordeaux IV > > >>> GREThA (UMR CNRS 5113) > > >>> Avenue Léon Duguit > > >>> 33608 Pessac cedex > > >>> France > > >>> > > >>> yi...@u-bordeaux4.fr > > >>> > > >>> http://yildizoglu.info > > >>> > > >>> http://www.twitter.com/yildizoglu > > >>> > > >>> > > >> > > >> > > >> -- > > >> Prof. Murat Yildizoglu > > >> > > >> Université Montesquieu Bordeaux IV > > >> GREThA (UMR CNRS 5113) > > >> Avenue Léon Duguit > > >> 33608 Pessac cedex > > >> France > > >> > > >> yi...@u-bordeaux4.fr > > >> > > >> http://yildizoglu.info > > >> > > >> http://www.twitter.com/yildizoglu > > >> > > >> > > > > > > > > > -- > > Prof. Murat Yildizoglu > > > > Université Montesquieu Bordeaux IV > > GREThA (UMR CNRS 5113) > > Avenue Léon Duguit > > 33608 Pessac cedex > > France > > > > yi...@u-bordeaux4.fr > > > > h <http://myildi.e-jemed.org/>ttp://yildizoglu.info > > > > http://www.twitter.com/yildizoglu > > > > The Sage module allows the use of the open source Sage mathematical > platform > > for computations in Lyx (with results inserted in the final PDF file), > in a > > somewhat similar way for R-project with the Sweave module. > > > > To be able to use it, you must have Sage installed on your computer and > the > > "sage" command must be in the path. > > See : http://www.sagemath.org/ > > > > Sage speaks Latex and can interact with it through the sagetex.sty > package. > > > > See: http://www.sagemath.org/doc/tutorial/sagetex.html#sec-sagetex > > > > INSTALLATION > > > > 0/ You must have a working Sage system on your computer and the sage > command > > must be on the PATH (open a console and type sage and RETURN key to > check it > > this is the case). > > > > 1/Add the sage.module in the layouts folder of your local LyX > configuration > > (depends on the system). Start LyX and reconfigure it. > > You can now add the Sage module to a new document. This module provides > > - the environments: sageblock and sagesilent > > - the commands: \sage (to be used in-line) and \sageplot (as an > environment, > > can be included in a Figure float) > > and it needs the sagetex.sty package to be available in your local Tex > > installation. > > Justfollow the instructions given in the documentation of this package, > for > > example > > > > > > > > 2/ Add the following sections elements in the preferences file that > lives in > > your personal lyx config folder (depends on the system) > > > > # FORMATS SECTION ########################## > > # > > > > \format "pdf10" "pdf" "PDF" "" > > "\"/Applications/_Editiontextes/Skim.app/Contents/MacOS/Skim\"" "" > > "document,vector,menu=export" > > \format "sage" "sage" "Sage" "" "" "" "document" > > \default_view_format pdf10 > > > > # > > # CONVERTERS SECTION ########################## > > # > > > > > > \converter "latex" "sage" "latex" "latex" > > \converter "sage" "pdf10" "compile-pdf-sage.sh$$b" "" > > > > 3/ You need a bash file for automatically running the .sage file and get > the > > results in the final pdf file > > > > This compile-pdf-sage.sh should be on your path, with the following > content: > > #!/bin/sh > > > /Applications/_Recherche/Sage-4.7-OSX-64bit-10.6.app/Contents/Resources/sage/sage > >$1.sage
> > pdflatex $1.tex > > exit 0 > > > > Otherwise, > > You can just convert your Lyx document to Sage and then go to the > temporary > > folder and execute manually > > > > (pdf)latex mysagedoc.tex -> generates mysagedoc.sage > > sage mysagedoc.sage > > (pdf)latex mysagedoc.tex > > > > Remaining problems and questions: > > 1/ How to setup options for environments? Example: > > \sageplot[width=12cm]{plot(sin(x), 0, pi), axes=True} -> Bug fix by > Richard > > 2/ How to insert Flex insets in math mode, in displayed equations? > >$\dfrac{\partial^{4}y}{\partial x^{4}}=\sage{integral(x/(x^2+1),x,0,1)}$> > x^2 must not be interpreted by LyX in the second part of the equality, > since > > Sage will need it for its computation. > > 3/ \sage{} does not automatically switch to the math mode. These insets > must be > > inserted between two$ sign put in ERT boxes. Then, the problem remains
> for the
> > displayed equations where one would like to include Sage results.
>

--
Prof. Murat Yildizoglu

Université Montesquieu Bordeaux IV
GREThA (UMR CNRS 5113)
Avenue Léon Duguit
33608 Pessac cedex
France

Bureau : F-331

yi...@u-bordeaux4.fr

http://yildizoglu.info