From: Peter G. <pe...@ar...> - 2003-04-03 20:09:46
|
This morning's development snapshot (j 0.18.1.1, lisp 0.0.0.22) is up: http://armedbear.org/j.zip (source) http://armedbear.org/j-jar.zip (just j.jar) This snapshot fixes an important display-related bug (I hope). For a long time, j has been very close to working acceptably with proportional fonts, but there was an annoying bug that caused the caret to be positioned incorrectly, usually on the proper character but somewhere in the middle of it rather than at its left edge (where it belongs). I was motivated to look into this (again) by a question from the field: > I just have a quick question for you, if you edit Asia text in J, why > the cursor is always in the middle of character, and how to fix it. It turns out that the display code suffered from an off-by-one bug, which led (in effect) to the replacement of the character immediately preceding the caret in the text that was fed to measureLine(). This made no difference with a monospaced font, since the space was the same width as the character it replaced, but it led to the aforementioned problem with proportional fonts, and in all likelihood it was also responsible for the problem with Asian text. This bug is fixed in the current snapshot. I've tested all the corner cases I could think of, and I've been running with the new code for a couple of hours, so I think it's solid, but it's a complicated area, so please let me know if you notice any anomalies. (There are still a number of problems with proportional fonts in j that have nothing to do with caret positioning, notably the alignment of columns in mailboxes and directory buffers, so the use of proportional fonts is not officially recommended or condoned.) This snapshot also features a revised init.lisp in the examples directory, showing how to check the hostname to decide which theme to load, so you can use different themes on machines with different display characteristics, all managed with the same init.lisp. Symlinks are us... ;) Thanks for your support. -Peter |