causing a failure when running outside the user tree. This was my
fault: when I refactored this routine, I failed to note that this
variable was now undefined.
I'm afraid, but it's going to be. We skip all comment lines at
the start of the script, but what we want to convert here is in
those comment lines. My previous attempt to deal with this issue
produced an invalid file.
Unfortunately, this doesn't quite work the way one might like. It
is fine for manually converting one's own layouts to the new format,
but it doesn't work if you just start LyX, since the category info
is written at configuration time, not at run time, and chkconfig.ltx
does not run layout2layout.
Implement a more simple and elegant integration of the R package knitr. Now,
lyxknitr.R does not need to move or copy files at all.
This also fixes a bug: when /tmp was on a different file system (e.g.
encrypted home), lyxknitr.R failed to move files to /tmp because it relied on
R's 'file.rename' function, which in turn relied on the rename function in
<stdio.h>, which was failing with the EXDEV errno.
Patch from Yihui Xie.
The listings inset and include inset of type listings use two english terms
that are not localized yet: "Listing" for the caption and "Listings" for the
list of listings (not supported natively by LyX yet). The existing layout
translation mechanism has been extended to translate these terms as well:
1) Support [[stuff]] context in lib/layouttranslations
2) Support BabelPreamble and LangPreamble in InsetLayout
3) Use a InsetLayout for InsetInclude of type listings
4) Define BabelPreamble and LangPreamble in the layouts for InsetInclude
and InsetListings
Add a new layout syntax CiteEngine to define the citation commands
available for a given citation engine.
Also extend the CiteFormat syntax to allow more customization. This
mechanism, previously used to produce bibliography entries in the
citation GUI based on the BibTeX entrytype, is now also used to
produce the textual labels for citation insets in the buffer view.
Thus citation styles are almost completely customizable by modules.
Modules for the basic, jurabib and natbib engines are implemented.
Layout format incremented to 37.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40820 a592a061-630c-0410-9148-cb99ea01b6c8
* avoid creation of file Rplots.pdf in document file
* find correctly Sweave.sty on old R versions
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40703 a592a061-630c-0410-9148-cb99ea01b6c8
When R version is >= 2.13.1, Sweave handles natively encodings. Therefore, we have to remove our own kludge.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40135 a592a061-630c-0410-9148-cb99ea01b6c8
- This preference was used for specifying the papersize to xdvi, dvipdfm,
dvips. However, I can't seem to see any effect on the result.
- The papersize should instead be defined in the document settings.
- The global papersize default was misused to also change the tex
output by specifying the papersize as if it was specified in the
document settings. This caused the same lyx document to be outputted
differently on different pcs.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40028 a592a061-630c-0410-9148-cb99ea01b6c8
Let's have this in trunk for testing. The real difference maker
when it comes to color is whether we use dvipng or ghostscript.
For dvipng:
- The color info is passed as command-line arguments.
- The tightpage option is not necessary, and since it adds
ps specials to the output, we shouldn't use it.
For ghostscript:
- The color info needs to be in the latex file.
- The foreground color is set for each preview inset.
- The background color is set by \pagecolor in the preamble,
which is understood by pdflatex, but ignored in dvips mode.
Thus dvips is handled with a ps special.
- The tightpage option is necessary to crop the images.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39797 a592a061-630c-0410-9148-cb99ea01b6c8
For example, find_exe(["bibtex -min-crossrefs=7"]) should search for
bibtex and if it is found, return the string "bibtex -min-crossrefs=7".
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39794 a592a061-630c-0410-9148-cb99ea01b6c8
(e.g., compressed dia, odg, sxd, ...). These need to be marked via the "zipped=native" flag in the RC file.
The old 'dia' configuration is automatically updated (it used to be hardcoded in the code, now it is handled
via the flag).
See also http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg170974.html
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39705 a592a061-630c-0410-9148-cb99ea01b6c8
Additionnal extensions are separated by commas (,) in lyxrc
preference files, while spaces are ignored, e.g. "jpg, jpeg".
Preference lyxrc file format incremented to 2.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39670 a592a061-630c-0410-9148-cb99ea01b6c8
Use a list of [int, list of functions] pair, representing
- int: the format number, and
- list of functions: what needs to be done to the file to
update it to the given format number.
This matches what is done in lyx2lyx and helps keeping track of
format numbers and their corresponding conversion routines.
Also, add another sanity check.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39668 a592a061-630c-0410-9148-cb99ea01b6c8
- Break up steps 1, 2 and 3 from the legacy preview mechanism.
These are really separate steps.
1) Add color info, run latex
2) Run dvips
3) Run ghostscript
- In the case of pdf output, skip step 2 and go directly to step 3.
- Make sure that we fall back to the legacy conversion whenever we can.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39661 a592a061-630c-0410-9148-cb99ea01b6c8
Introduce --debug and --verbose flags to control output. Also, use the
python subprocess module to capture stderr from external commands, thus
bumping the python requirement to version 2.4 or later.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39660 a592a061-630c-0410-9148-cb99ea01b6c8
- Japanese is now handled by passing the option --latex=platex
to the standard lyxpreview script. This is done in PreviewLoader.
- Remove obsoleted file lyxpreview-platex2bitmap.py and the
corresponding lines in the configure script.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39659 a592a061-630c-0410-9148-cb99ea01b6c8
- Handle the preprocessing in the main lyxpreview script with the
command-line arguments --lilypond and --lilypond-book=exe.
- Remove the obsoleted file lyxpreview-lytex2bitmap.py and the
corresponding lines in configure.py.
Fix for the japanese preview still to come.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39658 a592a061-630c-0410-9148-cb99ea01b6c8
Add command-line arguments in a standard unix fashion, using getopt.
Usage: ./lyxpreview2bitmap.py <options> <input file>
Options:
-h, --help: Show this help screen and exit
--dpi=<res>: Resolution per inch (default: 128)
--png, --ppm: Select the output format (default: png)
--fg=<color>: Foreground color (default: black, ie '000000')
--bg=<color>: Background color (default: white, ie 'ffffff')
--latex=<exe>: Specify the executable for latex (default: latex)
The colors are hexadecimal strings, eg 'faf0e6'.
The changes to PreviewLoader.cpp break the preview of lilypond-book
and japanese files, but they will be handled in the next commits.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39657 a592a061-630c-0410-9148-cb99ea01b6c8
Move some common variables to lyxpreview_tools. Otherwise,
add a few variable names, making it easier to track things.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39656 a592a061-630c-0410-9148-cb99ea01b6c8
Whitespace and line endings only, in preparation for some serious work.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39655 a592a061-630c-0410-9148-cb99ea01b6c8
(patch from yihui, part of #7555)
http://www.lyx.org/trac/ticket/7555#comment:18
This adds the new format "R/S code" with extension .R and a converter from .Rnw.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39509 a592a061-630c-0410-9148-cb99ea01b6c8
http://www.lyx.org/trac/ticket/7555
This part is a simple cleanup:
* rename variables to start with a dot
* reset encoding after running sweave
* improve on-screen display of code chunks
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39506 a592a061-630c-0410-9148-cb99ea01b6c8
The problem is with sweave when the temp file path contains spaces. This patch adds some postprocessing that removes the reference to the temp dir.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39070 a592a061-630c-0410-9148-cb99ea01b6c8
listed in file->export menu). Do not remove customized
document formats from the export menu.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38975 a592a061-630c-0410-9148-cb99ea01b6c8
This is dur to the use of the null device, which causes problems. Note that, as a consequence, a Rplots.pdf file is created in the document directory.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38896 a592a061-630c-0410-9148-cb99ea01b6c8
This is different from the fix proposed in bug #7555, because we have to catter for dots in temp dir path.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38895 a592a061-630c-0410-9148-cb99ea01b6c8
default option. Also account for the fact that babel may be switched off.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38708 a592a061-630c-0410-9148-cb99ea01b6c8
On Cygwin, the most reliable way to tell what is the right path
separator to use is a direct check.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38646 a592a061-630c-0410-9148-cb99ea01b6c8
Flex:* format. We can't do this perfectly, but we can do so when it's done
within a single file.
Failure to do this (which mistake had been made before) was the root cause of
the problem reported by Enrico with IEEE.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38391 a592a061-630c-0410-9148-cb99ea01b6c8
- use a null device to avoid the extra Rplots.pdf file created by Sweave
- use directly setwd() instead of in the preamble of the module
- add lots of comments.
This finally fixes ticket #6623.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38359 a592a061-630c-0410-9148-cb99ea01b6c8
when latex fails with a preview. Fixes bug #7303 (IP fails with hyperref).
Patch by Ale with suggestions from Enrico
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38243 a592a061-630c-0410-9148-cb99ea01b6c8
Why do we need two separate files actually? The difference of these two files is minimal.
Couldn't we introduce a further option for "lytex" mode in lyxpreview2bitmap.py instead?
This would significantly lower the maintenance burden.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38120 a592a061-630c-0410-9148-cb99ea01b6c8
- Have InsetFlex::layoutName() report "Flex:" + the inset name.
- Do some layout2layout work so that user insets that do not have
the "Flex:" prefix get it.
Note that this will break some CopyStyle stuff, but we do not have any
decent way to do that, so users will have to make that change for
themselves. I guess we should add that to the release notes.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38112 a592a061-630c-0410-9148-cb99ea01b6c8
Now we specify the output file for sweave explicitely for robustness reasons.
We also specify prefix.string (in order to have the temp files generated in lyx tmp directory.
The only annoying file now is Rplots.pdf, but I am not sure why it is generated...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37984 a592a061-630c-0410-9148-cb99ea01b6c8
- recognize foreground color in pdf route. This is not nice, but there's no better way, AFAICS.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37695 a592a061-630c-0410-9148-cb99ea01b6c8
- we might call this with 7 args, although the 7th will just be ignored (which is fine).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37673 a592a061-630c-0410-9148-cb99ea01b6c8
to create a zip or a tar.gz, to provide the output directory as an option,
and also to specify the location of the lyx2lyx script as an option.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37547 a592a061-630c-0410-9148-cb99ea01b6c8
a LyX archive. A zip archive is created on Windows and a gzip compressed
tar archive on *nix, as those are the de facto platform standards.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37525 a592a061-630c-0410-9148-cb99ea01b6c8
IsPredefined.
The point of this is that the current tag is doing both of these jobs,
and they are different. The achemso class shows this, since it uses
float.sty to define three different kinds of floats internally. We have
to set NeedsFloatPkg to false to prevent LyX from trying to redefine
them, but then we complain that there is no list command defined and so
do not enter it in Insert>List/TOC.
The new tag is not yet functional, just there.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37430 a592a061-630c-0410-9148-cb99ea01b6c8
noticed that article, for example, still has a counter "chapter". This
surprised me.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37193 a592a061-630c-0410-9148-cb99ea01b6c8
and use it to be able to read data files in there (bug #6623). It is probably possible to use sweave hooks instead of the module preamble. Moreover, I want to investigate the use of prefix.string argument of sweave to make sure that the output files end up in the tmp dir.
* be more subtle in the way to change default encoding to handle the case where a data file that is read does not use the same encoding as the .rnw file.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36850 a592a061-630c-0410-9148-cb99ea01b6c8
not correctly handled by dvipng. When a ps special is detected in the dvi
file, the old good legacy method is used. Patch from Ale.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36685 a592a061-630c-0410-9148-cb99ea01b6c8
The required the introduction of the new converter token $$e, that holds
the iconv name of the latex file encoding.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35772 a592a061-630c-0410-9148-cb99ea01b6c8
Sweave.sty path is hardcoded if LaTeX cannot find it.
More to come.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35750 a592a061-630c-0410-9148-cb99ea01b6c8
I believe this completes the LFUN conversions, at least if RELEASE_NOTES
is complete in this respect.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35436 a592a061-630c-0410-9148-cb99ea01b6c8
prefs2prefs_lfuns.py and prefs2prefs_prefs.py. I've organized it this way because, in many ways, these are
the same task. It's very line-by-line, unlike lyx2lyx and layout2layout, where things can be more "global".
So we read the file, line by line, and give a bunch of converter functions a chance to see if they want to
modify that line.
The converter functions are all in the subsidiary files. (Only the lfun one has anything in it now.) They
take a line as argument and return a list: (Bool, NewLine), where the Bool says if we've modified anything
and the NewLine is the new line, if so.
The format of the existing files is format 0, and we'll introduce new format numbers as we proceed,
just as with layout2layout. So the conversion from format 0 to format 1 will be huge; others will
generally be simple.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35426 a592a061-630c-0410-9148-cb99ea01b6c8
the OptionalArgs tag does and is implemented by the now misnamed
InsetOptArgs, except that its content gets wrapped in "{}" rather than
"[]". Required arguments do not actually have to be provided, but they
are always output.
This will allow e.g. beamer's Block environment to be implemented
without ERT.
Documentation to follow.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34591 a592a061-630c-0410-9148-cb99ea01b6c8
Things are still bit inconsistent due to the existence of
additional -- switches, but the correct fix is not so easy.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34005 a592a061-630c-0410-9148-cb99ea01b6c8
allows for layout- or module-level customization of the display in the
citation dialog and of the XHTML bibliography output.
There is more of this to come, by the way. The next step is to allow
macros. That will make it easier to deal with translation issues, which
ought to be the final step.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33920 a592a061-630c-0410-9148-cb99ea01b6c8
indicates what prefix to use when constructing formatted references.
Documentation to follow.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33784 a592a061-630c-0410-9148-cb99ea01b6c8
This patch introduces a "ListCommand" tag for Float layout. This tag
defines the command used to generate a list of such floats, in the cases
where float.sty is not used (i.e., where NeedsFloatPkg is true). We were
previously hardcoding the commands \listoftables and \listoffigures. But
in other cases, such as achemso.layout, which defines lists of schemes,
charts, etc, we could not output such lists.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33633 a592a061-630c-0410-9148-cb99ea01b6c8
list revealed that the former is confusing to people. The latter
indicates more clearly what the tag does.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33626 a592a061-630c-0410-9148-cb99ea01b6c8
InsetLayout, per Jurgen's suggestion, so that insets can be told to
display an abbreviated form of their content when closed.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32575 a592a061-630c-0410-9148-cb99ea01b6c8
would allow us to do something after copying, if we should later want to
do that.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@31703 a592a061-630c-0410-9148-cb99ea01b6c8
Documentation is Customization.lyx will follow, once this stabilizes.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29973 a592a061-630c-0410-9148-cb99ea01b6c8
only sweave is supported (for building documentation, not programs).
Layout files allow a new OutputFormat tag
Modules can be conditionned on a feature of the type from->to, indicating that
it should be possible to convert from format 'from' to format 'to'.
Layout format incremented to 15.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29874 a592a061-630c-0410-9148-cb99ea01b6c8
Don't go into an endless loop if layout2layout cannot produce the desired file format.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28529 a592a061-630c-0410-9148-cb99ea01b6c8
Implement infrastructure to add translations to layout files and translate one .inc file.
Some others are missing.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28356 a592a061-630c-0410-9148-cb99ea01b6c8
The bug is that older layout files with lines like:
Input amsmaths.inc
fail in 1.6, since that file no longer exists. This commit adds some
layout2layout that will scan for such includes and add lines like
UseModule theorems-ams
corresponding to the input lines. The downside to this commit is that
UseModule only becomes available on 25 July 2008, whereas the files
were removed in January.
My intention is to try to deal with these intermediate cases as well.
But I'm not sure that will ultimately work very well, so this will do
until I can figure that out.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26800 a592a061-630c-0410-9148-cb99ea01b6c8
update an existing counter rather than overwrite it.
This turns out to be more complicated than it might seem. There are two
large parts to the patch. One moves the counter read routine out of TextClass
and into the Counter and Counters classes. The other changes the syntax of
counters from:
Counter
Name whatever
....
to:
Counter whatever
....
This allows us to get the name of the counter right away, so we can decide
whether it is an old one or a new one. So the layout format had to be
changed (again), with corresponding layout2layout code.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26779 a592a061-630c-0410-9148-cb99ea01b6c8
one that may have been triggered by an older version of python. The
problem is that the sniffer call could fail, and then dialect is
undefined.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26447 a592a061-630c-0410-9148-cb99ea01b6c8
theorems-ams module, which is what most users will want. A later commit will allow users also
to "exclude" this module, in case they wanted to do that.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25880 a592a061-630c-0410-9148-cb99ea01b6c8