packages: vim/vim.spec, vim/7.3.028 (NEW), vim/7.3.029 (NEW), vim/7.3.030 (...
glen
glen at pld-linux.org
Mon Oct 25 14:42:38 CEST 2010
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: vim-dev at vim.org
+Subject: Patch 7.3.028
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+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 -- Bram at Moolenaar.net -- 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: vim-dev at vim.org
+Subject: Patch 7.3.029
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+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 -- Bram at Moolenaar.net -- 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: vim-dev at vim.org
+Subject: Patch 7.3.030
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+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
More information about the pld-cvs-commit
mailing list