bio 1.0.0 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (340) hide show
  1. data/bin/bioruby +14 -122
  2. data/bin/br_biofetch.rb +2 -2
  3. data/bin/br_bioflat.rb +2 -2
  4. data/bin/br_biogetseq.rb +2 -2
  5. data/bin/br_pmfetch.rb +3 -3
  6. data/doc/Changes-0.7.rd +77 -0
  7. data/doc/KEGG_API.rd +523 -232
  8. data/doc/KEGG_API.rd.ja +529 -207
  9. data/doc/Tutorial.rd +48 -11
  10. data/lib/bio.rb +59 -6
  11. data/lib/bio/alignment.rb +713 -103
  12. data/lib/bio/appl/bl2seq/report.rb +2 -18
  13. data/lib/bio/appl/blast.rb +108 -91
  14. data/lib/bio/appl/blast/format0.rb +33 -18
  15. data/lib/bio/appl/blast/format8.rb +6 -20
  16. data/lib/bio/appl/blast/report.rb +293 -429
  17. data/lib/bio/appl/blast/rexml.rb +8 -22
  18. data/lib/bio/appl/blast/wublast.rb +21 -12
  19. data/lib/bio/appl/blast/xmlparser.rb +180 -183
  20. data/lib/bio/appl/blat/report.rb +127 -30
  21. data/lib/bio/appl/clustalw.rb +87 -59
  22. data/lib/bio/appl/clustalw/report.rb +20 -22
  23. data/lib/bio/appl/emboss.rb +113 -20
  24. data/lib/bio/appl/fasta.rb +173 -198
  25. data/lib/bio/appl/fasta/format10.rb +244 -347
  26. data/lib/bio/appl/gcg/msf.rb +212 -0
  27. data/lib/bio/appl/gcg/seq.rb +195 -0
  28. data/lib/bio/appl/genscan/report.rb +5 -23
  29. data/lib/bio/appl/hmmer.rb +8 -45
  30. data/lib/bio/appl/hmmer/report.rb +2 -20
  31. data/lib/bio/appl/iprscan/report.rb +374 -0
  32. data/lib/bio/appl/mafft.rb +87 -50
  33. data/lib/bio/appl/mafft/report.rb +151 -44
  34. data/lib/bio/appl/muscle.rb +52 -0
  35. data/lib/bio/appl/phylip/alignment.rb +129 -0
  36. data/lib/bio/appl/phylip/distance_matrix.rb +96 -0
  37. data/lib/bio/appl/probcons.rb +41 -0
  38. data/lib/bio/appl/psort.rb +89 -96
  39. data/lib/bio/appl/psort/report.rb +6 -22
  40. data/lib/bio/appl/pts1.rb +263 -0
  41. data/lib/bio/appl/sim4.rb +26 -36
  42. data/lib/bio/appl/sim4/report.rb +2 -18
  43. data/lib/bio/appl/sosui/report.rb +5 -20
  44. data/lib/bio/appl/spidey/report.rb +2 -2
  45. data/lib/bio/appl/targetp/report.rb +4 -20
  46. data/lib/bio/appl/tcoffee.rb +55 -0
  47. data/lib/bio/appl/tmhmm/report.rb +4 -20
  48. data/lib/bio/command.rb +235 -64
  49. data/lib/bio/data/aa.rb +21 -26
  50. data/lib/bio/data/codontable.rb +2 -20
  51. data/lib/bio/data/na.rb +19 -4
  52. data/lib/bio/db.rb +27 -12
  53. data/lib/bio/db/aaindex.rb +2 -20
  54. data/lib/bio/db/embl/common.rb +4 -21
  55. data/lib/bio/db/embl/embl.rb +33 -85
  56. data/lib/bio/db/embl/sptr.rb +612 -302
  57. data/lib/bio/db/embl/swissprot.rb +10 -29
  58. data/lib/bio/db/embl/trembl.rb +10 -29
  59. data/lib/bio/db/embl/uniprot.rb +10 -29
  60. data/lib/bio/db/fantom.rb +15 -20
  61. data/lib/bio/db/fasta.rb +3 -3
  62. data/lib/bio/db/genbank/common.rb +37 -46
  63. data/lib/bio/db/genbank/ddbj.rb +6 -18
  64. data/lib/bio/db/genbank/genbank.rb +47 -186
  65. data/lib/bio/db/genbank/genpept.rb +4 -17
  66. data/lib/bio/db/genbank/refseq.rb +4 -17
  67. data/lib/bio/db/gff.rb +103 -35
  68. data/lib/bio/db/go.rb +4 -20
  69. data/lib/bio/db/kegg/brite.rb +26 -36
  70. data/lib/bio/db/kegg/compound.rb +81 -85
  71. data/lib/bio/db/kegg/drug.rb +98 -0
  72. data/lib/bio/db/kegg/enzyme.rb +133 -110
  73. data/lib/bio/db/kegg/expression.rb +2 -20
  74. data/lib/bio/db/kegg/genes.rb +208 -238
  75. data/lib/bio/db/kegg/genome.rb +164 -285
  76. data/lib/bio/db/kegg/glycan.rb +114 -157
  77. data/lib/bio/db/kegg/keggtab.rb +242 -303
  78. data/lib/bio/db/kegg/kgml.rb +117 -160
  79. data/lib/bio/db/kegg/orthology.rb +112 -0
  80. data/lib/bio/db/kegg/reaction.rb +54 -69
  81. data/lib/bio/db/kegg/taxonomy.rb +331 -0
  82. data/lib/bio/db/lasergene.rb +209 -0
  83. data/lib/bio/db/litdb.rb +3 -27
  84. data/lib/bio/db/medline.rb +228 -249
  85. data/lib/bio/db/nbrf.rb +3 -3
  86. data/lib/bio/db/newick.rb +510 -0
  87. data/lib/bio/db/nexus.rb +1854 -0
  88. data/lib/bio/db/pdb.rb +5 -17
  89. data/lib/bio/db/pdb/atom.rb +2 -18
  90. data/lib/bio/db/pdb/chain.rb +2 -18
  91. data/lib/bio/db/pdb/chemicalcomponent.rb +2 -18
  92. data/lib/bio/db/pdb/model.rb +2 -18
  93. data/lib/bio/db/pdb/pdb.rb +73 -34
  94. data/lib/bio/db/pdb/residue.rb +4 -20
  95. data/lib/bio/db/pdb/utils.rb +2 -18
  96. data/lib/bio/db/prosite.rb +403 -422
  97. data/lib/bio/db/rebase.rb +84 -40
  98. data/lib/bio/db/soft.rb +404 -0
  99. data/lib/bio/db/transfac.rb +5 -17
  100. data/lib/bio/feature.rb +106 -52
  101. data/lib/bio/io/das.rb +32 -42
  102. data/lib/bio/io/dbget.rb +2 -20
  103. data/lib/bio/io/ddbjxml.rb +77 -138
  104. data/lib/bio/io/ebisoap.rb +158 -0
  105. data/lib/bio/io/ensembl.rb +229 -0
  106. data/lib/bio/io/fastacmd.rb +89 -82
  107. data/lib/bio/io/fetch.rb +163 -96
  108. data/lib/bio/io/flatfile.rb +170 -73
  109. data/lib/bio/io/flatfile/bdb.rb +3 -16
  110. data/lib/bio/io/flatfile/index.rb +2 -2
  111. data/lib/bio/io/flatfile/indexer.rb +3 -2
  112. data/lib/bio/io/higet.rb +12 -31
  113. data/lib/bio/io/keggapi.rb +210 -269
  114. data/lib/bio/io/ncbisoap.rb +155 -0
  115. data/lib/bio/io/pubmed.rb +169 -147
  116. data/lib/bio/io/registry.rb +4 -20
  117. data/lib/bio/io/soapwsdl.rb +43 -38
  118. data/lib/bio/io/sql.rb +242 -305
  119. data/lib/bio/location.rb +407 -285
  120. data/lib/bio/map.rb +410 -0
  121. data/lib/bio/pathway.rb +558 -695
  122. data/lib/bio/reference.rb +272 -75
  123. data/lib/bio/sequence.rb +255 -13
  124. data/lib/bio/sequence/aa.rb +71 -10
  125. data/lib/bio/sequence/common.rb +187 -33
  126. data/lib/bio/sequence/compat.rb +59 -4
  127. data/lib/bio/sequence/format.rb +54 -7
  128. data/lib/bio/sequence/generic.rb +3 -3
  129. data/lib/bio/sequence/na.rb +328 -26
  130. data/lib/bio/shell.rb +11 -4
  131. data/lib/bio/shell/core.rb +221 -160
  132. data/lib/bio/shell/demo.rb +18 -15
  133. data/lib/bio/shell/interface.rb +14 -12
  134. data/lib/bio/shell/irb.rb +95 -0
  135. data/lib/bio/shell/object.rb +45 -26
  136. data/lib/bio/shell/plugin/blast.rb +42 -0
  137. data/lib/bio/shell/plugin/codon.rb +22 -14
  138. data/lib/bio/shell/plugin/das.rb +58 -0
  139. data/lib/bio/shell/plugin/emboss.rb +2 -2
  140. data/lib/bio/shell/plugin/entry.rb +22 -11
  141. data/lib/bio/shell/plugin/flatfile.rb +2 -2
  142. data/lib/bio/shell/plugin/keggapi.rb +13 -6
  143. data/lib/bio/shell/plugin/midi.rb +4 -4
  144. data/lib/bio/shell/plugin/obda.rb +2 -2
  145. data/lib/bio/shell/plugin/psort.rb +56 -0
  146. data/lib/bio/shell/plugin/seq.rb +35 -8
  147. data/lib/bio/shell/plugin/soap.rb +87 -0
  148. data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/bioruby_generator.rb +29 -0
  149. data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/_classes.rhtml +4 -0
  150. data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/_log.rhtml +27 -0
  151. data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/_methods.rhtml +11 -0
  152. data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/_modules.rhtml +4 -0
  153. data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/_variables.rhtml +7 -0
  154. data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/bioruby-bg.gif +0 -0
  155. data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/bioruby-console.png +0 -0
  156. data/lib/bio/shell/rails/{public/images/icon.png → vendor/plugins/generators/bioruby/templates/bioruby-gem.png} +0 -0
  157. data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/bioruby-link.gif +0 -0
  158. data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/bioruby.css +369 -0
  159. data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/bioruby.rhtml +47 -0
  160. data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/bioruby_controller.rb +144 -0
  161. data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/bioruby_helper.rb +47 -0
  162. data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/commands.rhtml +8 -0
  163. data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/history.rhtml +10 -0
  164. data/lib/bio/shell/rails/vendor/plugins/generators/bioruby/templates/index.rhtml +22 -0
  165. data/lib/bio/shell/script.rb +25 -0
  166. data/lib/bio/shell/setup.rb +109 -0
  167. data/lib/bio/shell/web.rb +70 -58
  168. data/lib/bio/tree.rb +850 -0
  169. data/lib/bio/util/color_scheme.rb +84 -107
  170. data/lib/bio/util/color_scheme/buried.rb +5 -24
  171. data/lib/bio/util/color_scheme/helix.rb +5 -24
  172. data/lib/bio/util/color_scheme/hydropathy.rb +5 -24
  173. data/lib/bio/util/color_scheme/nucleotide.rb +5 -24
  174. data/lib/bio/util/color_scheme/strand.rb +5 -24
  175. data/lib/bio/util/color_scheme/taylor.rb +5 -24
  176. data/lib/bio/util/color_scheme/turn.rb +5 -24
  177. data/lib/bio/util/color_scheme/zappo.rb +5 -24
  178. data/lib/bio/util/contingency_table.rb +70 -43
  179. data/lib/bio/util/restriction_enzyme.rb +228 -0
  180. data/lib/bio/util/restriction_enzyme/analysis.rb +249 -0
  181. data/lib/bio/util/restriction_enzyme/analysis_basic.rb +217 -0
  182. data/lib/bio/util/restriction_enzyme/cut_symbol.rb +107 -0
  183. data/lib/bio/util/restriction_enzyme/double_stranded.rb +321 -0
  184. data/lib/bio/util/restriction_enzyme/double_stranded/aligned_strands.rb +130 -0
  185. data/lib/bio/util/restriction_enzyme/double_stranded/cut_location_pair.rb +103 -0
  186. data/lib/bio/util/restriction_enzyme/double_stranded/cut_location_pair_in_enzyme_notation.rb +38 -0
  187. data/lib/bio/util/restriction_enzyme/double_stranded/cut_locations.rb +76 -0
  188. data/lib/bio/util/restriction_enzyme/double_stranded/cut_locations_in_enzyme_notation.rb +107 -0
  189. data/lib/bio/util/restriction_enzyme/enzymes.yaml +7061 -0
  190. data/lib/bio/util/restriction_enzyme/range/cut_range.rb +24 -0
  191. data/lib/bio/util/restriction_enzyme/range/cut_ranges.rb +47 -0
  192. data/lib/bio/util/restriction_enzyme/range/horizontal_cut_range.rb +67 -0
  193. data/lib/bio/util/restriction_enzyme/range/sequence_range.rb +257 -0
  194. data/lib/bio/util/restriction_enzyme/range/sequence_range/calculated_cuts.rb +242 -0
  195. data/lib/bio/util/restriction_enzyme/range/sequence_range/fragment.rb +51 -0
  196. data/lib/bio/util/restriction_enzyme/range/sequence_range/fragments.rb +41 -0
  197. data/lib/bio/util/restriction_enzyme/range/vertical_cut_range.rb +77 -0
  198. data/lib/bio/util/restriction_enzyme/single_strand.rb +199 -0
  199. data/lib/bio/util/restriction_enzyme/single_strand/cut_locations_in_enzyme_notation.rb +135 -0
  200. data/lib/bio/util/restriction_enzyme/single_strand_complement.rb +23 -0
  201. data/lib/bio/util/restriction_enzyme/string_formatting.rb +111 -0
  202. data/lib/bio/util/sirna.rb +4 -22
  203. data/sample/color_scheme_na.rb +4 -12
  204. data/sample/enzymes.rb +78 -0
  205. data/sample/goslim.rb +5 -13
  206. data/sample/psortplot_html.rb +4 -12
  207. data/test/data/blast/2.2.15.blastp.m7 +876 -0
  208. data/test/data/embl/AB090716.embl.rel89 +63 -0
  209. data/test/data/fasta/example1.txt +75 -0
  210. data/test/data/fasta/example2.txt +21 -0
  211. data/test/data/iprscan/merged.raw +32 -0
  212. data/test/data/iprscan/merged.txt +74 -0
  213. data/test/data/soft/GDS100_partial.soft +92 -0
  214. data/test/data/soft/GSE3457_family_partial.soft +874 -0
  215. data/test/functional/bio/io/test_ensembl.rb +103 -0
  216. data/test/functional/bio/io/test_soapwsdl.rb +5 -17
  217. data/test/unit/bio/appl/bl2seq/test_report.rb +2 -2
  218. data/test/unit/bio/appl/blast/test_report.rb +3 -16
  219. data/test/unit/bio/appl/blast/test_xmlparser.rb +4 -16
  220. data/test/unit/bio/appl/genscan/test_report.rb +3 -16
  221. data/test/unit/bio/appl/hmmer/test_report.rb +3 -16
  222. data/test/unit/bio/appl/iprscan/test_report.rb +338 -0
  223. data/test/unit/bio/appl/mafft/test_report.rb +63 -0
  224. data/test/unit/bio/appl/sosui/test_report.rb +3 -16
  225. data/test/unit/bio/appl/targetp/test_report.rb +3 -16
  226. data/test/unit/bio/appl/test_blast.rb +3 -16
  227. data/test/unit/bio/appl/test_fasta.rb +4 -16
  228. data/test/unit/bio/appl/test_pts1.rb +140 -0
  229. data/test/unit/bio/appl/tmhmm/test_report.rb +3 -16
  230. data/test/unit/bio/data/test_aa.rb +4 -17
  231. data/test/unit/bio/data/test_codontable.rb +3 -16
  232. data/test/unit/bio/data/test_na.rb +3 -3
  233. data/test/unit/bio/db/embl/test_common.rb +3 -16
  234. data/test/unit/bio/db/embl/test_embl.rb +3 -16
  235. data/test/unit/bio/db/embl/test_embl_rel89.rb +219 -0
  236. data/test/unit/bio/db/embl/test_sptr.rb +1548 -41
  237. data/test/unit/bio/db/embl/test_uniprot.rb +3 -16
  238. data/test/unit/bio/db/kegg/test_genes.rb +3 -16
  239. data/test/unit/bio/db/pdb/test_pdb.rb +7 -24
  240. data/test/unit/bio/db/test_aaindex.rb +2 -2
  241. data/test/unit/bio/db/test_fasta.rb +3 -16
  242. data/test/unit/bio/db/test_gff.rb +3 -16
  243. data/test/unit/bio/db/test_lasergene.rb +95 -0
  244. data/test/unit/bio/db/test_newick.rb +56 -0
  245. data/test/unit/bio/db/test_nexus.rb +360 -0
  246. data/test/unit/bio/db/test_prosite.rb +5 -18
  247. data/test/unit/bio/db/test_rebase.rb +11 -25
  248. data/test/unit/bio/db/test_soft.rb +138 -0
  249. data/test/unit/bio/io/test_ddbjxml.rb +5 -17
  250. data/test/unit/bio/io/test_ensembl.rb +109 -0
  251. data/test/unit/bio/io/test_fastacmd.rb +3 -16
  252. data/test/unit/bio/io/test_flatfile.rb +237 -0
  253. data/test/unit/bio/io/test_soapwsdl.rb +4 -17
  254. data/test/unit/bio/sequence/test_aa.rb +3 -3
  255. data/test/unit/bio/sequence/test_common.rb +3 -16
  256. data/test/unit/bio/sequence/test_compat.rb +3 -16
  257. data/test/unit/bio/sequence/test_na.rb +29 -3
  258. data/test/unit/bio/shell/plugin/test_seq.rb +8 -8
  259. data/test/unit/bio/test_alignment.rb +16 -27
  260. data/test/unit/bio/test_command.rb +242 -25
  261. data/test/unit/bio/test_db.rb +3 -16
  262. data/test/unit/bio/test_feature.rb +4 -16
  263. data/test/unit/bio/test_location.rb +4 -16
  264. data/test/unit/bio/test_map.rb +230 -0
  265. data/test/unit/bio/test_pathway.rb +4 -16
  266. data/test/unit/bio/test_reference.rb +2 -2
  267. data/test/unit/bio/test_sequence.rb +7 -19
  268. data/test/unit/bio/test_shell.rb +3 -16
  269. data/test/unit/bio/test_tree.rb +593 -0
  270. data/test/unit/bio/util/restriction_enzyme/analysis/test_calculated_cuts.rb +299 -0
  271. data/test/unit/bio/util/restriction_enzyme/analysis/test_cut_ranges.rb +103 -0
  272. data/test/unit/bio/util/restriction_enzyme/analysis/test_sequence_range.rb +240 -0
  273. data/test/unit/bio/util/restriction_enzyme/double_stranded/test_aligned_strands.rb +100 -0
  274. data/test/unit/bio/util/restriction_enzyme/double_stranded/test_cut_location_pair.rb +75 -0
  275. data/test/unit/bio/util/restriction_enzyme/double_stranded/test_cut_location_pair_in_enzyme_notation.rb +73 -0
  276. data/test/unit/bio/util/restriction_enzyme/double_stranded/test_cut_locations.rb +53 -0
  277. data/test/unit/bio/util/restriction_enzyme/double_stranded/test_cut_locations_in_enzyme_notation.rb +104 -0
  278. data/test/unit/bio/util/restriction_enzyme/single_strand/test_cut_locations_in_enzyme_notation.rb +83 -0
  279. data/test/unit/bio/util/restriction_enzyme/test_analysis.rb +246 -0
  280. data/test/unit/bio/util/restriction_enzyme/test_cut_symbol.rb +44 -0
  281. data/test/unit/bio/util/restriction_enzyme/test_double_stranded.rb +115 -0
  282. data/test/unit/bio/util/restriction_enzyme/test_single_strand.rb +147 -0
  283. data/test/unit/bio/util/restriction_enzyme/test_single_strand_complement.rb +147 -0
  284. data/test/unit/bio/util/restriction_enzyme/test_string_formatting.rb +60 -0
  285. data/test/unit/bio/util/test_color_scheme.rb +6 -18
  286. data/test/unit/bio/util/test_contingency_table.rb +6 -18
  287. data/test/unit/bio/util/test_restriction_enzyme.rb +42 -0
  288. data/test/unit/bio/util/test_sirna.rb +3 -16
  289. metadata +228 -169
  290. data/doc/BioRuby.rd.ja +0 -225
  291. data/doc/Design.rd.ja +0 -341
  292. data/doc/TODO.rd.ja +0 -138
  293. data/lib/bio/appl/fasta/format6.rb +0 -37
  294. data/lib/bio/db/kegg/cell.rb +0 -88
  295. data/lib/bio/db/kegg/ko.rb +0 -178
  296. data/lib/bio/shell/rails/Rakefile +0 -10
  297. data/lib/bio/shell/rails/app/controllers/application.rb +0 -4
  298. data/lib/bio/shell/rails/app/controllers/shell_controller.rb +0 -94
  299. data/lib/bio/shell/rails/app/helpers/application_helper.rb +0 -3
  300. data/lib/bio/shell/rails/app/models/shell_connection.rb +0 -30
  301. data/lib/bio/shell/rails/app/views/layouts/shell.rhtml +0 -37
  302. data/lib/bio/shell/rails/app/views/shell/history.rhtml +0 -5
  303. data/lib/bio/shell/rails/app/views/shell/index.rhtml +0 -2
  304. data/lib/bio/shell/rails/app/views/shell/show.rhtml +0 -13
  305. data/lib/bio/shell/rails/config/boot.rb +0 -19
  306. data/lib/bio/shell/rails/config/database.yml +0 -85
  307. data/lib/bio/shell/rails/config/environment.rb +0 -53
  308. data/lib/bio/shell/rails/config/environments/development.rb +0 -19
  309. data/lib/bio/shell/rails/config/environments/production.rb +0 -19
  310. data/lib/bio/shell/rails/config/environments/test.rb +0 -19
  311. data/lib/bio/shell/rails/config/routes.rb +0 -19
  312. data/lib/bio/shell/rails/doc/README_FOR_APP +0 -2
  313. data/lib/bio/shell/rails/public/404.html +0 -8
  314. data/lib/bio/shell/rails/public/500.html +0 -8
  315. data/lib/bio/shell/rails/public/dispatch.cgi +0 -10
  316. data/lib/bio/shell/rails/public/dispatch.fcgi +0 -24
  317. data/lib/bio/shell/rails/public/dispatch.rb +0 -10
  318. data/lib/bio/shell/rails/public/favicon.ico +0 -0
  319. data/lib/bio/shell/rails/public/images/rails.png +0 -0
  320. data/lib/bio/shell/rails/public/index.html +0 -277
  321. data/lib/bio/shell/rails/public/javascripts/controls.js +0 -750
  322. data/lib/bio/shell/rails/public/javascripts/dragdrop.js +0 -584
  323. data/lib/bio/shell/rails/public/javascripts/effects.js +0 -854
  324. data/lib/bio/shell/rails/public/javascripts/prototype.js +0 -1785
  325. data/lib/bio/shell/rails/public/robots.txt +0 -1
  326. data/lib/bio/shell/rails/public/stylesheets/main.css +0 -187
  327. data/lib/bio/shell/rails/script/about +0 -3
  328. data/lib/bio/shell/rails/script/breakpointer +0 -3
  329. data/lib/bio/shell/rails/script/console +0 -3
  330. data/lib/bio/shell/rails/script/destroy +0 -3
  331. data/lib/bio/shell/rails/script/generate +0 -3
  332. data/lib/bio/shell/rails/script/performance/benchmarker +0 -3
  333. data/lib/bio/shell/rails/script/performance/profiler +0 -3
  334. data/lib/bio/shell/rails/script/plugin +0 -3
  335. data/lib/bio/shell/rails/script/process/reaper +0 -3
  336. data/lib/bio/shell/rails/script/process/spawner +0 -3
  337. data/lib/bio/shell/rails/script/process/spinner +0 -3
  338. data/lib/bio/shell/rails/script/runner +0 -3
  339. data/lib/bio/shell/rails/script/server +0 -42
  340. data/lib/bio/shell/rails/test/test_helper.rb +0 -28
