Fixes to Format.{h,cpp} following advices from Richard and Vincent.
Caching the string value of extensions is not necessary. It
was a nice textbook exercise in getter/setter methods but it
is cause for confusion and prone to mistakes in maintenance.
Moving the zipped file info cache to Formats.cpp saves the inclusion of <map> and <ctime> from Format.h
They were implementation-specific and do not impact on the interface anyway.
Added OpenOffice drawing file-format.
Now you can:
-) include in LyX OpenOffice drawings (.odg or old .sxd files)
-) preview them on the screen
-) view them in the final .ps/.pdf output
-) edit them externally via libreoffice, ooffice, oodraw or soffice (whatever is detected).
Added support for natively zipped file formats that do not need decompression for being handled by converters
(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
When changing the document language, also change the language of the
text which is not explicitly marked in a different language, irrespective
of the multilingual status, except for LTR<=>RTL changes.
See discussion in this thread:
http://thread.gmane.org/gmane.editors.lyx.devel/138380
* configure.py : Detect java and perl scripts in a general way.
Issues #6339 and #7579 were fixed by specific code targeting those
RC entries. This commit fixes the detection of java and perl scripts
in a general way. As a result:
- The detections of jfig3-itext.jar and jfig3.jar, which where
previously overlooked, are now also fixed, and
- Future additions of java and perl scripts to configure.py are
straight forward.
The check on dv2dt and dt2dv is not necessary, since even if these
are not available, we fall back to the legacy convertion method,
which uses ghostscript, and which is available in all cases.
Make the scrolling for large insets more naturally (bug #7662)
The patch fixes a case that I had forgotten. Namely, the case that when the height of a row was larger than the height of the screen and that the cursor is already visible. That's why I added a new if case to catch all situations in which the row height is larger than the height of the screen. If we then need scrolling we scroll to height/4 and 3*height/4. In the end, the height_/4 and 3*height_/4 should be replaced by the rowheights in the inset, but we need some extra infrastructure for that.
Added -E option to specify export format and destination file-name (and export folder).
Addressing #4501.
See also http://comments.gmane.org/gmane.editors.lyx.devel/138329
- Remove hack with $$AbsOrRelPath substitution in the guiName.
Instead, let LyX display the filename automatically in the gui,
consistent with InsetInclude.
- Use the guiName in the drop-down menu in the dialog instead of the
internal lyxName. These guiNames ought to be more descriptive.
Fix the display of file filters in the import file dialog.
- Correctly interpret whether a file description is available.
This description is later displayed in the file filters in the
import dialog (and other dialogs using this qt helper).
- Fix the regex so that "LaTeX (plain) (*.tex)" is correctly parsed
into a description "LaTeX (plain) " and its corresponding filter.
* prefs2prefs.py : Use a list of [format, conversions] pair.
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.
Don't allow newline characters in preference (#5840).
Set a validator on QLineEdit widgets. The validator removes any
\n and \r characters, thus preventing users from copy-pasting
newline characters into these fields, and subsequently saving
them, inadvertantly, to the preference file.
Better error and progress messages for lyxpreview.
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.
Merge the preview mechanism for japanese with the standard one.
- 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.
Merge the preview mechanism for lilypond-book with the standard one.
- 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.
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.
* configure.py : Fix the detection of tex2lyx when running in-place (#6986).
Remove the hack with os.environ and instead directly search for
../src/tex2lyx/tex2lyx relative to where configure.py is found.
* configure.py : Remove unnecessary code in xhtml viewer detection.
This code seems unnecessary since not_found = "auto" is set in
checkViewer, and thus "auto" is used as the viewer when no viewers
are found, and a lyxrc entry is added anyway. The "auto" string is
special-cased in the code, where we attempt to automatically
determine the viewer from the OS.
installer:
- fix bug that LyX's LaTeX files were tried to install although the user denied to use LaTeX.nsh
- propose to add a desktop item for LyX (can be switched off by the user)
installer:
- fix 2 uninstaller issues
- remove support for AFPL Ghostscript (license clash)
- only install Ghostscript if not already installed
- in case there are several Ghostscript installations, use the newest one
- remove an unused variable
Fix compile error with gcc 4.5.3 when using the included mythes library:
../../src/support/mythes/mythes.hxx:25:9: error: ‘FILE’ does not name a type
../../src/support/mythes/mythes.hxx:55:22: error: ‘FILE’ has not been declared
Julien Rioux [Mon, 29 Aug 2011 14:36:37 +0000 (14:36 +0000)]
Update the python requirements after r39553 and r39554. The subprocess module,
now used in configure.py, requires python >= 2.4. See the mailing list thread:
http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg170511.html
Uwe Stöhr [Mon, 29 Aug 2011 14:07:30 +0000 (14:07 +0000)]
InsetSpace support for
- \negmedspace and \negthickspace outside of math
- \enspace, \hspace*, \hspace*{\fill} and \hfill inside math
(fileformat change)
Uwe Stöhr [Sun, 28 Aug 2011 16:49:16 +0000 (16:49 +0000)]
- tufte-book.layout: fix a lyX warning about uninitialized counter
- tufte example files: add important notes that float placements options are not allowed and remove unreferenced labels
Uwe Stöhr [Sun, 28 Aug 2011 03:59:16 +0000 (03:59 +0000)]
new module and example file for chemical risk and safety statements; requires the package rsphrase which is bundled with the package mhchem that we already support
Uwe Stöhr [Sun, 28 Aug 2011 03:36:34 +0000 (03:36 +0000)]
initials.module: safer preamble call, no string changed, necessary to be able to compile the EmbeddedObjects manual also if the package lettrine is not installed