]> git.lyx.org Git - lyx.git/blob - src/mathed/BUGS
buglist update
[lyx.git] / src / mathed / BUGS
1 Items marked with
2
3   //   - are probably fixed, the reporter is asked to verify this
4          and report success or failure
5
6   ??   - are not reproducable, the reporter is asked to verify this
7          and report success or failure
8
9   ::   - are questions or comments to the reporter, containing question
10          on how to reproduce the bug exactly or things like that
11
12   !!   - mark "not a bug, a feature" replies, usually with a request for
13          further discussion
14
15 Unmarked items are known unfixed but probably unverified bugs.
16
17 ----------------------------------------------------------------------
18
19 General hints for bug reports: 
20
21   - keep the items small
22
23   - do not provide excessive information on how to reproduce the bug
24     if this is obvious
25
26   - if a bug is partly fixed, report it as "fixed" and a new bug item
27     that contains the unfixed part only
28
29   - check this list regularly, comment on the marked items.
30
31   - plain ASCII text please, not much more than 70 chars per column 
32
33 ----------------------------------------------------------------------
34
35 Dekel:
36
37 Macros:
38
39  - When changing the macro definition, all instances are not updated.
40
41 // - If I have macros \newcommand{\foo}[1]{[#1]} and
42 //   \newcommand{\foox}{\foo{x}} then when an instance of \foox is drawn on
43 //   screen, there are two black frames.  While this is "correct", it is
44 //   annoying.
45
46 - LyX crashes when you define a recursive macro
47
48 Misc:
49
50 - If I have x_{1}^{2}, I put the cursor before the 2, and press backspace,
51   the result is 'x2'. The correct result should be 'x_{1}2'
52
53 // - If I mark some text and then press ^, then the marked text is deleted.
54 //   The correct behavior is to put the marked text in the superscript.
55
56 // - Pressing <down> when cursor is in subscript will move the cursor up
57 //   (to the base of the subscript) instead of exiting the inset.
58 //   The same problem happen in fractions
59
60 // - When you press the mouse just to the left of the middle point of
61 //   some char, the cursor will be positioned to the right of the char.
62
63 - It is possible to put two or more consecutive spaces in math text mode
64
65 // - Text in superscript is not smaller than normal text.
66
67 // - After insertion of \sum, the cursor is in invalid location
68
69 // - The height of the frame is often wrong (e.g. x^2)
70 //    For example $\sum x$ in an inline formula
71
72 - InsetFormula::validate is broken
73
74 // - Changing math space length by pressing the space-bar key doesn't work
75 !!  it's M-m space now. 
76
77 // - The drawing of decorations on screen is very different than latex.
78 //    (a low priority bug).
79
80 // - If I change '\alpha' to bold, the result is \mathbf{a}
81
82 - Just moving the cursor in a math inset causes changing the buffer status
83   to (changed).
84
85 - disable the insert->label menu item when in inline formula.
86
87
88 Eran Tromer:
89
90 - When exiting the formula during selection, the anchor moves to the
91   left of the formula and there's no way to go back.
92
93 // - Scripts are too large. $\log_2$ exceeds inset frame (non-displayed).
94
95 // - You need two <right> to get past \vec{v}, and all sort of other
96 //  insetish behavior.
97
98 :: Not a bug.
99
100 // - \vec{several-characters} doesn't work. \overrightarrow does.
101
102 // - When the cursor is in a subscript (and either isn't at the end of 
103 //   the subscript or there's no subsubscript), pressing <down> should
104 //   try to *really* go down (to the next line, or denumerator, or 
105 //   whatever). Currently it goes *up*. Ditto for superscripts.
106
107 // - When choosing to insert "\left\Vert \right\Vert" parenthesis using
108 //   the maths [sic] panel, a "\left( \right." is inserted instead.
109
110  - Formula inside tabular cell: red frame of cell inset and purple 
111    frame of formula can overlap, causing leftovers when leaving 
112    formula. To get an example, insert a 1x1 tabular into a new document,
113    enter the cell its cell and press 
114    M-m ( M-f 1 <right> <right> <right>       (zoom=100, screenDPI=100)
115
116 - When selecting multiple cells in a array using the keyboard, <left>
117   etc. should can move whole cell at a time -- no need to navigate 
118   within cells.
119
120 - When selecting, maybe give a visual indication of the "original" 
121   anchor, when it differs from the "actual" one.
122
123 // - Placement of cursor using mouse is seriously broken.
124 //   Example 1: large fractions.
125 //   Example 2: type into a new document: 
126 //   "M-d xxxxxxxxx <right> M-x footnote-insert"
127 //   Can't reach most places in the formula using mouse.
128
129
130
131 Rainer Dorsch:
132
133 - Entering \mathbf{c} in math mode is displayed as written (without
134   backslash)
135
136 - I know the latex code of a lot of math symbols displayed by lyx,
137   but not all of them. Thus I have to use the math panel for only a single
138   symbol in a formula. I think it would be very useful, if the latex code
139   of the symbol would be displayed as a hint, if the mouse positioned over
140   it.
141
142
143 Marcus (Suran@gmx.net) 
144
145 - In math-mode I can switch back to text-mode in a formula but then I am
146   not able to type Umlauts.
147
148 ?? - Having selected some part of a formula and creating a fraction with that
149 ??   part in the top my selection-buffer is replaced with the part.
150
151 - If the math-panel has the focus I can type text but not switch into
152   math-mode or use some of the other keyboard-shortcuts.
153
154 - In the default-configuration there are shortcuts for al greek characters
155   _except_ varphi wich is used extensively as a default-variable-name.
156
157
158 From: Álvaro Tejero Cantero <alvaro@antalia.com>
159  
160 - the most annoying bug by far: bold is "inherited" to super and subscripts.
161  
162 // - when you get into equation array mode, the previous equation(s)
163 // remain(s) unaligned. I would be soo much faster to have LyX pick the
164 // last equal sign from the previous line as a reference for the alignment
165 // (and a good heuristic for the 80% of cases, with the advantage that we
166 // don't lose anything enforcing it). This is another case that slows down
167 // a lot when typing because, as the previous one, requires going back
168 // and correcting.
169  
170 - the movement is sometimes clumsy inside this arrayed equations: ie. C-a (or 
171  "home" are understood as "beginning of the formula" instead of "beginning of 
172  the equation". Again, a lot of movement has to be made. I suggest mapping 
173  "beginning of doc" with "beginning of formula" and so on (very intuitive), in 
174  case you don't deem appropriate the "namespace idea" below.
175  
176 //- movement between macro boxes is also weird, but in this one it's perhaps 
177 // just me.  
178  
179 - I suggest creating a different "kewybinding namespace" for the formulas, 
180  since you could put to good use all those keybindings from the menu (M-?, 
181  C-?) thath currently do their job PLUS getting you out of the formula. 
182  Seriously, it'd be great to have more keys free, so M-d t would be time 
183  derivative and M-d ? derivative with respect to the variable ?. And so on.
184  
185 - I'm no experienced C++ programmer, but if you consider it appropriate, I 
186  could write a scritp in python for this one (I'm also very optimistic). Tell 
187  me what you think:
188   
189    Flattening macros. Sometimes it's annoying the fact that once you have 
190  written a macro, you can't touch at it's "constant parts". I call flattening 
191  to the process of substituting all macros with LaTeX code.
192  
193    Task: designing a macro substitution system that reads from a file 
194  (possibly the same file as the document's) the macros and parses the document 
195  doing the appropriate replacements
196  
197   This is very useful, because sometimes you have a big expression in a macro 
198  and you want to change an index only. What do you do then?. You retype 
199  everything (perhaps several times in the document) or you create extremely 
200  generic and parametrizable macros that aren't very fast to fill in the 
201  majority of cases.
202  
203  
204 - undo-redo seems too coarse in math-mode. You end up losing substantial 
205  fragments of your formula. I hate that when it affects tensors,;).
206  
207 - cut&paste inside math-mode doesn't work the X fashion (middle button doesn't 
208  paste anything).
209  
210 - I remember having heard that a search-replace function was planned, so I 
211  won't repeat that. Only that the flattening option would be then easier to 
212  implement on top of that.
213  
214 - There's something I keep wondering about.. how do new math symbols get into 
215  LyX. Do they get ever?. I don't know if it can be done, but if you tell me 
216  where to "draw" those symbols or how, I would very glad start doing it. LyX 
217  deserves to have support (visual support) for all the AMSTeX constructs. But 
218  there must be something structural going on there, because otherwise more 
219  math symbols would be ready by now.. just a thought.
220  
221 - Some math symbols aren't very well supported (to my knowledge). I'm 
222   thinking of underbraces with extra data in them,or [] options.
223
224
225 Herbert Voss:
226
227 - it's not possible to enter superscript when the
228   ^-char works as a dead key. with the second ^-
229   or the space the cursor jumps outside the mathbox.
230
231
232 Jules Bean:
233
234
235 - I've been using Lyx for a year or two now, and I have some thoughts on
236   improving the interface. Not the GUI, as such, but the basic Human-Machine
237   interface --- the efficiency with which I can enter information into it. 
238
239 There are a couple of general principles I'm try to uphold here: 
240
241 a) If something's easy & quick in LaTeX then it should be easy & quick in
242 LyX (unless it really isn't very common).  b) Actions which are used
243 frequently should be a single key-press, even if that's not very easy to
244 remember. You learn it.  c) Actions which are used rarely should be
245 mnemonic -- easy to remember -- even if they are multiple keypresses.
246 Things you do rarely you care less about the time it takes to perform. 
247
248 2) Math-mode entry  Under the xemacs keybindings, which I use, (damn it,
249 I don't want to confuse my poor muscle memory more than necessary by
250 learning too many different bindings for the same actions), the key
251 sequence to enter math-mode is 'M-c m'. I'm not sure exactly what to
252 propose instead, but I really think this needs to be only one keypress. 
253
254 As an aside, you may think that I'm whining over nothing. However, when
255 you enter math mode as often as I do (often more than once a sentence) it
256 gets very annoying, especially as compared to simply typing '$' in plain
257 emacs. Also, you may say 'why don't you just change your bindings file?'. I
258 will ;) but I wanted to start some discussion on this since it can benefit
259 everyone! 
260
261 More serious, though, than the number of characters which need to be typed
262 is the confusing nature of the command. 'M-c m', typed once, puts you into
263 math-mode. However, typing 'M-c m' again doesn't put you out of math-mode
264 --- it puts you into math-text mode. Then hitting it again puts you back
265 into normal math-mode.  IMO, 'modal' keys should either be idempotent (so
266 hitting it the second time does nothing) or self-inverting. In fact, the
267 inverse to 'M-c m' is either 'ESC' or simply a space typed at the end of
268 the block --- which is confusing, since they're not of the same 'shape' as
269 the command that got you in there. 
270
271 Now, I'm not saying that 'space' shouldn't be allowed as a short-cut to get
272 you out of math-mode; it's a most useful and natural one, I like it a lot.
273 However, on balance I think M-c m should also have that effect. 
274
275 3) Math-mode inconsistencies 
276
277 Sometimes 'the same action' has the same keystroke both within and
278 without math-mode. This is very sensible. However, it is very annoying when
279 they don't behave the way you're expecting them to. 
280
281 For example, 'M-c e' puts you into 'emphasise' mode.  Ignoring the fact
282 that in text mode this is italics, and in math-mode it stands for the
283 calligraphic character set, I think of these as the same action, so I like
284 the fact that they have the same keys. However, in math-mode, 'M-c e' is
285 idempotent, (and you need 'M-c space' to get back into normal) whereas in
286 text-mode 'M-c e' is self-inverse. These are the two possibilities I listed
287 as acceptable before, but consistency would be nice ;-) IMO, self-inverse
288 would be best for both. 
289
290 4) ERT in math-mode 
291
292 Math-mode doesn't handle ERT very well at all. It flips back out of
293 TeX-mode as soon as you type any special character.  Very annoying if I
294 wish to typeset an \xymatrix inside math-mode (see also my comment above
295 about table-like environments), since I can't type the &. In fact, my
296 xymatrices end up as $$\xymatrix{..}$$ in text-mode ERT. Also rather
297 annoying when you want to use a \macro with more than one argument (but not
298 fatally so). 
299
300 5) Proposal : a 'ligatures' or 'autocorrect' system 
301
302 One of the very minor, but useful, features of TeX is the way it lets you
303 type the nearest approximation to what you want using a 'typewriter
304 keyboard', and substitutes the typographically neat equivalent. In
305 particular, 'fancy' quotes (") and en and em dashes (---). I propose that
306 this UI element could be taken up a level into LyX, with a system that does
307 the following (for example): 
308
309 -> becomes \rightarrow 
310 <- becomes \leftarrow 
311 => becomes \Rightarrow (etc..) 
312 ==> becomes \Longrightarrow (etc..) 
313
314 This may only be appropriate in math mode, of course.  This family bug me
315 in particular because they take ages to type using a \-escape. Undoubtedly
316 sharp minds will think of others, and also we need some way of actually
317 typing those sequences as literals when we want them. 
318
319 6) Scope macros: 
320
321 The current macro system is clever, but could be neater. One improvement
322 I'd like is to let LyX know about TeX's scoping rules... 
323
324
325 Yves Bastide:
326
327 - use AMS's \text instead of \mbox.  It supports accented characters,
328   among others...  (selected via validate()?)
329
330
331 Jean-Marc:
332
333 // \def\neq{\not=} \let\ne=\neq
334 // \let\le=\leq
335 // \let\ge=\geq
336 // \let\owns=\ni
337 // \let\gets=\leftarrow
338 // \let\to=\rightarrow
339 // \let\|=\Vert
340
341 Angus:
342
343 - make math lables editable
344
345 Tuukka:
346
347 // - An inline equation does not get a number, so putting a label there is not
348 //   overly sensible...
349 //      Ok. In that case show a message in the bottom similarly as the message
350 //      "you cannot type two spaces this way". Eg. "You can insert math labels
351 //      only in display mode"
352
353 :: Not a bug. It's allowed by LaTeX and there might be other reasons for
354 :: putting labels there. I won't add extra code to disable this.
355