inprogress
[jalview.git] / forester / ruby / evoruby / lib / evo / tool / phylogenies_decorator.rb
index 4e26acb..6006729 100644 (file)
@@ -24,7 +24,7 @@ module Evoruby
 
     #DECORATOR_OPTIONS_SEQ_NAMES = '-r=1 -mdn'
     #DECORATOR_OPTIONS_SEQ_NAMES = '-p -t -sn'
-    DECORATOR_OPTIONS_SEQ_NAMES = '-p -t -c -tc'
+    DECORATOR_OPTIONS_SEQ_NAMES = '-p -t -c -tc -mp -or'
     # -mdn is a hidden expert option to rename e.g. "6_ORYLA3" to "6_[3]_ORYLA"
     #DECORATOR_OPTIONS_SEQ_NAMES = '-sn -r=1'
     #DECORATOR_OPTIONS_DOMAINS = '-r=1'
@@ -271,6 +271,7 @@ module Evoruby
 
     def get_file( files_in_dir, phylogeny_id, suffix_pattern )
       matching_files = Array.new
+      matching_suffix_files = Array.new
       files_in_dir.each { | file |
 
         if ( !File.directory?( file ) &&
@@ -279,11 +280,22 @@ module Evoruby
              file =~ /^#{phylogeny_id}.*#{suffix_pattern}$/ )
           matching_files << file
         end
+        if ( !File.directory?( file ) &&
+             file !~ /^\./ &&
+             file !~ /^00/ &&
+             file =~ /#{suffix_pattern}$/ )
+          matching_suffix_files << file
+        end
       }
-      if matching_files.length < 1
+      if matching_files.length < 1 && matching_suffix_files.length == 1
+        return matching_suffix_files[ 0 ]
+      end
+
+      if matching_files.length < 1 && matching_suffix_files.length < 1
         Util.fatal_error( PRG_NAME, 'no file matching [' + phylogeny_id +
            '_] [' + suffix_pattern + '] present in current directory' )
-      elsif matching_files.length > 1
+      end
+      if matching_files.length > 1
         Util.fatal_error( PRG_NAME, 'more than one file matching [' + phylogeny_id +
            '_] [' + suffix_pattern + '] present in current directory' )
       end
@@ -296,7 +308,7 @@ module Evoruby
       puts( "  " + PRG_NAME + ".rb [options] <suffix of intrees to be decorated> <suffix for decorated outtrees> " )
       puts()
       puts( "  options: -" + IDS_ONLY_OPTION + ": decorate with sequence/species names only" )
-      puts( "           -" + DOMAINS_ONLY_OPTION + ": decorate with domain structures" )
+      puts( "           -" + DOMAINS_ONLY_OPTION + ": decorate with domain structures only" )
       puts()
     end
   end # class PhylogenyiesDecorator