On Friday, February 20, 2015 at 9:35:16 AM UTC-6, FlashBurn wrote: > I'm trying to learn about vim scripting. I tried to define a new function on > the command line with the following: > > :function Meow() | echom "Meow" | endfunction > > For some reason the following error show up: > > E488: Trailing characters > > What am I doing wrong? > > Any help is appreciated.
>From :help :bar you can see that :function is one of the Vim commands that >cannot be separated by a | character to chain commands together. Unfortunately, unlike most Vim commands, this does not work: :execute "function Meow()" | echom "Meow" | endfunction You need to use this workaround for one-liner functions: exec "function Meow()\nechom \"Meow\"\nendfun" You can also just type the function one line at a time; Vim goes into some special mode when you run the command ":function Meow()" by itself, which is ended when you enter the ":endfunction" command. Note that the normal use of functions, is in a script file, where you use multiple lines. -- -- 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.
