On 2006-06-27, Jason Aeschilman <[EMAIL PROTECTED]> wrote: > I wanted to save the current setting for an option so I could change > that option temporarily then set it back to what it was. Specifically, > I'm using the Cfname.vim plugin and it hard sets the statusline option > then hard sets it back. I already improved it to work "on demand" by > creating a toggle to turn it on and off. I wanted to improve it further > by storing the user's current statusline setting when toggling it on > then restoring the statusline setting when toggling it off. I was going > to ask in this list how to do this but I ended up figuring it out on my > own. I'll go ahead and post my solution in case someone finds it > useful. This seems to work but if anyone can see any problems with this > or a better way to do it, please let me know. > > "save user's current statusline option > let g:CF_statusline=escape(getbufvar(1, "&statusline"), " ") > > "set statusline back to previous setting > execute 'set statusline=' . g:CF_statusline
Here's the "standard" way of doing that: "save user's current statusline option let g:CF_statusline=&statusline "set statusline back to previous setting let &statusline=g:CF_statusline Further, if there is no need to access CF_statusline outside the script in which 'statusline' is saved and restored, a script variable is often used instead of a global variable to avoid polluting the global name space. So you might consider using s:CF_statusline instead of g:CF_statusline. Gary -- Gary Johnson | Agilent Technologies [EMAIL PROTECTED] | Wireless Division | Spokane, Washington, USA