diff options
| -rw-r--r-- | data/doc/sisu/CHANGELOG_v3 | 4 | ||||
| -rw-r--r-- | lib/sisu/v3/manifest.rb | 28 | ||||
| -rw-r--r-- | lib/sisu/v3/sysenv.rb | 33 | ||||
| -rw-r--r-- | lib/sisu/v3/texinfo.rb | 27 | ||||
| -rw-r--r-- | lib/sisu/v3/urls.rb | 2 | 
5 files changed, 67 insertions, 27 deletions
| diff --git a/data/doc/sisu/CHANGELOG_v3 b/data/doc/sisu/CHANGELOG_v3 index 50d75c98..b96180b6 100644 --- a/data/doc/sisu/CHANGELOG_v3 +++ b/data/doc/sisu/CHANGELOG_v3 @@ -23,6 +23,10 @@ http://www.jus.uio.no/sisu/pkg/src/sisu_3.0.19.orig.tar.xz    * hub, processing options, remove cruft +  * texinfo, fix output + +  * remote, include manpage & info file (when selected) +    * param, matching of date, years 1400 - 21\d\d  %% 3.0.18.orig.tar.xz (2011-01-13:37/2) diff --git a/lib/sisu/v3/manifest.rb b/lib/sisu/v3/manifest.rb index adc048ef..cb25781f 100644 --- a/lib/sisu/v3/manifest.rb +++ b/lib/sisu/v3/manifest.rb @@ -360,6 +360,20 @@ module SiSU_Manifest            id,file='XML DOM',@f.base_filename.xml_dom            summarize(id,file,pth,rel,url)          end +        if FileTest.file?(@f.place_file.info.dir)==true +          pth=@f.output_path.texinfo.dir +          rel=@f.output_path.texinfo.rel_sm +          url=@f.output_path.texinfo.url +          id,file='Info file',@f.base_filename.info +          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.txt.dir)==true          if    @md.opt.cmd =~/a/; id='Plaintext (Unix (UTF-8) with footnotes)'          elsif @md.opt.cmd =~/e/; id='Plaintext (Unix (UTF-8) with endnotes)' @@ -383,20 +397,6 @@ module SiSU_Manifest            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 diff --git a/lib/sisu/v3/sysenv.rb b/lib/sisu/v3/sysenv.rb index 79ae61af..ad831489 100644 --- a/lib/sisu/v3/sysenv.rb +++ b/lib/sisu/v3/sysenv.rb @@ -2998,6 +2998,14 @@ WOK              && FileTest.file?(@f.place_file.txt.dir)                inp << @f.place_file.txt.rel              end +            if @opt.cmd =~/i/ \ +            && FileTest.file?(@f.place_file.manpage.dir) +              inp << @f.place_file.manpage.rel +            end +            if @opt.cmd =~/I/ \ +            && FileTest.file?(@f.place_file.info.dir) +              inp << @f.place_file.info.rel +            end              if @opt.cmd =~/N/ \              && FileTest.file?(@f.place_file.hash_digest.dir)                inp << @f.place_file.hash_digest.rel @@ -3375,6 +3383,12 @@ WOK          fn=base_filename.texinfo          file=make_file(path,fn)        end +      def info +        path=output_path.texinfo.dir +        make_path(path) +        fn=base_filename.info +        file=make_file(path,fn) +      end        def hash_digest          path=output_path.hash_digest.dir          make_path(path) @@ -3594,6 +3608,15 @@ WOK          end          self        end +      def info +        def dir +          output_path.texinfo.dir + '/' + base_filename.info +        end +        def rel +          output_path.texinfo.rel + '/' + base_filename.info +        end +        self +      end        def manifest          def dir            output_path.manifest.dir + '/' + base_filename.manifest @@ -3758,7 +3781,7 @@ WOK            @md.fnb + '.' + @md.opt.f_pth[:lng_is] + '.' + ft          end        end -      def texinfo +      def info          ft='info'          if @env.output_dir_structure.by_language_code?            @md.fnb + '.' + ft @@ -3766,6 +3789,14 @@ WOK            @md.fnb + '.' + @md.opt.f_pth[:lng_is] + '.' + ft          end        end +      def texinfo +        ft='texinfo' +        if @env.output_dir_structure.by_language_code? +          @md.fnb + '.' + ft +        else +          @md.fnb + '.' + @md.opt.f_pth[:lng_is] + '.' + ft +        end +      end        def hash_digest          ft='.txt'          if @env.output_dir_structure.by_language_code? diff --git a/lib/sisu/v3/texinfo.rb b/lib/sisu/v3/texinfo.rb index ab1b7c98..f0331513 100644 --- a/lib/sisu/v3/texinfo.rb +++ b/lib/sisu/v3/texinfo.rb @@ -98,7 +98,7 @@ module SiSU_TexInfo      def song        begin          tool=(@opt.cmd =~/[MVv]/) \ -        ?  "#{@env.program.texinfo} #{@md.file.output_path.texinfo.dir}/#{@md.file.base_filename.texinfo}" +        ?  "#{@env.program.texinfo} #{@md.file.output_path.texinfo.dir}/#{@md.file.base_filename.info}"          : "[#{@opt.f_pth[:lng_is]}] #{@opt.fns}"          tell=@opt.cmd=~/[MVvz]/ \          && @opt.cmd !~/q/ \ @@ -133,6 +133,7 @@ module SiSU_TexInfo        @md,@data=md,data        @env=SiSU_Env::Info_env.new(@md.fns)        @vz=SiSU_Env::Get_init.instance.skin +      @f=SiSU_Env::SiSU_file.new(@md)      end      def songsheet        begin @@ -142,6 +143,7 @@ module SiSU_TexInfo          @data=tail          output          makeinfo #KEEP reinstate when fixed #% +        place_info        rescue; STDERR.puts SiSU_Screen::Ansi.new(@md.opt.cmd,$!,$@).rescue        ensure        end @@ -363,19 +365,15 @@ module SiSU_TexInfo      def output        data=@data        data.compact! -      filename=%{#{@env.processing_path.texi}/#{@md.fnb}.texinfo} -      filename_texinfo=File.new(filename,'w+') -      puts filename if @md.opt.cmd =~/M/ -      data.each {|s| (filename_texinfo.puts s,"\n") if s} -      filename_texinfo.close -      file_info_src=%{#{@env.processing_path.texi}/#{@md.fnb}.info} -      file_info="#{@md.file.output_path.texinfo.dir}/#{@md.file.base_filename.texinfo}" -      SiSU_Env::SiSU_file.new(@md).mkdir -      system("cp #{file_info_src} #{file_info}") +      filename_texinfo=%{#{@env.processing_path.texi}/#{@md.fnb}.texinfo} +      file_texinfo=File.new(filename_texinfo,'w+') +      puts filename_texinfo if @md.opt.cmd =~/M/ +      data.each {|s| (file_texinfo.puts s,"\n") if s} +      file_texinfo.close      end      def makeinfo        if @md.fns =~/\.(?:-|ssm\.)?sst$/ -        m=/(.+?)\.([_-]?sst)$/.match(@md.fns) +        m=/(.+?)\.((?:-|ssm\.)?sst)$/.match(@md.fns)          fnb,sfx=m[1],m[2]          pwd=Dir.pwd          case sfx @@ -387,6 +385,13 @@ module SiSU_TexInfo          end          Dir.chdir(pwd)        end +      def place_info +        unless FileTest.directory?(@f.output_path.texinfo.dir) +          mkdir_p(@f.output_path.texinfo.dir) +        end +        info_src=%{#{@env.processing_path.texi}/#{@md.fnb}.info} +        system("cp #{info_src} #{@f.place_file.info.dir}") +      end      end    end  end diff --git a/lib/sisu/v3/urls.rb b/lib/sisu/v3/urls.rb index a6612175..d0193da4 100644 --- a/lib/sisu/v3/urls.rb +++ b/lib/sisu/v3/urls.rb @@ -181,7 +181,7 @@ module SiSU_urls          SiSU_Screen::Ansi.new(@opt.cmd,"[#{@opt.f_pth[:lng_is]}] -#{x}","#{@prog.manpage_viewer} #{@md.file.output_path.manpage.dir}/#{@md.file.base_filename.manpage}").result        end        def pinfo(x,y) -        SiSU_Screen::Ansi.new(@opt.cmd,"[#{@opt.f_pth[:lng_is]}] -#{x}","pinfo -f #{@md.file.output_path.texinfo.dir}/#{@md.file.base_filename.texinfo}").result +        SiSU_Screen::Ansi.new(@opt.cmd,"[#{@opt.f_pth[:lng_is]}] -#{x}","pinfo -f #{@md.file.output_path.texinfo.dir}/#{@md.file.base_filename.info}").result        end        def po4a          def po(x,y) | 
