Author: glen                         Date: Mon Oct 25 12:42:38 2010 GMT
Module: packages                      Tag: HEAD
---- Log message:
- up to 7.3.035

---- Files affected:
packages/vim:
   vim.spec (1.528 -> 1.529) , 7.3.028 (NONE -> 1.1)  (NEW), 7.3.029 (NONE -> 
1.1)  (NEW), 7.3.030 (NONE -> 1.1)  (NEW), 7.3.031 (NONE -> 1.1)  (NEW), 
7.3.032 (NONE -> 1.1)  (NEW), 7.3.033 (NONE -> 1.1)  (NEW), 7.3.034 (NONE -> 
1.1)  (NEW), 7.3.035 (NONE -> 1.1)  (NEW)

---- Diffs:

================================================================
Index: packages/vim/vim.spec
diff -u packages/vim/vim.spec:1.528 packages/vim/vim.spec:1.529
--- packages/vim/vim.spec:1.528 Thu Oct 14 07:16:25 2010
+++ packages/vim/vim.spec       Mon Oct 25 14:42:32 2010
@@ -28,7 +28,7 @@
 # curl -s ftp://ftp.vim.org/pub/editors/vim/patches/7.3/MD5SUMS | grep -vF .gz 
| tail -n1 | awk '{print $2}'
 
 %define                ver             7.3
-%define                patchlevel      027
+%define                patchlevel      035
 %define                rel                     1
 Summary:       Vi IMproved - a Vi clone
 Summary(de.UTF-8):     VIsual editor iMproved
@@ -1380,6 +1380,9 @@
 All persons listed below can be reached at <cvs_login>@pld-linux.org
 
 $Log$
+Revision 1.529  2010/10/25 12:42:32  glen
+- up to 7.3.035
+
 Revision 1.528  2010/10/14 05:16:25  wrobell
 - ver. 7.3.027
 

