Indent problems with symbols containing keywords - solved?

Tim Pope vim-ruby-devel at tpope.info
Mon Mar 23 09:34:50 EDT 2009


On Tue, Mar 17, 2009 at 12:51:25AM +0100, Cezary Bagiński wrote:
> 
> Hi,
> 
> The following gives the wrong indent (vim 7.1.314, Ubuntu):
> 
> ---------(after indent its the same)-------
> class AAA
>   def aaa
>     a = [ :title,
>       :from,
>       :until,
>     ]
>       end
>   end
> -----------------
> 
> It seems the 'until' is matched, even when it's a symbol. I dug through 
> the 'syntax/ruby.vim' I already had, since the rubyforge git access is 
> broken (?).
> 
> The following is the best I could think of:
> 
> add the \@<! pattern to ignore symbols, replacing all instances of 
> keyword matchers, like:
> 
> 	\\<\\(while\\|until\\|for\\)\\>")'
> 
> with:
> 
> 	\\<\\(while\\|[:]\@<!until\\|for\\)\\>")'
> 
> I did it for just the until keyword and it seems to work fine.

This appears to already be in effect in the latest version of Vim-Ruby.

Cheers,
Tim


More information about the vim-ruby-devel mailing list