1 LyX file-format changes
2 -----------------------§
4 2007-02-16 Georg Baum <Georg.Baum@post.rwth-aachen.de>
6 * format incremented to 260: Allow ascii \inputencoding
8 2007-02-14 Georg Baum <Georg.Baum@post.rwth-aachen.de>
10 * format incremented to 261: \output_changes is now considered
11 even if \tracking_changes is false. This allows to output existing
12 changes even if future changes are not tracked anymore.
15 \tracking_changes false
18 is therefore converted to
20 \tracking_changes false
23 on upgrade. Nothing is done on downgrade since the new behaviour is
24 not supported in older formats.
26 2007-02-13 Georg Baum <Georg.Baum@post.rwth-aachen.de>
28 * format incremented to 260: Allow utf8x \inputencoding
30 2007-02-12 Georg Baum <Georg.Baum@post.rwth-aachen.de>
32 * format incremented to 259:
33 Old: Spaces at start or end of font changes were output outside of
34 the font change, i.e. not 'xx\textbf{ yy }zz', but
36 New: Spaces are always output with the font set by the user.
40 * format incremented to 258: new \lyxline definition
42 \\newcommand{\\lyxline}[1]{
43 {#1 \\vspace{1ex} \\hrule width \\columnwidth \\vspace{1ex}}
46 \\newcommand{\\lyxline}[1][1pt]{%
48 \\rule[.5ex]{\\linewidth}{#1}\\par}
49 The new definition is more robust, see bug 1988 and now really takes care about
50 the fontsize: \lyxline{\Huge} produces now a thicker line then \lyxline{\normalfont}
52 2007-01-29 Georg Baum <Georg.Baum@post.rwth-aachen.de>
54 * format incremented to 257: Caption styles have been replaced by
55 InsetCaption. This is at the same time also a layout file format
56 change to format 3. layout2layout removes caption layouts from old
58 Note that InsetCaption did exist before this format, but was never
59 used. Old files containing do nevertheless still work.
60 Of course users can still define a Caption style in layout files,
61 but the special treatment in LyX is gone (apart from the sensitive
64 2006-12-22 Georg Baum <Georg.Baum@post.rwth-aachen.de>
66 * format incremented to 256: allow some new inputenc settings.
67 For the complete list, see lib/lyx2lyx/lyx_1_5.py.
69 2006-11-25 Georg Baum <Georg.Baum@post.rwth-aachen.de>
71 * format incremented to 255: new insets for \clearpage and
72 \cleardoublepage. They are written inline to the file, exactly like
75 2006-11-13 Georg Baum <Georg.Baum@post.rwth-aachen.de>
77 * format incremented to 254: new header parameter \use_esint.
78 It can have the same values as \use_amsmath: 0 (off), 1 (auto) and
81 2006-10-18 Georg Baum <Georg.Baum@post.rwth-aachen.de>
83 * format incremented to 253: new nomenclature and printnomenclature
84 insets. These are standard InsetCommand with the following parameters:
85 \nomenclature[prefix]{symbol}{description}
86 \printnomenclature[labelwidth]
88 2006-10-15 Georg Baum <Georg.Baum@post.rwth-aachen.de>
90 * format incremented to 252: changed command inset syntax
94 \begin_inset LatexCommand \cmdname[opt1][opt2]{arg}
105 \begin_inset LatexCommand cmdname
112 The order of the parameters and for each parameter the name and
113 optional/required bit is now stored in InsetCommandParams.
115 2006-10-03 Jürgen Spitzmüller <j.spitzmueller@gmx.de>
117 * format incremented to 251: save show_label param for charstyles.
119 On revert, the show_label param is just removed. Nothing to convert.
121 2006-10-12 Martin Vermeer <martin.vermeer@hut.fi>
123 * Format incremented to 250: allow optional arg to environments
125 No material format change. Now optargs for environments are allowed
126 to be specified in layout files and will be handled properly. When
127 converted back to older formats, they will be ignored in LaTeX
130 2006-08-14 Georg Baum <Georg.Baum@post.rwth-aachen.de>
132 * format incremented to 249: Unicode
134 LyX documents are now always encoded in utf8. The value of
135 \inputencoding does now only determine the encoding of the created
137 Up to format 248 the value of \inputencoding did also determine the
138 encoding of the LyX file:
140 \inputencoding LyX file encoding
141 auto as determined by the document and character
144 everything else as determined by \inputencoding
146 The difference between auto and default is only the LaTeX output:
147 auto causes loading of the inputenc package, default does not.
149 2006-07-03 Georg Baum <Georg.Baum@post.rwth-aachen.de>
151 * format incremented to 248: Basic booktabs support
153 The <features> tag has a new switch: booktabs="true|false".
154 An absent switch is equivalent to booktabs="false".
155 Horizontal lines are set with the booktabs package if this switch
158 The <row> tag of tabulars has the following new attributes:
159 topspace, bottomspace and interlinespace. All take a LyXLength
160 as value, or the special keyword "default".
162 2006-06-10 Jürgen Spitzmüller <j.spitzmueller@gmx.de>
164 * format incremented to 247. The Grand Font Interface Rewrite.
165 (1) Split font selection to rm, sf, tt:
166 \fontscheme -> \font_roman, \font_sans, \font_typewriter
168 \fontscheme \font_roman \font_sans \font_typewriter
169 default default default default
170 ae ae default default
171 times times default default
172 palatino palatino default default
173 helvet default helvet default
174 avant default avant default
175 newcent newcent default default
176 bookman bookman default default
177 pslatex times (or \usepackage{pslatex})
179 \font_roman: cmr (-> \renewcommand{\rmdefault}{cmr}),
180 lmodern, charter, utopia, ccfonts, chancery, beraserif
181 (-> \usepackage{<name>})
182 \font_sans: cmss, lmss, cmbr
183 (-> \renewcommand{\sfdefault}{<name>})
184 berasans (-> \usepackage{<name>})
185 \font_typewriter: cmtt, lmtt, cmtl,
186 (-> \renewcommand{\sfdefault}{<name>})
187 courier, luximono, beramono
188 (-> \usepackage{<name>})
189 (2) New param \font_default_family (rmdefault, sfdefault, ttdefault)
190 (3) New param \font_sc (true, false).
191 (4) New param \font_osf (true, false).
192 (5) New param \font_sf_scale (float)
193 (6) New param \font_tt_scale (float)
194 Support for the following fonts has been added:
195 bera, ccfonts, chancery, charter, cmbright, computer modern (explicitely),
196 courier, lmodern, luximono, utopia.
197 Support for the following font has been removed:
198 pslatex (it's superseded by mathptmx (times)).
200 2006-06-03 Martin Vermeer <martin.vermeer@hut.fi>
202 * format incremented to 246. The framed.sty package is
203 now supported with note types framed and shaded.
205 2005-10-12 Jürgen Spitzmüller <j.spitzmueller@gmx.de>
207 * format incremented to 245. The \quotes_times parameter
210 2005-09-24 Jürgen Spitzmüller <j.spitzmueller@gmx.de>
212 * format incremented to 244. Rename '\InsetSpace \,'
213 to '\InsetSpace \thinspace{}', because the comma was
214 not parsed by lyxlex, and '\InsetSpace \space' to
215 '\InsetSpace \space{}' in favour of consistency.
217 2005-07-18 José Matos <jamatos@lyx.org>
219 * format incremented to 243.
221 * this change only affects the preamble, the paperpackage
222 option was removed and papersize is changed to default.
224 2005-06-21 Jean-Marc Lasgouttes <lasgouttes@lyx.org>
226 * format incremented to 242. There is no file format per
227 se, but the "frenchb" language has been removed from lib/language
228 and has to be translated to "french" by lyx2lyx.
230 2005-02-03 Georg Baum <Georg.Baum@post.rwth-aachen.de>
232 * format incremented to 241.
234 All following changes apply only to text in ERT insets. The
235 rationale is that text in ERT is simply ASCII text, and nothing more.
237 * paragraph breaks are now a single newline in latex and not a
238 paragraph break anymore (bug 698).
239 * \newline is not allowed anymore, because it is redundant (see above)
240 * layouts other than Standard, paragraph parameters and font changes
241 are not allowed anymore. They never made sense and were ignored for
242 latex output, but now they can't be read or set anymore (bug 922).
245 2005-01-23 Jürgen Spitzmüller <j.spitzmüller@gmx.de>
247 * format incremented to 240.
249 \output_changes {true|false}
250 (should the change tracking marks be visible in the output or not?)
251 * lyx2lyx should just delete the param in 239.
253 2005-01-06 José Matos <jamatos@lyx.org>
255 * format incremented to 239.
256 * the paragraph parameters are displayed in their own line. This
257 change is consistent with the insets behaviour, and corresponds
258 to a more uniform treatment of the paragraphs since some of them
259 had already their own line.
261 An example of a single paragraph follows:
263 \begin_layout Standard
264 \paragraph_spacing single
270 2004-12-03 José Matos <jamatos@lyx.org>
272 * format incremented to 238.
273 * The compatibility code to read old latex accents from 0.12.x in
274 InsetLatexAccent::checkContents has been removed.
275 The following translations are done:
277 "\i \xy" -> "\i \x{y}"
278 "\i \x y" -> "\i \x{y}"
279 "\i \x\i" -> "\i \x{\i}"
280 "\i \x\j" -> "\i \x{\j}"
281 x is a latex accent command, y the base character. \, i and j are
283 lyx did these changes already from 0.12.x -> 215, but not lyx2lyx,
284 so formats 215 - 237 can have both versions.
287 2004-10-10 José Matos <jamatos@lyx.org>
289 * format incremented to 237.
290 * In the header, the following statments use now booleans values,
296 2004-08-15 José Matos <jamatos@lyx.org>
298 * format incremented to 236.
305 * The options for \papersize are changed:
308 * All whitespaces are removed at the end of lines, when
309 not necessary. As an example we have all the lines in the header that
310 do not belong to the preamble.
312 2004-07-01 Georg Baum <Georg.Baum@post.rwth-aachen.de>
314 * format incremented to 235.
315 * \paperpackage had an off-by-one error. Translation table:
317 234: a4 a4wide widemarginsa4
318 235: none a4 a4wide widemarginsa4
320 The "widemarginsa4" setting of 235 has no equivalent in 234.
322 2004-05-12 Angus Leeming <leeming@lyx.org>
324 * format incremented to 234.
325 * the citation engine is specified explicitly rather than being
326 deduced from 3 bools.
329 \use_numerical_citations 0 -> \cite_engine <style>
332 where <style> is one of "basic", "natbib_authoryear",
333 "natbib_numerical" or "jurabib".
335 2004-04-29 Georg Baum <Georg.Baum@post.rwth-aachen.de>
337 * format incremented to 233.
338 * insetgraphics does not allow filenames without extension anymore.
339 The complete filename has to be given.
341 2004-03-29 Jürgen Spitzmüller <j.spitzmueller@gmx.de>
343 * format incremented to 232.
345 * Support for bibtopic (sectioned bibliographies).
346 - bufferparam \use_bibtopic [1|0]
347 - the bibtex inset has a second argument for bibtopic's
348 btPrint{Cited|NotCited|All} command:
350 \begin_inset LatexCommand \bibtex[<style>]{<database>}
352 \begin_inset LatexCommand \bibtex[<style>][<btPrintX>]{<database>}
353 Forwards, there's nothing to be done. Backwards, \usepackage[dot]{bibtopic}
354 has to be inserted to the preamble. Instead of the bibtex inset, the LaTeX
355 \bibliographystyle{<style>}
356 \begin{btSect}{<database>}
361 2004-03-29 Jürgen Spitzmüller <j.spitzmueller@gmx.de>
363 * format incremented to 231.
365 * Support for sidewaysfigure/sidewaystable (rotating package).
366 insetfloat has now a param \sideways [true|false] (default is false).
367 The param should be erased on downwards conversion, if it was true,
368 the inset should be replaced by
369 \begin{sidewaysfigure} <content> \end{sidewaysfigure}
371 \begin{sidewaystable} <content> \end{sidewaystable}
374 2004-02-23 Jürgen Spitzmüller <j.spitzmueller@gmx.de>
376 * format incremented to 230.
378 * Support for a second optional argument in insetcommand.
379 currently, citation uses this to support natbibs second
380 optional argument \cite[before][after]{key}.
381 I think there's nothing to convert upwards. Downwards, the
382 commands with 2 optional args need to be converted to ERT.
384 * Support for jurabib (param \use_jurabib [1|0], default is 0).
385 When converting downwards, \usepackage{jurabib} has to be added
386 to the preamble and, if babel is used, \usepackage{babel} before
387 (jurabib fails if babel is called afterwards). If the natbib commands
388 are used together with jurabib, they have to be converted to ERT too.
390 2003-12-29 Jürgen Spitzmüller <j.spitzmueller@gmx.de>
392 * format incremented to 229.
393 * Minipages cannot be read anymore. All minipage insets will
394 be converted to frameless box insets between 228->229.
396 2003-12-15 Angus Leeming <leeming@lyx.org>
398 * format incremented to 228.
399 * Change the output of all insets derived from InsetCollapsable
400 except for InsetERT (which has a similar output already), changing lines
401 "collapsed true" -> "status collapsed"
402 "collapsed false" -> "status open".
403 * Change the output of InsetERT, changing lines
404 "status Collapsed" -> "status collapsed"
405 "status Open" -> "status open".
406 "status Inlined" -> "status inlined".
408 2003-12-10 Angus Leeming <leeming@lyx.org>
410 * format NOT incremented.
411 * add a 'draft' option to InsetExternal.
413 2003-12-10 Angus Leeming <leeming@lyx.org>
415 * format incremented to 227.
416 * Change the output of InsetBox:
417 \begin_inset Boxed -> \begin_inset Box Boxed
418 \begin_inset Doublebox -> \begin_inset Box Doublebox
419 \begin_inset Frameless -> \begin_inset Box Frameless
420 \begin_inset ovalbox -> \begin_inset Box ovalbox
421 \begin_inset Ovalbox -> \begin_inset Box Ovalbox
422 \begin_inset Shadowbox -> \begin_inset Box Shadowbox
424 2003-12-10 Angus Leeming <leeming@lyx.org>
426 * format incremented to 226.
427 * Change the output of InsetNote:
428 \begin_inset Note -> \begin_inset Note Note
429 \begin_inset Comment -> \begin_inset Note Comment
430 \begin_inset Greyedout -> \begin_inset Note Greyedout
432 2003-11-28 André Pönitz
434 * Remove space_above/space_below from Paragraph.
435 This is now handled by InsetVSpace.
437 2003-10-07 Angus Leeming <leeming@lyx.org>
439 * Add transformations to InsetExternal
441 boundingBox 0 0 20 20 the dimensions of the B.B..
442 Output if the B.B. is not empty.
443 clip clip the image to the B.B.
445 extra LaTeX "draft" 'extra' data passed to the primary
446 command for this output format.
447 (Possible formats LaTeX, PDFLaTeX,
448 LinuxDoc, DocBook, Ascii.)
449 The string can contain spaces and so
451 rotateAngle 30 Rotation of the data.
452 Output for non-zero rotation only.
453 rotateOrigin bottomleft Rotation origin.
454 Output for non-zero rotation and
455 non-default origin (center) only.
457 width 2cm Output only if the image is resized.
461 2003-10-07 Martin Vermeer <martin.vermeer@hut.fi>
463 * Added box inset. File format:
465 \begin_inset Ovalbox Boxed/Frameless/ovalbox/Ovalbox
470 inner_pos "b" t/c/b/s
472 width "100col%" unit+width-string
473 special "none" none/height/depth
475 height "1in" unit+width-string
476 height_special "totalheight" none/height/depth
478 collapsed false true/false
480 \begin_layout Standard
487 This box (Frameless, has_inner_box=1, use_parbox=0) replaces
488 the pre-existing Minipage inset. Parameters translate as follows:
489 position 0/1/2 -> t/c/b
490 inner_position 0/1/2/3 -> inner_pos c/t/b/s
495 2003-08-19 Michael Schmitt <michael.schmitt@teststep.org>
497 * attribute valignment="center" is replaced by valignment="middle"
498 for tabular columns and cells
500 2003-08-17 Martin Vermeer <martin.vermeer@hut.fi>
502 * Added branch inset. File format:
504 branch definition in the header:
510 \begin_inset Branch <branchname>
511 collapsed false true/false
513 \begin_layout Standard
520 2003-07-28 José Matos <jamatos@lyx.org>
522 * \the_end is replaced with \end_document
524 2003-07-28 José Matos <jamatos@lyx.org>
526 * \layout is replaced with \begin_layout
528 2003-07-28 José Matos <jamatos@fep.up.pt>
532 * All layouts finish now with \end_layout
534 2003-06-04 Angus Leeming <leeming@lyx.org>
538 * the storage of the external inset has been changed from
540 \begin_inset External XFig,"file.fig",""
546 \begin_inset External
549 display <display_type>
554 throwing away the final arg (here "", more generally "<string>") that holds
555 the parameters variable.
556 Variables are output if present (filename) or different from the default
557 values (display, lyxscale).
559 Moreover, the RasterImage template has been scrapped. All RasterImage
560 external insets are now converted to Graphics insets.
562 2003-05-20 Jürgen Spitzmüller <j.spitzmueller@gmx.de>
564 * Added new space insets:
565 \SpecialChar ~ is now \InsetSpace ~
566 ERT: "\ " could be converted to InsetSpace \<space>
567 ERT: "\," could be converted to InsetSpace \,
569 2003-04-24 André Pönitz <poenitz@gmx.net>
571 * Added eqref support:
572 \begin_inset LatexCommand \eqref{label}
574 2003-03-14 Dekel Tsur
576 * Format bumped to 223.
578 2003-03-12 John Levon <levon@movementarian.org>
580 * Added \\end_header to signify the end of the header in a
583 * use_amsmath is now a tristate {0 = never, 1 = auto, 2 = always}
585 2003-02-10 John Levon <levon@movementarian.org>
589 Added \\tracking_changes 0|1 to the header.
591 Added \\author to the header. This can be present multiple
592 times, and is of the form :
594 \\author "Real Name" email@address.com
596 Added \\change_deleted, \\change_inserted. Each of these does not
597 span a paragraph, and is delimited by "\\change_unchanged\n". Both are
600 \\change_inserted author time
602 where author is an integer ID reference into the author list in
603 the header, and time is time_t.
605 2002-10-24 Rob Lahaye <lahaye@snu.ac.kr>
607 * insetgraphicsParams.h (scale): is now a float, not an unsigned int.
609 2002-08-22 Rob Lahaye <lahaye@snu.ac.kr>
611 New graphics dialog. With the removal of buttons in the dialog, also
612 keywords in the graphics inset went. The following keywords do not
622 Only non-default values are saved to the lyx files. The defaults of the remaining
632 BoundingBox <from file>
635 rotateOrigin centerBaseline
637 subcaptionText <empty>
640 The remaining keywords have sufficient overlap with the old ones for a
641 smooth reading of the 1.2.x inset keywords in most common cases.
643 Compatibility is certainly broken for the old lyxwidth/lyxheight keywords.
644 They don't exist anymore and we can't translate them into a scaling value, while
645 we're reading the graphics inset. The old lyxwidth/lyxheight keyword and its
646 argument is ignored and lost.
648 Only few compatibility issues are left for lyx2lyx:
650 ------------------------------------------------------------------------------
651 old-token new-token remove
652 ------------------------------------------------------------------------------
653 size_kind original / size_type 0 scale 100 width <val>
657 size_kind width_height / size_type 1 - scale <val>
659 lyxsize_kind original / lyxsize_type 0 lyxscale 100 lyxscale <val>
660 ------------------------------------------------------------------------------
661 [replace old-token by new-token, and remove any of subsequent tokens as listed]
663 If "rotate" is absent, lyx2lyx should ignore "rotateAngle <val>":
664 if ( "rotateAngle <val>" is there WITHOUT being preceded by the keyword "rotate" )
666 replace "rotateAngle <val>" by "rotateAngle 0"
669 2002-08-12 Andre' Poenitz <poenitz@gmx.de>
671 Added \lyxlock for locked math inset when written to .lyx file.
672 When "downgrading" .lyx files this should simple be deleted but it
673 does not hurt at all if it stays in. It does not have to be added
677 2002-08-02 Angus Leeming <leeming@lyx.org>
679 Added a boolean "preview" flag to InsetCommandParams.
680 Currently it is written only by InsetInclude, because only this
681 class can generate a preview of its contents.
683 The LyX file now contains:
685 \begin_inset Include \input{snapshot_t=40.tex}
690 Earlier versions of LyX just swallow this extra token silently.
692 2002-08-12 Angus Leeming <leeming@lyx.org>
694 The 1.2.0 InsetGraphicsParams "size_type" and "lyxsize_type" have been
695 renamed as "size_kind" and "lyxsize_kind" respectively.
697 \begin_inset Graphics FormatVersion 1
704 - lyxsize_kind original
705 + lyxsize_type original