@@ -3,9 +3,9 @@
3
3
  #
4
4
  # Copyright:: Copyright (C) 2006
5
5
  # Toshiaki Katayama <k@bioruby.org>
6
- # License:: Ruby's
6
+ # License:: The Ruby License
7
7
  #
8
- # $Id: demo.rb,v 1.1 2006/02/27 09:33:22 k Exp $
8
+ # $Id: demo.rb,v 1.4 2007/04/05 23:35:41 trevor Exp $
9
9
  #
10
10
 
11
11
  module Bio::Shell
@@ -24,7 +24,7 @@ module Bio::Shell
24
24
  class Demo
25
25
 
26
26
  def initialize
27
- @bind = IRB.conf[:MAIN_CONTEXT].workspace.binding
27
+ @bind = Bio::Shell.cache[:binding]
28
28
  end
29
29
 
30
30
  def all
@@ -38,8 +38,11 @@ module Bio::Shell
38
38
  def tutorial
39
39
  end
40
40
 
41
+ def aldh2
42
+ end
43
+
41
44
  def mito
42
- run(%q[entry = ent("data/kumamushi.gb")], "Load kumamushi gene from GenBank database entry ...", false) &&
45
+ run(%q[entry = getent("data/kumamushi.gb")], "Load kumamushi gene from GenBank database entry ...", false) &&
43
46
  run(%q[disp entry], "Check the contents ...", false) &&
