Class: RBT::Cookbooks::AllUrls

Inherits:
Base show all
Defined in:
lib/rbt/cookbooks/all_urls/all_urls.rb

Overview

Cookbooks::AllUrls

Constant Summary

Constants inherited from LeanPrototype

LeanPrototype::ALL_COLOUR_METHODS, LeanPrototype::ARRAY_KDE_KONSOLE_COLOURS_IN_USE, LeanPrototype::DAY_NAMES, LeanPrototype::NAMESPACE, LeanPrototype::SILENT_REDIRECTION

Instance Method Summary collapse

Methods inherited from Base

#cat, #cd_back_to_the_current_working_directory, #consider_reporting_how_many_programs_are_registered, #cookbook_files?, #copy_recursively, #delete_code_of_conduct?, #determine_appdir_prefix_from_this_input, #directory_validation?, #do_not_show_names, #fast_return_file_size_of_this_program, #file_last_symlinked_program?, #file_programs_version_url, #gem_version, #is_a_64bit_system?, #is_ccache_available?, #is_porg_available?, #is_this_binary_registered?, #is_this_program_included?, #make_command?, #make_install_command?, #new_cookbook_instance_for, #program_exists?, #publish_list_of_all_programs_version, #rcp, registered_binaries?, #remove_symlink, #rename_kde_konsole_tab, #repackage, #report_n_programs, #report_working_directory, #return_compile_time_statistics, #return_n_random_characters, #return_version_of_this_program, #run_make_then_make_install, #sanitize_url1_entry, #set_source_directory, #show_overview_over_available_utility_scripts, #symlink_all_files_from_this_directory_to_that_directory, #system_tags?, #upload_list_of_all_programs_version, #use_yaml_database_for_tags?, #warn_and_exit, #wget

Methods inherited from LeanPrototype

