Bram Moolenaar | 23 Apr 20:43 2014
Picon
Picon

Patch 7.4.264


Patch 7.4.264 (after 7.4.260)
Problem:    Can't define a function starting with "g:".  Can't assign a
	    funcref to a buffer-local variable.
Solution:   Skip "g:" at the start of a function name.  Don't check for colons
	    when assigning to a variable.
Files:	    src/eval.c, src/testdir/test_eval.in, src/testdir/test_eval.ok

*** ../vim-7.4.263/src/eval.c	2014-04-23 19:44:26.366774008 +0200
--- src/eval.c	2014-04-23 20:40:16.738693276 +0200
***************
*** 21583,21589 ****
       * Get the function name.  There are these situations:
       * func	    normal function name
       *		    "name" == func, "fudi.fd_dict" == NULL
-      * s:func	    script-local function name
       * dict.func    new dictionary entry
       *		    "name" == NULL, "fudi.fd_dict" set,
       *		    "fudi.fd_di" == NULL, "fudi.fd_newkey" == func
--- 21583,21588 ----
***************
*** 21593,21598 ****
--- 21592,21599 ----
       * dict.func    existing dict entry that's not a Funcref
       *		    "name" == NULL, "fudi.fd_dict" set,
       *		    "fudi.fd_di" set, "fudi.fd_newkey" == NULL
+      * s:func	    script-local function name
+      * g:func	    global function name, same as "func"
       */
      p = eap->arg;
(Continue reading)

Bram Moolenaar | 23 Apr 19:44 2014
Picon
Picon

Patch 7.4.263


Patch 7.4.263
Problem:    GCC 4.8 compiler warning for hiding a declaration (Francois Gannaz)
Solution:   Remove the second declaration.
Files:	    src/eval.c

*** ../vim-7.4.262/src/eval.c	2014-04-23 17:43:37.362948683 +0200
--- src/eval.c	2014-04-23 19:34:46.678787977 +0200
***************
*** 18319,18325 ****
  	char_u		*s = NULL;
  	char_u		*start;
  	char_u		*end;