44
47
  run(%q[kuma = flatparse(entry)], "Parse the database entry ...", true) &&
45
48
  run(%q[web], "Start BioRuby on Rails...", false) &&
@@ -61,7 +64,7 @@ module Bio::Shell
61
64
  end
62
65
 
63
66
  def sequence
64
- run(%q[dna = seq("atgc" * 100)], "Generating DNA sequence ...", true) &&
67
+ run(%q[dna = getseq("atgc" * 100)], "Generating DNA sequence ...", true) &&
65
68
  run(%q[doublehelix dna], "Double helix representation", false) &&
66
69
  run(%q[protein = dna.translate], "Translate DNA into Protein ...", true) &&
67
70
  run(%q[protein.molecular_weight], "Calculating molecular weight ...", true) &&
@@ -70,7 +73,7 @@ module Bio::Shell
70
73
  end
71
74
 
72
75
  def entry
73
- run(%q[kuma = obj("gb:AF237819")], "Obtain an entry from GenBank database", false) &&
76
+ run(%q[kuma = getobj("gb:AF237819")], "Obtain an entry from GenBank database", false) &&
74
77
  run(%q[kuma.definition], "Definition of the entry", true) &&
75
78
  run(%q[kuma.naseq], "Sequence of the entry", true) &&
76
79
  run(%q[kuma.naseq.translate], "Translate the sequence to protein", true) &&
