diff options
Diffstat (limited to 'x11-terms/rxvt/files/rxvt-2.7.10-rk.patch')
-rw-r--r-- | x11-terms/rxvt/files/rxvt-2.7.10-rk.patch | 82 |
1 files changed, 0 insertions, 82 deletions
diff --git a/x11-terms/rxvt/files/rxvt-2.7.10-rk.patch b/x11-terms/rxvt/files/rxvt-2.7.10-rk.patch deleted file mode 100644 index 471c7a26b739..000000000000 --- a/x11-terms/rxvt/files/rxvt-2.7.10-rk.patch +++ /dev/null @@ -1,82 +0,0 @@ -diff -urN rxvt-2.7.10.ORIG/src/screen.c rxvt-2.7.10/src/screen.c ---- rxvt-2.7.10.ORIG/src/screen.c 2003-03-24 01:56:06.000000000 +0900 -+++ rxvt-2.7.10/src/screen.c 2003-06-30 02:11:27.000000000 +0900 -@@ -828,10 +828,18 @@ - if (h->chstat == WBYTE) { - h->rstyle |= RS_multi2; /* multibyte 2nd byte */ - h->chstat = SBYTE; -- if ((r->encoding_method == EUCJ) || (r->encoding_method == GB)) -+ if ((r->encoding_method == EUCJ) && ((char)stp[r->screen.cur.col - 1] == (char)0x8e)) -+ h->rstyle &= ~RS_multiMask, r->screen.cur.col--; -+ else if ((r->encoding_method == EUCJ) || (r->encoding_method == GB)) - c |= 0x80; /* maybe overkill, but makes it selectable */ - } else if (h->chstat == SBYTE) { -- if (h->multi_byte || (c & 0x80)) { /* multibyte 1st byte */ -+ if (r->encoding_method == SJIS) { -+ if ((h->multi_byte || ((c >= (char)0x81 && c <= (char)0x9f) || -+(c >= (char)0xe0 && c <= (char)0xfc)))) { -+ h->rstyle |= RS_multi1; -+ h->chstat = WBYTE; -+ } -+ } else if (h->multi_byte || (c & 0x80)) { /* multibyte 1st byte */ - h->rstyle |= RS_multi1; - h->chstat = WBYTE; - if ((r->encoding_method == EUCJ) -@@ -2932,6 +2940,9 @@ - unsigned char *new_selection_text; - char *str; - text_t *t; -+#ifdef MULTICHAR_SET -+ rend_t *tr; -+#endif - - D_SELECT((stderr, "rxvt_selection_make(): r->selection.op=%d, r->selection.clicks=%d", r->selection.op, r->selection.clicks)); - switch (r->selection.op) { -@@ -2966,10 +2977,22 @@ - */ - for (; row < end_row; row++, col = 0) { - t = &(r->screen.text[row][col]); -+#ifdef MULTICHAR_SET -+ tr = &(r->screen.rend[row][col]); -+#endif - if ((end_col = r->screen.tlen[row]) == -1) - end_col = r->TermWin.ncol; -+#ifdef MULTICHAR_SET -+ for (; col < end_col; col++, str++, t++, tr++) { -+ if ( (r->encoding_method == EUCJ) -+ && (*t & 0x80) && !(*tr & RS_multiMask) ) -+ *str++ = 0x8E; -+ *str = *t; -+ } -+#else - for (; col < end_col; col++) - *str++ = *t++; -+#endif - if (r->screen.tlen[row] != -1) - *str++ = '\n'; - } -@@ -2977,12 +3000,24 @@ - * B: end row - */ - t = &(r->screen.text[row][col]); -+#ifdef MULTICHAR_SET -+ tr = &(r->screen.rend[row][col]); -+#endif - end_col = r->screen.tlen[row]; - if (end_col == -1 || r->selection.end.col <= end_col) - end_col = r->selection.end.col; - MIN_IT(end_col, r->TermWin.ncol); /* CHANGE */ -+#ifdef MULTICHAR_SET -+ for (; col < end_col; col++, str++, t++, tr++) { -+ if ( (r->encoding_method == EUCJ) -+ && (*t & 0x80) && !(*tr & RS_multiMask) ) -+ *str++ = 0x8E; -+ *str = *t; -+ } -+#else - for (; col < end_col; col++) - *str++ = *t++; -+#endif - #ifndef NO_OLD_SELECTION - if (r->selection_style == OLD_SELECT) - if (end_col == r->TermWin.ncol) |