#a_or_an?, #abbreviations?, #absolute_path, #action, #add_to_the_commandline_arguments, #all_binaries?, #all_files_from, #all_libraries?, #allowed_cookbook_entries?, #appdir_location_of?, #append_onto_the_internal_hash, #append_what_into, #archive_type_of?, #available_programs?, #be_quiet?, #be_verbose?, #begins_with_a_comment?, #capitalize_first_alphabetical_character, #cd_to_the_log_directory, #cd_to_the_temp_directory, #change_directory, #change_permission, #cheering_person?, #chmod, #chop_off_archive, #clear_commandline_arguments, #cliner, #coloured_and_padded_e, #coloured_and_padded_esystem, #coloured_esystem, #colourize_directory_for_system_results, #colourize_this_error, #colourize_this_file_path, #colourize_this_warning, #commandline_arguments?, #commandline_arguments_without_hyphens?, #comment, #convert_dd_mm_yyyy_to_its_long_variant, #convert_env_variable, #copy_directory, #copy_files, #cpr, #create_directory, #current_hour?, #dd_mmm_yyy, #debug, #debug?, #directory_expanded_cookbooks?, #disable_colours, #display_md5sum?, #do_not_debug, #does_the_cookbook_include_this_program?, #does_this_expanded_cookbook_file_exist_for_this_program?, #does_this_file_exist?, #does_this_file_exist_and_is_it_a_file?, #e, #eblue, #ecomment, #ecrimson, #edir, #editor?, #efancy, #eimp, #enable_colours, #enable_debug, #ensure_main_encoding_for, #eparse, #esystem, #esystem_gold, #etomato, #ewarn, #exit_program, #expanded_cookbooks_directory_exists?, #extract_this_archive, #extract_to?, #file_compiled_programs?, #file_dirname_retaining_trailing_slash, #file_predefined_installation_instructions?, #file_specification_of_registered_cookbook_entries, #find_cookbook_alias_for, #find_this_yaml_file, #first_argument?, #first_non_hyphen_argument?, #get_all_directories_from, #get_all_files_from, #get_all_programs, #get_date, #get_extended_date, #get_files_and_directories_from, #go_to_base_dir, #home_dir?, #host_system?, #infer_the_namespace, #internal_hash?, #internal_hash_set_commandline_arguments, #is_an_archive?, #is_directory?, #is_file?, #is_github_url?, #is_make_available?, #is_meson_installed?, #is_on_gobolinux?, #is_on_windows?, #is_roebe?, #is_superuser?, #is_symlink?, #is_this_a_header?, #is_this_a_library?, #is_this_program_included?, #iso_encoding?, #load_dataset_from_this_expanded_cookbook, #load_yaml, #load_yaml_file_from_the_cookbook_directory_for_this_program, #log_directory?, #main_encoding?, #meson_build_file_exists?, #months?, #move_file, #n_programs_are_available?, #n_programs_available?, #namespace?, #no_directory_exists_at, #no_directory_was_found_at, #no_opn, #no_such_file_exists, #open_in_browser, #open_in_editor, #opncomment, #opne, #opnef, #opnerev, #opnerror, #opnesystem, #opnewarn, #opnfancy, #opnn, #otomato, #packages_directory?, #path_to_this_expanded_cookbooks_dataset, #pkgconfig_directory?, #populate_the_internal_hash_with_default_values, #predefined_installation_instructions?, #prepend_this_commandline_argument, #program_version_of?, #project_base_directory?, #project_yaml_directory?, #query_path?, #rarrow?, #read_file, #read_file_in_default_encoding, #read_file_with_default_encoding, #readlines, #readlines_with_proper_encoding, #register_sigint, #registered_cookbook_entries?, #remove, #remove_archive_from_the_end, #remove_comments_from_each_line, #remove_directory, #remove_double_slashes, #remove_file, #remove_newlines, #remove_parens, #remove_symlink, #remove_the_first_commandline_argument, #remove_this_commandline_argument, #remove_this_entry_from_the_commandline_arguments, #remove_trailing_ANSII_escape_code, #remove_unnecessary_data_from_url, #rename, #report_pwd, #require_the_rbt_aliases, #reset_the_internal_hash, #return_all_archives_from_this_directory, #return_appdir_prefix, #return_commandline_arguments_with_leading_hyphens, #return_current_hour_minutes_second, #return_date, #return_day_of_the_month_based_on_utc, #return_full_time, #return_hours_minutes_seconds_based_on_utc, #return_location_to_this_programs_yaml_file, #return_month_based_on_this_number, #return_month_based_on_utc, #return_opnn, #return_program_name, #return_program_name_for_gobolinux_systems, #return_program_name_via_program_information, #return_pwd, #return_unicode_warning_symbol_or_empty_string, #return_utc, #return_utc_time_in_a_format_similar_to_slackware, #return_weekday_based_on_utc, #return_year_based_on_utc, #rev, #rpn, #run_simulation=, #run_simulation?, #sdir, #sdir_return_pwd, #set_be_silent, #set_be_verbose, #set_first_commandline_argument, #set_namespace, #set_use_colours, #set_use_opn, #set_xorg_buffer, #sfancy, #sfile, #silent_redirection?, #silently_create_this_directory_if_it_does_not_yet_exist, #simp, #source_base_directory?, #ssym, #stderr, #store_into_this_directory?, #string_right_arrow?, #swarn, #symlink, #sysbin_directory?, #sysetc_directory?, #sysinclude_directory?, #syslib_directory?, #sysshare_directory?, #system_directory?, #temp_directory?, #to_bool, #to_camelcase, #to_iso_encoding, #to_unicode, #today?, #touch, #try_to_require_beautiful_url, #try_to_require_the_environment_information_gem, #try_to_require_the_extracter_gem, #try_to_require_the_open_gem, #try_to_require_the_xorg_buffer, #try_to_require_wget, #try_to_return_a_special_compile_component, #unicode_cliner, #unicode_middle_cliner, #use_colours=, #use_colours?, #use_opn=, #utf_encoding?, #verbose_truth, #word_wrap, #write_what_into, #write_what_into_via_unicode, #yes_or_no

Constructor Details

#initialize(i = nil, run_already = true) ⇒ AllUrls

#

initialize

#


36
37
38
39
40
41
42
43
# File 'lib/rbt/cookbooks/all_urls/all_urls.rb', line 36

def initialize(
    i           = nil,
    run_already = true
  )
  reset
  set_commandline_arguments(i)
  run if run_already
end

Instance Method Details

#check_for_commandline_argumentsObject

#

check_for_commandline_arguments

We will work on a String - no need to care for Symbols here.

#


87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
# File 'lib/rbt/cookbooks/all_urls/all_urls.rb', line 87

def check_for_commandline_arguments
  case commandline_arguments?.join(' ').strip.to_s # case tag
  # ======================================================================= #
  # === all_urls --no-opn
  # ======================================================================= #
  when /-?-?no(_|-)?opn/,'disable_opn'
    no_opn
  # ======================================================================= #
  # === all_urls --help
  # ======================================================================= #
  when /^-?-?help/i
    show_help
  # when 'MISSING','--missing','missing'
  #   @show_only_missing_programs = true
  end
end
#
#


124
125
126
# File 'lib/rbt/cookbooks/all_urls/all_urls.rb', line 124

def colourize_this_link(i)
  palevioletred(i)
end

#data?Boolean Also known as: result?

#

data?

#

Returns:

  • (Boolean)


117
118
119
# File 'lib/rbt/cookbooks/all_urls/all_urls.rb', line 117

def data?
  @array
end

#display_start_message_to_the_userObject

#

display_start_message_to_the_user

#


77
78
79
80
# File 'lib/rbt/cookbooks/all_urls/all_urls.rb', line 77

def display_start_message_to_the_user
  opne 'We will gather all URLs next - this may take a '\
       'short while. Please remain patient.'
