*** empty log message ***
authorroot <root>
Thu, 7 Dec 2006 03:30:01 +0000 (03:30 +0000)
committerroot <root>
Thu, 7 Dec 2006 03:30:01 +0000 (03:30 +0000)
Changes
src/rxvt.h

diff --git a/Changes b/Changes
index d1b7d6970650f10b379f2b735cc70d010d2be4fc..605e15005224c54a6a2c5e4e0af6e4ce2324e930 100644 (file)
--- a/Changes
+++ b/Changes
@@ -22,7 +22,6 @@ DUMB: support tex fonts
 
 TODO: http://www.cl.cam.ac.uk/~mgk25/ucs/scw-proposal.html
 
-TODO: wcwidth optimisaiton for <= 0xff is bogus, go to 0x7f or measure (Dai.H.)
 TODO: strwidth bug
 TODO:
 TODO: 0:52 <mmc> I think, that urxvt has the same bug as rxvt: FocusIn detail=NotifyPointer 
@@ -37,8 +36,10 @@ TODO: 9:55 <Wolf_on_Air> not much to document, it needs
 TODO: 9:55 <Wolf_on_Air> URxvt.keysym.M-c:                       perl:clipboard:copy
 TODO: 9:55 <Wolf_on_Air> URxvt.keysym.M-v:                       perl:clipboard:paste
 TODO: http://triplefusion.net/system/macosx-clipboard
-8.
-       - secondaryScroll is now enable by default (as per the manpage),
+8. 
+        - fix the assumption that chars < 256 are single-width. Now
+          only assume this for codepoints 32 to 126 (reported by Dai.H.).
+       - secondaryScroll is now enabled by default (as per the manpage),
           reported by exg.
         - correct the description of [percent]color rgba format in the manpage.
 
index 1b5b59892061eacd207229837ad4a7b25923b601..1b405c4a9ddb2f00c98ed8a448e8767ad1bb94b2 100644 (file)
@@ -686,10 +686,9 @@ enum {
  */
 #define dLocal(type,name)       type const name = this->name
 
-// for speed reasons, we assume that all latin1 characters
-// are single-width (the first unicode combining character
-// is actually 0x300, but ascii is what matters most).
-#define WCWIDTH(c) ((c) & ~0xff ? wcwidth (c) : 1)
+// for speed reasons, we assume that all codepoints 32 to 126 are
+// single-width.
+#define WCWIDTH(c)             (IN_RANGE_INC (c, 0x20, 0x7e) ? 1 : wcwidth (c))
 
 /* convert pixel dimensions to row/column values.  Everything as int32_t */
 #define Pixel2Col(x)            Pixel2Width((int32_t)(x))