]> git.pld-linux.org Git - packages/vim.git/blob - 5.7.005
- offcial vim patches from ftp://ftp.home.vim.org/pub/vim/patches.
[packages/vim.git] / 5.7.005
1 To: vim-dev@vim.org
2 Subject: Patch 5.7.005
3 Fcc: outbox
4 From: Bram Moolenaar <Bram@moolenaar.net>
5 ------------
6
7 Patch 5.7.005
8 Problem:    Multibyte: Inserting a wrapped line corrupts kterm screen.
9             Pasting TEXT/COMPOUND_TEXT into Vim does not work.
10             On Motif no XIM status line is displayed even though it is
11             available.
12 Solution:   Don't use xterm trick for wrapping lines for multibyte mode.
13             Correct a missing "break", added TEXT/COMPOUND_TEXT selection
14             request.
15             Add XIMStatusArea fallback code.
16             (Katsuhito Nagano)
17 Files:      src/gui_gtk_x11.c, src/multbyte.c, src/screen.c, src/ui.c
18
19
20 *** ../vim-5.7.4/src/gui_gtk_x11.c      Sat Aug  5 14:26:52 2000
21 --- src/gui_gtk_x11.c   Sat Aug  5 14:22:57 2000
22 ***************
23 *** 1444,1452 ****
24   #define VIM_ATOM_NAME "_VIM_TEXT"
25   static const GtkTargetEntry primary_targets[] = {
26       {VIM_ATOM_NAME, 0, SELECTION_CLIPBOARD},
27 !     {"STRING", 0, SELECTION_STRING},
28       {"TEXT", 0, SELECTION_TEXT},
29 !     {"COMPOUND_TEXT", 0, SELECTION_COMPOUND_TEXT}
30   };
31   
32   /*
33 --- 1444,1452 ----
34   #define VIM_ATOM_NAME "_VIM_TEXT"
35   static const GtkTargetEntry primary_targets[] = {
36       {VIM_ATOM_NAME, 0, SELECTION_CLIPBOARD},
37 !     {"COMPOUND_TEXT", 0, SELECTION_COMPOUND_TEXT},
38       {"TEXT", 0, SELECTION_TEXT},
39 !     {"STRING", 0, SELECTION_STRING}
40   };
41   
42   /*
43 ***************
44 *** 3130,3135 ****
45 --- 3130,3155 ----
46         gtk_main();             /* wait for selection_received_event */
47   
48       if (received_selection == RS_FAIL)
49 +     {
50 +       /* Now try to get it out of the usual string selection. */
51 +       received_selection = RS_NONE;
52 +       (void)gtk_selection_convert(gui.drawarea, GDK_SELECTION_PRIMARY,
53 +                                   gdk_atom_intern("COMPOUND_TEXT", FALSE),
54 +                                   (guint32)GDK_CURRENT_TIME);
55 +       while (received_selection == RS_NONE)
56 +           gtk_main();         /* wait for selection_received_event */
57 +     }
58 +     if (received_selection == RS_FAIL)
59 +     {
60 +       /* Now try to get it out of the usual string selection. */
61 +       received_selection = RS_NONE;
62 +       (void)gtk_selection_convert(gui.drawarea, GDK_SELECTION_PRIMARY,
63 +                                   gdk_atom_intern("TEXT", FALSE),
64 +                                   (guint32)GDK_CURRENT_TIME);
65 +       while (received_selection == RS_NONE)
66 +           gtk_main();         /* wait for selection_received_event */
67 +     }
68 +     if (received_selection == RS_FAIL)
69       {
70         /* Now try to get it out of the usual string selection. */
71         received_selection = RS_NONE;
72 *** ../vim-5.7.4/src/multbyte.c Wed Jun  7 12:29:37 2000
73 --- src/multbyte.c      Sat Aug  5 14:22:57 2000
74 ***************
75 *** 520,526 ****
76   }
77   
78   #if defined(USE_GUI_X11) || defined(PROTO)
79 ! # if defined(XtSpecificationRelease) && XtSpecificationRelease >= 6
80   #  define USE_X11R6_XIM
81   # endif
82   
83 --- 520,526 ----
84   }
85   
86   #if defined(USE_GUI_X11) || defined(PROTO)
87 ! # if defined(XtSpecificationRelease) && XtSpecificationRelease >= 6 && !defined(sun)
88   #  define USE_X11R6_XIM
89   # endif
90   
91 ***************
92 *** 724,737 ****
93                 found = True;
94                 break;
95             }
96 !           if ((xim_styles->supported_styles[i] & this_input_style)
97 !                       == (this_input_style & ~XIMStatusArea))
98             {
99 !               this_input_style &= ~XIMStatusArea;
100 !               found = True;
101 !               break;
102             }
103 -       }
104   
105         s = ns;
106       }
107 --- 724,741 ----
108                 found = True;
109                 break;
110             }
111 !       }
112 !       if (!found)
113 !           for (i = 0; (unsigned short)i < xim_styles->count_styles; i++)
114             {
115 !               if ((xim_styles->supported_styles[i] & this_input_style)
116 !                           == (this_input_style & ~XIMStatusArea))
117 !               {
118 !                   this_input_style &= ~XIMStatusArea;
119 !                   found = True;
120 !                   break;
121 !               }
122             }
123   
124         s = ns;
125       }
126 *** ../vim-5.7.4/src/screen.c   Wed Jun  7 14:43:59 2000
127 --- src/screen.c        Sat Aug  5 14:22:57 2000
128 ***************
129 *** 1746,1751 ****
130 --- 1746,1754 ----
131   #ifdef USE_GUI
132                      && !gui.in_use
133   #endif
134 + #ifdef MULTI_BYTE
135 +                    && !is_dbcs
136 + #endif
137                                         )
138             {
139                 if (screen_cur_col != Columns)
140 *** ../vim-5.7.4/src/ui.c       Sat Jun  3 11:37:13 2000
141 --- src/ui.c    Sat Aug  5 14:22:57 2000
142 ***************
143 *** 1523,1531 ****
144       {
145         switch (i)
146         {
147 !           case 0:  type = clipboard.xatom;
148 !           case 1:  type = clipboard.xa_compound_text;
149 !           case 2:  type = clipboard.xa_text;
150             default: type = XA_STRING;
151         }
152         XtGetSelectionValue(myShell, XA_PRIMARY, type,
153 --- 1523,1531 ----
154       {
155         switch (i)
156         {
157 !           case 0:  type = clipboard.xatom;    break;
158 !           case 1:  type = clipboard.xa_compound_text; break;
159 !           case 2:  type = clipboard.xa_text;  break;
160             default: type = XA_STRING;
161         }
162         XtGetSelectionValue(myShell, XA_PRIMARY, type,
163 *** ../vim-5.7.4/src/version.c  Sat Aug  5 14:27:00 2000
164 --- src/version.c       Sat Aug  5 14:36:42 2000
165 ***************
166 *** 439,440 ****
167 --- 439,442 ----
168   {   /* Add new patch number below this line */
169 + /**/
170 +     5,
171   /**/
172
173 -- 
174 hundred-and-one symptoms of being an internet addict:
175 125. You begin to wonder how often it REALLY is necessary to get up
176      and shower or bathe.
177
178 ///  Bram Moolenaar     Bram@moolenaar.net     http://www.moolenaar.net  \\\
179 \\\  Vim: http://www.vim.org      ICCF Holland: http://iccf-holland.org  ///
This page took 0.033235 seconds and 3 git commands to generate.