Class: EhbrsRubyUtils::Videos::Series::Rename::File

Inherits:
LineResult
  • Object
show all
Defined in:
lib/ehbrs_ruby_utils/videos/series/rename/file.rb,
lib/ehbrs_ruby_utils/videos/series/rename/file/options.rb,
lib/ehbrs_ruby_utils/videos/series/rename/file/renamer.rb,
lib/ehbrs_ruby_utils/videos/series/rename/file/basename_parser.rb

Defined Under Namespace

Modules: BasenameParser Classes: Options, Renamer

Instance Method Summary collapse

Methods inherited from LineResult

#show

Instance Method Details

#current_nameString

Returns:

  • (String)


18
19
20
# File 'lib/ehbrs_ruby_utils/videos/series/rename/file.rb', line 18

def current_name
  file.basename.to_path
end

#dirnamePathname

Returns:

  • (Pathname)


39
40
41
42
43
44
45
46
# File 'lib/ehbrs_ruby_utils/videos/series/rename/file.rb', line 39

def dirname
  d = file
  until d.root?
    d = d.dirname
    return d unless d.basename.to_path.starts_with?('_')
  end
  raise "series_dirname not found for #{file.to_path}"
end

#episodeObject



32
33
34
35
36
# File 'lib/ehbrs_ruby_utils/videos/series/rename/file.rb', line 32

def episode
  return '??' if parse.blank?

  parse.fetch(:e)
end

#line_outObject



48
49
50
51
52
53
54
# File 'lib/ehbrs_ruby_utils/videos/series/rename/file.rb', line 48

def line_out
  "#{episode.green}: " + if new_name == current_name
                           current_name.light_black
                         else
                           "#{new_name} <= #{current_name}"
                         end
end

#new_nameObject



56
57
58
59
60
# File 'lib/ehbrs_ruby_utils/videos/series/rename/file.rb', line 56

def new_name
  return "#{kernel}-s#{parse[:s]}e#{new_name_episodes}#{extension}" if parse.present?

  current_name
end

#renameObject



22
23
24
# File 'lib/ehbrs_ruby_utils/videos/series/rename/file.rb', line 22

def rename
  EhbrsRubyUtils::Videos::Series::Rename::File::Renamer.new(self).perform
end

#seasonObject



26
27
28
29
30
# File 'lib/ehbrs_ruby_utils/videos/series/rename/file.rb', line 26

def season
  return '??' if parse.blank?

  parse.fetch(:s)
end