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