Sha256: 035d6f01d69e89a99b33902998272ba297609ac8fe2790e6fce62ae786058700
Contents?: true
Size: 1.89 KB
Versions: 1
Compression:
Stored size: 1.89 KB
Contents
# frozen_string_literal: true require 'eac_ruby_base0/core_ext' require 'ehbrs/executables' require 'ehbrs_ruby_utils/videos/container' require 'ehbrs_ruby_utils/videos/convert_job' module Ehbrs module Tools class Runner class Videos class Languages runner_with :help, :filesystem_traverser do desc 'Lê e modifica trilhas com idiomas de um vídeo.' bool_opt '-a', '--audios', 'Seleciona áudios.' bool_opt '-d', '--delete', 'Remove trilhas selecionadas.' bool_opt '-e', '--extract', 'Extrai trilhas selecionadas' arg_opt '-k', '--keep', 'Mantém legendas com o idioma especificado.', repeat: true bool_opt '-s', '--subtitles', 'Seleciona legendas.' end def keep_languages? keep_languages.any? end delegate :delete?, :extract?, to: :parsed def run infov 'Keep', keep_languages all_languages_banner end def keep_languages parsed.keep.map(&:strip).compact_blank end def include_audios? parsed.audios? end def include_subtitles? parsed.subtitles? end def traverser_check_file(file) @files << ::Ehbrs::Tools::Runner::Videos::Languages::FileRunner.new(self, file) end private def all_languages_uncached ::Set.new(files.flat_map(&:languages)).to_a.sort end def all_languages_banner infov 'Languages', all_languages.count all_languages.each do |language| infov ' * ', language.to_label end end def files_uncached @files = [] run_filesystem_traverser @files end require_sub __FILE__ end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
ehbrs-tools-0.39.0 | lib/ehbrs/tools/runner/videos/languages.rb |