On Feb 27, 2014 9:55 PM, "Benjamin Klein" <[email protected]> wrote:
>
> On Feb 27, 2014, at 11:42 AM, Charles Campbell <
[email protected]> wrote:
>
> > * Could you give us the new exe line you're using to set the statusline?
>
> Right now it's
>
> execute "setlocal statusline=" . status
>
> where `status` is the string returned by the function.
>
> > * What does   :echo &l:stl  show ?
>
> The function which is supposed to get the status line begins the string
with the a:1, and then appends %= and the rest of the line to that. &l:stl,
after I get the error, is the a:1 (message) passed to the function.
Everything from that =% onward is being left out.
>
> > * You're passing a:1 to exe; perhaps it should be escaped, too:  ...
fnameescape(a:1) ...
>
> A good idea -- thanks. (It hasn't seemed to affect this situation though,
sadly.)

Don't use :execute and incorrect escaping. The following should work:

    let
&l:statusline='%!FunctionFromWhichIAmTryingToGetAStatusline('.string(a:1).')'

Function fnameescape() has other purpose and it must not be used to escape
strings for statusline.

I am not sure how this would deal with some special characters though:
those below 0x20 and %. They should not cause trouble AFAIK, but I may be
wrong.

>
> Ben
>
> --
> b
>
> Sent from my iPhone
>
> --
> --
> You received this message from the "vim_use" 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_use" 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.

-- 
-- 
You received this message from the "vim_use" 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_use" 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.

Reply via email to