@@ -81,15 +84,15 @@ module Bio::Shell
81
84
  def shell
82
85
  run(%q[pwd], "Show current working directory ...", false) &&
83
86
  run(%q[dir], "Show directory contents ...", false) &&
84
- run(%q[dir "session"], "Show directory contents ...", false) &&
87
+ run(%q[dir "shell/session"], "Show directory contents ...", false) &&
85
88
  true
86
89
  end
87
90
 
88
91
  def pdb
89
- run(%q[ent_1bl8 = ent("pdb:1bl8")], "Retrieving PDB entry 1BL8 ...", false) &&
92
+ run(%q[ent_1bl8 = getent("pdb:1bl8")], "Retrieving PDB entry 1BL8 ...", false) &&
90
93
  run(%q[head ent_1bl8], "Head part of the entry ...", false) &&
91
94
  run(%q[savefile("1bl8.pdb", ent_1bl8)], "Saving the original entry in file ...", false) &&
92
- run(%q[less "data/1bl8.pdb"], "Look through the entire entry ...", false) &&
95
+ run(%q[disp "data/1bl8.pdb"], "Look through the entire entry ...", false) &&
93
96
  run(%q[pdb_1bl8 = flatparse(ent_1bl8)], "Parsing the entry ...", false) &&
94
97
  run(%q[pdb_1bl8.entry_id], "Showing the entry ID ...", true) &&
