]> git.lyx.org Git - lyx.git/blob - RELEASE-NOTES
Update release notes about the export menu.
[lyx.git] / RELEASE-NOTES
1 This file lists interface changes that might affect users in 2.0.0, some 
2 known problems in LyX 2.0.0 and some things you have to take into account
3 when upgrading from earlier versions to a version of the 2.0.x series.
4 Note that fixes are available for some of these, but they have not yet
5 been applied because of incomplete testing.
6
7
8 Interface changes
9 -----------------
10
11 There have been some changes to the LyX command line. There is a new option 
12 "--batch" that causes LyX to run the given commands without opening a GUI 
13 window. Thus, something like:
14     lyx -batch -x "buffer-print printer default dvips" myfile.lyx
15 will cause LyX to print myfile.lyx to the default printer, using dvips and 
16 the default print settings (which, of course, have to have been configured 
17 already). At present, not many commands can be used this way, but there will
18 be more eventually.
19
20 A bash completion script was added to the tarball.
21
22 We have introduced a new flag to decide whether or not a given "document"
23 format shall be listed in the File > Export menu. This was necessary since
24 this menu got too large. If the flag "menu=export" is not explicitly set,
25 the formats are not included in the menu. This means that you might need
26 to click "Show in export menu" in Preferences > File Formats for your
27 customized file formats if you want them to appear in the menu.
28 Customized formats imported from a previous configuration are handled
29 by the prefs2prefs script, and should appear in the menu as before.
30 Note, though, that you still can export to any possible format via
31 File > Export > More Formats and Options ...
32
33 The following pref variables were changed in 2.0:
34
35 - \language_package was renamed to \language_custom_package
36
37 - \language_use_babel (bool) has been replaced by 
38   \language_package_selection, which can be
39   0 (automatic selection)
40   1 (always use babel)
41   2 custom (use the custom package defined by
42     \language_custom_package)
43   3 none (equivalent to former \language_use_babel false)
44
45 The following pref variables are obsoleted in 2.0:
46
47 - \plaintext_roff_command (was not used anymore)
48
49 - \personal_dictionary, \spell_command, \use_input_encoding,
50   \use_personal_dictionary and \use_spell_lib (ispell support has been
51   removed)
52
53 - \spellchecker_use_alt_lang and \use_escape_chars (actually not used
54   by the UI, and it is as simple to check whether the relevant
55   variable is empty)
56
57 - \custom_export_command and \custom_export_format
58
59
60 The following new LyX functions have been introduced:
61
62 - LFUN_WORD_FINDAD ("word-findadv").
63 - LFUN_REGEXP_MODE ("regexp-mode").
64 - LFUN_PHANTOM_INSERT ("phantom-insert").
65 - LFUN_INSET_BEGIN ("inset-begin").
66 - LFUN_INSET_END (""inset-end"").
67 - LFUN_INSET_BEGIN_SELECT ("inset-begin-select").
68 - LFUN_INSET_END_SELECT ("inset-end-select").
69 - LFUN_CHANGE_PREVIOUS ("change-previous").
70 - LFUN_LABEL_INSERT_AS_REF ("label-insert-as-reference").
71 - LFUN_SECTION_SELECT ("section-select").
72 - LFUN_FONT_UNDERLINE ("font-underline").
73 - LFUN_FONT_STRIKEOUT ("font-strikeout").
74 - LFUN_FONT_UULINE ("font-underunderline").
75 - LFUN_FONT_UWAVE ("font-underwave").
76 - LFUN_BRANCHES_RENAME ("branches-rename").
77 - LFUN_BRANCH_ADD_INSERT ("branch-add-insert").
78 - LFUN_BUFFER_CLOSE_ALL ("buffer-close-all").
79 - LFUN_INSET_FORALL ("inset-forall").
80 - LFUN_DEBUG_LEVEL_SET ("debug-level-set").
81 - LFUN_INSET_SELECT_ALL ("inset-select-all").
82 - LFUN_MATH_AMS_MATRIX ("math-ams-matrix").
83 - LFUN_VC_COMPARE ("vc-compare").
84 - LFUN_SPELLING_ADD ("spelling-add").
85 - LFUN_SPELLING_IGNORE ("spelling-ignore").
86 - LFUN_SPELLING_REMOVE ("spelling-remove").
87 - LFUN_PREVIEW_INSERT ("preview-insert").
88 - LFUN_FORWARD_SEARCH ("forward-search").
89 - LFUN_INSET_COPY_AS ("inset-copy-as").
90 - LFUN_BUFFER_TOGGLE_OUTPUT_SYNC ("buffer-toggle-output-sync").
91
92
93 The following LyX functions have been removed:
94
95 - LFUN_NEXT_INSET_TOGGLE ("next-inset-toggle"): use "inset-toggle" instead.
96 - LFUN_NEXT_INSET_MODIFY ("next-inset-modify"): use "inset-modify" instead.
97 - LFUN_PARAGRAPH_SPACING ("paragraph-spacing"): use "paragraph-params" instead.
98
99 - LFUN_NOTES_MUTATE ("notes-mutate"): replace
100     notes-mutate <SOURCE> <TARGET>
101   with the more general function inset-forall
102     inset-forall Note:<SOURCE> inset-modify note Note <TARGET>
103
104 - LFUN_ALL_INSETS_TOGGLE ("all-insets-toggle"): replace
105     all-insets-toggle <ACTION> <TARGET>
106     all-insets-toggle <ACTION>
107   with the more generic function inset-forall
108     inset-forall <TARGET> inset-toggle <ACTION>
109     inset-forall * inset-toggle <ACTION>
110   There is a difference in the <TARGET> parameter, which is would be
111   like "note" in the first case and "Note" in the second.
112
113 - LFUN_TABULAR_FEATURE ("tabular-feature"): use "inset-modify" instead.
114   I.e., "tabular-feature FEATURE <ARGS>" becomes:
115     inset-modify tabular FEATURE <ARGS>
116
117 - LFUN_LINE_INSERT ("line-insert"): use "inset-insert line" instead. For
118   something close to the previous default, use:
119     inset-insert line rule height 0.25ex width 100col% \\end_inset
120   This is necessary because the line inset now takes various arguments.
121
122 - LFUN_TOC_INSERT ("toc-insert"): use "inset-insert toc" instead.
123
124
125 The following LyX functions have been changed:
126
127 - LFUN_INSET_TOGGLE ("inset-toggle"): For some insets, this function was used 
128   to show the settings dialog. This is no longer possible and one should use
129   inset-settings for this purpose.
130  
131 - LFUN_WORD_REPLACE ("word-replace"): The replacement and searched strings
132   arguments have been inverted in order to allow the replacement of the word
133   at current cursor position, even if it is not selected.
134
135 - LFUN_OPTIONAL_INSERT ("optional-insert") has been renamed LFUN_ARGUMENT_INSERT
136   ("argument-insert").
137
138
139 The following LyX key bindings have been changed:
140
141 - LFUN_MATH_MACRO_FOLD ("math-macro-fold")
142   The binding to "C-minus" has changed to "C-S-underscore".
143
144 - LFUN_MATH_MACRO_UNFOLD ("math-macro-unfold")
145   The binding to "C-plus" has changed to "C-S-asterisk".
146
147 - On Mac OSX the modifier keys <Control> and <Option> are now treated separately.
148   The distributed key binding for Mac OSX no longer uses the <Option> key for
149   shortcuts with letters or numbers.
150
151   The custom key bindings for <Option>/<Control> are mapped to the <Control>
152   modifier only.
153
154 New external programs and libraries:
155 ------------------------------------
156
157 LyX 2.0 introduces support for some new external helper programs/libraries,
158 while the support for some existing programs has been dropped. This
159 particularly applies to spell checking and the thesaurus.
160
161 1.) SPELLCHECKING:
162
163 * Direct support for ispell and hspell has been dropped. However, ispell
164   and hspell are still accessible via the enchant wrapper (see below).
165
166 * Support for the aspell command line program has been dropped. Note that
167   the aspell library (aspell 0.60.x) is still supported.
168   
169 * As well as the aspell library, LyX now also supports hunspell (the spell
170   checker used by OpenOffice and Firefox) and enchant, a wrapper that
171   provides automatic access to many spell checking libraries (ispell,
172   aspell, hspell, hunspell, etc.).
173
174 * On Mac OSX, Apple's Spell Server is preconfigured as the "native" spell 
175   checker.
176
177 LyX 2.0 is configured for any and all of these three possibilities,
178 given that the various libraries are installed on the machine where LyX is 
179 configured. The actual spell checker can be selected in Tools > Preferences.
180 Packagers are advised to pre-select whatever is most common on their
181 platform/distribution.
182
183 2.) THESAURUS:
184
185 * Support for the aiksaurus library has been dropped in favour of the
186   MyThes thesaurus library (the thesaurus library used by OpenOffice).
187   
188 * LyX ships the MyThes library itself, so unlike in LyX 1.6.x, no extra 
189   thesaurus library needs to be installed. However, LyX does not ship any 
190   thesaurus dictionaries, and those do have to be installed separately.
191
192 * The OpenOffice thesaurus dictionaries can be used, but the path to those
193   dictionaries needs to be set in Tools > Preferences. Please refer to the
194   UserGuide, sec. 6.14, for further instructions.
195
196 Packagers are advised to preset the thesaurus for their distribution/
197 platform. Packagers of installation bundles (on Windows and the Mac)
198 are advised to provide automatic installation of thesaurus dictionaries
199 in the installation process (analoguous to the spellchecker installation).
200
201 3.) LILYPOND:
202
203 There is now direct support for Lilypond-book. Note that LyX requires at
204 least version 2.14 for proper work.
205
206 4.) INSTANT PREVIEW:
207
208 Make sure that dv2dt (often part of LaTeX distributions) is installed
209 on your system. Instant preview wil be disabled if dv2dt is not found.
210
211 5.) LuaTeX support
212
213 For proper LuaTeX support you need to have at least TeXLive 2010.
214
215
216 Known issues in version 2.0.0
217 -----------------------------
218
219 - LyX needs to be run under Python 2 and will not work properly on systems
220   where Python 3 is the default binary. See bug #7030 to know how to fix
221   this properly, since simple sheebang conversion in *.py files will not
222   be enough.
223
224 Caveats when upgrading from earlier versions to 2.0.x
225 -------------------------------------------------------
226
227 - The typeset of your documents with non-english language can slightly
228   change in case of math environments and floats (this is usually the case
229   with certain modules which provide specific environments like AMS ones
230   or provide specific floats like the linguistic one).
231
232   LyX now uses its own translation machinery which will automatically provide
233   localization strings used so far only in GUI. The status of translation to
234   your language can be seen in lib/layouttranslation file. This is not meant as
235   a babel replacement (still used), but rather extension for strings not
236   translated by babel at all.
237
238 - The syntax of the languages file has been changed. If you use a modified
239   languages file, you will need to adapt it to the new syntax, as LyX 2.0
240   is not able to read old languages file anymore.
241   Please refer to the beginning of the languages file for an explanation
242   of the new syntax.
243
244 - There has been a large change in how Flex insets are named. Previously,
245   they tended to have names like "CharStyle:Noun". Now, they just have
246   names like "Flex:Noun" (where the "Flex" prefix is now required). When 
247   LyX 2.0 reads older files, it silently converts the old-style names
248   to new-style names; this direction works almost perfectly. The one place
249   it does not work is with CopyStyle declarations, IF your old InsetLayout
250   was NOT named "CharStyle:..." or "Custom:..." or "Element:...", but, say,
251   just "MyInset". In that case, "InsetLayout MyInset" will be changed to
252   "InsetLayout Flex:MyInset", but "CopyStyle MyInset" will be left as is.
253   Users will need to make that kind of change manually. The best way to do
254   this is to use the layout2layout.py script, which gets installed in
255   $LYXDIR/scripts/layout2layout.py, to convert your custom layout files to
256   the new format, and then check them for correctness.
257    
258   LyX will also silently revert new-style names to old-style names when 
259   exporting to 1.6.x format, but only for the pre-defined LyX insets. This 
260   means that user-defined flex insets will not be properly reverted. To solve 
261   this problem, you can modify the file $LYXDIR/lyx2lyx/lyx_2_0.py. In that 
262   file, you will find the following:
263     flex_insets = {
264       "Alert" : "CharStyle:Alert",
265       "Code" : "CharStyle:Code",
266       "Concepts" : "CharStyle:Concepts",
267       "E-Mail" : "CharStyle:E-Mail",
268       "Emph" : "CharStyle:Emph",
269       "Expression" : "CharStyle:Expression",
270       "Initial" : "CharStyle:Initial",
271       "Institute" : "CharStyle:Institute",
272       "Meaning" : "CharStyle:Meaning",
273       "Noun" : "CharStyle:Noun",
274       "Strong" : "CharStyle:Strong",
275       "Structure" : "CharStyle:Structure",
276       "ArticleMode" : "Custom:ArticleMode",
277       "Endnote" : "Custom:Endnote",
278       "Glosse" : "Custom:Glosse",
279       "PresentationMode" : "Custom:PresentationMode",
280       "Tri-Glosse" : "Custom:Tri-Glosse"
281     }
282   This is a map from new-style names (minux "Flex") to old-style names (and
283   there is a similar for DocBook elements). To get a user-defined CharStyle
284   to revert properly, it simply needs to be added to this list.
285
286
287 Note: There may later be an updated list of known issues online at
288         http://wiki.lyx.org/LyX/ReleaseNotes
289
290 - UI layout named "classic.ui" and some localized keyboard bindings (sv,pt,fi)
291   were long time unmaintained and we do not ship it anymore.