bioroebe 0.10.80 → 0.12.24
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.
- checksums.yaml +4 -4
- data/README.md +3946 -2817
- data/bin/bioroebe +13 -2
- data/bin/bioroebe_hash +7 -0
- data/bin/codon_to_aminoacid +6 -4
- data/bin/compacter +7 -0
- data/bin/plain_palindrome +7 -0
- data/bioroebe.gemspec +3 -3
- data/doc/README.gen +3918 -2793
- data/doc/quality_control/commandline_applications.md +3 -3
- data/doc/statistics/statistics.md +7 -7
- data/doc/todo/bioroebe_GUI_todo.md +19 -14
- data/doc/todo/bioroebe_java_todo.md +22 -0
- data/doc/todo/bioroebe_todo.md +2075 -2620
- data/lib/bioroebe/C++/DNA.cpp +69 -0
- data/lib/bioroebe/C++/RNA.cpp +58 -0
- data/lib/bioroebe/C++/sequence.cpp +35 -0
- data/lib/bioroebe/abstract/README.md +1 -0
- data/lib/bioroebe/abstract/features.rb +29 -0
- data/lib/bioroebe/aminoacids/aminoacid_substitution.rb +1 -9
- data/lib/bioroebe/aminoacids/codon_percentage.rb +1 -9
- data/lib/bioroebe/aminoacids/deduce_aminoacid_sequence.rb +1 -9
- data/lib/bioroebe/aminoacids/display_aminoacid_table.rb +1 -0
- data/lib/bioroebe/aminoacids/show_hydrophobicity.rb +1 -6
- data/lib/bioroebe/base/base_module/base_module.rb +36 -0
- data/lib/bioroebe/base/colours_for_base/colours_for_base.rb +18 -8
- data/lib/bioroebe/base/commandline_application/commandline_application.rb +13 -9
- data/lib/bioroebe/base/commandline_application/commandline_arguments.rb +24 -19
- data/lib/bioroebe/base/commandline_application/misc.rb +66 -49
- data/lib/bioroebe/base/commandline_application/opn.rb +8 -8
- data/lib/bioroebe/base/commandline_application/reset.rb +5 -3
- data/lib/bioroebe/base/internal_hash_module/internal_hash_module.rb +42 -0
- data/lib/bioroebe/base/misc.rb +35 -0
- data/lib/bioroebe/base/prototype/misc.rb +15 -9
- data/lib/bioroebe/base/prototype/reset.rb +10 -0
- data/lib/bioroebe/cleave_and_digest/digestion.rb +10 -2
- data/lib/bioroebe/cleave_and_digest/trypsin.rb +104 -50
- data/lib/bioroebe/codon_tables/frequencies/parse_frequency_table.rb +2 -10
- data/lib/bioroebe/codons/codons.rb +1 -1
- data/lib/bioroebe/codons/convert_this_codon_to_that_aminoacid.rb +208 -59
- data/lib/bioroebe/codons/possible_codons_for_this_aminoacid.rb +1 -9
- data/lib/bioroebe/codons/show_codon_tables.rb +8 -3
- data/lib/bioroebe/codons/show_codon_usage.rb +15 -4
- data/lib/bioroebe/colours/rev.rb +4 -1
- data/lib/bioroebe/constants/aminoacids_and_proteins.rb +1 -0
- data/lib/bioroebe/constants/database_constants.rb +1 -1
- data/lib/bioroebe/constants/files_and_directories.rb +31 -4
- data/lib/bioroebe/constants/misc.rb +20 -0
- data/lib/bioroebe/constants/nucleotides.rb +7 -0
- data/lib/bioroebe/conversions/dna_to_aminoacid_sequence.rb +109 -39
- data/lib/bioroebe/count/count_amount_of_aminoacids.rb +3 -2
- data/lib/bioroebe/count/count_amount_of_nucleotides.rb +3 -0
- data/lib/bioroebe/cpp +1 -0
- data/lib/bioroebe/crystal/README.md +2 -0
- data/lib/bioroebe/crystal/to_rna.cr +19 -0
- data/lib/bioroebe/data/README.md +11 -8
- data/lib/bioroebe/data/electron_microscopy/pos_example.pos +396 -0
- data/lib/bioroebe/data/electron_microscopy/test_particles.star +36 -0
- data/lib/bioroebe/data/fasta/human/Homo_sapiens_hemoglobin_subunit_alpha_HBB_mRNA.fasta +9 -0
- data/lib/bioroebe/data/fasta/human/Homo_sapiens_hemoglobin_subunit_beta_HBB_mRNA.fasta +8 -0
- data/lib/bioroebe/data/fasta/human/README.md +2 -0
- data/lib/bioroebe/dotplots/advanced_dotplot.rb +1 -1
- data/lib/bioroebe/electron_microscopy/coordinate_analyzer.rb +15 -18
- data/lib/bioroebe/{fasta_and_fastq/parse_fasta/run.rb → electron_microscopy/electron_microscopy_module.rb} +16 -8
- data/lib/bioroebe/electron_microscopy/fix_pos_file.rb +1 -9
- data/lib/bioroebe/electron_microscopy/flipy.rb +83 -0
- data/lib/bioroebe/electron_microscopy/parse_coordinates.rb +2 -10
- data/lib/bioroebe/electron_microscopy/read_file_xmd.rb +1 -9
- data/lib/bioroebe/electron_microscopy/simple_star_file_generator.rb +4 -9
- data/lib/bioroebe/enzymes/has_this_restriction_enzyme.rb +10 -3
- data/lib/bioroebe/enzymes/restriction_enzyme.rb +23 -1
- data/lib/bioroebe/enzymes/restriction_enzymes/statistics.rb +65 -0
- data/lib/bioroebe/fasta_and_fastq/autocorrect_the_name_of_this_fasta_file.rb +1 -9
- data/lib/bioroebe/fasta_and_fastq/compact_fasta_file/compact_fasta_file.rb +7 -9
- data/lib/bioroebe/fasta_and_fastq/fasta_defline/fasta_defline.rb +1 -5
- data/lib/bioroebe/fasta_and_fastq/fasta_to_yaml/fasta_to_yaml.rb +81 -0
- data/lib/bioroebe/fasta_and_fastq/parse_fasta/parse_fasta.rb +1518 -7
- data/lib/bioroebe/fasta_and_fastq/return_fasta_subsection_of_this_file.rb +11 -2
- data/lib/bioroebe/fasta_and_fastq/show_fasta_headers.rb +27 -12
- data/lib/bioroebe/fasta_and_fastq/simplify_fasta_header/simplify_fasta_header.rb +1 -5
- data/lib/bioroebe/fasta_and_fastq/split_this_fasta_file_into_chromosomes/constants.rb +0 -5
- data/lib/bioroebe/genome/README.md +4 -0
- data/lib/bioroebe/genome/genome.rb +130 -0
- data/lib/bioroebe/genomes/genome_pattern.rb +3 -9
- data/lib/bioroebe/gui/gtk +1 -0
- data/lib/bioroebe/gui/gtk3/alignment/alignment.rb +106 -137
- data/lib/bioroebe/gui/gtk3/aminoacid_composition/aminoacid_composition.rb +27 -61
- data/lib/bioroebe/gui/gtk3/aminoacid_composition/customized_dialog.rb +1 -1
- data/lib/bioroebe/gui/gtk3/blosum_matrix_viewer/blosum_matrix_viewer.rb +1 -2
- data/lib/bioroebe/gui/gtk3/calculate_cell_numbers_of_bacteria/calculate_cell_numbers_of_bacteria.rb +1 -2
- data/lib/bioroebe/gui/gtk3/controller/controller.rb +46 -29
- data/lib/bioroebe/gui/gtk3/dna_to_aminoacid_widget/dna_to_aminoacid_widget.rb +77 -52
- data/lib/bioroebe/gui/gtk3/dna_to_reverse_complement_widget/dna_to_reverse_complement_widget.rb +1 -2
- data/lib/bioroebe/gui/gtk3/fasta_table_widget/fasta_table_widget.rb +100 -23
- data/lib/bioroebe/gui/gtk3/format_converter/format_converter.rb +1 -2
- data/lib/bioroebe/gui/gtk3/gene/gene.rb +1 -2
- data/lib/bioroebe/gui/gtk3/hamming_distance/hamming_distance.rb +43 -30
- data/lib/bioroebe/gui/gtk3/levensthein_distance/levensthein_distance.rb +1 -2
- data/lib/bioroebe/gui/gtk3/nucleotide_analyser/nucleotide_analyser.rb +120 -73
- data/lib/bioroebe/gui/gtk3/primer_design_widget/primer_design_widget.rb +1 -2
- data/lib/bioroebe/gui/gtk3/protein_to_DNA/protein_to_DNA.rb +19 -20
- data/lib/bioroebe/gui/gtk3/random_sequence/random_sequence.rb +20 -13
- data/lib/bioroebe/gui/gtk3/restriction_enzymes/restriction_enzymes.rb +1 -2
- data/lib/bioroebe/gui/gtk3/show_codon_table/misc.rb +97 -22
- data/lib/bioroebe/gui/gtk3/show_codon_table/show_codon_table.rb +3 -73
- data/lib/bioroebe/gui/gtk3/show_codon_usage/show_codon_usage.rb +1 -2
- data/lib/bioroebe/gui/gtk3/sizeseq/sizeseq.rb +1 -2
- data/lib/bioroebe/gui/gtk3/three_to_one/three_to_one.rb +1 -2
- data/lib/bioroebe/gui/gtk3/www_finder/www_finder.rb +1 -2
- data/lib/bioroebe/gui/javafx/bioroebe/Bioroebe.class +0 -0
- data/lib/bioroebe/gui/javafx/bioroebe/Bioroebe.java +104 -0
- data/lib/bioroebe/gui/javafx/bioroebe.jar +0 -0
- data/lib/bioroebe/gui/javafx/bioroebe.mf +1 -0
- data/lib/bioroebe/gui/javafx/module-info.class +0 -0
- data/lib/bioroebe/gui/javafx/module-info.java +5 -0
- data/lib/bioroebe/gui/jruby/alignment/alignment.rb +165 -0
- data/lib/bioroebe/gui/jruby/aminoacid_composition/aminoacid_composition.rb +166 -0
- data/lib/bioroebe/gui/libui/alignment/alignment.rb +3 -1
- data/lib/bioroebe/gui/libui/controller/controller.rb +116 -0
- data/lib/bioroebe/gui/libui/random_sequence/random_sequence.rb +18 -2
- data/lib/bioroebe/gui/libui/show_codon_table/show_codon_table.rb +2 -0
- data/lib/bioroebe/gui/libui/three_to_one/three_to_one.rb +8 -6
- data/lib/bioroebe/gui/shared_code/alignment/alignment_module.rb +102 -0
- data/lib/bioroebe/gui/shared_code/aminoacid_composition/aminoacid_composition_module.rb +94 -0
- data/lib/bioroebe/gui/shared_code/levensthein_distance/levensthein_distance_module.rb +18 -16
- data/lib/bioroebe/gui/shared_code/protein_to_DNA/protein_to_DNA_module.rb +14 -14
- data/lib/bioroebe/gui/swing/three_to_one/ThreeToOne$1.class +0 -0
- data/lib/bioroebe/gui/swing/three_to_one/ThreeToOne$CloseListener.class +0 -0
- data/lib/bioroebe/gui/swing/three_to_one/ThreeToOne.class +0 -0
- data/lib/bioroebe/gui/swing/three_to_one/ThreeToOne.java +141 -0
- data/lib/bioroebe/images/FORWARD_PRIMER.png +0 -0
- data/lib/bioroebe/images/REVERSE_PRIMER.png +0 -0
- data/lib/bioroebe/images/images.html +29845 -0
- data/lib/bioroebe/java/README.md +5 -0
- data/lib/bioroebe/java/bioroebe/AllInOne.java +1 -0
- data/lib/bioroebe/java/bioroebe/Base.class +0 -0
- data/lib/bioroebe/java/bioroebe/Base.java +39 -5
- data/lib/bioroebe/java/bioroebe/IsPalindrome.java +23 -5
- data/lib/bioroebe/java/bioroebe/SanitizeNucleotideSequence.java +0 -0
- data/lib/bioroebe/java/bioroebe/Sequence.java +28 -3
- data/lib/bioroebe/java/bioroebe/ToCamelcase.class +0 -0
- data/lib/bioroebe/java/bioroebe/ToCamelcase.java +16 -4
- data/lib/bioroebe/java/bioroebe/ToRNA.java +43 -0
- data/lib/bioroebe/java/bioroebe/ToplevelMethods.java +6 -0
- data/lib/bioroebe/java/bioroebe/{BisulfiteTreatment.class → src/BisulfiteTreatment.class} +0 -0
- data/lib/bioroebe/java/bioroebe/{Codons.class → src/Codons.class} +0 -0
- data/lib/bioroebe/java/bioroebe/src/Codons.java +35 -0
- data/lib/bioroebe/java/bioroebe/src/Commandline.class +0 -0
- data/lib/bioroebe/java/bioroebe/src/Commandline.java +101 -0
- data/lib/bioroebe/java/bioroebe/{Esystem.class → src/Esystem.class} +0 -0
- data/lib/bioroebe/java/bioroebe/{Esystem.java → src/Esystem.java} +6 -1
- data/lib/bioroebe/java/bioroebe/{GenerateRandomDnaSequence.class → src/GenerateRandomDnaSequence.class} +0 -0
- data/lib/bioroebe/java/bioroebe/{GenerateRandomDnaSequence.java → src/GenerateRandomDnaSequence.java} +8 -2
- data/lib/bioroebe/java/bioroebe/src/PartnerNucleotide.class +0 -0
- data/lib/bioroebe/java/bioroebe/src/PartnerNucleotide.java +56 -0
- data/lib/bioroebe/java/bioroebe/{RemoveFile.java → src/RemoveFile.java} +10 -4
- data/lib/bioroebe/java/bioroebe/{RemoveNumbers.class → src/RemoveNumbers.class} +0 -0
- data/lib/bioroebe/java/bioroebe/{RemoveNumbers.java → src/RemoveNumbers.java} +1 -0
- data/lib/bioroebe/java/bioroebe/src/toplevel_methods/BaseComposition.class +0 -0
- data/lib/bioroebe/java/bioroebe/src/toplevel_methods/BaseComposition.java +75 -0
- data/lib/bioroebe/misc/ruler.rb +11 -2
- data/lib/bioroebe/nucleotides/most_likely_nucleotide_sequence_for_this_aminoacid_sequence.rb +1 -9
- data/lib/bioroebe/nucleotides/sanitize_nucleotide_sequence.rb +59 -18
- data/lib/bioroebe/nucleotides/show_nucleotide_sequence.rb +7 -7
- data/lib/bioroebe/parsers/genbank_parser.rb +347 -26
- data/lib/bioroebe/parsers/gff.rb +1 -9
- data/lib/bioroebe/patterns/scan_for_repeat.rb +1 -5
- data/lib/bioroebe/pdb/fetch_fasta_sequence_from_pdb.rb +1 -9
- data/lib/bioroebe/pdb/parse_mmCIF_file.rb +1 -9
- data/lib/bioroebe/pdb/parse_pdb_file.rb +4 -10
- data/lib/bioroebe/project/project.rb +1 -1
- data/lib/bioroebe/python/README.md +1 -0
- data/lib/bioroebe/python/__pycache__/mymodule.cpython-39.pyc +0 -0
- data/lib/bioroebe/python/gui/gtk3/all_in_one.css +4 -0
- data/lib/bioroebe/python/gui/gtk3/all_in_one.py +59 -0
- data/lib/bioroebe/python/gui/gtk3/widget1.py +20 -0
- data/lib/bioroebe/python/gui/tkinter/all_in_one.py +91 -0
- data/lib/bioroebe/python/mymodule.py +8 -0
- data/lib/bioroebe/python/protein_to_dna.py +33 -0
- data/lib/bioroebe/python/shell/shell.py +19 -0
- data/lib/bioroebe/python/to_rna.py +14 -0
- data/lib/bioroebe/python/toplevel_methods/convert_dna_to_aminoacid_sequence.py +137 -0
- data/lib/bioroebe/python/toplevel_methods/esystem.py +12 -0
- data/lib/bioroebe/python/toplevel_methods/open_in_browser.py +20 -0
- data/lib/bioroebe/python/toplevel_methods/palindromes.py +52 -0
- data/lib/bioroebe/python/toplevel_methods/rds.py +13 -0
- data/lib/bioroebe/python/toplevel_methods/shuffleseq.py +23 -0
- data/lib/bioroebe/python/toplevel_methods/three_delimiter.py +37 -0
- data/lib/bioroebe/python/toplevel_methods/time_and_date.py +43 -0
- data/lib/bioroebe/python/toplevel_methods/to_camelcase.py +21 -0
- data/lib/bioroebe/requires/require_cleave_and_digest.rb +3 -1
- data/lib/bioroebe/requires/require_the_bioroebe_project.rb +3 -1
- data/lib/bioroebe/sequence/alignment.rb +14 -4
- data/lib/bioroebe/sequence/dna.rb +1 -0
- data/lib/bioroebe/sequence/nucleotide_module/nucleotide_module.rb +28 -25
- data/lib/bioroebe/sequence/protein.rb +105 -3
- data/lib/bioroebe/sequence/rna.rb +220 -0
- data/lib/bioroebe/sequence/sequence.rb +128 -40
- data/lib/bioroebe/shell/menu.rb +3815 -3696
- data/lib/bioroebe/shell/misc.rb +9019 -3133
- data/lib/bioroebe/shell/readline/readline.rb +1 -1
- data/lib/bioroebe/shell/shell.rb +1137 -28
- data/lib/bioroebe/siRNA/siRNA.rb +81 -1
- data/lib/bioroebe/string_matching/find_longest_substring.rb +3 -2
- data/lib/bioroebe/string_matching/hamming_distance.rb +1 -9
- data/lib/bioroebe/taxonomy/class_methods.rb +3 -8
- data/lib/bioroebe/taxonomy/constants.rb +4 -3
- data/lib/bioroebe/taxonomy/edit.rb +2 -1
- data/lib/bioroebe/taxonomy/help/help.rb +10 -10
- data/lib/bioroebe/taxonomy/help/helpline.rb +2 -2
- data/lib/bioroebe/taxonomy/info/check_available.rb +15 -9
- data/lib/bioroebe/taxonomy/info/info.rb +18 -11
- data/lib/bioroebe/taxonomy/info/is_dna.rb +46 -36
- data/lib/bioroebe/taxonomy/interactive.rb +140 -104
- data/lib/bioroebe/taxonomy/menu.rb +27 -18
- data/lib/bioroebe/taxonomy/parse_fasta.rb +3 -1
- data/lib/bioroebe/taxonomy/shared.rb +1 -0
- data/lib/bioroebe/taxonomy/taxonomy.rb +1 -0
- data/lib/bioroebe/toplevel_methods/aminoacids_and_proteins.rb +31 -24
- data/lib/bioroebe/toplevel_methods/colourize_related_methods.rb +164 -0
- data/lib/bioroebe/toplevel_methods/databases.rb +1 -1
- data/lib/bioroebe/toplevel_methods/digest.rb +18 -8
- data/lib/bioroebe/toplevel_methods/fasta_and_fastq.rb +107 -63
- data/lib/bioroebe/toplevel_methods/file_and_directory_related_actions.rb +14 -2
- data/lib/bioroebe/toplevel_methods/frequencies.rb +8 -1
- data/lib/bioroebe/toplevel_methods/misc.rb +175 -11
- data/lib/bioroebe/toplevel_methods/nucleotides.rb +118 -46
- data/lib/bioroebe/toplevel_methods/open_in_browser.rb +2 -0
- data/lib/bioroebe/toplevel_methods/palindromes.rb +75 -47
- data/lib/bioroebe/toplevel_methods/taxonomy.rb +3 -3
- data/lib/bioroebe/toplevel_methods/to_camelcase.rb +5 -0
- data/lib/bioroebe/utility_scripts/align_open_reading_frames.rb +1 -9
- data/lib/bioroebe/utility_scripts/check_for_mismatches/check_for_mismatches.rb +1 -9
- data/lib/bioroebe/utility_scripts/compacter/compacter.rb +251 -0
- data/lib/bioroebe/utility_scripts/compseq/compseq.rb +1 -9
- data/lib/bioroebe/utility_scripts/consensus_sequence.rb +6 -6
- data/lib/bioroebe/utility_scripts/create_batch_entrez_file.rb +1 -9
- data/lib/bioroebe/utility_scripts/dot_alignment.rb +1 -9
- data/lib/bioroebe/utility_scripts/move_file_to_its_correct_location.rb +1 -4
- data/lib/bioroebe/utility_scripts/parse_taxonomy.rb +2 -2
- data/lib/bioroebe/utility_scripts/permutations.rb +36 -9
- data/lib/bioroebe/utility_scripts/showorf/constants.rb +0 -5
- data/lib/bioroebe/utility_scripts/showorf/reset.rb +1 -4
- data/lib/bioroebe/version/version.rb +2 -2
- data/lib/bioroebe/www/embeddable_interface.rb +121 -58
- data/lib/bioroebe/www/sinatra/sinatra.rb +186 -71
- data/lib/bioroebe/yaml/aminoacids/amino_acids_long_name_to_one_letter.yml +2 -2
- data/lib/bioroebe/yaml/aminoacids/weight_of_common_proteins.yml +17 -17
- data/lib/bioroebe/yaml/configuration/browser.yml +1 -1
- data/lib/bioroebe/yaml/configuration/temp_dir.yml +1 -1
- data/lib/bioroebe/yaml/consensus_sequences/consensus_sequences.yml +1 -0
- data/lib/bioroebe/yaml/genomes/README.md +3 -4
- data/lib/bioroebe/yaml/nucleotides/nucleotides.yml +5 -0
- data/lib/bioroebe/yaml/restriction_enzymes/restriction_enzymes.yml +57 -57
- data/spec/README.md +6 -0
- data/spec/project_wide_specification/classes.md +5 -0
- metadata +107 -70
- data/doc/setup.rb +0 -1655
- data/lib/bioroebe/fasta_and_fastq/parse_fasta/constants.rb +0 -50
- data/lib/bioroebe/fasta_and_fastq/parse_fasta/initialize.rb +0 -86
- data/lib/bioroebe/fasta_and_fastq/parse_fasta/menu.rb +0 -117
- data/lib/bioroebe/fasta_and_fastq/parse_fasta/misc.rb +0 -981
- data/lib/bioroebe/fasta_and_fastq/parse_fasta/report.rb +0 -156
- data/lib/bioroebe/fasta_and_fastq/parse_fasta/reset.rb +0 -128
- data/lib/bioroebe/genbank/genbank_parser.rb +0 -291
- data/lib/bioroebe/java/bioroebe/AllInOne.class +0 -0
- data/lib/bioroebe/java/bioroebe/Cat.class +0 -0
- data/lib/bioroebe/java/bioroebe/Codons.java +0 -22
- data/lib/bioroebe/java/bioroebe/IsPalindrome.class +0 -0
- data/lib/bioroebe/java/bioroebe/PartnerNucleotide.class +0 -0
- data/lib/bioroebe/java/bioroebe/PartnerNucleotide.java +0 -19
- data/lib/bioroebe/java/bioroebe/SanitizeNucleotideSequence.class +0 -0
- data/lib/bioroebe/java/bioroebe/ToplevelMethods.class +0 -0
- data/lib/bioroebe/java/bioroebe.jar +0 -0
- data/lib/bioroebe/shell/add.rb +0 -108
- data/lib/bioroebe/shell/assign.rb +0 -360
- data/lib/bioroebe/shell/chop_and_cut.rb +0 -281
- data/lib/bioroebe/shell/constants.rb +0 -166
- data/lib/bioroebe/shell/download.rb +0 -335
- data/lib/bioroebe/shell/enable_and_disable.rb +0 -158
- data/lib/bioroebe/shell/enzymes.rb +0 -310
- data/lib/bioroebe/shell/fasta.rb +0 -345
- data/lib/bioroebe/shell/gtk.rb +0 -76
- data/lib/bioroebe/shell/history.rb +0 -132
- data/lib/bioroebe/shell/initialize.rb +0 -217
- data/lib/bioroebe/shell/loop.rb +0 -74
- data/lib/bioroebe/shell/prompt.rb +0 -107
- data/lib/bioroebe/shell/random.rb +0 -289
- data/lib/bioroebe/shell/reset.rb +0 -335
- data/lib/bioroebe/shell/scan_and_parse.rb +0 -135
- data/lib/bioroebe/shell/search.rb +0 -337
- data/lib/bioroebe/shell/sequences.rb +0 -200
- data/lib/bioroebe/shell/show_report_and_display.rb +0 -2901
- data/lib/bioroebe/shell/startup.rb +0 -127
- data/lib/bioroebe/shell/taxonomy.rb +0 -14
- data/lib/bioroebe/shell/tk.rb +0 -23
- data/lib/bioroebe/shell/user_input.rb +0 -88
- data/lib/bioroebe/shell/xorg.rb +0 -45
- data/lib/bioroebe/utility_scripts/compacter.rb +0 -131
- /data/lib/bioroebe/java/bioroebe/{BisulfiteTreatment.java → src/BisulfiteTreatment.java} +0 -0
- /data/lib/bioroebe/java/bioroebe/{RemoveFile.class → src/RemoveFile.class} +0 -0
data/lib/bioroebe/shell/gtk.rb
DELETED
@@ -1,76 +0,0 @@
|
|
1
|
-
#!/usr/bin/ruby -w
|
2
|
-
# Encoding: UTF-8
|
3
|
-
# frozen_string_literal: true
|
4
|
-
# =========================================================================== #
|
5
|
-
# This file contains some GTK-related code, which allows us to load up
|
6
|
-
# the gtk GUI section of the traditional commandline programs.
|
7
|
-
# =========================================================================== #
|
8
|
-
# require 'bioroebe/shell/gtk.rb'
|
9
|
-
# =========================================================================== #
|
10
|
-
module Bioroebe
|
11
|
-
|
12
|
-
class Shell < ::Bioroebe::CommandlineApplication
|
13
|
-
|
14
|
-
# ========================================================================= #
|
15
|
-
# === load_gtk3_component_aminoacid_composition
|
16
|
-
# ========================================================================= #
|
17
|
-
def load_gtk3_component_aminoacid_composition
|
18
|
-
require 'bioroebe/gui/gtk3/aminoacid_composition/aminoacid_composition.rb'
|
19
|
-
Bioroebe::GUI::Gtk::AminoacidComposition.run(aminoacid_sequence?)
|
20
|
-
end
|
21
|
-
|
22
|
-
# ========================================================================= #
|
23
|
-
# === load_gtk
|
24
|
-
#
|
25
|
-
# Load my gtk module.
|
26
|
-
# ========================================================================= #
|
27
|
-
def load_gtk
|
28
|
-
begin
|
29
|
-
require 'gtk_paradise/require_gtk3.rb'
|
30
|
-
rescue LoadError; end
|
31
|
-
end
|
32
|
-
|
33
|
-
# ========================================================================= #
|
34
|
-
# === enable_gtk
|
35
|
-
#
|
36
|
-
# This enables gtk.
|
37
|
-
# ========================================================================= #
|
38
|
-
def enable_gtk
|
39
|
-
begin
|
40
|
-
if ENV['IS_ROEBE'].to_s
|
41
|
-
load_gtk
|
42
|
-
# =================================================================== #
|
43
|
-
# Pulling in the controller.rb file is enough to also require the
|
44
|
-
# other GTK-GUI components of the Bioroebe project.
|
45
|
-
# =================================================================== #
|
46
|
-
require 'bioroebe/gui/gtk3/controller/controller.rb'
|
47
|
-
end
|
48
|
-
return ::Bioroebe.controller # This will instantiate a new GTK widget.
|
49
|
-
rescue LoadError => error
|
50
|
-
e 'Failed to load GTK-related files. Showing the specific error next:'
|
51
|
-
pp error
|
52
|
-
end
|
53
|
-
end
|
54
|
-
|
55
|
-
# ========================================================================= #
|
56
|
-
# === start_gtk_controller
|
57
|
-
# ========================================================================= #
|
58
|
-
def start_gtk_controller
|
59
|
-
require 'bioroebe/gui/gtk3/controller/controller.rb'
|
60
|
-
::Bioroebe.run_gtk_controller
|
61
|
-
end
|
62
|
-
|
63
|
-
# ========================================================================= #
|
64
|
-
# === enable_gtk_section_antisensestrand
|
65
|
-
# ========================================================================= #
|
66
|
-
def enable_gtk_section_antisensestrand
|
67
|
-
require 'bioroebe/gui/gtk3/anti_sense_strand/anti_sense_strand.rb'
|
68
|
-
e 'Starting AntiSenseStrand ...'
|
69
|
-
Bioroebe::GUI::Gtk::AntiSenseStrand.start_gui_application
|
70
|
-
end
|
71
|
-
|
72
|
-
end; end
|
73
|
-
|
74
|
-
if __FILE__ == $PROGRAM_NAME
|
75
|
-
Bioroebe::Shell.new.enable_gtk_section_antisensestrand
|
76
|
-
end
|
@@ -1,132 +0,0 @@
|
|
1
|
-
#!/usr/bin/ruby -w
|
2
|
-
# Encoding: UTF-8
|
3
|
-
# frozen_string_literal: true
|
4
|
-
# =========================================================================== #
|
5
|
-
# Note that the word history means "user-inputted commands", in the
|
6
|
-
# context of this file here.
|
7
|
-
# =========================================================================== #
|
8
|
-
# require 'bioroebe/shell/history.rb'
|
9
|
-
# =========================================================================== #
|
10
|
-
module Bioroebe
|
11
|
-
|
12
|
-
class Shell < ::Bioroebe::CommandlineApplication
|
13
|
-
|
14
|
-
# ========================================================================= #
|
15
|
-
# === add_the_current_user_input_to_the_history
|
16
|
-
# ========================================================================= #
|
17
|
-
def add_the_current_user_input_to_the_history
|
18
|
-
# ======================================================================= #
|
19
|
-
# And add the user-input to the array that keeps track of it. This
|
20
|
-
# has to be done through a specific method, which can do additional
|
21
|
-
# checks before adding the user-input onto the history.
|
22
|
-
# ======================================================================= #
|
23
|
-
add_to_history(user_input?)
|
24
|
-
end
|
25
|
-
|
26
|
-
# ========================================================================= #
|
27
|
-
# === array_history?
|
28
|
-
#
|
29
|
-
# Access the input-history of the bioshell.
|
30
|
-
# ========================================================================= #
|
31
|
-
def array_history?
|
32
|
-
@internal_hash[:array_history]
|
33
|
-
end
|
34
|
-
|
35
|
-
# ========================================================================= #
|
36
|
-
# === add_to_history
|
37
|
-
#
|
38
|
-
# This method should be used consistently whenever content is added onto
|
39
|
-
# the history of the bioshell. Content in this context refers primarily
|
40
|
-
# to user-submitted input.
|
41
|
-
# ========================================================================= #
|
42
|
-
def add_to_history(i = user_input?)
|
43
|
-
if i.is_a? Array
|
44
|
-
i.each {|entry| add_to_history(entry) }
|
45
|
-
else
|
46
|
-
i = i.to_s.chomp
|
47
|
-
unless i.empty?
|
48
|
-
if array_history? and array_history?.respond_to?(:last)
|
49
|
-
last_history_element = array_history?.last # <- On startup there is no history, hence this check as safeguard.
|
50
|
-
if last_history_element
|
51
|
-
unless (last_history_element.strip == i.strip) # Only add if it is new input.
|
52
|
-
array_history? << i
|
53
|
-
if log_user_input?
|
54
|
-
what = "#{i}#{N}"
|
55
|
-
into = "#{bioshell_log_dir?}input_history.yml"
|
56
|
-
append_what_into(what, into)
|
57
|
-
end
|
58
|
-
end
|
59
|
-
else # This clause is valid for new entries.
|
60
|
-
array_history? << i
|
61
|
-
end
|
62
|
-
end
|
63
|
-
end
|
64
|
-
end
|
65
|
-
end
|
66
|
-
|
67
|
-
# ========================================================================= #
|
68
|
-
# === log_user_input?
|
69
|
-
#
|
70
|
-
# Delegate to the class method here, via this wrapper-method.
|
71
|
-
# ========================================================================= #
|
72
|
-
def log_user_input?
|
73
|
-
::Bioroebe::Configuration.log_user_input?
|
74
|
-
end
|
75
|
-
|
76
|
-
# ========================================================================= #
|
77
|
-
# === verbose_save_history_to_file
|
78
|
-
# ========================================================================= #
|
79
|
-
def verbose_save_history_to_file
|
80
|
-
erev 'We will next save the input-history into a file.'
|
81
|
-
save_history_to_file
|
82
|
-
end
|
83
|
-
|
84
|
-
# ========================================================================= #
|
85
|
-
# === save_history_to_file
|
86
|
-
#
|
87
|
-
# This method will save the history to a local file.
|
88
|
-
# ========================================================================= #
|
89
|
-
def save_history_to_file(
|
90
|
-
dataset = array_history?[0..-2]
|
91
|
-
)
|
92
|
-
what = YAML.dump(dataset) # Save all but the last entry. Last entry will be "replay" usually.
|
93
|
-
into = "#{log_dir?}replay_file.yml"
|
94
|
-
write_what_into(what, into)
|
95
|
-
end
|
96
|
-
|
97
|
-
# ========================================================================= #
|
98
|
-
# === last_inputted_command?
|
99
|
-
#
|
100
|
-
# This method will return the last user-inputted element.
|
101
|
-
# ========================================================================= #
|
102
|
-
def last_inputted_command?
|
103
|
-
if array_history? and array_history?.respond_to?(:last)
|
104
|
-
return array_history?.last
|
105
|
-
end
|
106
|
-
end
|
107
|
-
|
108
|
-
# ========================================================================= #
|
109
|
-
# === show_history (history tag)
|
110
|
-
#
|
111
|
-
# Method to show the history.
|
112
|
-
# ========================================================================= #
|
113
|
-
def show_history
|
114
|
-
print_rev
|
115
|
-
cliner {
|
116
|
-
erev "Now showing the #{sfancy('history')}#{rev} of the BioShell:"
|
117
|
-
}
|
118
|
-
array_history = array_history?
|
119
|
-
if array_history.empty?
|
120
|
-
erev 'No input-history was used yet.'
|
121
|
-
else
|
122
|
-
array_history.each_with_index {|item, index|
|
123
|
-
index += 1
|
124
|
-
_ = ' - '.dup # Need to unfreeze the string.
|
125
|
-
_ << ' ' if array_history.size > 9 and index.to_s.size < 2
|
126
|
-
_ << '('+simp((index).to_s)+rev+') '+item.to_s
|
127
|
-
erev _
|
128
|
-
}
|
129
|
-
end
|
130
|
-
end
|
131
|
-
|
132
|
-
end; end
|
@@ -1,217 +0,0 @@
|
|
1
|
-
#!/usr/bin/ruby -w
|
2
|
-
# Encoding: UTF-8
|
3
|
-
# frozen_string_literal: true
|
4
|
-
# =========================================================================== #
|
5
|
-
# require 'bioroebe/shell/initialize.rb'
|
6
|
-
# =========================================================================== #
|
7
|
-
require 'bioroebe/base/commandline_application/commandline_application.rb'
|
8
|
-
|
9
|
-
module Bioroebe
|
10
|
-
|
11
|
-
class Shell < ::Bioroebe::CommandlineApplication
|
12
|
-
|
13
|
-
require 'bioroebe/toplevel_methods/statistics.rb'
|
14
|
-
require 'bioroebe/shell/startup.rb'
|
15
|
-
require 'bioroebe/shell/readline/readline.rb' # ← Needed in this file here.
|
16
|
-
|
17
|
-
# ========================================================================= #
|
18
|
-
# === initialize
|
19
|
-
# ========================================================================= #
|
20
|
-
def initialize(
|
21
|
-
i = ARGV
|
22
|
-
)
|
23
|
-
reset
|
24
|
-
set_commandline_arguments(i)
|
25
|
-
# ======================================================================= #
|
26
|
-
# Intercept some important commandline arguments next.
|
27
|
-
# ======================================================================= #
|
28
|
-
case first?
|
29
|
-
# ======================================================================= #
|
30
|
-
# === bioshell --controller
|
31
|
-
# ======================================================================= #
|
32
|
-
when /^-?-?controller$/i
|
33
|
-
require 'bioroebe/gui/gtk3/controller/controller.rb'
|
34
|
-
::Bioroebe.run_gtk_controller
|
35
|
-
exit_program
|
36
|
-
# ======================================================================= #
|
37
|
-
# === bioshell --do-not-create-directories-on-startup
|
38
|
-
# === bioshell --do-not-create-directories
|
39
|
-
#
|
40
|
-
# Do not create directories on startup.
|
41
|
-
#
|
42
|
-
# Invocation example:
|
43
|
-
#
|
44
|
-
# bioshell --do-not-create-directories-on-startup
|
45
|
-
#
|
46
|
-
# ======================================================================= #
|
47
|
-
when /^-?-?do(-|_| )?not(-|_| )?create(-|_| )?directories(-|_| )?on(-|_| )?startup$/i,
|
48
|
-
/^-?-?do(-|_| )?not(-|_| )?create(-|_| )?directories$/i
|
49
|
-
@internal_hash[:create_directories_on_startup_of_the_shell] = false
|
50
|
-
# ======================================================================= #
|
51
|
-
# === bioroebe --protein-to-dna
|
52
|
-
#
|
53
|
-
# This entry point will try to start the ruby-gtk3 protein-to-DNA
|
54
|
-
# converting widget.
|
55
|
-
# ======================================================================= #
|
56
|
-
when /^-?-?protein(-|_| )?to(-|_| )?dna$/i
|
57
|
-
require 'bioroebe/gui/gtk3/protein_to_DNA/protein_to_DNA.rb'
|
58
|
-
::Bioroebe::GUI::Gtk::ProteinToDNA.run_gtk3_widget
|
59
|
-
exit
|
60
|
-
# ======================================================================= #
|
61
|
-
# === bioroebe --help
|
62
|
-
#
|
63
|
-
# This entry-point will quickly show which options are available for
|
64
|
-
# the bioshell.
|
65
|
-
# ======================================================================= #
|
66
|
-
when /^-?-?help$/
|
67
|
-
show_commandline_options
|
68
|
-
# ======================================================================= #
|
69
|
-
# === bioshell --permanently-disable-startup-intro
|
70
|
-
# === bioshell --permanently-disable-startup-notice
|
71
|
-
# === bioshell --permanently-no-startup-intro
|
72
|
-
# === bioshell --permanently-no-startup-info
|
73
|
-
# ======================================================================= #
|
74
|
-
when /^-?-?permanently(-|_)?disable(-|_)?startup(-|_)?intro$/,
|
75
|
-
/^-?-?permanently(-|_)?disable(-|_)?startup(-|_)?notice$/,
|
76
|
-
/^-?-?permanently(-|_)?no(-|_)?startup(-|_)?intro$/,
|
77
|
-
/^-?-?permanently(-|_)?no(-|_)?startup(-|_)?info$/
|
78
|
-
permanently_disable_startup_intro
|
79
|
-
# ======================================================================= #
|
80
|
-
# === :no_commandline_arguments
|
81
|
-
# ======================================================================= #
|
82
|
-
when :no_commandline_arguments
|
83
|
-
# ===================================================================== #
|
84
|
-
# Simply pass through in this case.
|
85
|
-
# ===================================================================== #
|
86
|
-
# ======================================================================= #
|
87
|
-
# === :exit_gracefully
|
88
|
-
# ======================================================================= #
|
89
|
-
when :exit_gracefully
|
90
|
-
set_exit_gracefully
|
91
|
-
# ======================================================================= #
|
92
|
-
# === bioroebe --silent-startup
|
93
|
-
# ======================================================================= #
|
94
|
-
when /^-?-?silent(-|_)?startup$/,
|
95
|
-
/^-?-?silent$/
|
96
|
-
do_a_silent_startup
|
97
|
-
# ======================================================================= #
|
98
|
-
# === bioroebe --random-aminoacids=33
|
99
|
-
# === bioroebe --n-aminoacids=33
|
100
|
-
# ======================================================================= #
|
101
|
-
when /^-?-?random(-|_)?aminoacids=(.+)$/i,
|
102
|
-
/^-?-?n(-|_)?aminoacids=(.+)$/i
|
103
|
-
n_aminoacids = $2.to_s.dup
|
104
|
-
::Bioroebe.create_random_aminoacids(n_aminoacids) { :do_report }
|
105
|
-
exit
|
106
|
-
# ======================================================================= #
|
107
|
-
# === bioroebe --rnafold=cdna.MT.fa
|
108
|
-
# ======================================================================= #
|
109
|
-
when /^-?-?rnafold=(.+)$/
|
110
|
-
try_to_run_rnalfold_on_this_file($1.to_s.dup)
|
111
|
-
exit
|
112
|
-
# ======================================================================= #
|
113
|
-
# === bioroebe --fasta=/Depot/Bioroebe/Arabidopsis_thaliana_chromosome_5_sequence.fasta
|
114
|
-
# ======================================================================= #
|
115
|
-
when /^-?-?fasta=(.+)$/
|
116
|
-
this_fasta_file = $1.to_s.dup
|
117
|
-
if File.exist?
|
118
|
-
handle_fasta(this_fasta_file)
|
119
|
-
else
|
120
|
-
e 'No file could be found at `'+sfile(this_fasta_file)+'`.'
|
121
|
-
end
|
122
|
-
# ======================================================================= #
|
123
|
-
# === bioroebe --n-fasta-entries
|
124
|
-
#
|
125
|
-
# Usage example:
|
126
|
-
#
|
127
|
-
# cd /root/Bioroebe/Downloads/; bioroebe --n-fasta-entries
|
128
|
-
#
|
129
|
-
# ======================================================================= #
|
130
|
-
when /^-?-?n(-|_)?fasta(-|_)?entries$/
|
131
|
-
require 'bioroebe/fasta/display_how_many_fasta_entries_are_in_this_directory.rb'
|
132
|
-
::Bioroebe::DisplayHowManyFastaEntriesAreInThisDirectory.new
|
133
|
-
exit
|
134
|
-
# ======================================================================= #
|
135
|
-
# === bioroebe --split-this-fasta-file-into-chromosomes=Mus_musculus.GRCm38.ncrna.fa
|
136
|
-
# ======================================================================= #
|
137
|
-
when /^-?-?split(-|_)?this(-|_)?fasta(-|_)?file(-|_)?into(-|_)?chromosomes=(.+)$/i # $6
|
138
|
-
_ = $6.to_s.dup
|
139
|
-
require 'bioroebe/fasta/split_this_fasta_file_into_chromosomes/split_this_fasta_file_into_chromosomes.rb'
|
140
|
-
::Bioroebe::SplitThisFastaFileIntoChromosomes.new(_)
|
141
|
-
exit
|
142
|
-
# ======================================================================= #
|
143
|
-
# === bioroebe --stats
|
144
|
-
#
|
145
|
-
# This entry-point will show some simple fasta-statistics, from
|
146
|
-
# the current directory.
|
147
|
-
#
|
148
|
-
# Usage example:
|
149
|
-
#
|
150
|
-
# cd /root/Bioroebe/Downloads/; bioroebe --stats
|
151
|
-
#
|
152
|
-
# ======================================================================= #
|
153
|
-
when /^-?-?stats$/i,
|
154
|
-
/^-?-?statistics$/i,
|
155
|
-
/^-?-?fasta(-|_)?stats$/i
|
156
|
-
require 'bioroebe/fasta/show_fasta_statistics.rb'
|
157
|
-
::Bioroebe.show_fasta_statistics(Dir['*'])
|
158
|
-
exit
|
159
|
-
# ======================================================================= #
|
160
|
-
# === bioroebe --download=ftp://ftp.ensembl.org/pub/release-92/gtf/mus_musculus/
|
161
|
-
#
|
162
|
-
# This entry point allows us to download a remote program.
|
163
|
-
#
|
164
|
-
# Invocation example:
|
165
|
-
#
|
166
|
-
# bioroebe --download=ftp://ftp.ensembl.org/pub/release-92/gtf/mus_musculus/
|
167
|
-
# bioroebe --download ftp://ftp.ensembl.org/pub/release-92/gtf/mus_musculus/
|
168
|
-
#
|
169
|
-
# Note that the second variant currently (April 2020) does not work -
|
170
|
-
# let's see if we need it again in the future.
|
171
|
-
# ======================================================================= #
|
172
|
-
when /^-?-?download=(.+)/
|
173
|
-
::Bioroebe.download($1.to_s.dup)
|
174
|
-
# ======================================================================= #
|
175
|
-
# === bioroebe --sequence=150
|
176
|
-
#
|
177
|
-
# This entry point allows us to use any sequence, on startup.
|
178
|
-
#
|
179
|
-
# Invocation example:
|
180
|
-
#
|
181
|
-
# bioroebe --sequence=1505
|
182
|
-
#
|
183
|
-
# ======================================================================= #
|
184
|
-
when /^-?-?sequence (.+)/,
|
185
|
-
/^-?-?sequence=(.+)/
|
186
|
-
set_dna($1.to_s.dup, :be_quiet) # Be quiet here when doing the assignment.
|
187
|
-
# ======================================================================= #
|
188
|
-
# === bioroebe --show-exon-statistics-for=/tmp/praktikum/Mouse/chromosome_8/parsed/cdna.8.L100.global.gtf
|
189
|
-
# ======================================================================= #
|
190
|
-
when /^-?-?show(-|_)?exon(-|_)?statistics(-|_)?for=(.+)$/ # === $4
|
191
|
-
::Bioroebe.show_exon_statistics($4.to_s.dup)
|
192
|
-
exit
|
193
|
-
# ======================================================================= #
|
194
|
-
# === bioroebe --sinatra
|
195
|
-
# ======================================================================= #
|
196
|
-
when /^-?-?sinatra$/i
|
197
|
-
do_start_the_sinatra_interface
|
198
|
-
return
|
199
|
-
end
|
200
|
-
run
|
201
|
-
end
|
202
|
-
|
203
|
-
# ========================================================================= #
|
204
|
-
# === run
|
205
|
-
# ========================================================================= #
|
206
|
-
def run
|
207
|
-
setup_readline if use_readline?
|
208
|
-
perform_startup_actions # Should come before we show the welcome message.
|
209
|
-
show_welcome_message
|
210
|
-
menu(
|
211
|
-
commandline_arguments?,
|
212
|
-
:be_quiet_if_the_input_was_not_found
|
213
|
-
)
|
214
|
-
enter_main_loop # Enter the main user-input loop here.
|
215
|
-
end
|
216
|
-
|
217
|
-
end; end
|
data/lib/bioroebe/shell/loop.rb
DELETED
@@ -1,74 +0,0 @@
|
|
1
|
-
#!/usr/bin/ruby -w
|
2
|
-
# Encoding: UTF-8
|
3
|
-
# frozen_string_literal: true
|
4
|
-
# =========================================================================== #
|
5
|
-
# require 'bioroebe/shell/loop.rb'
|
6
|
-
# =========================================================================== #
|
7
|
-
module Bioroebe
|
8
|
-
|
9
|
-
class Shell < ::Bioroebe::CommandlineApplication
|
10
|
-
|
11
|
-
# ========================================================================= #
|
12
|
-
# === enter_main_loop (loop tag)
|
13
|
-
#
|
14
|
-
# This is the main-loop of the shell.
|
15
|
-
# ========================================================================= #
|
16
|
-
def enter_main_loop
|
17
|
-
exit_from_the_main_loop = false
|
18
|
-
loop {
|
19
|
-
begin
|
20
|
-
read_user_input
|
21
|
-
add_the_current_user_input_to_the_history
|
22
|
-
if @internal_hash[:user_input]
|
23
|
-
unless @internal_hash[:user_input].empty?
|
24
|
-
# =============================================================== #
|
25
|
-
# Pass the user input into the menu next. We will use an
|
26
|
-
# Array for this, as user input such as "ls; random 20" should
|
27
|
-
# also be valid.
|
28
|
-
# =============================================================== #
|
29
|
-
user_input = [ @internal_hash[:user_input] ].flatten
|
30
|
-
user_input.each {|use_this_as_user_input|
|
31
|
-
result_from_the_menu = menu(
|
32
|
-
use_this_as_user_input
|
33
|
-
)
|
34
|
-
case result_from_the_menu
|
35
|
-
when :exit_gracefully
|
36
|
-
say_goodbye
|
37
|
-
exit_from_the_main_loop = true
|
38
|
-
# =============================================================== #
|
39
|
-
# === :break
|
40
|
-
# =============================================================== #
|
41
|
-
when :break
|
42
|
-
case exit_the_shell_how?
|
43
|
-
# ============================================================= #
|
44
|
-
# === :exit_gracefully
|
45
|
-
# ============================================================= #
|
46
|
-
when :exit_gracefully # User wants to exit here.
|
47
|
-
say_goodbye
|
48
|
-
exit_from_the_main_loop = true
|
49
|
-
# ============================================================= #
|
50
|
-
# === :instantly
|
51
|
-
# ============================================================= #
|
52
|
-
when :instantly
|
53
|
-
exit_from_the_main_loop = true
|
54
|
-
end
|
55
|
-
exit_from_the_main_loop = true
|
56
|
-
else
|
57
|
-
end
|
58
|
-
}
|
59
|
-
@internal_hash[:user_input] = nil # And clear it here again.
|
60
|
-
end
|
61
|
-
end
|
62
|
-
# ===================================================================== #
|
63
|
-
# Rescue sigints (aka ctrl-c) and SystemExit.
|
64
|
-
# ===================================================================== #
|
65
|
-
rescue Interrupt, SystemExit
|
66
|
-
e
|
67
|
-
end
|
68
|
-
if exit_from_the_main_loop == true
|
69
|
-
break
|
70
|
-
end
|
71
|
-
}
|
72
|
-
end; alias loop_get_user_input enter_main_loop # Legacy name.
|
73
|
-
|
74
|
-
end; end
|
@@ -1,107 +0,0 @@
|
|
1
|
-
#!/usr/bin/ruby -w
|
2
|
-
# Encoding: UTF-8
|
3
|
-
# frozen_string_literal: true
|
4
|
-
# =========================================================================== #
|
5
|
-
# require 'bioroebe/shell/prompt.rb'
|
6
|
-
# =========================================================================== #
|
7
|
-
module Bioroebe
|
8
|
-
|
9
|
-
class Shell < ::Bioroebe::CommandlineApplication
|
10
|
-
|
11
|
-
require 'bioroebe/constants/misc.rb'
|
12
|
-
|
13
|
-
# ========================================================================= #
|
14
|
-
# === use_which_prompt?
|
15
|
-
# ========================================================================= #
|
16
|
-
def use_which_prompt?
|
17
|
-
@internal_hash[:prompt_to_use]
|
18
|
-
end
|
19
|
-
|
20
|
-
# ========================================================================= #
|
21
|
-
# === set_use_this_prompt
|
22
|
-
#
|
23
|
-
# This method can be used to set the prompt of the bio-shell.
|
24
|
-
# ========================================================================= #
|
25
|
-
def set_use_this_prompt(i = NAME_OF_BIO_SHELL)
|
26
|
-
case i # case tag
|
27
|
-
# ======================================================================= #
|
28
|
-
# === NONE
|
29
|
-
# ======================================================================= #
|
30
|
-
when /^NONE$/i,
|
31
|
-
'empty',
|
32
|
-
:empty
|
33
|
-
i = "\n"
|
34
|
-
do_not_use_working_directory_as_prompt
|
35
|
-
# ======================================================================= #
|
36
|
-
# === pwd
|
37
|
-
# ======================================================================= #
|
38
|
-
when 'pwd', :cwd, nil
|
39
|
-
i = return_default_prompt
|
40
|
-
do_use_working_directory_as_prompt
|
41
|
-
# ======================================================================= #
|
42
|
-
# === REVERT
|
43
|
-
# ======================================================================= #
|
44
|
-
when /^REVERT$/i,
|
45
|
-
/^DEFAULT$/i,
|
46
|
-
:default
|
47
|
-
i = NAME_OF_BIO_SHELL
|
48
|
-
do_not_use_working_directory_as_prompt
|
49
|
-
end
|
50
|
-
@internal_hash[:prompt_to_use] = i
|
51
|
-
end; alias set_prompt set_use_this_prompt # === set_prompt
|
52
|
-
|
53
|
-
# ========================================================================= #
|
54
|
-
# === return_pwd
|
55
|
-
# ========================================================================= #
|
56
|
-
def return_pwd
|
57
|
-
("#{Dir.pwd}/").squeeze('/')
|
58
|
-
end; alias return_default_prompt return_pwd # === return_default_prompt
|
59
|
-
|
60
|
-
# ========================================================================= #
|
61
|
-
# === obtain_current_prompt
|
62
|
-
#
|
63
|
-
# This is essentially a getter-method over the instance variable
|
64
|
-
# called @internal_hash[:prompt_to_use].
|
65
|
-
# ========================================================================= #
|
66
|
-
def obtain_current_prompt
|
67
|
-
if @internal_hash[:use_working_directory_as_prompt]
|
68
|
-
@internal_hash[:prompt_to_use] = return_pwd
|
69
|
-
end
|
70
|
-
@internal_hash[:prompt_to_use]
|
71
|
-
end
|
72
|
-
|
73
|
-
# ========================================================================= #
|
74
|
-
# === obtain_current_prompt_while_honouring_colours
|
75
|
-
# ========================================================================= #
|
76
|
-
def obtain_current_prompt_while_honouring_colours
|
77
|
-
_ = obtain_current_prompt
|
78
|
-
if _ and use_colours?
|
79
|
-
_ = "#{Colours::TEAL}#{_}#{rev}"
|
80
|
-
end
|
81
|
-
return _
|
82
|
-
end
|
83
|
-
|
84
|
-
# ========================================================================= #
|
85
|
-
# === restore_default_prompt
|
86
|
-
# ========================================================================= #
|
87
|
-
def restore_default_prompt
|
88
|
-
set_prompt :default
|
89
|
-
end
|
90
|
-
|
91
|
-
# ========================================================================= #
|
92
|
-
# === use_working_directory_as_prompt
|
93
|
-
#
|
94
|
-
# Use this method if you wish to use the working-directory as your prompt.
|
95
|
-
# ========================================================================= #
|
96
|
-
def do_use_working_directory_as_prompt
|
97
|
-
@internal_hash[:use_working_directory_as_prompt] = true
|
98
|
-
end; alias use_working_directory_as_prompt do_use_working_directory_as_prompt # === use_working_directory_as_prompt
|
99
|
-
|
100
|
-
# ========================================================================= #
|
101
|
-
# === do_not_use_working_directory_as_prompt
|
102
|
-
# ========================================================================= #
|
103
|
-
def do_not_use_working_directory_as_prompt
|
104
|
-
@internal_hash[:use_working_directory_as_prompt] = false
|
105
|
-
end
|
106
|
-
|
107
|
-
end; end
|