Patch 8.0.0990
Problem:    When 'encoding' is a double-byte encoding, pasting a register into
            a terminal ends up with the wrong characters.
Solution:   Convert from 'encoding' to utf-8. (Yasuhiro Matsumoto, closes
            #2007)
Files:      src/terminal.c


*** ../vim-8.0.0989/src/terminal.c      2017-08-22 22:28:56.054708407 +0200
--- src/terminal.c      2017-08-23 23:01:46.381267123 +0200
***************
*** 38,43 ****
--- 38,44 ----
   * in tl_scrollback are no longer used.
   *
   * TODO:
+  * - better check for blinking - reply from Thomas Dickey Aug 22
   * - test for writing lines to terminal job does not work on MS-Windows
   * - implement term_setsize()
   * - add test for giving error for invalid 'termsize' value.
***************
*** 45,50 ****
--- 46,55 ----
   * - support minimal size when 'termsize' is empty?
   * - do not set bufhidden to "hide"?  works like a buffer with changes.
   *   document that CTRL-W :hide can be used.
+  * - GUI: when using tabs, focus in terminal, click on tab does not work.
+  * - GUI: when 'confirm' is set and trying to exit Vim, dialog offers to save
+  *   changes to "!shell".
+  *   (justrajdeep, 2017 Aug 22)
   * - command argument with spaces doesn't work #1999
   *       :terminal ls dir\ with\ spaces
   * - implement job options when starting a terminal.  Allow:
***************
*** 1261,1269 ****
--- 1266,1296 ----
        for (item = l->lv_first; item != NULL; item = item->li_next)
        {
            char_u *s = get_tv_string(&item->li_tv);
+ #ifdef WIN3264
+           char_u *tmp = s;
+ 
+           if (!enc_utf8 && enc_codepage > 0)
+           {
+               WCHAR   *ret = NULL;
+               int     length = 0;
  
+               MultiByteToWideChar_alloc(enc_codepage, 0, (char*)s, STRLEN(s),
+                                                          &ret, &length);
+               if (ret != NULL)
+               {
+                   WideCharToMultiByte_alloc(CP_UTF8, 0,
+                                   ret, length, (char **)&s, &length, 0, 0);
+                   vim_free(ret);
+               }
+           }
+ #endif
            channel_send(curbuf->b_term->tl_job->jv_channel, PART_IN,
                                                           s, STRLEN(s), NULL);
+ #ifdef WIN3264
+           if (tmp != s)
+               vim_free(s);
+ #endif
+ 
            if (item->li_next != NULL || type == MLINE)
                channel_send(curbuf->b_term->tl_job->jv_channel, PART_IN,
                                                      (char_u *)"\r", 1, NULL);
*** ../vim-8.0.0989/src/version.c       2017-08-23 22:40:37.165363011 +0200
--- src/version.c       2017-08-23 23:01:29.921373655 +0200
***************
*** 771,772 ****
--- 771,774 ----
  {   /* Add new patch number below this line */
+ /**/
+     990,
  /**/

-- 
hundred-and-one symptoms of being an internet addict:
3. Your bookmark takes 15 minutes to scroll from top to bottom.

 /// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net   \\\
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org        ///
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Raspunde prin e-mail lui