class SiSU_QRcode::Source::OutputInfo
Public Class Methods
new(md)
click to toggle source
# File lib/sisu/qrcode.rb, line 115 def initialize(md) @manifest={ txt: [], txt_title: [] } @md,@fns=md,md.fns @env=SiSU_Env::InfoEnv.new(@md.fns,@md.opt) @fnb=@md.fnb @base_url="#{@env.url.root}/#{@fnb}" @f=SiSU_Env::FileOp.new(@md) @base_path=@f.output_path.manifest.dir @@dg ||=SiSU_Env::InfoEnv.new.digest(@md.opt).type @dg=@@dg l=SiSU_Env::StandardiseLanguage.new(@md.opt.lng).language @language=l[:n] @translate=SiSU_Translate::Source.new(@md,@language) @f.make_path(@f.output_path.qrcode.dir) end
Public Instance Methods
check_output(data)
click to toggle source
# File lib/sisu/qrcode.rb, line 716 def check_output(data) begin @f=SiSU_Env::FileOp.new(@md) #.base_filename url=@f.output_path.base.url @en_manifest=if @env.output_dir_structure.by_language_code? "#{url}/en/manifest/#{@md.fnb}.html" elsif @env.output_dir_structure.by_filetype? "#{url}/manifest/#{@md.fnb}.#{@md.opt.lng}.html" else "#{url}/sisu_manifest.#{@md.opt.lng}.html" end @manifest[:txt] <<<<WOK #{@translate.manifest_description_metadata} #{the_text.url_open}#{@en_manifest}#{the_text.url_close} WOK metadata_tests @manifest[:txt_title] <<<<WOK #{the_text.url_open}#{@en_manifest}#{the_text.url_close} WOK source_tests @manifest[:txt] <<<<WOK #{@translate.language_version_list} WOK language_versions output_metadata output_metadata_short rescue SiSU_Errors::Rescued.new($!,$@,@md.opt.selections.str,@md.fns).location do __LINE__.to_s + ':' + __FILE__ end ensure end end
language_versions()
click to toggle source
# File lib/sisu/qrcode.rb, line 449 def language_versions if FileTest.file?(@f.place_file.manifest.dir)==true id,file='Markup (SiSU source)',@md.fns published_languages(id,file) end end
languages(id,file)
click to toggle source
# File lib/sisu/qrcode.rb, line 235 def languages(id,file) flv=published_manifests? flv.each do |l| SiSU_Translate::Source.new(@md,@language,l[:n]).language_list @manifest[:txt] << "#{l[:mu]} #{l[:l]}\n" end end
links(url,lnk,target)
click to toggle source
# File lib/sisu/qrcode.rb, line 256 def links(url,lnk,target) static=if url =~/^\.\// then url.gsub(/^\.(\.)?/,@base_url) elsif url =~/^\.\.\// then url.gsub(/^\.(\.)?/,@env.url.root) else url end @manifest[:txt] << %{#{url} #{lnk} #{the_text.url_open}#{static}#{the_text.url_close}\n} end
md_title_info(id,info)
click to toggle source
# File lib/sisu/qrcode.rb, line 252 def md_title_info(id,info) info=info.to_s.gsub(/#{Mx[:br_line]}/,"\n") @manifest[:txt_title] << %{#{info}\n} end
metadata(id,info)
click to toggle source
# File lib/sisu/qrcode.rb, line 248 def metadata(id,info) info=info.to_s.gsub(/#{Mx[:br_line]}/,"\n") @manifest[:txt] << %{#{id}: #{info}\n} end
metadata_tests()
click to toggle source
# File lib/sisu/qrcode.rb, line 488 def metadata_tests if defined? @md.title.full \ and @md.title.full=~/\S+/ id,info=@translate.full_title,@md.title.full #id,info=@translate.full_title,%{"#{@md.title.full}"} metadata(id,info) md_title_info(id,info) end if defined? @md.creator.author \ and @md.creator.author=~/\S+/ id,info=@translate.author,@md.creator.author metadata(id,info) md_title_info(id,info) end if defined? @md.creator.editor \ and @md.creator.editor=~/\S+/ id,info=@translate.editor,@md.creator.editor metadata(id,info) end if defined? @md.creator.contributor \ and @md.creator.contributor=~/\S+/ id,info=@translate.contributor,@md.creator.contributor metadata(id,info) end if defined? @md.creator.translator \ and @md.creator.translator=~/\S+/ id,info=@translate.translator,%{(#{@md.creator.translator})} metadata(id,info) md_title_info(id,info) end if defined? @md.creator.illustrator \ and @md.creator.illustrator=~/\S+/ id,info=@translate.illustrator,@md.creator.illustrator metadata(id,info) end if defined? @md.publisher \ and @md.publisher=~/\S+/ #dc id,info=@translate.publisher,@md.publisher metadata(id,info) end if defined? @md.creator.prepared_by \ and @md.creator.prepared_by=~/\S+/ id,info=@translate.prepared_by,@md.creator.prepared_by metadata(id,info) end if defined? @md.creator.digitized_by \ and @md.creator.digitized_by=~/\S+/ id,info=@translate.digitized_by,@md.creator.digitized_by metadata(id,info) end if defined? @md.rights.all \ and @md.rights.all=~/\S+/ #dc id,info=@translate.rights,@md.rights.all metadata(id,info) end if defined? @md.date.published if defined? @md.date.published \ and @md.date.published=~/\S+/ #dc id,info=@translate.date,@md.date.published metadata(id,info) md_title_info(id,info) end if defined? @md.date.created \ and @md.date.created=~/\S+/ #dc id,info=@translate.date_created,@md.date.created metadata(id,info) end if defined? @md.date.issued \ and @md.date.issued=~/\S+/ #dc id,info=@translate.date_issued,@md.date.issued metadata(id,info) end if defined? @md.date.available \ and @md.date.available=~/\S+/ #dc id,info=@translate.date_available,@md.date.available metadata(id,info) end if defined? @md.date.modified \ and @md.date.modified=~/\S+/ #dc id,info=@translate.date_modified,@md.date.modified metadata(id,info) end if defined? @md.date.valid \ and @md.date.valid=~/\S+/ #dc id,info=@translate.date_valid,@md.date.valid metadata(id,info) end end if defined? @md.title.language \ and @md.title.language=~/\S+/ id,info=@translate.language,@md.title.language metadata(id,info) end if defined? @md.original.language \ and @md.original.language=~/\S+/ id,info=@translate.language_original,@md.original.language metadata(id,info) end if defined? @md.classify.subject \ and @md.classify.subject=~/\S+/ id,info=@translate.subject,@md.classify.subject metadata(id,info) end if defined? @md.classify.keywords \ and @md.classify.keywords=~/\S+/ id,info=@translate.keywords,@md.classify.keywords metadata(id,info) end if defined? @md.classify.loc \ and @md.classify.loc=~/\S+/ id,info=@translate.cls_loc,@md.classify.loc metadata(id,info) end if defined? @md.classify.dewey \ and @md.classify.dewey=~/\S+/ id,info=@translate.cls_dewey,@md.classify.dewey metadata(id,info) end if defined? @md.notes.description \ and @md.notes.description=~/\S+/ id,info=@translate.description,@md.notes.description metadata(id,info) end if defined? @md.notes.abstract \ and @md.notes.abstract=~/\S+/ id,info=@translate.abstract,@md.notes.abstract metadata(id,info) end if defined? @md.notes.comment \ and @md.notes.comment=~/\S+/ id,info=@translate.comments,@md.notes.comment metadata(id,info) end if defined? @md.notes.coverage \ and @md.notes.coverage=~/\S+/ id,info=@translate.coverage,@md.notes.coverage metadata(id,info) end if defined? @md.notes.relation \ and @md.notes.relation=~/\S+/ id,info=@translate.relation,@md.notes.relation metadata(id,info) end #if defined? @md.notes.source \ #and @md.notes.source=~/\S+/ # id,info=@translate.source,@md.notes.source # metadata(id,info) #end #if defined? @md.notes.history \ #and @md.notes.history=~/\S+/ # id,info=@translate.history,@md.notes.history # metadata(id,info) #end if defined? @md.notes.type \ and @md.notes.type=~/\S+/ #dc id,info=@translate.type,@md.type metadata(id,info) end if defined? @md.notes.format \ and @md.notes.format=~/\S+/ id,info=@transate.format,@md.notes.format metadata(id,info) end if defined? @md.notes.prefix_a \ and @md.notes.prefix_a=~/\S+/ id,info=@translate.prefix_a,@md.notes.prefix_a metadata(id,info) end if defined? @md.notes.prefix_b \ and @md.notes.prefix_b=~/\S+/ id,info=@translate.prefix_b,@md.notes.prefix_b metadata(id,info) end if defined? @md.original.source \ and @md.original.source=~/\S+/ id,info=@translate.source,@md.original.source metadata(id,info) end if defined? @md.identifier.oclc \ and @md.identifier.oclc=~/\S+/ id,info=@translate.cls_oclc,@md.identifier.oclc @manifest[:txt] << %{#{id}:\n} @manifest[:txt] << %{#{info}\n} end if defined? @md.identifier.isbn \ and @md.identifier.isbn=~/\S+/ id,info=@translate.cls_isbn,@md.identifier.isbn metadata(id,info) end if defined? @md.topic_register_array \ and @md.topic_register_array.length > 0 @manifest[:txt] << %{#{@translate.topic_register}:\n} @md.topic_register_array.each do |t| t.each_with_index do |st,i| if st.is_a?(Array) st.each do |v| @manifest[:txt] << %{#{spaces*i}#{v}\n} end else @manifest[:txt] << %{#{spaces*i}#{st}\n} end end end end if @md.fns id,info=@translate.sourcefile,@md.fns metadata(id,info) end if @md.en[:mismatch] > 0 id,info='WARNING document error in endnote markup, number mismatch',"endnotes: #{@md.en[:note]} != endnote reference marks: #{@md.en[:mark]} (difference = #{@md.en[:mismatch]})" metadata(id,info) end if @md.wc_words id,info=@translate.word_count,@md.wc_words metadata(id,info) end if @md.dgst id,info="#{@translate.sourcefile_digest} (#{@dg})",@md.dgst[1] metadata(id,info) end if @md.sc_number id,info=@translate.sc_number,@md.sc_number metadata(id,info) end if @md.sc_date id,info=@translate.sc_date,"#{@md.sc_date} at #{@md.sc_time}" metadata(id,info) end end
output_metadata()
click to toggle source
# File lib/sisu/qrcode.rb, line 133 def output_metadata fn=@f.base_filename.manifest_txt mn='' if @md.opt.act[:maintenance][:set]==:on fn=@f.base_filename.manifest_txt manifest=@f.write_file.manifest_txt end @manifest[:txt].each do |x| x=x.gsub(/\\\\/m,"\n") puts x if @md.opt.act[:verbose_plus][:set]==:on manifest << x if @md.opt.act[:maintenance][:set]==:on mn += x end manifest.close if @md.opt.act[:maintenance][:set]==:on cmd=SiSU_Env::SystemCall.new(mn,@f.place_file.qrcode_md.dir,@md.opt.selections.str) cmd.qrencode end
output_metadata_short()
click to toggle source
# File lib/sisu/qrcode.rb, line 150 def output_metadata_short mn='' @manifest[:txt_title].each do |x| mn += x end cmd=SiSU_Env::SystemCall.new(mn,@f.place_file.qrcode_title.dir,@md.opt.selections.str) cmd.qrencode end
output_tests()
click to toggle source
# File lib/sisu/qrcode.rb, line 263 def output_tests if FileTest.file?(@f.place_file.html_segtoc.dir)==true pth=@f.output_path.html_seg.dir rel=@f.output_path.html_seg.rel_sm url=@f.output_path.html_seg.url id,file='HTML, table of contents (for segmented text)',@f.base_filename.html_segtoc summarize_html_seg(id,file,pth,rel,url) end if FileTest.file?(@f.place_file.html_scroll.dir)==true pth=@f.output_path.html_scroll.dir rel=@f.output_path.html_scroll.rel_sm url=@f.output_path.html_scroll.url id,file='HTML, full length document',@f.base_filename.html_scroll summarize(id,file,pth,rel,url) end if FileTest.file?(@f.place_file.html_book_index.dir)==true pth=@f.output_path.html_seg.dir rel=@f.output_path.html_seg.rel_sm url=@f.output_path.html_seg.url id,file='HTML, (book type) index',@f.base_filename.html_book_index summarize(id,file,pth,rel,url) end if FileTest.file?(@f.place_file.html_concordance.dir)==true pth=@f.output_path.html_seg.dir rel=@f.output_path.html_seg.rel_sm url=@f.output_path.html_seg.url id,file='HTML, concordance file',@f.base_filename.html_concordance summarize(id,file,pth,rel,url) end if FileTest.file?(@f.place_file.epub.dir)==true id,file='EPUB (Electronic Publication, e-book standard)',@f.base_filename.epub pth=@f.output_path.epub.dir rel=@f.output_path.epub.rel_sm url=@f.output_path.epub.url summarize(id,file,pth,rel,url) end if FileTest.file?("#{@f.output_path.pdf.dir}/#{@f.base_filename.pdf_p_letter}")==true pth=@f.output_path.pdf.dir rel=@f.output_path.pdf.rel_sm url=@f.output_path.pdf.url id,file="PDF, U.S. letter size, portrait/vertical","#{@f.base_filename.pdf_p_letter}" summarize(id,file,pth,rel,url) end if FileTest.file?("#{@f.output_path.pdf.dir}/#{@f.base_filename.pdf_l_letter}")==true pth=@f.output_path.pdf.dir rel=@f.output_path.pdf.rel_sm url=@f.output_path.pdf.url id,file="PDF, U.S. letter size, landscape/horizontal","#{@f.base_filename.pdf_l_letter}" summarize(id,file,pth,rel,url) end if FileTest.file?("#{@f.output_path.pdf.dir}/#{@f.base_filename.pdf_p_a4}")==true pth=@f.output_path.pdf.dir rel=@f.output_path.pdf.rel_sm url=@f.output_path.pdf.url id,file="PDF, A4 size, portrait/vertical","#{@f.base_filename.pdf_p_a4}" summarize(id,file,pth,rel,url) end if FileTest.file?("#{@f.output_path.pdf.dir}/#{@f.base_filename.pdf_l_a4}")==true pth=@f.output_path.pdf.dir rel=@f.output_path.pdf.rel_sm url=@f.output_path.pdf.url id,file="PDF, A4 size, landscape/horizontal","#{@f.base_filename.pdf_l_a4}" summarize(id,file,pth,rel,url) end if FileTest.file?("#{@f.output_path.pdf.dir}/#{@f.base_filename.pdf_p_a5}")==true pth=@f.output_path.pdf.dir rel=@f.output_path.pdf.rel_sm url=@f.output_path.pdf.url id,file="PDF, A5 (book) size, portrait/vertical","#{@f.base_filename.pdf_p_a5}" summarize(id,file,pth,rel,url) end if FileTest.file?("#{@f.output_path.pdf.dir}/#{@f.base_filename.pdf_l_a5}")==true pth=@f.output_path.pdf.dir rel=@f.output_path.pdf.rel_sm url=@f.output_path.pdf.url id,file="PDF, A5 (book) size, landscape/horizontal","#{@f.base_filename.pdf_l_a5}" summarize(id,file,pth,rel,url) end if FileTest.file?("#{@f.output_path.pdf.dir}/#{@f.base_filename.pdf_p_b5}")==true pth=@f.output_path.pdf.dir rel=@f.output_path.pdf.rel_sm url=@f.output_path.pdf.url id,file="PDF, B5 (book) size, portrait/vertical","#{@f.base_filename.pdf_p_b5}" summarize(id,file,pth,rel,url) end if FileTest.file?("#{@f.output_path.pdf.dir}/#{@f.base_filename.pdf_l_b5}")==true pth=@f.output_path.pdf.dir rel=@f.output_path.pdf.rel_sm url=@f.output_path.pdf.url id,file="PDF, B5 (book) size, landscape/horizontal","#{@f.base_filename.pdf_l_b5}" summarize(id,file,pth,rel,url) end if FileTest.file?("#{@f.output_path.pdf.dir}/#{@f.base_filename.pdf_p_legal}")==true pth=@f.output_path.pdf.dir rel=@f.output_path.pdf.rel_sm url=@f.output_path.pdf.url id,file="PDF, U.S. legal size, portrait/vertical","#{@f.base_filename.pdf_p_legal}" summarize(id,file,pth,rel,url) end if FileTest.file?("#{@f.output_path.pdf.dir}/#{@f.base_filename.pdf_l_legal}")==true pth=@f.output_path.pdf.dir rel=@f.output_path.pdf.rel_sm url=@f.output_path.pdf.url id,file="PDF, U.S. legal size, landscape/horizontal","#{@f.base_filename.pdf_l_legal}" summarize(id,file,pth,rel,url) end if FileTest.file?(@f.place_file.odt.dir)==true pth=@f.output_path.odt.dir rel=@f.output_path.odt.rel_sm url=@f.output_path.odf.url id,file='ODF:ODT (Open Document Format)',@f.base_filename.odt summarize(id,file,pth,rel,url) end if FileTest.file?(@f.place_file.xhtml.dir)==true pth=@f.output_path.xhtml.dir rel=@f.output_path.xhtml.rel_sm url=@f.output_path.xhtml.url id,file='ODF:ODT (Open Document Format)',@f.base_filename.odt id,file='XHTML',@f.base_filename.xhtml summarize(id,file,pth,rel,url) end if FileTest.file?(@f.place_file.xml_sax.dir)==true pth=@f.output_path.xml_sax.dir rel=@f.output_path.xml_sax.rel_sm url=@f.output_path.xml_sax.url id,file='XML SAX',@f.base_filename.xml_sax summarize(id,file,pth,rel,url) end if FileTest.file?(@f.place_file.xml_dom.dir)==true pth=@f.output_path.xml_dom.dir rel=@f.output_path.xml_dom.rel_sm url=@f.output_path.xml_dom.url id,file='XML DOM',@f.base_filename.xml_dom summarize(id,file,pth,rel,url) end if FileTest.file?(@f.place_file.txt.dir)==true id='Plaintext (UTF-8)' #id=if @md.opt.selections.str =~/a/ then 'Plaintext (Unix (UTF-8) with footnotes)' #elsif @md.opt.selections.str =~/e/ then 'Plaintext (Unix (UTF-8) with endnotes)' #elsif @md.opt.selections.str =~/A/ then 'Plaintext (dos (UTF-8) with footnotes)' #elsif @md.opt.selections.str =~/E/ then 'Plaintext (dos (UTF-8) with endnotes)' #else 'Plaintext (UTF-8)' #end pth=@f.output_path.txt.dir rel=@f.output_path.txt.rel_sm url=@f.output_path.txt.url file=@f.base_filename.txt summarize(id,file,pth,rel,url) end if FileTest.file?("#{@base_path}/#{@md.fns}.tex")==true id,file='LaTeX (portrait)',"#{@md.fns}.tex" pth,rel,url='','','' summarize(id,file,pth,rel,url) end if FileTest.file?("#{@base_path}/#{@md.fns}.tex")==true id,file='LaTeX (landscape)',"#{@md.fns}.landscape.tex" pth,rel,url='','','' summarize(id,file,pth,rel,url) end if FileTest.file?(@f.place_file.manpage.dir)==true pth=@f.output_path.manpage.dir rel=@f.output_path.manpage.rel_sm url=@f.output_path.manpage.url id,file='Manpage',@f.base_filename.manpage summarize(id,file,pth,rel,url) end if FileTest.file?(@f.place_file.texinfo.dir)==true pth=@f.output_path.texinfo.dir rel=@f.output_path.texinfo.rel_sm url=@f.output_path.texinfo.url id,file='Texinfo',@f.base_filename.texinfo summarize(id,file,pth,rel,url) end if FileTest.file?(@f.place_file.hash_digest.dir)==true pth=@f.output_path.hash_digest.dir rel=@f.output_path.hash_digest.rel_sm url=@f.output_path.hash_digest.url id,file="Digest/DCC - Document Content Certificate (#{@dg})",@f.base_filename.hash_digest summarize(id,file,pth,rel,url) end end
published_languages(id,file)
click to toggle source
# File lib/sisu/qrcode.rb, line 242 def published_languages(id,file) flv=published_manifests? flv.each do |l| @manifest[:txt] << "#{l[:l]} #{the_text.url_open}#{l[:mu]}#{the_text.url_close}\n" end end
published_manifests?()
click to toggle source
# File lib/sisu/qrcode.rb, line 200 def published_manifests? @f=SiSU_Env::FileOp.new(@md) #.base_filename @m=[] url=@f.output_path.base.url manifests={} mp,mn,mt=nil,nil,nil ln=SiSU_i18n::Languages.new.language.list Px[:lng_lst].each do |lc| if @env.output_dir_structure.by_language_code? mp="#{@f.output_path.base.dir}/#{lc}/manifest" mn="#{@md.fnb}.html" mt="#{mp}/#{mn}" mu="#{url}/#{lc}/manifest/#{mn}" elsif @env.output_dir_structure.by_filetype? mp="#{@f.output_path.base.dir}/manifest" mn="#{@md.fnb}.#{lc}.html" mt="#{mp}/#{mn}" mu="#{url}/manifest/#{mn}" else mp="#{@f.output_path.base.dir}/#{@md.fnb}" mn="sisu_manifest.#{lc}.html" mt="#{mp}/#{mn}" mu="#{url}/#{mn}" end if FileTest.directory?(mp) \ && FileTest.file?(mt) lng=ln[lc][:t] manifests[lc]={ ln: lng, fn: mn } @m << { mu: mu, l: lng } end end #manifests @m=@m.uniq @m end
published_versions()
click to toggle source
# File lib/sisu/qrcode.rb, line 444 def published_versions id,file='Markup (SiSU source)',@md.fns #languages(id,file) published_languages(id,file) end
source_tests()
click to toggle source
# File lib/sisu/qrcode.rb, line 455 def source_tests if @md.fns =~/\.ssm\.sst$/ #% decide whether to extract and include requested/required documents if FileTest.file?(@f.place_file.src.dir)==true pth=@f.output_path.src.dir rel=@f.output_path.src.rel url=@f.output_path.src.url id,file='Markup Composite File (SiSU source)',@f.base_filename.src summarize_sources(id,file,pth,rel,url) end else if FileTest.file?(@f.place_file.src.dir)==true pth=@f.output_path.src.dir rel=@f.output_path.src.rel url=@f.output_path.src.url id,file='Markup (SiSU source)',@f.base_filename.src summarize_sources(id,file,pth,rel,url) end end if FileTest.file?(@f.place_file.sisupod.dir)==true pth=@f.output_path.sisupod.dir rel=@f.output_path.sisupod.rel url=@f.output_path.sisupod.url id,file='SiSU doc (zip)',@f.base_filename.sisupod summarize_sources(id,file,pth,rel,url) end if FileTest.file?(@f.place_file.pot.dir)==true pth=@f.output_path.pot.dir rel=@f.output_path.pot.rel_sm url=@f.output_path.pot.url id,file='SiSU pot',@f.base_filename.pot summarize_sources(id,file,pth,rel,url) end end
spaces()
click to toggle source
# File lib/sisu/qrcode.rb, line 130 def spaces Ax[:spaces] end
summarize(id,file,pth='',rel='',url='',img='● ')
click to toggle source
# File lib/sisu/qrcode.rb, line 158 def summarize(id,file,pth='',rel='',url='',img='● ') size=(File.size("#{pth}/#{file}")/1024.00).to_s kb=/([0-9]+\.[0-9]{0,1})/m.match(size)[1] @manifest[:txt] <<<<WOK #{id} #{kb} #{the_text.url_open}#{url}/#{file}#{the_text.url_close} WOK end
summarize_html_seg(id,file,pth='',rel='',url='',img='● ')
click to toggle source
# File lib/sisu/qrcode.rb, line 166 def summarize_html_seg(id,file,pth='',rel='',url='',img='● ') size=(File.size("#{pth}/#{file}")/1024.00).to_s kb=/([0-9]+\.[0-9]{0,1})/m.match(size)[1] @manifest[:txt] <<<<WOK #{id} #{kb} #{the_text.url_open}#{url}/#{file}#{the_text.url_close} WOK end
summarize_sources(id,file,pth,rel,url)
click to toggle source
# File lib/sisu/qrcode.rb, line 174 def summarize_sources(id,file,pth,rel,url) sys=SiSU_Env::SystemCall.new dgst=case @dg when :sha512 (sys.sha512("#{pth}/#{file}")) #check when :md5 (sys.md5("#{pth}/#{file}")) else (sys.sha256("#{pth}/#{file}")) end dgst=dgst ? dgst : [ '', 'n/a' ] if (@md.opt.act[:verbose][:set]==:on \ || @md.opt.act[:verbose_plus][:set]==:on \ || @md.opt.act[:maintenance][:set]==:on) SiSU_Screen::Ansi.new( @md.opt.selections.str, "#{dgst[1]} #{file}" ).warn end size=(File.size("#{pth}/#{file}")/1024.00).to_s kb=/([0-9]+\.[0-9]{0,1})/m.match(size)[1] @manifest[:txt] <<<<WOK #{id} #{dgst[1]} #{kb} #{the_text.url_open}#{url}/#{file}#{the_text.url_close} WOK end