Patch 7.3.927
Problem:    Missing combining characters when putting text in a register.
Solution:   Include combining characters. (David Bürgin)
Files:      src/getchar.c, src/testdir/test44.in, src/testdir/test44.ok


*** ../vim-7.3.926/src/getchar.c        2013-04-15 15:47:07.000000000 +0200
--- src/getchar.c       2013-05-06 05:06:13.000000000 +0200
***************
*** 4616,4624 ****
--- 4616,4636 ----
            }
            else
            {
+ #ifdef FEAT_MBYTE
+               int len  = mb_char2len(PTR2CHAR(s));
+               int len2 = mb_ptr2len(s);
+ #endif
                /* Add character, possibly multi-byte to destination, escaping
                 * CSI and K_SPECIAL. */
                d = add_char2buf(PTR2CHAR(s), d);
+ #ifdef FEAT_MBYTE
+               while (len < len2)
+               {
+                   /* add following combining char */
+                   d = add_char2buf(PTR2CHAR(s + len), d);
+                   len += mb_char2len(PTR2CHAR(s + len));
+               }
+ #endif
                mb_ptr_adv(s);
            }
        }
*** ../vim-7.3.926/src/testdir/test44.in        2013-01-23 16:43:07.000000000 
+0100
--- src/testdir/test44.in       2013-05-06 05:01:39.000000000 +0200
***************
*** 32,38 ****
  x:" Test backwards search from a multi-byte char
  /x
  x?.
! x:?^1?,$w! test.out
  :e! test.out
  G:put =matchstr(\"אבגד\", \".\", 0, 2) " ב
  :put =matchstr(\"אבגד\", \"..\", 0, 2) " בג
--- 32,40 ----
  x:" Test backwards search from a multi-byte char
  /x
  x?.
! x:let @w=':%s#comb[i]nations#œ̄ṣ́m̥̄ᾱ̆́#g'
! :@w
! :?^1?,$w! test.out
  :e! test.out
  G:put =matchstr(\"אבגד\", \".\", 0, 2) " ב
  :put =matchstr(\"אבגד\", \"..\", 0, 2) " בג
***************
*** 61,63 ****
--- 63,66 ----
  h AÀÁÂÃÄÅĀĂĄǍǞǠẢ BḂḆ CÇĆĈĊČ DĎĐḊḎḐ EÈÉÊËĒĔĖĘĚẺẼ FḞ GĜĞĠĢǤǦǴḠ HĤĦḢḦḨ 
IÌÍÎÏĨĪĬĮİǏỈ JĴ KĶǨḰḴ LĹĻĽĿŁḺ MḾṀ NÑŃŅŇṄṈ OÒÓÔÕÖØŌŎŐƠǑǪǬỎ PṔṖ Q RŔŖŘṘṞ SŚŜŞŠṠ 
TŢŤŦṪṮ UÙÚÛÜŨŪŬŮŰŲƯǓỦ VṼ WŴẀẂẄẆ XẊẌ YÝŶŸẎỲỶỸ ZŹŻŽƵẐẔ
  i aàáâãäåāăąǎǟǡả bḃḇ cçćĉċč dďđḋḏḑ eèéêëēĕėęěẻẽ fḟ gĝğġģǥǧǵḡ hĥħḣḧḩẖ 
iìíîïĩīĭįǐỉ jĵǰ kķǩḱḵ lĺļľŀłḻ mḿṁ nñńņňʼnṅṉ oòóôõöøōŏőơǒǫǭỏ pṕṗ q rŕŗřṙṟ sśŝşšṡ 
tţťŧṫṯẗ uùúûüũūŭůűųưǔủ vṽ wŵẁẃẅẇẘ xẋẍ yýÿŷẏẙỳỷỹ zźżžƶẑẕ
  j 0123❤x
+ k combinations
*** ../vim-7.3.926/src/testdir/test44.ok        2013-01-23 16:43:07.000000000 
+0100
--- src/testdir/test44.ok       2013-05-06 05:01:39.000000000 +0200
***************
*** 17,22 ****
--- 17,23 ----
  h AÀÁÂÃÄÅĀĂĄǍǞǠẢ BḂḆ CÇĆĈĊČ DĎĐḊḎḐ EÈÉÊËĒĔĖĘĚẺẼ FḞ GĜĞĠĢǤǦǴḠ HĤĦḢḦḨ 
IÌÍÎÏĨĪĬĮİǏỈ JĴ KĶǨḰḴ LĹĻĽĿŁḺ MḾṀ NÑŃŅŇṄṈ OÒÓÔÕÖØŌŎŐƠǑǪǬỎ PṔṖ Q RŔŖŘṘṞ SŚŜŞŠṠ 
TŢŤŦṪṮ UÙÚÛÜŨŪŬŮŰŲƯǓỦ VṼ WŴẀẂẄẆ XẊẌ YÝŶŸẎỲỶỸ ZŹŻŽƵẐ
  i aàáâãäåāăąǎǟǡả bḃḇ cçćĉċč dďđḋḏḑ eèéêëēĕėęěẻẽ fḟ gĝğġģǥǧǵḡ hĥħḣḧḩẖ 
iìíîïĩīĭįǐỉ jĵǰ kķǩḱḵ lĺļľŀłḻ mḿṁ nñńņňʼnṅṉ oòóôõöøōŏőơǒǫǭỏ pṕṗ q rŕŗřṙṟ sśŝşšṡ 
tţťŧṫṯẗ uùúûüũūŭůűųưǔủ vṽ wŵẁẃẅẇẘ xẋẍ yýÿŷẏẙỳỷỹ zźżžƶẑ
  j 012❤
+ k œ̄ṣ́m̥̄ᾱ̆́
  ב
  בג
  א
*** ../vim-7.3.926/src/version.c        2013-05-06 04:50:26.000000000 +0200
--- src/version.c       2013-05-06 05:08:11.000000000 +0200
***************
*** 730,731 ****
--- 730,733 ----
  {   /* Add new patch number below this line */
+ /**/
+     927,
  /**/

-- 
In his lifetime van Gogh painted 486 oil paintings. Oddly enough, 8975
of them are to be found in the United States.

 /// 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/groups/opt_out.


Raspunde prin e-mail lui