@@ -724,22 +724,19 @@ function! s:readable_calculate_file_type() dict abort
724724 elseif f = ~ ' \<app/mailers/.*\.rb'
725725 let r = " mailer"
726726 elseif f = ~ ' \<app/models/'
727- let top = join (s: readfile (full_path,50 )," \n " )
728- let class = matchstr (top ,' \<Acti\w\w\u\w\+\%(::\h\w*\)\+\>' )
729- if class == " ActiveResource::Base"
730- let class = " ares"
731- let r = " model-ares"
732- elseif class == ' ActionMailer::Base'
733- let r = " mailer"
734- elseif class != ' '
735- let class = tolower (s: gsub (class ,' [^A-Z]' ,' ' ))
736- let r = " model-" .class
737- elseif f = ~ ' _mailer\.rb$'
738- let r = " mailer"
727+ let top = " \n " .join (s: readfile (full_path,50 )," \n " )
728+ let class = matchstr (top ," \n " .' class\s\+\S\+\s*<\s*\<\zs\S\+\>' )
729+ let type = tolower (matchstr (class , ' ^Application\zs[A-Z]\w*$\|^Acti\w\w\zs[A-Z]\w*\ze::Base' ))
730+ if type == # ' mailer' || f = ~ ' _mailer\.rb$'
731+ let r = ' mailer'
732+ elseif class == # ' ActiveRecord::Observer'
733+ let r = ' model-observer'
734+ elseif ! empty (type )
735+ let r = ' model-' .type
739736 elseif top = ~ ' \<\%(self\.\%(table_name\|primary_key\)\|has_one\|has_many\|belongs_to\)\>'
740- let r = " model-arb "
737+ let r = ' model-record '
741738 else
742- let r = " model"
739+ let r = ' model'
743740 endif
744741 elseif f = ~ ' \<app/views/.*/_\w\+\%(\.[[:alnum:]_+]\+\)\=\.\w\+$'
745742 let r = " view-partial-" . e
@@ -3289,13 +3286,13 @@ function! s:readable_alternate_candidates(...) dict abort
32893286 return [controller, controller2, mailer, model]
32903287 elseif self .type_name (' controller' )
32913288 return [s: sub (s: sub (f ,' /controllers/' ,' /helpers/' ),' %(_controller)=\.rb$' ,' _helper.rb' )]
3292- elseif self .type_name (' model-arb ' )
3289+ elseif self .type_name (' model-record ' )
32933290 let table_name = matchstr (join (self .getline (1 ,50 )," \n " ),' \n\s*self\.table_name\s*=\s*[:"'' ]\zs\w\+' )
32943291 if table_name == ' '
32953292 let table_name = rails#pluralize (s: gsub (s: sub (fnamemodify (f ,' :r' ),' .{-}<app/models/' ,' ' ),' /' ,' _' ))
32963293 endif
32973294 return [' db/schema.rb#' .table_name]
3298- elseif self .type_name (' model-aro ' )
3295+ elseif self .type_name (' model-observer ' )
32993296 return [s: sub (f ,' _observer\.rb$' ,' .rb' )]
33003297 elseif self .type_name (' db-schema' ) && ! empty (lastmethod)
33013298 return [' app/models/' . rails#singularize (lastmethod) . ' .rb' ]
@@ -3744,7 +3741,7 @@ function! rails#buffer_syntax()
37443741 if buffer .type_name () == ' '
37453742 syn keyword rubyRailsMethod params request response session headers cookies flash
37463743 endif
3747- if buffer .type_name () == # ' model' || buffer .type_name (' model-arb ' )
3744+ if buffer .type_name () == # ' model' || buffer .type_name (' model-record ' )
37483745 syn keyword rubyRailsARMethod default_scope enum named_scope scope serialize store
37493746 syn keyword rubyRailsARAssociationMethod belongs_to has_one has_many has_and_belongs_to_many composed_of accepts_nested_attributes_for
37503747 syn keyword rubyRailsARCallbackMethod before_create before_destroy before_save before_update before_validation before_validation_on_create before_validation_on_update
@@ -3755,7 +3752,7 @@ function! rails#buffer_syntax()
37553752 syn keyword rubyRailsARValidationMethod validate validates validate_on_create validate_on_update validates_acceptance_of validates_associated validates_confirmation_of validates_each validates_exclusion_of validates_format_of validates_inclusion_of validates_length_of validates_numericality_of validates_presence_of validates_size_of validates_uniqueness_of validates_with
37563753 syn keyword rubyRailsMethod logger
37573754 endif
3758- if buffer .type_name (' model-aro ' )
3755+ if buffer .type_name (' model-observer ' )
37593756 syn keyword rubyRailsARMethod observe
37603757 endif
37613758 if buffer .type_name (' mailer' )
@@ -4296,7 +4293,7 @@ function! s:BufAbbreviations()
42964293 Rabbrev rst ( respond_to
42974294 " ))
42984295 endif
4299- if buffer .type_name () == # ' model' || buffer .type_name (' model-arb ' )
4296+ if buffer .type_name () == # ' model' || buffer .type_name (' model-record ' )
43004297 Rabbrev bt ( belongs_to
43014298 Rabbrev ho ( has_one
43024299 Rabbrev hm ( has_many
0 commit comments