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