class SiSU_Hub_Loops::OptionLoopFiles

Attributes

opt[R]

Public Class Methods

new(opt) click to toggle source
# File lib/sisu/hub_loop_markup_files.rb, line 73
def initialize(opt)
  @opt=opt
  @r=Px[:lng_lst_rgx]
end

Public Instance Methods

loop_files_on_given_option() { || ... } click to toggle source
# File lib/sisu/hub_loop_markup_files.rb, line 77
def loop_files_on_given_option
  @opt.files.each_with_index do |fno,i|
    @opt.fno,@opt.fns=fno,fno
    @opt.f_pth=@opt.f_pths[i]
    if fno !~/\.-sst$/
      @opt.pth=@opt.paths[i]
      @opt.lng=@opt.lngs[i]
    end
    @@pwd=@opt.pth
    @opt.pth=@opt.f_pths[i][:pth]
    @opt.lng=@opt.f_pths[i][:lng]
    Dir.chdir(@opt.f_pth[:pth]) #watch
    SiSU_Env::FilenameLanguageCodeInsert.new(@opt,@opt.lng).language_code_insert # ... track
    @env=SiSU_Env::InfoEnv.new(fno)
    yield
  end
end
loop_files_on_given_option_bundle() { || ... } click to toggle source
# File lib/sisu/hub_loop_markup_files.rb, line 94
def loop_files_on_given_option_bundle
  @files_bundle={}
  @opt.files.each_with_index do |fno,i|
    fn_base_bundle=fno.gsub(/(?:~(?:#{@r}))?\.ss[tm]$/,'')
    unless @files_bundle[fn_base_bundle]
      @files_bundle[fn_base_bundle]={ status: :todo }
    end
  end
  @opt.files.each_with_index do |fno,i|
    fn_base_bundle=fno.gsub(/(?:~(?:#{@r}))?\.ss[tm]$/,'')
    unless @files_bundle[fn_base_bundle][:status] == :done
      @files_bundle[fn_base_bundle][:status] = :done
      @opt.fns=fno
      @opt.fno=fno
      @opt.f_pth=@opt.f_pths[i]
      if fno !~/\.-sst$/
        @opt.pth=@opt.paths[i]
        @opt.lng=@opt.lngs[i]
      end
      @@pwd=@opt.pth
      @opt.pth=@opt.f_pths[i][:pth]
      @opt.lng=@opt.f_pths[i][:lng]
      Dir.chdir(@opt.f_pth[:pth]) #watch
      @env=SiSU_Env::InfoEnv.new(fno)
      yield
    else next
    end
  end
end
manifest_on_files_translated() { || ... } click to toggle source
# File lib/sisu/hub_loop_markup_files.rb, line 123
def manifest_on_files_translated
  number_of_files={}
  @opt.files.each_with_index do |fns,i|
    fn=fns.gsub(/(?:~(?:#{@r}))?\.ss[tm]$/,'')
    (number_of_files[fn].is_a?(Array)) \
    ? (number_of_files[fn] << i)
    : (number_of_files.store(fn,[i]))
  end
  files_translated_idx=[]
  number_of_files.each do |x|
    if x[1].length > 1
      files_translated_idx << x[1]
    end
  end
  #files_translated_idx=number_of_files.select do |x|
  #  x[1] if x[1].length > 1
  #end
  if files_translated_idx.flatten.length > 1
    SiSU_Screen::Ansi.new(
      @opt.act[:color_state][:set],
      'Manifest re-run on (currently generated) translated files',
      ''
    ).grey_title_hi unless @opt.act[:quiet][:set] ==:on
    files_translated_idx.flatten.each do |i|
      @opt.fns=@opt.files[i]
      @opt.f_pth=@opt.f_pths[i]
      if @opt.fns =~/\.-sst$/
        @opt.pth=Dir.pwd
        @opt.lng='en'
      elsif @opt.fno =~/\.txz$/
        @opt.pth=@opt.f_pths[i][:pth]
        @opt.lng=@opt.f_pths[i][:lng]
      else
        @opt.pth=@opt.f_pths[i][:pth]
        @opt.lng=@opt.f_pths[i][:lng]
      end
      @@pwd=@opt.pth
      Dir.chdir(@opt.pth) #watch
      @env=SiSU_Env::InfoEnv.new(@opt.fns)
      yield
    end
  end
end