end

#report_result(i = data? ) ⇒ Object

#

report_result

Here we can report the result, which is usually what we stored in our main array called @array.

#


149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
# File 'lib/rbt/cookbooks/all_urls/all_urls.rb', line 149

def report_result(
    i = data?
  )
  index_counter = 0
  buffer_string = ''.dup # This will become the Xorg buffer-string.
  pad_right = ' ' * 33
  # ======================================================================= #
  # Next we iterate over our result.
  # ======================================================================= #
  i.each {|name_of_the_program, remote_url1, remote_url2|
    string_to_display = ''.dup
    name_of_the_program = name_of_the_program.strip
    increase_index_counter = true
    remote_url1 = remote_url1.to_s.strip
    index_counter += 1 if increase_index_counter
    colourized_counter = index_counter.to_s.rjust(7)
    colourized_counter = slateblue(index_counter)
    string_to_display << ('('+colourized_counter+') ').rjust(15)
    # ===================================================================== #
    # Build the return String next.
    # ===================================================================== #
    remote_url1 = colourize_this_link(remote_url1)
    string_to_display = ''.dup
    string_to_display << name_of_the_program.ljust(30)+
                         steelblue('')
    string_to_display << remote_url1.strip.ljust(40)+N
    buffer_string << string_to_display
    if show_url2?
      remote_url2 = pad_right+remote_url2.strip
      buffer_string << string_to_display
      string_to_display << colourize_this_link(
        remote_url2
      )+N
      buffer_string << N
    end
    buffer_string << string_to_display
    e string_to_display
  }
  # ======================================================================= #
  # Also assign this to the xorg buffer.
  # ======================================================================= #
  set_the_xorg_buffer_next(buffer_string)
end

#resetObject

#

reset (reset tag)

#


48
49
50
51
52
53
54
55
56
57
58
# File 'lib/rbt/cookbooks/all_urls/all_urls.rb', line 48

def reset
  super()
  infer_the_namespace
  try_to_require_the_xorg_buffer
  # === @xorg_buffer
  @xorg_buffer = nil
  @array = []
  @use_opn = true # Whether to call opnn() or whether we don't.
  # === @also_show_url2
  @also_show_url2 = true # <- Whether to try to show url2, too.
end

#runObject

#

run (run tag)

#


210
211
212
213
214
215
216
217
218
219
220
221
222
# File 'lib/rbt/cookbooks/all_urls/all_urls.rb', line 210

def run
  check_for_commandline_arguments
  display_start_message_to_the_user
  all_programs = available_programs?
  all_programs.each {|program|
    result = RBT.find_url_for(program) # bl $COOKBOOKS/module_methods/module_methods.rb
    url1 = result.first.to_s.strip
    url2 = result.last.to_s.strip
    @array << [program, url1, url2]
  }
  report_result
  save_result
end

#save_result(into = "#{log_dir?}all_remote_webpages_of_the_programs.md", xorg_buffer = @xorg_buffer) ⇒ Object

#

save_result

#


131
132
133
134
135
136
137
138
139
140
141
# File 'lib/rbt/cookbooks/all_urls/all_urls.rb', line 131

def save_result(
    into        = "#{log_dir?}all_remote_webpages_of_the_programs.md",
    xorg_buffer = @xorg_buffer
  )
  if xorg_buffer
    what = xorg_buffer
    opne "#{rev}We will store this result in the "\
         "file `#{sfile(into)}#{rev}`."
    write_what_into(what, into)
  end
end

#set_the_xorg_buffer_next(i = '') ⇒ Object

#

set_the_xorg_buffer_next

#


196
197
198
199
200
201
202
203
204
205
# File 'lib/rbt/cookbooks/all_urls/all_urls.rb', line 196

def set_the_xorg_buffer_next(i = '')
  if i.empty?
    opne 'We can not set the xorg buffer as the input is empty.'
  else
    e; opne 'We will set the xorgbuffer next with the above '\
            'programs as our result.'
    @xorg_buffer = i
    set_xorg_buffer(@xorg_buffer)
  end
end

#show_helpObject

#

show_help (help tag)

#


107
108
109
110
111
112
# File 'lib/rbt/cookbooks/all_urls/all_urls.rb', line 107

def show_help
  e
  e 'Use '+simp('--missing')+' if you wish to display only the programs'
  e 'without an URL entry.'
  e
end

#show_url2?Boolean

#

show_url2?

#

Returns:

  • (Boolean)


63
64
65
# File 'lib/rbt/cookbooks/all_urls/all_urls.rb', line 63

def show_url2?
  @also_show_url2
end

#use_opn?Boolean

#

use_opn?

#

Returns:

  • (Boolean)


70
71
72
# File 'lib/rbt/cookbooks/all_urls/all_urls.rb', line 70

def use_opn?
  @use_opn
end