On 23-Apr-2014 23:11 +0200, Matteo Cavalleri wrote:
>>> 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.
>
> I'm still having problems:
>
>
> line 17:
> E121: Undefined variable: g:vundle_last_status
> E15: Invalid expression: 'updated' == g:vundle_last_status && empty(msg)
> Error detected while processing function
> vundle#installer#new..<SNR>106_process.
> .vundle#installer#run..vundle#installer#install..<SNR>106_sync:
> line 6:
> E117: Unknown function: g:shellesc_cd
> E15: Invalid expression: g:shellesc_cd(cmd)
> Error detected while processing function
> vundle#installer#new..<SNR>106_process:
>
> line 13:
> E121: Undefined variable: g:vundle_last_status
> E15: Invalid expression: 'error' == g:vundle_last_status
> line 17:
> E121: Undefined variable: g:vundle_last_status
> E15: Invalid expression: 'updated' == g:vundle_last_status && empty(msg)
> Error detected while processing function
> vundle#installer#new..<SNR>106_process.
> .vundle#installer#run..vundle#installer#install..<SNR>106_sync:
> line 6:
> E117: Unknown function: g:shellesc_cd
> E15: Invalid expression: g:shellesc_cd(cmd)
> Error detected while processing function
> vundle#installer#new..<SNR>106_process:
>
> line 13:
> E121: Undefined variable: g:vundle_last_status
> E15: Invalid expression: 'error' == g:vundle_last_status
>
>
> the following looks more like it's the script author fault, but I'm not sure
> if all the errors are due to the illegal function name or not, so I'm pasting
> them all:
>
>
> Error detected while processing
> /Users/matteo/.vim/bundle/vdebug/plugin/vdebug.vim:
> line 151:
> E128: Function name must start with a capital or "s:":
> vdebug:get_visual_selection()
> line 155:
> E684: list index out of range: -1
> E15: Invalid expression: lines[-1][: col2 - 1]
> line 156:
> E684: list index out of range: 0
> E15: Invalid expression: lines[0][col1 - 1:]
> line 157:
> E133: :return not inside a function
> line 158:
> E193: :endfunction not inside a function
> line 160:
> E128: Function name must start with a capital or "s:": vdebug:edit(filename)
> line 162:
> E121: Undefined variable: a:filename
> E116: Invalid arguments for function fnameescape(a:filename)
> E15: Invalid expression: fnameescape(a:filename)
> Press ENTER or type command to continue
Me, too. The following used to work:
fun! Foo()
endfun
let g:Foo = function('Foo')
After 7.4.264, I get:
" E705: Variable name conflicts with existing function: g:Foo
In general, I do welcome the introduced restrictions, though, I've found
a place where I attempted to define a buffer-local function (fun!
b:Foo()); this is now correctly flagged with E128.
-- regards, ingo
--
--
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.