LyX file-format changes
-----------------------

2005-06-21  Jean-Marc Lasgouttes  <lasgouttes@lyx.org>

	* format incremented to 242. There is no file format per
	se, but the "frenchb" language has been removed from lib/language
	and has to be translated to "french" by lyx2lyx.

2005-02-03  Georg Baum  <Georg.Baum@post.rwth-aachen.de>

	* format incremented to 241.

	All following changes apply only to text in ERT insets. The
	rationale is that text in ERT is simply ASCII text, and nothing more.

	* paragraph breaks are now a single newline in latex and not a
	paragraph break anymore (bug 698).
	* \newline is not allowed anymore, because it is redundant (see above)
	* layouts other than Standard, paragraph parameters and font changes
	are not allowed anymore. They never made sense and were ignored for
	latex output, but now they can't be read or set anymore (bug 922).


2005-01-23  Jürgen Spitzmüller  <j.spitzmüller@gmx.de>

	* format incremented to 240.
	* new bufferparam:
		\output_changes {true|false}
	(should the change tracking marks be visible in the output or not?)
	* lyx2lyx should just delete the param in 239.

2005-01-06  José Matos  <jamatos@lyx.org>

	* format incremented to 239.
	* the paragraph parameters are displayed in their own line. This
	change is consistent with the insets behaviour, and corresponds
	to a more uniform treatment of the paragraphs since some of them
	had already their own line.

	An example of a single paragraph follows:

\begin_layout Standard
\paragraph_spacing single
\align left
Paragraph text.
\end_layout


2004-12-03  José Matos  <jamatos@lyx.org>

	* format incremented to 238.
	* The compatibility code to read old latex accents from 0.12.x in
	InsetLatexAccent::checkContents has been removed.
	The following translations are done:
		"\i \x"   -> "\i \x{}"
		"\i \xy"  -> "\i \x{y}"
		"\i \x y" -> "\i \x{y}"
		"\i \x\i" -> "\i \x{\i}"
		"\i \x\j" -> "\i \x{\j}"
	x is a latex accent command, y the base character. \, i and j are
	literal.
	lyx did these changes already from 0.12.x -> 215, but not lyx2lyx,
	so formats 215 - 237 can have both versions.


2004-10-10  José Matos  <jamatos@lyx.org>

	* format incremented to 237.
	* In the header, the following statments use now booleans values,
	instead of 0, 1:
		- \use_geometry
		- \use_bibtopic
		- \tracking_changes

2004-08-15  José Matos  <jamatos@lyx.org>

	* format incremented to 236.
	* Added tags:
		- \begin_document
		- \begin_header
		- \begin_body
		- \end_body

	* The options for \papersize are changed:
		Default -> default
		Custom -> custom
	* All whitespaces are removed at the end of lines, when
	not necessary. As an example we have all the lines in the header that
	do not belong to the preamble.

2004-07-01  Georg Baum  <Georg.Baum@post.rwth-aachen.de>

	* format incremented to 235.
	* \paperpackage had an off-by-one error. Translation table:

	  234: a4    a4wide  widemarginsa4
	  235: none  a4      a4wide         widemarginsa4

	  The "widemarginsa4" setting of 235 has no equivalent in 234.

2004-05-12  Angus Leeming  <leeming@lyx.org>

	* format incremented to 234.
	* the citation engine is specified explicitly rather than being
	deduced from 3 bools.

	\use_natbib 1
	\use_numerical_citations 0   ->   \cite_engine <style>
	\use_jurabib 0

	where <style> is one of "basic", "natbib_authoryear",
	"natbib_numerical" or "jurabib".

2004-04-29  Georg Baum  <Georg.Baum@post.rwth-aachen.de>

	* format incremented to 233.
	* insetgraphics does not allow filenames without extension anymore.
	The complete filename has to be given.

2004-03-29  Jürgen Spitzmüller  <j.spitzmueller@gmx.de>

	* format incremented to 232.

	* Support for bibtopic (sectioned bibliographies).
	  - bufferparam \use_bibtopic [1|0]
	  - the bibtex inset has a second argument for bibtopic's
	    btPrint{Cited|NotCited|All} command:
	    < 231:
	    \begin_inset LatexCommand \bibtex[<style>]{<database>}
	    now:
	    \begin_inset LatexCommand \bibtex[<style>][<btPrintX>]{<database>}
	  Forwards, there's nothing to be done. Backwards, \usepackage[dot]{bibtopic}
	  has to be inserted to the preamble. Instead of the bibtex inset, the LaTeX
	  \bibliographystyle{<style>}
	  \begin{btSect}{<database>}
	  \<btprintX>
	  \end{btSect}
	  has to be inserted.

2004-03-29  Jürgen Spitzmüller  <j.spitzmueller@gmx.de>

	* format incremented to 231.

	* Support for sidewaysfigure/sidewaystable (rotating package).
	insetfloat has now a param \sideways [true|false] (default is false).
	The param should be erased on downwards conversion, if it was true,
	the inset should be replaced by
	\begin{sidewaysfigure} <content> \end{sidewaysfigure}
	resp.
	\begin{sidewaystable} <content> \end{sidewaystable}
	i.e. ERT.