================================================================
Index: packages/vim/7.3.028
diff -u /dev/null packages/vim/7.3.028:1.1
--- /dev/null   Mon Oct 25 14:42:38 2010
+++ packages/vim/7.3.028        Mon Oct 25 14:42:32 2010
@@ -0,0 +1,179 @@
+To: [email protected]
+Subject: Patch 7.3.028
+Fcc: outbox
+From: Bram Moolenaar <[email protected]>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.3.028 (after 7.3.024)
+Problem:    Signs don't show up. (Charles Campbell)
+Solution:   Don't use negative numbers.  Also assign a number to signs that
+           have a name of all digits to avoid using a sign number twice.
+Files:     src/ex_cmds.c
+
+
+*** ../vim-7.3.027/src/ex_cmds.c       2010-10-13 16:44:17.000000000 +0200
+--- src/ex_cmds.c      2010-10-14 20:59:04.000000000 +0200
+***************
+*** 6569,6575 ****
+  };
+  
+  static sign_T        *first_sign = NULL;
+! static int   last_sign_typenr = MAX_TYPENR;  /* is decremented */
+  
+  static int sign_cmd_idx __ARGS((char_u *begin_cmd, char_u *end_cmd));
+  static void sign_list_defined __ARGS((sign_T *sp));
+--- 6569,6575 ----
+  };
+  
+  static sign_T        *first_sign = NULL;
+! static int   next_sign_typenr = 1;
+  
+  static int sign_cmd_idx __ARGS((char_u *begin_cmd, char_u *end_cmd));
+  static void sign_list_defined __ARGS((sign_T *sp));
+***************
+*** 6651,6659 ****
+--- 6651,6664 ----
+           EMSG(_("E156: Missing sign name"));
+       else
+       {
++          /* Isolate the sign name.  If it's a number skip leading zeroes,
++           * so that "099" and "99" are the same sign.  But keep "0". */
+           p = skiptowhite(arg);
+           if (*p != NUL)
+               *p++ = NUL;
++          while (arg[0] == '0' && arg[1] != NUL)
++              ++arg;
++ 
+           sp_prev = NULL;
+           for (sp = first_sign; sp != NULL; sp = sp->sn_next)
+           {
+***************
+*** 6666,6706 ****
+               /* ":sign define {name} ...": define a sign */
+               if (sp == NULL)
+               {
+                   /* Allocate a new sign. */
+                   sp = (sign_T *)alloc_clear((unsigned)sizeof(sign_T));
+                   if (sp == NULL)
+                       return;
+  
+!                  /* If the name is a number use that for the typenr,
+!                   * otherwise use a negative number. */
+!                  if (VIM_ISDIGIT(*arg))
+!                      sp->sn_typenr = atoi((char *)arg);
+!                  else
+                   {
+!                      sign_T  *lp;
+!                      int     start = last_sign_typenr;
+! 
+!                      for (lp = first_sign; lp != NULL; lp = lp->sn_next)
+                       {
+!                          if (lp->sn_typenr == -last_sign_typenr)
+                           {
+!                              --last_sign_typenr;
+!                              if (last_sign_typenr == 0)
+!                                  last_sign_typenr = MAX_TYPENR;
+!                              if (last_sign_typenr == start)
+!                              {
+!                                  vim_free(sp);
+!                                  EMSG(_("E612: Too many signs defined"));
+!                                  return;
+!                              }
+!                              lp = first_sign;
+!                              continue;
+                           }
+                       }
+  
+!                      sp->sn_typenr = -last_sign_typenr;
+!                      if (--last_sign_typenr == 0)
+!                          last_sign_typenr = MAX_TYPENR; /* wrap around */
+                   }
+  
+                   /* add the new sign to the list of signs */
+--- 6671,6715 ----
+               /* ":sign define {name} ...": define a sign */
+               if (sp == NULL)
+               {
++                  sign_T      *lp;
++                  int         start = next_sign_typenr;
++ 
+                   /* Allocate a new sign. */
+                   sp = (sign_T *)alloc_clear((unsigned)sizeof(sign_T));
+                   if (sp == NULL)
+                       return;
+  
+!                  /* Check that next_sign_typenr is not already being used.
+!                   * This only happens after wrapping around.  Hopefully
+!                   * another one got deleted and we can use its number. */
+!                  for (lp = first_sign; lp != NULL; )
+                   {
+!                      if (lp->sn_typenr == next_sign_typenr)
+                       {
+!                          ++next_sign_typenr;
+!                          if (next_sign_typenr == MAX_TYPENR)
+!                              next_sign_typenr = 1;
+!                          if (next_sign_typenr == start)
+                           {
+!                              vim_free(sp);
+!                              EMSG(_("E612: Too many signs defined"));
+!                              return;
+                           }
++                          lp = first_sign;  /* start all over */
++                          continue;
+                       }
++                      lp = lp->sn_next;
++                  }
++ 
++                  sp->sn_typenr = next_sign_typenr;
++                  if (++next_sign_typenr == MAX_TYPENR)
++                      next_sign_typenr = 1; /* wrap around */
+  
+!                  sp->sn_name = vim_strsave(arg);
+!                  if (sp->sn_name == NULL)  /* out of memory */
+!                  {
+!                      vim_free(sp);
+!                      return;
+                   }
+  
+                   /* add the new sign to the list of signs */
+***************
+*** 6708,6714 ****
+                       first_sign = sp;
+                   else
+                       sp_prev->sn_next = sp;
+-                  sp->sn_name = vim_strnsave(arg, (int)(p - arg));
+               }
+  
+               /* set values for a defined sign. */
+--- 6717,6722 ----
+***************
+*** 6886,6891 ****
+--- 6894,6901 ----
+               arg = skiptowhite(arg);
+               if (*arg != NUL)
+                   *arg++ = NUL;
++              while (sign_name[0] == '0' && sign_name[1] != NUL)
++                  ++sign_name;
+           }
+           else if (STRNCMP(arg, "file=", 5) == 0)
+           {
+*** ../vim-7.3.027/src/version.c       2010-10-13 20:37:37.000000000 +0200
+--- src/version.c      2010-10-14 20:50:54.000000000 +0200
+***************
+*** 716,717 ****
+--- 716,719 ----
+  {   /* Add new patch number below this line */
++ /**/
++     28,
+  /**/
+
+-- 
+This is an airconditioned room, do not open Windows.
+
+ /// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

================================================================
Index: packages/vim/7.3.029
diff -u /dev/null packages/vim/7.3.029:1.1
--- /dev/null   Mon Oct 25 14:42:38 2010
+++ packages/vim/7.3.029        Mon Oct 25 14:42:32 2010
@@ -0,0 +1,177 @@
+To: [email protected]
+Subject: Patch 7.3.029
+Fcc: outbox
+From: Bram Moolenaar <[email protected]>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.3.029
+Problem:    ":sort n" sorts lines without a number as number zero. (Beeyawned)
+Solution:   Make lines without a number sort before lines with a number.  Also
+           fix sorting negative numbers.
+Files:     src/ex_cmds.c, src/testdir/test57.in, src/testdir/test57.ok
+
+
+*** ../vim-7.3.028/src/ex_cmds.c       2010-10-14 21:29:31.000000000 +0200
+--- src/ex_cmds.c      2010-10-15 20:04:25.000000000 +0200
+***************
+*** 323,329 ****
+      /* When sorting numbers "start_col_nr" is the number, not the column
+       * number. */
+      if (sort_nr)
+!      result = l1.start_col_nr - l2.start_col_nr;
+      else
+      {
+       /* We need to copy one line into "sortbuf1", because there is no
+--- 323,330 ----
+      /* When sorting numbers "start_col_nr" is the number, not the column
+       * number. */
+      if (sort_nr)
+!      result = l1.start_col_nr == l2.start_col_nr ? 0
+!                               : l1.start_col_nr > l2.start_col_nr ? 1 : -1;
+      else
+      {
+       /* We need to copy one line into "sortbuf1", because there is no
+***************
+*** 482,488 ****
+            * of the match, by temporarily terminating the string there */
+           s2 = s + end_col;
+           c = *s2;
+!          (*s2) = 0;
+           /* Sorting on number: Store the number itself. */
+           p = s + start_col;
+           if (sort_hex)
+--- 483,489 ----
+            * of the match, by temporarily terminating the string there */
+           s2 = s + end_col;
+           c = *s2;
+!          *s2 = NUL;
+           /* Sorting on number: Store the number itself. */
+           p = s + start_col;
+           if (sort_hex)
+***************
+*** 491,499 ****
+               s = skiptodigit(p);
+           if (s > p && s[-1] == '-')
+               --s;  /* include preceding negative sign */
+!          vim_str2nr(s, NULL, NULL, sort_oct, sort_hex,
+!                                      &nrs[lnum - eap->line1].start_col_nr, 
NULL);
+!          (*s2) = c;
+       }
+       else
+       {
+--- 492,504 ----
+               s = skiptodigit(p);
+           if (s > p && s[-1] == '-')
+               --s;  /* include preceding negative sign */
+!          if (*s == NUL)
+!              /* empty line should sort before any number */
+!              nrs[lnum - eap->line1].start_col_nr = -MAXLNUM;
+!          else
+!              vim_str2nr(s, NULL, NULL, sort_oct, sort_hex,
+!                                &nrs[lnum - eap->line1].start_col_nr, NULL);
+!          *s2 = c;
+       }
+       else
+       {
+***************
+*** 6556,6563 ****
+  struct sign
+  {
+      sign_T   *sn_next;       /* next sign in list */
+!     int              sn_typenr;      /* type number of sign (negative if not 
equal
+!                                 to name) */
+      char_u   *sn_name;       /* name of sign */
+      char_u   *sn_icon;       /* name of pixmap */
+  #ifdef FEAT_SIGN_ICONS
+--- 6561,6567 ----
+  struct sign
+  {
+      sign_T   *sn_next;       /* next sign in list */
+!     int              sn_typenr;      /* type number of sign */
+      char_u   *sn_name;       /* name of sign */
+      char_u   *sn_icon;       /* name of pixmap */
+  #ifdef FEAT_SIGN_ICONS
+*** ../vim-7.3.028/src/testdir/test57.in       2010-08-15 21:57:29.000000000 
+0200
+--- src/testdir/test57.in      2010-10-15 20:12:23.000000000 +0200
+***************
+*** 53,67 ****
+  t02: numeric
+  abc
+  ab
+- a
+  a321
+  a123
+  a122
+  b321
+  b123
+  c123d
+   123b
+  c321d
+  b322b
+  b321
+  b321b
+--- 53,71 ----
+  t02: numeric
+  abc
+  ab
+  a321
+  a123
+  a122
++ a
++ x-22
+  b321
+  b123
++ 
+  c123d
++ -24
+   123b
+  c321d
++ 0
+  b322b
+  b321
+  b321b
+*** ../vim-7.3.028/src/testdir/test57.ok       2010-08-15 21:57:29.000000000 
+0200
+--- src/testdir/test57.ok      2010-10-15 20:11:42.000000000 +0200
+***************
+*** 21,26 ****
+--- 21,30 ----
+  a
+  
+  
++ 
++ -24
++ x-22
++ 0
+  a122
+  a123
+  b123
+*** ../vim-7.3.028/src/version.c       2010-10-14 21:29:31.000000000 +0200
+--- src/version.c      2010-10-15 20:13:52.000000000 +0200
+***************
+*** 716,717 ****
+--- 716,719 ----
+  {   /* Add new patch number below this line */
++ /**/
++     29,
+  /**/
+
+-- 
+       When danger reared its ugly head,
+       He bravely turned his tail and fled
+       Yes, Brave Sir Robin turned about
+       And gallantly he chickened out
+       Bravely taking to his feet
+       He beat a very brave retreat
+       Bravest of the brave Sir Robin
+       Petrified of being dead
+       Soiled his pants then brave Sir Robin
+       Turned away and fled.
+                 "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
+
+ /// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

================================================================
Index: packages/vim/7.3.030
diff -u /dev/null packages/vim/7.3.030:1.1
--- /dev/null   Mon Oct 25 14:42:38 2010
+++ packages/vim/7.3.030        Mon Oct 25 14:42:32 2010
@@ -0,0 +1,366 @@
+To: [email protected]
+Subject: Patch 7.3.030
+Fcc: outbox
+From: Bram Moolenaar <[email protected]>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.3.030
+Problem:    Cannot store Dict and List in viminfo file.
+Solution:   Add support for this. (Christian Brabandt)
+Files:     runtime/doc/options.txt, src/eval.c, src/testdir/Make_amiga.mak,
+           src/testdir/Make_dos.mak, src/testdir/Make_ming.mak,
+           src/testdir/Make_os2.mak, src/testdir/Make_vms.mms,
+           src/testdir/Makefile, src/testdir/main.aap, src/testdir/test74.in,
+           src/testdir/test74.ok
+
+
+*** ../vim-7.3.029/runtime/doc/options.txt     2010-08-15 21:57:17.000000000 
+0200
+--- runtime/doc/options.txt    2010-10-20 17:41:18.000000000 +0200
+***************
+*** 7530,7537 ****
+       !       When included, save and restore global variables that start
+               with an uppercase letter, and don't contain a lowercase
+               letter.  Thus "KEEPTHIS and "K_L_M" are stored, but "KeepThis"
+!              and "_K_L_M" are not.  Only String and Number types are
+!              stored.
+       "       Maximum number of lines saved for each register.  Old name of
+               the '<' item, with the disadvantage that you need to put a
+               backslash before the ", otherwise it will be recognized as the
+--- 7530,7538 ----
+       !       When included, save and restore global variables that start
+               with an uppercase letter, and don't contain a lowercase
+               letter.  Thus "KEEPTHIS and "K_L_M" are stored, but "KeepThis"
+!              and "_K_L_M" are not.  Nested List and Dict items may not be
+!              read back correctly, you end up with a string representation
+!              instead.
+       "       Maximum number of lines saved for each register.  Old name of
+               the '<' item, with the disadvantage that you need to put a
+               backslash before the ", otherwise it will be recognized as the
+*** ../vim-7.3.029/src/eval.c  2010-09-14 12:47:30.000000000 +0200
+--- src/eval.c 2010-10-20 16:25:54.000000000 +0200
+***************
+*** 22520,22537 ****
+       if (tab != NULL)
+       {
+           *tab++ = '\0';      /* isolate the variable name */
+!          if (*tab == 'S')    /* string var */
+!              type = VAR_STRING;
+  #ifdef FEAT_FLOAT
+!          else if (*tab == 'F')
+!              type = VAR_FLOAT;
+  #endif
+  
+           tab = vim_strchr(tab, '\t');
+           if (tab != NULL)
+           {
+               tv.v_type = type;
+!              if (type == VAR_STRING)
+                   tv.vval.v_string = viminfo_readstring(virp,
+                                      (int)(tab - virp->vir_line + 1), TRUE);
+  #ifdef FEAT_FLOAT
+--- 22520,22540 ----
+       if (tab != NULL)
+       {
+           *tab++ = '\0';      /* isolate the variable name */
+!          switch (*tab)
+!          {
+!              case 'S': type = VAR_STRING; break;
+  #ifdef FEAT_FLOAT
+!              case 'F': type = VAR_FLOAT; break;
+  #endif
++              case 'D': type = VAR_DICT; break;
++              case 'L': type = VAR_LIST; break;
++          }
+  
+           tab = vim_strchr(tab, '\t');
+           if (tab != NULL)
+           {
+               tv.v_type = type;
+!              if (type == VAR_STRING || type == VAR_DICT || type == VAR_LIST)
+                   tv.vval.v_string = viminfo_readstring(virp,
+                                      (int)(tab - virp->vir_line + 1), TRUE);
+  #ifdef FEAT_FLOAT
+***************
+*** 22540,22548 ****
+  #endif
+               else
+                   tv.vval.v_number = atol((char *)tab + 1);
+               set_var(virp->vir_line + 1, &tv, FALSE);
+!              if (type == VAR_STRING)
+                   vim_free(tv.vval.v_string);
+           }
+       }
+      }
+--- 22543,22569 ----
+  #endif
+               else
+                   tv.vval.v_number = atol((char *)tab + 1);
++              if (type == VAR_DICT || type == VAR_LIST)
++              {
++                  typval_T *etv = eval_expr(tv.vval.v_string, NULL);
++ 
++                  if (etv == NULL)
++                      /* Failed to parse back the dict or list, use it as a
++                       * string. */
++                      tv.v_type = VAR_STRING;
++                  else
++                  {
++                      vim_free(tv.vval.v_string);
++                      tv = *etv;
++                  }
++              }
++ 
+               set_var(virp->vir_line + 1, &tv, FALSE);
+! 
+!              if (tv.v_type == VAR_STRING)
+                   vim_free(tv.vval.v_string);
++              else if (tv.v_type == VAR_DICT || tv.v_type == VAR_LIST)
++                  clear_tv(&tv);
+           }
+       }
+      }
+***************
+*** 22584,22591 ****
+                   case VAR_STRING: s = "STR"; break;
+                   case VAR_NUMBER: s = "NUM"; break;
+  #ifdef FEAT_FLOAT
+!                  case VAR_FLOAT: s = "FLO"; break;
+  #endif
+                   default: continue;
+               }
+               fprintf(fp, "!%s\t%s\t", this_var->di_key, s);
+--- 22605,22614 ----
+                   case VAR_STRING: s = "STR"; break;
+                   case VAR_NUMBER: s = "NUM"; break;
+  #ifdef FEAT_FLOAT
+!                  case VAR_FLOAT:  s = "FLO"; break;
+  #endif
++                  case VAR_DICT:   s = "DIC"; break;
++                  case VAR_LIST:   s = "LIS"; break;
+                   default: continue;
+               }
+               fprintf(fp, "!%s\t%s\t", this_var->di_key, s);
+*** ../vim-7.3.029/src/testdir/Make_amiga.mak  2010-08-15 21:57:29.000000000 
+0200
+--- src/testdir/Make_amiga.mak 2010-10-20 16:27:19.000000000 +0200
+***************
+*** 27,33 ****
+               test56.out test57.out test58.out test59.out test60.out \
+               test61.out test62.out test63.out test64.out test65.out \
+               test66.out test67.out test68.out test69.out test70.out \
+!              test71.out test72.out test73.out
+  
+  .SUFFIXES: .in .out
+  
+--- 27,33 ----
+               test56.out test57.out test58.out test59.out test60.out \
+               test61.out test62.out test63.out test64.out test65.out \
+               test66.out test67.out test68.out test69.out test70.out \
+!              test71.out test72.out test73.out test74.out
+  
+  .SUFFIXES: .in .out
+  
+***************
+*** 120,122 ****
+--- 120,123 ----
+  test71.out: test71.in
+  test72.out: test72.in
+  test73.out: test73.in
++ test74.out: test74.in
+*** ../vim-7.3.029/src/testdir/Make_dos.mak    2010-08-15 21:57:29.000000000 
+0200
+--- src/testdir/Make_dos.mak   2010-10-20 16:13:35.000000000 +0200
+***************
+*** 27,33 ****
+               test30.out test31.out test32.out test33.out test34.out \
+               test37.out test38.out test39.out test40.out test41.out \
+               test42.out test52.out test65.out test66.out test67.out \
+!              test68.out test69.out test71.out test72.out test73.out
+  
+  SCRIPTS32 =  test50.out test70.out
+  
+--- 27,34 ----
+               test30.out test31.out test32.out test33.out test34.out \
+               test37.out test38.out test39.out test40.out test41.out \
+               test42.out test52.out test65.out test66.out test67.out \
+!              test68.out test69.out test71.out test72.out test73.out \
+!              test74.out
+  
+  SCRIPTS32 =  test50.out test70.out
+  
+*** ../vim-7.3.029/src/testdir/Make_ming.mak   2010-08-15 21:57:29.000000000 
+0200
+--- src/testdir/Make_ming.mak  2010-10-20 16:26:54.000000000 +0200
+***************
+*** 47,53 ****
+               test30.out test31.out test32.out test33.out test34.out \
+               test37.out test38.out test39.out test40.out test41.out \
+               test42.out test52.out test65.out test66.out test67.out \
+!              test68.out test69.out test71.out test72.out test72.out
<<Diff was trimmed, longer than 597 lines>>

---- CVS-web:
    
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/vim/vim.spec?r1=1.528&r2=1.529&f=u

_______________________________________________
pld-cvs-commit mailing list
[email protected]
http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit

Reply via email to