1 LyX file-format changes
2 -----------------------
4 2007-07-20 Dov Feldstern <dov@lyx.org>
6 * format *not* incremented; fixed format 249 conversion, so that it now
7 correctly deals with encodings in footnotes (part of bug 3613)
9 2007-06-26 Uwe Stöhr <uwestoehr@web.de> and Dov Feldstern <dov@lyx.org>
11 * format incremented to 276: switching exsting language 'arabic' to
12 'arabic_arabtex'; this is to differentiate from the new arabic support
13 using the arabi package.
15 2007-05-04 Jürgen Spitzmüller <j.spitzmueller@gmx.de>
17 * format incremented to 275: add graphics params scaleBeforeRotation
20 2007-06-13 Dov Feldstern <dov@lyx.org>
21 * format incremented to 274: applying the conversion done in format 259
22 to the \lang property, which was forgotten back then... This is
23 slightly more complicated, because the default language has to be
24 determined on a per-paragraph basis.
26 2007-06-13 Bo Peng <ben.bob@gmail.com>
27 * format incremented to 273: add --Separator-- environment to
28 separate consecutive environments
30 2007-06-13 Bo Peng <bpeng@lyx.org>
31 * format incremented to 272: convert listings to ERT because
32 earlier versions of lyx can not handle unrecognizable
35 2007-05-15 José Matos <jamatos@lyx.org>
36 * format incremented to 271: extended textclasses accept the
37 normal font sizes: 10, 11 and 12pt.
39 2007-05-14 Martin Vermeer <martin.vermeer@tkk.fi>
40 * format incremented to 270: support beamer \alert, \structure
42 2007-05-08 Bo Peng <ben.bob@gmail.com>
43 * format incremented to 269: add listings support
44 - add preamble flag \listings_params, e.g. \listings_params "language=Python,float"
45 - add inset listings, with options lstparams and inline, e.g.
47 lstparams "xleftmargin=50pt,language=Python"
49 - add \lstinputlisting Include type. e.g.
50 \begin_inset Include \lstinputlisting{newfile1.lyx}[firstline=10,lastline=15]
52 2007-05-06 Uwe Stöhr <uwestoehr@web.de>
54 * format incremented to 268: add support for the CJK encodings
55 - all encodings supported by CJK.sty are now in lib/encodings
56 - lib/encoding has got two new flags:
58 "inputenc" for those languages that use the inputenc-package and
59 "CJK" for the CJK encodings
60 - "fixed"/"variable" to divide between multi- or single-byte encoding
61 - lib/languages allows now to set an empty language for babel
62 in this case babel isn't called.
64 2007-05-04 Jürgen Spitzmüller <j.spitzmueller@gmx.de>
66 * format incremented to 267: add plain utf8 encoding (for XeTeX).
68 2007-04-29 Uwe Stöhr <uwestoehr@web.de>
70 * format incremented to 266:
71 Support for the Armenian language
73 2007-04-26 Uwe Stöhr <uwestoehr@web.de>
75 * format incremented to 265: fix LyX's table border line handling
76 With the fix (see bug 1746) LyX now takes care if the user has entered
77 a "|" character in the argument field of tables. Therefore the "|"
78 character has to be removed when also a table border is set.
80 2007-04-24 José Matos <jamatos@lyx.org>
82 * format incremented to 264:
83 textclass cv is renamed simplecv
85 2007-02-22 José Matos <jamatos@lyx.org>
87 * format incremented to 263: changes in the language names (overdue):
89 portuges -> portuguese
91 2007-02-16 Georg Baum <Georg.Baum@post.rwth-aachen.de>
93 * format incremented to 262: Allow ascii \inputencoding
95 2007-02-14 Georg Baum <Georg.Baum@post.rwth-aachen.de>
97 * format incremented to 261: \output_changes is now considered
98 even if \tracking_changes is false. This allows to output existing
99 changes even if future changes are not tracked anymore.
102 \tracking_changes false
105 is therefore converted to
107 \tracking_changes false
108 \output_changes false
110 on upgrade. Nothing is done on downgrade since the new behaviour is
111 not supported in older formats.
113 2007-02-13 Georg Baum <Georg.Baum@post.rwth-aachen.de>
115 * format incremented to 260: Allow utf8x \inputencoding
117 2007-02-12 Georg Baum <Georg.Baum@post.rwth-aachen.de>
119 * format incremented to 259:
120 Old: Spaces at start or end of font changes were output outside of
121 the font change, i.e. not 'xx\textbf{ yy }zz', but
123 New: Spaces are always output with the font set by the user.
125 2007-01-31 Uwe Stöhr <uwestoehr@web.de>
127 * format incremented to 258: new \lyxline definition
129 \\newcommand{\\lyxline}[1]{
130 {#1 \\vspace{1ex} \\hrule width \\columnwidth \\vspace{1ex}}
133 \\newcommand{\\lyxline}[1][1pt]{%
135 \\rule[.5ex]{\\linewidth}{#1}\\par}
136 The new definition is more robust, see bug 1988 and now really takes care about
137 the fontsize: \lyxline{\Huge} produces now a thicker line then \lyxline{\normalfont}
139 2007-01-29 Georg Baum <Georg.Baum@post.rwth-aachen.de>
141 * format incremented to 257: Caption styles have been replaced by
142 InsetCaption. This is at the same time also a layout file format
143 change to format 3. layout2layout removes caption layouts from old
145 Note that InsetCaption did exist before this format, but was never
146 used. Old files containing do nevertheless still work.
147 Of course users can still define a Caption style in layout files,
148 but the special treatment in LyX is gone (apart from the sensitive
151 2006-12-22 Georg Baum <Georg.Baum@post.rwth-aachen.de>
153 * format incremented to 256: allow some new inputenc settings.
154 For the complete list, see lib/lyx2lyx/lyx_1_5.py.
156 2006-11-25 Georg Baum <Georg.Baum@post.rwth-aachen.de>
158 * format incremented to 255: new insets for \clearpage and
159 \cleardoublepage. They are written inline to the file, exactly like
162 2006-11-13 Georg Baum <Georg.Baum@post.rwth-aachen.de>
164 * format incremented to 254: new header parameter \use_esint.
165 It can have the same values as \use_amsmath: 0 (off), 1 (auto) and
168 2006-10-18 Georg Baum <Georg.Baum@post.rwth-aachen.de>
170 * format incremented to 253: new nomenclature and printnomenclature
171 insets. These are standard InsetCommand with the following parameters:
172 \nomenclature[prefix]{symbol}{description}
173 \printnomenclature[labelwidth]
175 2006-10-15 Georg Baum <Georg.Baum@post.rwth-aachen.de>
177 * format incremented to 252: changed command inset syntax
181 \begin_inset LatexCommand \cmdname[opt1][opt2]{arg}
192 \begin_inset LatexCommand cmdname
199 The order of the parameters and for each parameter the name and
200 optional/required bit is now stored in InsetCommandParams.
202 2006-10-03 Jürgen Spitzmüller <j.spitzmueller@gmx.de>
204 * format incremented to 251: save show_label param for charstyles.
206 On revert, the show_label param is just removed. Nothing to convert.
208 2006-10-12 Martin Vermeer <martin.vermeer@hut.fi>
210 * Format incremented to 250: allow optional arg to environments
212 No material format change. Now optargs for environments are allowed
213 to be specified in layout files and will be handled properly. When
214 converted back to older formats, they will be ignored in LaTeX
217 2006-08-14 Georg Baum <Georg.Baum@post.rwth-aachen.de>
219 * format incremented to 249: Unicode
221 LyX documents are now always encoded in utf8. The value of
222 \inputencoding does now only determine the encoding of the created
224 Up to format 248 the value of \inputencoding did also determine the
225 encoding of the LyX file:
227 \inputencoding LyX file encoding
228 auto as determined by the document and character
231 everything else as determined by \inputencoding
233 The difference between auto and default is only the LaTeX output:
234 auto causes loading of the inputenc package, default does not.
236 2006-07-03 Georg Baum <Georg.Baum@post.rwth-aachen.de>
238 * format incremented to 248: Basic booktabs support
240 The <features> tag has a new switch: booktabs="true|false".
241 An absent switch is equivalent to booktabs="false".
242 Horizontal lines are set with the booktabs package if this switch
245 The <row> tag of tabulars has the following new attributes:
246 topspace, bottomspace and interlinespace. All take a LyXLength
247 as value, or the special keyword "default".
249 2006-06-10 Jürgen Spitzmüller <j.spitzmueller@gmx.de>
251 * format incremented to 247. The Grand Font Interface Rewrite.
252 (1) Split font selection to rm, sf, tt:
253 \fontscheme -> \font_roman, \font_sans, \font_typewriter
255 \fontscheme \font_roman \font_sans \font_typewriter
256 default default default default
257 ae ae default default
258 times times default default
259 palatino palatino default default
260 helvet default helvet default
261 avant default avant default
262 newcent newcent default default
263 bookman bookman default default
264 pslatex times (or \usepackage{pslatex})
266 \font_roman: cmr (-> \renewcommand{\rmdefault}{cmr}),
267 lmodern, charter, utopia, ccfonts, chancery, beraserif
268 (-> \usepackage{<name>})
269 \font_sans: cmss, lmss, cmbr
270 (-> \renewcommand{\sfdefault}{<name>})
271 berasans (-> \usepackage{<name>})
272 \font_typewriter: cmtt, lmtt, cmtl,
273 (-> \renewcommand{\sfdefault}{<name>})
274 courier, luximono, beramono
275 (-> \usepackage{<name>})
276 (2) New param \font_default_family (rmdefault, sfdefault, ttdefault)
277 (3) New param \font_sc (true, false).
278 (4) New param \font_osf (true, false).
279 (5) New param \font_sf_scale (float)
280 (6) New param \font_tt_scale (float)
281 Support for the following fonts has been added:
282 bera, ccfonts, chancery, charter, cmbright, computer modern (explicitely),
283 courier, lmodern, luximono, utopia.
284 Support for the following font has been removed:
285 pslatex (it's superseded by mathptmx (times)).
287 2006-06-03 Martin Vermeer <martin.vermeer@hut.fi>
289 * format incremented to 246. The framed.sty package is
290 now supported with note types framed and shaded.
292 2005-10-12 Jürgen Spitzmüller <j.spitzmueller@gmx.de>
294 * format incremented to 245. The \quotes_times parameter
297 2005-09-24 Jürgen Spitzmüller <j.spitzmueller@gmx.de>
299 * format incremented to 244. Rename '\InsetSpace \,'
300 to '\InsetSpace \thinspace{}', because the comma was
301 not parsed by lyxlex, and '\InsetSpace \space' to
302 '\InsetSpace \space{}' in favour of consistency.
304 2005-07-18 José Matos <jamatos@lyx.org>
306 * format incremented to 243.
308 * this change only affects the preamble, the paperpackage
309 option was removed and papersize is changed to default.
311 2005-06-21 Jean-Marc Lasgouttes <lasgouttes@lyx.org>
313 * format incremented to 242. There is no file format per
314 se, but the "frenchb" language has been removed from lib/language
315 and has to be translated to "french" by lyx2lyx.
317 2005-02-03 Georg Baum <Georg.Baum@post.rwth-aachen.de>
319 * format incremented to 241.
321 All following changes apply only to text in ERT insets. The
322 rationale is that text in ERT is simply ASCII text, and nothing more.
324 * paragraph breaks are now a single newline in latex and not a
325 paragraph break anymore (bug 698).
326 * \newline is not allowed anymore, because it is redundant (see above)
327 * layouts other than Standard, paragraph parameters and font changes
328 are not allowed anymore. They never made sense and were ignored for
329 latex output, but now they can't be read or set anymore (bug 922).
332 2005-01-23 Jürgen Spitzmüller <j.spitzmüller@gmx.de>
334 * format incremented to 240.
336 \output_changes {true|false}
337 (should the change tracking marks be visible in the output or not?)
338 * lyx2lyx should just delete the param in 239.
340 2005-01-06 José Matos <jamatos@lyx.org>
342 * format incremented to 239.
343 * the paragraph parameters are displayed in their own line. This
344 change is consistent with the insets behaviour, and corresponds
345 to a more uniform treatment of the paragraphs since some of them
346 had already their own line.
348 An example of a single paragraph follows:
350 \begin_layout Standard
351 \paragraph_spacing single
357 2004-12-03 José Matos <jamatos@lyx.org>
359 * format incremented to 238.
360 * The compatibility code to read old latex accents from 0.12.x in
361 InsetLatexAccent::checkContents has been removed.
362 The following translations are done:
364 "\i \xy" -> "\i \x{y}"
365 "\i \x y" -> "\i \x{y}"
366 "\i \x\i" -> "\i \x{\i}"
367 "\i \x\j" -> "\i \x{\j}"
368 x is a latex accent command, y the base character. \, i and j are
370 lyx did these changes already from 0.12.x -> 215, but not lyx2lyx,
371 so formats 215 - 237 can have both versions.
374 2004-10-10 José Matos <jamatos@lyx.org>
376 * format incremented to 237.
377 * In the header, the following statments use now booleans values,
383 2004-08-15 José Matos <jamatos@lyx.org>
385 * format incremented to 236.
392 * The options for \papersize are changed:
395 * All whitespaces are removed at the end of lines, when
396 not necessary. As an example we have all the lines in the header that
397 do not belong to the preamble.
399 2004-07-01 Georg Baum <Georg.Baum@post.rwth-aachen.de>
401 * format incremented to 235.
402 * \paperpackage had an off-by-one error. Translation table:
404 234: a4 a4wide widemarginsa4
405 235: none a4 a4wide widemarginsa4
407 The "widemarginsa4" setting of 235 has no equivalent in 234.
409 2004-05-12 Angus Leeming <leeming@lyx.org>
411 * format incremented to 234.
412 * the citation engine is specified explicitly rather than being
413 deduced from 3 bools.
416 \use_numerical_citations 0 -> \cite_engine <style>
419 where <style> is one of "basic", "natbib_authoryear",
420 "natbib_numerical" or "jurabib".
422 2004-04-29 Georg Baum <Georg.Baum@post.rwth-aachen.de>
424 * format incremented to 233.
425 * insetgraphics does not allow filenames without extension anymore.
426 The complete filename has to be given.
428 2004-03-29 Jürgen Spitzmüller <j.spitzmueller@gmx.de>
430 * format incremented to 232.
432 * Support for bibtopic (sectioned bibliographies).
433 - bufferparam \use_bibtopic [1|0]
434 - the bibtex inset has a second argument for bibtopic's
435 btPrint{Cited|NotCited|All} command:
437 \begin_inset LatexCommand \bibtex[<style>]{<database>}
439 \begin_inset LatexCommand \bibtex[<style>][<btPrintX>]{<database>}
440 Forwards, there's nothing to be done. Backwards, \usepackage[dot]{bibtopic}
441 has to be inserted to the preamble. Instead of the bibtex inset, the LaTeX
442 \bibliographystyle{<style>}
443 \begin{btSect}{<database>}
448 2004-03-29 Jürgen Spitzmüller <j.spitzmueller@gmx.de>
450 * format incremented to 231.
452 * Support for sidewaysfigure/sidewaystable (rotating package).
453 insetfloat has now a param \sideways [true|false] (default is false).
454 The param should be erased on downwards conversion, if it was true,
455 the inset should be replaced by
456 \begin{sidewaysfigure} <content> \end{sidewaysfigure}
458 \begin{sidewaystable} <content> \end{sidewaystable}
461 2004-02-23 Jürgen Spitzmüller <j.spitzmueller@gmx.de>
463 * format incremented to 230.
465 * Support for a second optional argument in insetcommand.
466 currently, citation uses this to support natbibs second
467 optional argument \cite[before][after]{key}.
468 I think there's nothing to convert upwards. Downwards, the
469 commands with 2 optional args need to be converted to ERT.
471 * Support for jurabib (param \use_jurabib [1|0], default is 0).
472 When converting downwards, \usepackage{jurabib} has to be added
473 to the preamble and, if babel is used, \usepackage{babel} before
474 (jurabib fails if babel is called afterwards). If the natbib commands
475 are used together with jurabib, they have to be converted to ERT too.
477 2003-12-29 Jürgen Spitzmüller <j.spitzmueller@gmx.de>
479 * format incremented to 229.
480 * Minipages cannot be read anymore. All minipage insets will
481 be converted to frameless box insets between 228->229.
483 2003-12-15 Angus Leeming <leeming@lyx.org>
485 * format incremented to 228.
486 * Change the output of all insets derived from InsetCollapsable
487 except for InsetERT (which has a similar output already), changing lines
488 "collapsed true" -> "status collapsed"
489 "collapsed false" -> "status open".
490 * Change the output of InsetERT, changing lines
491 "status Collapsed" -> "status collapsed"
492 "status Open" -> "status open".
493 "status Inlined" -> "status inlined".
495 2003-12-10 Angus Leeming <leeming@lyx.org>
497 * format NOT incremented.
498 * add a 'draft' option to InsetExternal.
500 2003-12-10 Angus Leeming <leeming@lyx.org>
502 * format incremented to 227.
503 * Change the output of InsetBox:
504 \begin_inset Boxed -> \begin_inset Box Boxed
505 \begin_inset Doublebox -> \begin_inset Box Doublebox
506 \begin_inset Frameless -> \begin_inset Box Frameless
507 \begin_inset ovalbox -> \begin_inset Box ovalbox
508 \begin_inset Ovalbox -> \begin_inset Box Ovalbox
509 \begin_inset Shadowbox -> \begin_inset Box Shadowbox
511 2003-12-10 Angus Leeming <leeming@lyx.org>
513 * format incremented to 226.
514 * Change the output of InsetNote:
515 \begin_inset Note -> \begin_inset Note Note
516 \begin_inset Comment -> \begin_inset Note Comment
517 \begin_inset Greyedout -> \begin_inset Note Greyedout
519 2003-11-28 André Pönitz
521 * Remove space_above/space_below from Paragraph.
522 This is now handled by InsetVSpace.
524 2003-10-07 Angus Leeming <leeming@lyx.org>
526 * Add transformations to InsetExternal
528 boundingBox 0 0 20 20 the dimensions of the B.B..
529 Output if the B.B. is not empty.
530 clip clip the image to the B.B.
532 extra LaTeX "draft" 'extra' data passed to the primary
533 command for this output format.
534 (Possible formats LaTeX, PDFLaTeX,
535 LinuxDoc, DocBook, Ascii.)
536 The string can contain spaces and so
538 rotateAngle 30 Rotation of the data.
539 Output for non-zero rotation only.
540 rotateOrigin bottomleft Rotation origin.
541 Output for non-zero rotation and
542 non-default origin (center) only.
544 width 2cm Output only if the image is resized.
548 2003-10-07 Martin Vermeer <martin.vermeer@hut.fi>
550 * Added box inset. File format:
552 \begin_inset Ovalbox Boxed/Frameless/ovalbox/Ovalbox
557 inner_pos "b" t/c/b/s
559 width "100col%" unit+width-string
560 special "none" none/height/depth
562 height "1in" unit+width-string
563 height_special "totalheight" none/height/depth
565 collapsed false true/false
567 \begin_layout Standard
574 This box (Frameless, has_inner_box=1, use_parbox=0) replaces
575 the pre-existing Minipage inset. Parameters translate as follows:
576 position 0/1/2 -> t/c/b
577 inner_position 0/1/2/3 -> inner_pos c/t/b/s
582 2003-08-19 Michael Schmitt <michael.schmitt@teststep.org>
584 * attribute valignment="center" is replaced by valignment="middle"
585 for tabular columns and cells
587 2003-08-17 Martin Vermeer <martin.vermeer@hut.fi>
589 * Added branch inset. File format:
591 branch definition in the header:
597 \begin_inset Branch <branchname>
598 collapsed false true/false
600 \begin_layout Standard
607 2003-07-28 José Matos <jamatos@lyx.org>
609 * \the_end is replaced with \end_document
611 2003-07-28 José Matos <jamatos@lyx.org>
613 * \layout is replaced with \begin_layout
615 2003-07-28 José Matos <jamatos@fep.up.pt>
619 * All layouts finish now with \end_layout
621 2003-06-04 Angus Leeming <leeming@lyx.org>
625 * the storage of the external inset has been changed from
627 \begin_inset External XFig,"file.fig",""
633 \begin_inset External
636 display <display_type>
641 throwing away the final arg (here "", more generally "<string>") that holds
642 the parameters variable.
643 Variables are output if present (filename) or different from the default
644 values (display, lyxscale).
646 Moreover, the RasterImage template has been scrapped. All RasterImage
647 external insets are now converted to Graphics insets.
649 2003-05-20 Jürgen Spitzmüller <j.spitzmueller@gmx.de>
651 * Added new space insets:
652 \SpecialChar ~ is now \InsetSpace ~
653 ERT: "\ " could be converted to InsetSpace \<space>
654 ERT: "\," could be converted to InsetSpace \,
656 2003-04-24 André Pönitz <poenitz@gmx.net>
658 * Added eqref support:
659 \begin_inset LatexCommand \eqref{label}
661 2003-03-14 Dekel Tsur
663 * Format bumped to 223.
665 2003-03-12 John Levon <levon@movementarian.org>
667 * Added \\end_header to signify the end of the header in a
670 * use_amsmath is now a tristate {0 = never, 1 = auto, 2 = always}
672 2003-02-10 John Levon <levon@movementarian.org>
676 Added \\tracking_changes 0|1 to the header.
678 Added \\author to the header. This can be present multiple
679 times, and is of the form :
681 \\author "Real Name" email@address.com
683 Added \\change_deleted, \\change_inserted. Each of these does not
684 span a paragraph, and is delimited by "\\change_unchanged\n". Both are
687 \\change_inserted author time
689 where author is an integer ID reference into the author list in
690 the header, and time is time_t.
692 2002-10-24 Rob Lahaye <lahaye@snu.ac.kr>
694 * InsetGraphicsParams.h (scale): is now a float, not an unsigned int.
696 2002-08-22 Rob Lahaye <lahaye@snu.ac.kr>
698 New graphics dialog. With the removal of buttons in the dialog, also
699 keywords in the graphics inset went. The following keywords do not
709 Only non-default values are saved to the lyx files. The defaults of the remaining
719 BoundingBox <from file>
722 rotateOrigin centerBaseline
724 subcaptionText <empty>
727 The remaining keywords have sufficient overlap with the old ones for a
728 smooth reading of the 1.2.x inset keywords in most common cases.
730 Compatibility is certainly broken for the old lyxwidth/lyxheight keywords.
731 They don't exist anymore and we can't translate them into a scaling value, while
732 we're reading the graphics inset. The old lyxwidth/lyxheight keyword and its
733 argument is ignored and lost.
735 Only few compatibility issues are left for lyx2lyx:
737 ------------------------------------------------------------------------------
738 old-token new-token remove
739 ------------------------------------------------------------------------------
740 size_kind original / size_type 0 scale 100 width <val>
744 size_kind width_height / size_type 1 - scale <val>
746 lyxsize_kind original / lyxsize_type 0 lyxscale 100 lyxscale <val>
747 ------------------------------------------------------------------------------
748 [replace old-token by new-token, and remove any of subsequent tokens as listed]
750 If "rotate" is absent, lyx2lyx should ignore "rotateAngle <val>":
751 if ( "rotateAngle <val>" is there WITHOUT being preceded by the keyword "rotate" )
753 replace "rotateAngle <val>" by "rotateAngle 0"
756 2002-08-12 Andre' Poenitz <poenitz@gmx.de>
758 Added \lyxlock for locked math inset when written to .lyx file.
759 When "downgrading" .lyx files this should simple be deleted but it
760 does not hurt at all if it stays in. It does not have to be added
764 2002-08-02 Angus Leeming <leeming@lyx.org>
766 Added a boolean "preview" flag to InsetCommandParams.
767 Currently it is written only by InsetInclude, because only this
768 class can generate a preview of its contents.
770 The LyX file now contains:
772 \begin_inset Include \input{snapshot_t=40.tex}
777 Earlier versions of LyX just swallow this extra token silently.
779 2002-08-12 Angus Leeming <leeming@lyx.org>
781 The 1.2.0 InsetGraphicsParams "size_type" and "lyxsize_type" have been
782 renamed as "size_kind" and "lyxsize_kind" respectively.
784 \begin_inset Graphics FormatVersion 1
791 - lyxsize_kind original
792 + lyxsize_type original