2004-02-23  Jürgen Spitzmüller  <j.spitzmueller@gmx.de>

	* format incremented to 230.

	* Support for a second optional argument in insetcommand.
	currently, citation uses this to support natbibs second
	optional argument \cite[before][after]{key}.
	I think there's nothing to convert upwards. Downwards, the
	commands with 2 optional args need to be converted to ERT.

	* Support for jurabib (param \use_jurabib [1|0], default is 0).
	When converting downwards, \usepackage{jurabib} has to be added
	to the preamble and, if babel is used, \usepackage{babel} before
	(jurabib fails if babel is called afterwards). If the natbib commands
	are used together with jurabib, they have to be converted to ERT too.

2003-12-29  Jürgen Spitzmüller  <j.spitzmueller@gmx.de>

	* format incremented to 229.
	* Minipages cannot be read anymore. All minipage insets will
	be converted to frameless box insets between 228->229.

2003-12-15  Angus Leeming  <leeming@lyx.org>

	* format incremented to 228.
	* Change the output of all insets derived from InsetCollapsable
	except for InsetERT (which has a similar output already), changing lines
	"collapsed true" -> "status collapsed"
	"collapsed false" -> "status open".
	* Change the output of InsetERT, changing lines
	"status Collapsed" -> "status collapsed"
	"status Open" -> "status open".
	"status Inlined" -> "status inlined".

2003-12-10  Angus Leeming  <leeming@lyx.org>

	* format NOT incremented.
	* add a 'draft' option to InsetExternal.

2003-12-10  Angus Leeming  <leeming@lyx.org>

	* format incremented to 227.
	* Change the output of InsetBox:
	\begin_inset Boxed -> \begin_inset Box Boxed
	\begin_inset Doublebox -> \begin_inset Box Doublebox
	\begin_inset Frameless -> \begin_inset Box Frameless
	\begin_inset ovalbox -> \begin_inset Box ovalbox
	\begin_inset Ovalbox -> \begin_inset Box Ovalbox
	\begin_inset Shadowbox -> \begin_inset Box Shadowbox

2003-12-10  Angus Leeming  <leeming@lyx.org>

	* format incremented to 226.
	* Change the output of InsetNote:
	\begin_inset Note -> \begin_inset Note Note
	\begin_inset Comment -> \begin_inset Note Comment
	\begin_inset Greyedout -> \begin_inset Note Greyedout

2003-11-28  André Pönitz

	* Remove space_above/space_below from Paragraph.
    This is now handled by InsetVSpace.

2003-10-07  Angus Leeming  <leeming@lyx.org>

	* Add transformations to InsetExternal

	boundingBox 0 0 20 20           the dimensions of the B.B..
	                                Output if the B.B. is not empty.
	clip                            clip the image to the B.B.
	                                Output if true.
	extra LaTeX "draft"             'extra' data passed to the primary
	                                command for this output format.
	                                (Possible formats LaTeX, PDFLaTeX,
	                                 LinuxDoc, DocBook, Ascii.)
	                                The string can contain spaces and so
	                                is wrapped in "...".
	rotateAngle 30                  Rotation of the data.
	                                Output for non-zero rotation only.
	rotateOrigin bottomleft         Rotation origin.
	                                Output for non-zero rotation and
	                                non-default origin (center) only.
	scale 50
	width 2cm                       Output only if the image is resized.
	height 2cm
	keepAspectRatio

2003-10-07  Martin Vermeer  <martin.vermeer@hut.fi>

	* Added box inset. File format:

	\begin_inset Ovalbox            Boxed/Frameless/ovalbox/Ovalbox
	                                    /Shadowbox/Doublebox
	position "b"                    t/c/b
	hor_pos "c"                     l/c/r/s
	has_inner_box 1                 1/0
	inner_pos "b"                   t/c/b/s
	use_parbox 0                    1/0
	width "100col%"                 unit+width-string
	special "none"                  none/height/depth
	                                    /totalheight/width
	height "1in"                    unit+width-string
	height_special "totalheight"    none/height/depth
	                                    /totalheight/width
	collapsed false                 true/false

	\begin_layout Standard

	<box contents>
	\end_layout

	\end_inset

	This box (Frameless, has_inner_box=1, use_parbox=0) replaces
	the pre-existing Minipage inset. Parameters translate as follows:
	position                        0/1/2   -> t/c/b
	inner_position                  0/1/2/3 -> inner_pos c/t/b/s
	height                          same
	width                           same
	collapsed                       same

2003-08-19  Michael Schmitt  <michael.schmitt@teststep.org>

	* attribute valignment="center" is replaced by valignment="middle"
	for tabular columns and cells

2003-07-28  José Matos  <jamatos@lyx.org>

	* \the_end is replaced with \end_document

2003-07-28  José Matos  <jamatos@lyx.org>

	* \layout is replaced with \begin_layout

