On Saturday, June 14, 2014 5:51:05 AM UTC+1, LCD 47 wrote:
> On 13 June 2014, BaRud <[email protected]> wrote:
> 
> > Hi,
> 
> > 
> 
> > I am trying to write a vimscript that uses python, but cant interface
> 
> > it properly.
> 
> >
> 
> > A minimal example is:
> 
> > 
> 
> > function! Usrnm(nm)
> 
> > python << endpython
> 
> > import vim
> 
> > import os 
> 
> > nm=vim.eval(os.getlogin())
> 
> > endpython
> 
> > echo nm
> 
> > endfunction 
> 
> > 
> 
> > call IMAP ('`foo', "@nm \<CR> Usrnm(nm)", "fortran")
> 
> > 
> 
> > Can anyone please help me achiving this? i.e. getting the login name
> 
> > to be used in the IMAP call?
> 
> 
> 
>     You got it backwards, vim.eval() is for passing Vim values to
> 
> Python, not the other way around.  You probably want vim.command()
> 
> instead:
> 
> 
> 
> 
> 
> function! Usrnm()                                                             
>                                                   
> 
>     if has('python')
> 
>         python <<EOT
> 
> import vim
> 
> import getpass
> 
> vim.command("let nm = '%s'" % getpass.getuser())
> 
> EOT
> 
>         echo nm
> 
>     else
> 
>         echo 'no python, no cry'
> 
>     endif
> 
> endfunction
> 
> 
> 
> 
> 
>     For returning dictionaries, lists, or funcrefs, there is also
> 
> vim.bindeval(), thanks to ZyX. :) See the manual for details.
> 
> 
> 
>     /lcd

Thanks, but how can I call that value in the IMAP call? please.

-- 
-- 
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/d/optout.

Reply via email to