95
98
  run(%q[pdb_1bl8.each_heterogen { |heterogen| p heterogen.resName }], "Showing each heterogen object ...", false) &&
@@ -97,17 +100,17 @@ module Bio::Shell
97
100
  end
98
101
 
99
102
  def pdb_hetdic
100
- run(%q[het_dic = open("http://deposit.pdb.org/het_dictionary.txt").read],
101
- "Retrieving the het_dic database ...", false) &&
102
- run(%q[savefile("data/het_dictionary.txt", het_dic)],
103
- "Saving the file ... ", false) &&
103
+ # run(%q[het_dic = open("http://deposit.pdb.org/het_dictionary.txt").read],
104
+ # "Retrieving the het_dic database ...", false) &&
105
+ # run(%q[savefile("data/het_dictionary.txt", het_dic)],
106
+ # "Saving the file ... ", false) &&
104
107
  run(%q[het_dic.size], "Bytes of the file ...", true) &&
105
- run(%q[less "data/het_dictionary.txt"], "Take a look on the contents ...", true) &&
108
+ run(%q[disp "data/het_dictionary.txt"], "Take a look on the contents ...", true) &&
106
109
  run(%q[flatindex("het_dic", "data/het_dictionary.txt")],
107
110
  "Creating index to make the seaarchable database ...", false) &&