- 	char_u		*p;
  	int		i;

  	res = get_cmd_output(get_tv_string(&argvars[0]), infile,
--- 18319,18324 ----
*** ../vim-7.4.262/src/version.c	2014-04-23 19:06:33.702828771 +0200
--- src/version.c	2014-04-23 19:43:22.366775550 +0200
***************
*** 736,737 ****
--- 736,739 ----
  {   /* Add new patch number below this line */
+ /**/
+     263,
  /**/

--

-- 
How many light bulbs does it take to change a person?
(Continue reading)

Bram Moolenaar | 23 Apr 19:06 2014
Picon
Picon

Patch 7.4.262


Patch 7.4.262
Problem:    Duplicate code in regexec().
Solution:   Add line_lbr flag to regexec_nl().
Files:	    src/regexp.c, src/regexp_nfa.c, src/regexp.h

*** ../vim-7.4.261/src/regexp.c	2014-04-23 18:48:43.546854558 +0200
--- src/regexp.c	2014-04-23 18:59:38.606838773 +0200
***************
*** 3709,3733 ****
  /* TRUE if using multi-line regexp. */
  #define REG_MULTI	(reg_match == NULL)

! static int  bt_regexec __ARGS((regmatch_T *rmp, char_u *line, colnr_T col));

  /*
   * Match a regexp against a string.
   * "rmp->regprog" is a compiled regexp as returned by vim_regcomp().
   * Uses curbuf for line count and 'iskeyword'.
   *
   * Return TRUE if there is a match, FALSE if not.
   */
      static int
! bt_regexec(rmp, line, col)
      regmatch_T	*rmp;
      char_u	*line;	/* string to match against */
      colnr_T	col;	/* column to start looking for match */
  {
      reg_match = rmp;
      reg_mmatch = NULL;
(Continue reading)

Bram Moolenaar | 23 Apr 18:49 2014
Picon
Picon

Patch 7.4.261


Patch 7.4.261
Problem:    When updating the window involves a regexp pattern, an interactive
	    substitute to replace a "\n" with a line break fails. (Ingo
	    Karkat)
Solution:   Set reg_line_lbr in vim_regsub() and vim_regsub_multi().
Files:	    src/regexp.c, src/testdir/test79.in, src/testdir/test79.ok

*** ../vim-7.4.260/src/regexp.c	2014-04-06 21:33:39.671363743 +0200
--- src/regexp.c	2014-04-23 18:40:37.094866280 +0200
***************
*** 7381,7386 ****
--- 7381,7387 ----
      reg_mmatch = NULL;
      reg_maxline = 0;
      reg_buf = curbuf;
+     reg_line_lbr = TRUE;
      return vim_regsub_both(source, dest, copy, magic, backslash);
  }
  #endif
***************
*** 7400,7405 ****
--- 7401,7407 ----
      reg_buf = curbuf;		/* always works on the current buffer! */
      reg_firstlnum = lnum;
      reg_maxline = curbuf->b_ml.ml_line_count - lnum;
+     reg_line_lbr = FALSE;
      return vim_regsub_both(source, dest, copy, magic, backslash);
  }

(Continue reading)

Bram Moolenaar | 23 Apr 17:43 2014
Picon
Picon

Patch 7.4.260


Patch 7.4.260
Problem:    It is possible to define a function with a colon in the name.  It
	    is possible to define a function with a lower case character if a
	    "#" appears after the name.
Solution:   Disallow using a colon other than with "s:".  Ignore "#" after the
	    name.
Files:	    runtime/doc/eval.txt, src/eval.c, src/testdir/test_eval.in,
	    src/testdir/test_eval.ok

*** ../vim-7.4.259/runtime/doc/eval.txt	2014-04-05 19:44:36.891160723 +0200
--- runtime/doc/eval.txt	2014-04-23 17:19:57.914982886 +0200
***************
*** 123,128 ****
--- 123,129 ----
  	:echo Fn()
  <							*E704* *E705* *E707*
  A Funcref variable must start with a capital, "s:", "w:", "t:" or "b:".  You
+ can use "g:" but the following name must still start with a capital.  You
  cannot have both a Funcref variable and a function with the same name.

  A special case is defining a function and directly assigning its Funcref to a
***************
*** 6675,6680 ****
--- 6691,6698 ----
  and autocommands defined in the script.  It is also possible to call the
  function from a mapping defined in the script, but then |<SID>| must be used
  instead of "s:" when the mapping is expanded outside of the script.
+ There are only script-local functions, no buffer-local or window-local
+ functions.
(Continue reading)

Ingo Karkat | 23 Apr 14:06 2014
Picon

Regression: ^ <at> instead of line break when using sub-replace-expr and \n together with :s_c flag

Hello Vim developers,

I've noticed a regression:

    :s/.*/\="foo\nbar"/

This correctly replaces the current line with two lines containing "foo"
and "bar", respectively. Now add the confirm flag, and accept the
replacement:

    :s/.*/\="foo\nbar"/c

This replaces the current line with a single line containing "foo^ <at> bar"
(where ^ <at>  is <Nul>). This is inconsistent and unexpected. Replacing with
\r instead works (with and without the flag), and can be used as a
workaround.

Using the attached scriptlet, I've bisected this to the following patch:

,----[ bad change ]----
| 7.3.225  "\n" in a substitute() inside ":s" not handled correctly
`----

The problem therefore can be seen in this and all following Vim
versions, verified up to the latest 7.4.258. (I've used a HUGE build on
both Windows/x64 and Linux/x64.)

-- regards, ingo
--

-- 
  -- Ingo Karkat --  /^-- /^-- /^-- /^-- /^-- http://ingo-karkat.de/ --
(Continue reading)

Bram Moolenaar | 23 Apr 12:53 2014
Picon
Picon

Patch 7.4.259


Patch 7.4.259
Problem:    Warning for misplaced "const".
Solution:   Move the "const". (Yukihiro Nakadaira)
Files:	    src/os_unix.c

*** ../vim-7.4.258/src/os_unix.c	2014-04-02 23:09:23.003439001 +0200
--- src/os_unix.c	2014-04-23 12:40:45.931386548 +0200
***************
*** 2815,2821 ****
      char_u	*from_file;
      char_u	*to_file;
  {
!     static const char const *smack_copied_attributes[] =
  	{
  	    XATTR_NAME_SMACK,
  	    XATTR_NAME_SMACKEXEC,
--- 2815,2821 ----
      char_u	*from_file;
      char_u	*to_file;
  {
!     static const char * const smack_copied_attributes[] =
  	{
  	    XATTR_NAME_SMACK,
  	    XATTR_NAME_SMACKEXEC,
*** ../vim-7.4.258/src/version.c	2014-04-12 13:11:58.272430356 +0200
--- src/version.c	2014-04-23 12:49:22.587374098 +0200
***************
*** 736,737 ****
--- 736,739 ----
(Continue reading)

vim | 22 Apr 09:43 2014

Issue 221 in vim: Spelling not updated after 'spellfile' change

Status: New
Owner: ----
Labels: Type-Defect Priority-Medium

New issue 221 by walder... <at> gmx.net: Spelling not updated after 'spellfile'  
change
http://code.google.com/p/vim/issues/detail?id=221

When activating 'spell' and afterwards updating 'spellfile', the content of  
the current screen is not updated. After updating the screen manually  
(using Ctrl+L), the newly added and/or removed words are highlighted  
correctly.

I think it would make sense to automatically refresh the screen after the  
spellfile is updated, as it could always result in a change of the known  
words (except the changed spellfile is empty).

I am currently working on Windows 7 64 bit, with the latest official gVim  
7.4 from 10th of August 2013.

-- 
You received this message because this project is configured to send all  
issue notifications to this address.
You may adjust your notification preferences at:
https://code.google.com/hosting/settings

-- 
--

-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
(Continue reading)

vim | 22 Apr 00:40 2014

Issue 220 in vim: missing support for RR types TLSA and SSHFP in bindzone.vim

Status: New
Owner: ----
Labels: Type-Defect Priority-Medium

New issue 220 by jverno... <at> gmail.com: missing support for RR types TLSA and  
SSHFP in bindzone.vim
http://code.google.com/p/vim/issues/detail?id=220

What steps will reproduce the problem?
1. Open a zonefile with TLSA/SSHFP records
2. Notice they are shown in red (as well as the RRData)

What is the expected output? What do you see instead?
Non-red formatting (i.e. no indication of invalid syntax)

Attached patch adds these two to list of rrtypes.

Attachments:
	bindzone_tlsa_sshfp.diff  945 bytes

-- 
You received this message because this project is configured to send all  
issue notifications to this address.
You may adjust your notification preferences at:
https://code.google.com/hosting/settings

-- 
--

-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
(Continue reading)

François Gannaz | 20 Apr 17:55 2014
Picon

gvim and ASCII glyphs

Hello

In a few words, here is a patch that makes gvim work better with ligatures
in fonts, which can be useful even for programmers. Details follow.

I tried to use a Hasklig[^1], a font with ligatures intended for the
Haskell language. It serves the same objective as the Haskell Conceal
script[^2], but with the added benefit that even a mouse copy-paste works
as intended.
[^1]: https://github.com/i-tu/hasklig
[^2]: http://www.vim.org/scripts/script.php?script_id=3200

Unfortunately, gvim doesn't support ligatures on ASCII characters. The
following assertion fails at run-time:

    ascii_glyph_table_init: assertion 'gui.ascii_glyphs->num_glyphs ==
    sizeof(ascii_chars)' failed

and many characters are displayed with the wrong glyphs.
The attached patch limits the function ascii_glyph_table_init() to
spaces and alphanumeric chars. It solves the problem here.

Yet I wonder if the current hack with ASCII characters is really useful.
Is there any performance test to check if a simpler behaviour wouldn't be
suitable, at least for modern desktop installations?
As the code comment mentions spaces, maybe it should be restricted to
blank lines?

Regards
--
(Continue reading)

François Gannaz | 20 Apr 18:01 2014
Picon

gcc compilation warning

Hi

Compiling vim with gcc 4.8 and "-Wall -Wextra" gave one warning. In
src/eval.c, the line 18322 "char_u *p;" hides a similar declaration and,
after a quick glance at the code, I believe it should be removed, or the
other declaration moved into a sub-block.

Regards
--
François

-- 
--

-- 
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 vim_dev+unsubscribe <at> googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Gmane