2003-07-28  José Matos  <jamatos@fep.up.pt>

	Format bumped to 225

	* All layouts finish now with \end_layout

2003-06-04  Angus Leeming  <leeming@lyx.org>

	Format bumped to 224

	* the storage of the external inset has been changed from

		\begin_inset External XFig,"file.fig",""

		\end_inset

	to this

		\begin_inset External
			template XFig
        		filename file.fig
			display <display_type>
			lyxscale <scale>

		\end_inset

	throwing away the final arg (here "", more generally "<string>") that holds
	the parameters variable.
	Variables are output if present (filename) or different from the default
	values (display, lyxscale).

	Moreover, the RasterImage template has been scrapped. All RasterImage
	external insets are now converted to Graphics insets.

2003-05-20  Jürgen Spitzmüller  <j.spitzmueller@gmx.de>

	* Added new space insets:
		\SpecialChar ~ is now \InsetSpace ~
		ERT: "\ " could be converted to InsetSpace \<space>
		ERT: "\," could be converted to InsetSpace \,

2003-04-24  André Pönitz <poenitz@gmx.net>

	* Added eqref support:
	\begin_inset LatexCommand \eqref{label}

2003-03-12  John Levon  <levon@movementarian.org>

	* Added \\end_header to signify the end of the header in a
	  more robust fashion.

	* use_amsmath is now a tristate {0 = never, 1 = auto, 2 = always}

2003-02-10  John Levon  <levon@movementarian.org>

	Format bumped to 222

	Added \\tracking_changes 0|1 to the header.

	Added \\author to the header. This can be present multiple
	times, and is of the form :

	\\author "Real Name" email@address.com

	Added \\change_deleted, \\change_inserted. Each of these does not
	span a paragraph, and is delimited by "\\change_unchanged\n". Both are
	of the form :

	\\change_inserted author time

	where author is an integer ID reference into the author list in
	the header, and time is time_t.

2002-10-24  Rob Lahaye  <lahaye@snu.ac.kr>

	* insetgraphicsParams.h (scale): is now a float, not an unsigned int.

2002-08-22  Rob Lahaye <lahaye@snu.ac.kr>

New graphics dialog. With the removal of buttons in the dialog, also
keywords in the graphics inset went. The following keywords do not
exist anymore:
	lyxsize_kind
	lyxsize_type
	lyxwidth
	lyxheight
	size_kind
	size_type
	rotate

Only non-default values are saved to the lyx files. The defaults of the remaining
keywords are;
	filename <empty>
	lyxscale 100
	display default
	scale 100
	width <empty>
	height <empty>
	draft <off>
	noUnzip <off>
	BoundingBox <from file>
	clip <off>
	rotateAngle 0
	rotateOrigin centerBaseline
	subcaption <off>
	subcaptionText <empty>
	special <empty>

The remaining keywords have sufficient overlap with the old ones for a
smooth reading of the 1.2.x inset keywords in most common cases.

Compatibility is certainly broken for the old lyxwidth/lyxheight keywords.
They don't exist anymore and we can't translate them into a scaling value, while
we're reading the graphics inset. The old lyxwidth/lyxheight keyword and its
argument is ignored and lost.

Only few compatibility issues are left for lyx2lyx:

------------------------------------------------------------------------------
old-token                                   new-token         remove
------------------------------------------------------------------------------
size_kind original / size_type 0            scale 100         width <val>
                                                              height <val>
                                                              scale <val>

size_kind width_height / size_type 1            -             scale <val>

lyxsize_kind original / lyxsize_type 0      lyxscale 100      lyxscale <val>
------------------------------------------------------------------------------
[replace old-token by new-token, and remove any of subsequent tokens as listed]

If "rotate" is absent, lyx2lyx should ignore "rotateAngle <val>":
   if ( "rotateAngle <val>" is there WITHOUT being preceded by the keyword "rotate" )
   then
        replace "rotateAngle <val>" by "rotateAngle 0"


2002-08-12  Andre' Poenitz <poenitz@gmx.de>

Added \lyxlock for locked math inset when written to .lyx file.
When "downgrading" .lyx files this should simple be deleted but it
does not hurt at all if it stays in. It does not have to be added
when "upgrading".


2002-08-02  Angus Leeming  <leeming@lyx.org>

Added a boolean "preview" flag to InsetCommandParams.
Currently it is written only by InsetInclude, because only this
class can generate a preview of its contents.

The LyX file now contains:

 \begin_inset Include \input{snapshot_t=40.tex}
+preview true

 \end_inset

Earlier versions of LyX just swallow this extra token silently.

2002-08-12  Angus Leeming  <leeming@lyx.org>

The 1.2.0 InsetGraphicsParams "size_type" and "lyxsize_type" have been
renamed as "size_kind" and "lyxsize_kind" respectively.

 \begin_inset Graphics FormatVersion 1
 	filename file.eps
 	display default
-	size_kind original
+	size_type original
 	width 7cm
 	rotateOrigin center
-	lyxsize_kind original
+	lyxsize_type original
	lyxwidth 4cm

 \end_inset