108
111
  run(%q[ethanol = flatsearch("het_dic", "EOH")], "Search an ethanol entry ...", true) &&
109
112
  run(%q[osake = flatparse(ethanol)], "Parse the entry ...", true) &&
110
- run(%q[sake.conect], "Showing connect table (conect) of the molecule ...", true) &&
113
+ run(%q[osake.conect], "Showing connect table (conect) of the molecule ...", true) &&
111
114
  true
112
115
  end
113
116
 
@@ -3,9 +3,9 @@
3
3
  #
4
4
  # Copyright:: Copyright (C) 2005
5
5
  # Toshiaki Katayama <k@bioruby.org>
6
- # License:: Ruby's
6
+ # License:: The Ruby License
7
7
  #
8
- # $Id: interface.rb,v 1.14 2006/02/27 09:36:35 k Exp $
8
+ # $Id: interface.rb,v 1.18 2007/06/26 08:38:38 k Exp $
9
9
  #
10
10
 
11
11
  module Bio::Shell
@@ -15,20 +15,22 @@ module Bio::Shell
15
15
  ### work space
16
16
 
17
17
  def ls
18
- list = eval("local_variables", conf.workspace.binding).reject { |x|
19
- eval(x, conf.workspace.binding).nil?
18
+ bind = Bio::Shell.cache[:binding]
19
+ list = eval("local_variables", bind).reject { |x|
20
+ eval(x, bind).nil?
20
21
  }
21
22
  puts list.inspect
22
23
  return list
23
24
  end
24
25
 
25
26
  def rm(name)
26
- list = eval("local_variables", conf.workspace.binding).reject { |x|
27
- eval(x, conf.workspace.binding).nil?
27
+ bind = Bio::Shell.cache[:binding]
28
+ list = eval("local_variables", bind).reject { |x|
29
+ eval(x, bind).nil?
28
30
  }
29
31
  begin
30
32
  if list.include?(name.to_s)
31
- eval("#{name} = nil", conf.workspace.binding)
33
+ eval("#{name} = nil", bind)
32
34
  else
33
35
  raise
34
36
  end
@@ -147,7 +149,7 @@ module Bio::Shell
147
149
  ### file save
148
150
 
149
151
  def savefile(file, *objs)
150
- datadir = Bio::Shell.datadir
152
+ datadir = Bio::Shell.data_dir
151
153
  message = "Save file '#{file}' in '#{datadir}' directory? [y/n] "
152
154
  if ! file[/^#{datadir}/] and Bio::Shell.ask_yes_or_no(message)
153
155
  file = datadir + file
@@ -196,18 +198,18 @@ module Bio::Shell
196
198
  files = Dir.glob("*")
197
199
  end
198
200
  if files
199
- str = " UGO Date Byte File\n"
200
- str << "------ ---------------------------- ----------- ------------\n"
201
+ str = " UGO Date Byte File\n"
202
+ str << "------ ------------------------------ ----------- ------------\n"
201
203
  files.sort.each { |f|
202
204
  stat = File.lstat(f)
203
205
  mode = format("%6o", stat.mode)
204
206
  date = stat.mtime
205
207
  byte = stat.size
206
208
  name = f.inspect
207
- str << format("%s %s%13d %s\n", mode, date, byte, name)
209
+ str << format("%s %30s%13d %s\n", mode, date, byte, name)
208
210
  }
209
211
  puts str
210
- return str
212
+ return files.sort
211
213
  end
212
214
  end
213
215
 
@@ -0,0 +1,95 @@
1
+ #
2
+ # = bio/shell/irb.rb - CUI for the BioRuby shell
3
+ #
4
+ # Copyright:: Copyright (C) 2006
5
+ # Toshiaki Katayama <k@bioruby.org>
6
+ # License:: The Ruby License
7
+ #
8
+ # $Id: irb.rb,v 1.3 2007/04/05 23:35:41 trevor Exp $
9
+ #
10
+
11
+ module Bio::Shell
12
+
13
+ class Irb
14
+
15
+ def initialize
16
+ require 'irb'
17
+ begin
18
+ require 'irb/completion'
19
+ Bio::Shell.cache[:readline] = true
20
+ rescue LoadError
21
+ Bio::Shell.cache[:readline] = false
22
+ end
23
+ IRB.setup(nil)
24
+ setup_irb
25
+ start_irb
26
+ end
27
+
28
+ def start_irb
29
+ Bio::Shell.cache[:irb] = IRB::Irb.new
30
+
31
+ # needed for method completion
32
+ IRB.conf[:MAIN_CONTEXT] = Bio::Shell.cache[:irb].context
33
+
34
+ # store binding for evaluation
35
+ Bio::Shell.cache[:binding] = IRB.conf[:MAIN_CONTEXT].workspace.binding
36
+
37
+ # overwrite gets to store history with time stamp
38
+ io = IRB.conf[:MAIN_CONTEXT].io
39
+ io.class.class_eval do
40
+ alias_method :irb_original_gets, :gets
41
+ end
42
+
43
+ def io.gets
44
+ line = irb_original_gets
45
+ if line
46
+ Bio::Shell.store_history(line)
47
+ end
48
+ return line
49
+ end
50
+
51
+ if File.exists?("./config/boot.rb")
52
+ require "./config/boot"
53
+ require "./config/environment"
54
+ #require 'commands/console'
55
+ end
56
+ end
57
+
58
+ def setup_irb
59
+ # set application name
60
+ IRB.conf[:AP_NAME] = 'bioruby'
61
+
62
+ # change prompt for bioruby
63
+ $_ = Bio::Shell.colors
64
+ IRB.conf[:PROMPT][:BIORUBY_COLOR] = {
65
+ :PROMPT_I => "bio#{$_[:ruby]}ruby#{$_[:none]}> ",
66
+ :PROMPT_S => "bio#{$_[:ruby]}ruby#{$_[:none]}%l ",
67
+ :PROMPT_C => "bio#{$_[:ruby]}ruby#{$_[:none]}+ ",
68
+ :RETURN => " ==> %s\n"
69
+ }
70
+ IRB.conf[:PROMPT][:BIORUBY] = {
71
+ :PROMPT_I => "bioruby> ",
72
+ :PROMPT_S => "bioruby%l ",
73
+ :PROMPT_C => "bioruby+ ",
74
+ :RETURN => " ==> %s\n"
75
+ }
76
+ if Bio::Shell.config[:color]
77
+ IRB.conf[:PROMPT_MODE] = :BIORUBY_COLOR
78
+ else
79
+ IRB.conf[:PROMPT_MODE] = :BIORUBY
80
+ end
81
+
82
+ # echo mode (uncomment to off by default)
83
+ #IRB.conf[:ECHO] = Bio::Shell.config[:echo] || false
84
+
85
+ # irb/input-method.rb >= v1.5 (not in 1.8.2)
86
+ #IRB.conf[:SAVE_HISTORY] = 100000
87
+
88
+ # not nicely works
89
+ #IRB.conf[:AUTO_INDENT] = true
90
+ end
91
+
92
+ end # Irb
93
+
94
+ end
95
+
@@ -4,13 +4,14 @@
4
4
  # Copyright:: Copyright (C) 2006
5
5
  # Nobuya Tanaka <t@chemruby.org>,
6
6
  # Toshiaki Katayama <k@bioruby.org>
7
- # License:: Ruby's
7
+ # License:: The Ruby License
8
8
  #
9
- # $Id: object.rb,v 1.1 2006/02/27 09:16:13 k Exp $
9
+ # $Id: object.rb,v 1.3 2007/04/05 23:35:41 trevor Exp $
10
10
  #
11
11
 
12
- require 'cgi'
13
12
  require 'pp'
13
+ require 'cgi'
14
+ require 'yaml'
14
15
 
15
16
  ### Object extention
16
17
 
@@ -18,35 +19,53 @@ class Object
18
19
  # Couldn't work for Fixnum (Marshal)
19
20
  attr_accessor :memo
20
21
 
21
- # *TODO*
22
- def to_html
23
- if self.is_a?(String)
24
- "<pre>" + self + "</pre>"
22
+ def output(format = :yaml)
23
+ case format
24
+ when :yaml
25
+ self.to_yaml
26
+ when :html
27
+ format_html
28
+ when :inspect
29
+ format_pp
30
+ when :png
31
+ # *TODO*
32
+ when :svg
33
+ # *TODO*
34
+ when :graph
35
+ # *TODO* (Gruff, RSRuby etc.)
25
36
  else
26
- str = ""
27
- PP.pp(self, str)
28
- "<pre>" + str + "</pre>"
29
- #"<pre>" + CGI.escapeHTML(str) + "</pre>"
30
- #self.inspect
31
- #"<pre>" + self.inspect + "</pre>"
32
- #"<pre>" + self.to_s + "</pre>"
37
+ #self.inspect.to_s.fold(80)
38
+ self.to_s
33
39
  end
34
40
  end
41
+
42
+ private
43
+
44
+ def format_html
45
+ "<pre>#{CGI.escapeHTML(format_pp)}</pre>"
46
+ end
47
+
48
+ def format_pp
49
+ str = ""
50
+ PP.pp(self, str)
51
+ return str
52
+ end
53
+
35
54
  end
36
55
 
37
- =begin
38
- module Bio
39
- class DB
40
- def to_html
41
- html = ""
42
- html += "<table>"
43
- @data.each do |k, v|
44
- html += "<tr><td>#{k}</td><td>#{v}</td></tr>"
45
- end
46
- html += "</table>"
56
+ class Hash
57
+
58
+ private
59
+
60
+ def format_html
61
+ html = ""
62
+ html += "<table>"
63
+ @data.each do |k, v|
64
+ html += "<tr><td>#{k}</td><td>#{v}</td></tr>"
47
65
  end
66
+ html += "</table>"
67
+ return html
48
68
  end
69
+
49
70
  end
50
- =end
51
71
 
52
-
@@ -0,0 +1,42 @@
1
+ #
2
+ # = bio/shell/plugin/blast.rb - plugin for BLAST services
3
+ #
4
+ # Copyright:: Copyright (C) 2006
5
+ # Toshiaki Katayama <k@bioruby.org>
6
+ # License:: The Ruby License
7
+ #
8
+ # $Id: blast.rb,v 1.3 2007/04/05 23:35:41 trevor Exp $
9
+ #
10
+
11
+ module Bio::Shell
12
+
13
+ private
14
+
15
+ # GenomeNet
16
+
17
+ def keggblast(query)
18
+ server = Bio::Blast.remote("blastp", "genes", "", "genomenet_tab")
19
+
20
+ if query[/^>/]
21
+ data = Bio::FastaFormat.new(query)
22
+ desc = data.definition
23
+ tmp = getseq(data.seq)
24
+ else
25
+ desc = "query"
26
+ tmp = getseq(query)
27
+ end
28
+
29
+ if tmp.respond_to?(:translate)
30
+ aaseq = tmp.translate
31
+ else
32
+ aaseq = tmp
33
+ end
34
+
35
+ fasta = aaseq.to_fasta(desc, 60)
36
+ result = server.query(fasta)
37
+ puts server.output
38
+ return result
39
+ end
40
+
41
+ end
42
+
@@ -3,9 +3,9 @@
3
3
  #
4
4
  # Copyright:: Copyright (C) 2005
5
5
  # Toshiaki Katayama <k@bioruby.org>
6
- # License:: Ruby's
6
+ # License:: The Ruby License
7
7
  #
8
- # $Id: codon.rb,v 1.13 2006/02/09 20:48:53 k Exp $
8
+ # $Id: codon.rb,v 1.16 2007/04/05 23:35:41 trevor Exp $
9
9
  #
10
10
 
11
11
  module Bio::Shell
@@ -35,24 +35,24 @@ module Bio::Shell
35
35
  attr_reader :table
36
36
 
37
37
  def setup_colors
38
- esc_seq = Bio::Shell.esc_seq
38
+ c = Bio::Shell.colors
39
39
 
40
40
  @colors = {
41
- :text => esc_seq[:none],
42
- :aa => esc_seq[:green],
43
- :start => esc_seq[:red],
44
- :stop => esc_seq[:red],
45
- :basic => esc_seq[:cyan],
46
- :polar => esc_seq[:blue],
47
- :acidic => esc_seq[:magenta],
48
- :nonpolar => esc_seq[:yellow],
41
+ :text => c[:none],
42
+ :aa => c[:green],
43
+ :start => c[:red],
44
+ :stop => c[:red],
45
+ :basic => c[:cyan],
46
+ :polar => c[:blue],
47
+ :acidic => c[:magenta],
48
+ :nonpolar => c[:yellow],
49
49
  }
50
50
  end
51
51
 
52
52
  def generate_mono_text
53
53
  @table.each do |codon, aa|
54
54
  if aa == '*'
55
- code = "STOP"
55
+ code = 'STOP'
56
56
  aa = '' unless @cuhash
57
57
  else
58
58
  code = @aacode[aa]
@@ -78,11 +78,19 @@ module Bio::Shell
78
78
  property, = @@properties.detect {|key, list| list.include?(aa)}
79
79
 
80
80
  if aa == '*'
81
- color_code = "#{@colors[:stop]}STOP"
82
81
  if @cuhash
82
+ color_code = "#{@colors[:stop]}STOP"
83
83
  color_aa = "#{@colors[:stop]}#{aa}"
84
84
  else
85
- color_aa = ''
85
+ color_code = "#{@colors[:stop]}STP"
86
+ case codon
87
+ when 'tga'
88
+ color_aa = "#{@colors[:text]}U"
89
+ when 'tag'
90
+ color_aa = "#{@colors[:text]}O"
91
+ else
92
+ color_aa = "#{@colors[:text]}*"
93
+ end
86
94
  end
87
95
  else
88
96
  color_code = "#{@colors[property]}#{@aacode[aa]}"