1 diff -ur xchat-gnome-0.14-o/src/fe-gnome/xtext.c xchat-gnome-0.14/src/fe-gnome/xtext.c
2 --- xchat-gnome-0.14-o/src/fe-gnome/xtext.c 2006-10-15 17:19:09.000000000 -0600
3 +++ xchat-gnome-0.14/src/fe-gnome/xtext.c 2006-10-28 21:55:54.000000000 -0600
5 #include "xg-marshal.h"
9 - (c == ' ' || c == '\n' || c == ')' || c == '(' || \
10 - c == '>' || c == '<' || c == ATTR_RESET || c == ATTR_BOLD || c == 0)
11 +int is_del(const char *c) {
14 + ret = (c[0] == ' ' || c[0] == '\n' || c[0] == ')' || c[0] == '(' ||
15 + c[0] == '>' || c[0] == '<' || c[0] == ATTR_RESET || c[0] == ATTR_BOLD || c == 0);
17 + ret = strncmp(c, "“", 3) == 0 || strncmp(c, "”", 3) == 0;
22 /* force scrolling off */
23 #define dontscroll(buf) (buf)->last_pixel_pos = 0x7fffffff
28 + unsigned char *nstr;
30 int out_of_bounds = 0;
32 @@ -1586,16 +1594,16 @@
34 str = ent->str + offset;
36 - while (!is_del (*str) && str != ent->str) {
40 + while (!is_del(str))
41 + str = g_utf8_prev_char(str);
42 + word = g_utf8_next_char(str);
46 - while (!is_del (*str) && len != ent->str_len) {
49 + while (!is_del(str) && len != ent->str_len) {
50 + nstr = g_utf8_next_char(str);
55 if (len > 0 && word[len-1]=='.') {
59 /* keep a record of the last space, for wordwrapping */
60 - if (is_del (*str)) {
61 + if (g_unichar_isspace(g_utf8_get_char(str))) {
65 Only in xchat-gnome-0.14/src/fe-gnome: xtext.c~
66 Only in xchat-gnome-0.14/src/fe-gnome: xtext.c.orig
67 Only in xchat-gnome-0.14/src/fe-gnome: xtext.c.rej