Module: Roebe

Includes:
Encoding
Defined in:
lib/roebe/cat/cat.rb,
lib/roebe/math/pi.rb,
lib/roebe/base/env.rb,
lib/roebe/base/run.rb,
lib/roebe/base/base.rb,
lib/roebe/base/copy.rb,
lib/roebe/base/misc.rb,
lib/roebe/base/next.rb,
lib/roebe/base/opnn.rb,
lib/roebe/base/simp.rb,
lib/roebe/base/time.rb,
lib/roebe/math/fact.rb,
lib/roebe/time/time.rb,
lib/roebe/base/chdir.rb,
lib/roebe/base/reset.rb,
lib/roebe/classes/at.rb,
lib/roebe/classes/in.rb,
lib/roebe/math/log10.rb,
lib/roebe/base/editor.rb,
lib/roebe/classes/mbl.rb,
lib/roebe/classes/ram.rb,
lib/roebe/classes/vte.rb,
lib/roebe/linux/linux.rb,
lib/roebe/math/circle.rb,
lib/roebe/mouse/mouse.rb,
lib/roebe/base/colours.rb,
lib/roebe/base/esystem.rb,
lib/roebe/base/symlink.rb,
lib/roebe/browser/menu.rb,
lib/roebe/browser/misc.rb,
lib/roebe/classes/dbus.rb,
lib/roebe/classes/done.rb,
lib/roebe/classes/imdb.rb,
lib/roebe/classes/into.rb,
lib/roebe/classes/quiz.rb,
lib/roebe/classes/zoll.rb,
lib/roebe/colours/sdir.rb,
lib/roebe/colours/simp.rb,
lib/roebe/math/anagram.rb,
lib/roebe/math/binning.rb,
lib/roebe/windows/misc.rb,
lib/roebe/base/encoding.rb,
lib/roebe/browser/reset.rb,
lib/roebe/classes/clock.rb,
lib/roebe/classes/conky.rb,
lib/roebe/classes/email.rb,
lib/roebe/classes/mrxvt.rb,
lib/roebe/classes/my_ip.rb,
lib/roebe/classes/rdate.rb,
lib/roebe/classes/today.rb,
lib/roebe/classes/unrar.rb,
lib/roebe/classes/usage.rb,
lib/roebe/colours/sfile.rb,
lib/roebe/colours/swarn.rb,
lib/roebe/constants/www.rb,
lib/roebe/math/zylinder.rb,
lib/roebe/www/std_linux.rb,
lib/roebe/base/constants.rb,
lib/roebe/base/prototype.rb,
lib/roebe/classes/bezirk.rb,
lib/roebe/classes/dhcpcd.rb,
lib/roebe/classes/enable.rb,
lib/roebe/classes/inhalt.rb,
lib/roebe/classes/ipaste.rb,
lib/roebe/classes/moodle.rb,
lib/roebe/classes/nvidia.rb,
lib/roebe/classes/to_buy.rb,
lib/roebe/classes/to_utf.rb,
lib/roebe/classes/undone.rb,
lib/roebe/classes/update.rb,
lib/roebe/classes/zenity.rb,
lib/roebe/colours/sfancy.rb,
lib/roebe/constants/misc.rb,
lib/roebe/modules/as_uid.rb,
lib/roebe/www/module_www.rb,
lib/roebe/browser/firefox.rb,
lib/roebe/classes/aliases.rb,
lib/roebe/classes/disable.rb,
lib/roebe/classes/holiday.rb,
lib/roebe/classes/rbashrc.rb,
lib/roebe/classes/run/run.rb,
lib/roebe/classes/schlafe.rb,
lib/roebe/classes/size_of.rb,
lib/roebe/classes/slogans.rb,
lib/roebe/classes/to_next.rb,
lib/roebe/classes/upcaser.rb,
lib/roebe/colours/colours.rb,
lib/roebe/constants/roebe.rb,
lib/roebe/project/project.rb,
lib/roebe/shell/help/help.rb,
lib/roebe/version/version.rb,
lib/roebe/base/is_on_roebe.rb,
lib/roebe/browser/palemoon.rb,
lib/roebe/classes/calendar.rb,
lib/roebe/classes/ethernet.rb,
lib/roebe/classes/make_gem.rb,
lib/roebe/classes/modright.rb,
lib/roebe/classes/open_pdf.rb,
lib/roebe/classes/ruby_cat.rb,
lib/roebe/classes/ruby_seq.rb,
lib/roebe/classes/run/menu.rb,
lib/roebe/classes/terminal.rb,
lib/roebe/classes/treeview.rb,
lib/roebe/classes/wlan/run.rb,
lib/roebe/colours/ecomment.rb,
lib/roebe/commandline/help.rb,
lib/roebe/commandline/menu.rb,
lib/roebe/commandline/misc.rb,
lib/roebe/math/custom_math.rb,
lib/roebe/shell/shell/menu.rb,
lib/roebe/shell/shell/misc.rb,
lib/roebe/browser/constants.rb,
lib/roebe/classes/all_games.rb,
lib/roebe/classes/clipboard.rb,
lib/roebe/classes/copy_here.rb,
lib/roebe/classes/daemonize.rb,
lib/roebe/classes/date_sort.rb,
lib/roebe/classes/fetch_url.rb,
lib/roebe/classes/identical.rb,
lib/roebe/classes/last_line.rb,
lib/roebe/classes/mount_dvd.rb,
lib/roebe/classes/move_file.rb,
lib/roebe/classes/nutrition.rb,
lib/roebe/classes/passwords.rb,
lib/roebe/classes/qemu/qemu.rb,
lib/roebe/classes/ruby_main.rb,
lib/roebe/classes/slow_load.rb,
lib/roebe/classes/test_yaml.rb,
lib/roebe/classes/to_binary.rb,
lib/roebe/classes/translate.rb,
lib/roebe/classes/wallpaper.rb,
lib/roebe/classes/wikipedia.rb,
lib/roebe/classes/wlan/help.rb,
lib/roebe/classes/wlan/menu.rb,
lib/roebe/classes/wlan/misc.rb,
lib/roebe/classes/wlan/scan.rb,
lib/roebe/classes/word_wrap.rb,
lib/roebe/constants/newline.rb,
lib/roebe/documentation/app.rb,
lib/roebe/editors/ruby_nano.rb,
lib/roebe/encoding/encoding.rb,
lib/roebe/shell/shell/reset.rb,
lib/roebe/shell/shell/shell.rb,
lib/roebe/base/verbose_truth.rb,
lib/roebe/classes/check_yaml.rb,
lib/roebe/classes/create_iso.rb,
lib/roebe/classes/create_zip.rb,
lib/roebe/classes/do_install.rb,
lib/roebe/classes/good_night.rb,
lib/roebe/classes/hex_to_rgb.rb,
lib/roebe/classes/iso_to_usb.rb,
lib/roebe/classes/move_mouse.rb,
lib/roebe/classes/n_symlinks.rb,
lib/roebe/classes/sourcerank.rb,
lib/roebe/classes/to_tar_bz2.rb,
lib/roebe/classes/wlan/essid.rb,
lib/roebe/classes/wlan/reset.rb,
lib/roebe/shell/shell/core/e.rb,
lib/roebe/toplevel_methods/e.rb,
lib/roebe/windows/powershell.rb,
lib/roebe/classes/all_my_gems.rb,
lib/roebe/classes/append_this.rb,
lib/roebe/classes/automounter.rb,
lib/roebe/classes/file_parser.rb,
lib/roebe/classes/fix_mcookie.rb,
lib/roebe/classes/hello_world.rb,
lib/roebe/classes/java_header.rb,
lib/roebe/classes/nano_config.rb,
lib/roebe/classes/php_to_ruby.rb,
lib/roebe/classes/publish_gem.rb,
lib/roebe/classes/random_open.rb,
lib/roebe/classes/remote_gems.rb,
lib/roebe/classes/remove_gems.rb,
lib/roebe/classes/remove_line.rb,
lib/roebe/classes/ruby_header.rb,
lib/roebe/classes/set_aliases.rb,
lib/roebe/classes/set_chained.rb,
lib/roebe/classes/show_sigint.rb,
lib/roebe/classes/std_renamer.rb,
lib/roebe/classes/supermerger.rb,
lib/roebe/classes/tic_tac_toe.rb,
lib/roebe/classes/to_squashfs.rb,
lib/roebe/colours/use_colours.rb,
lib/roebe/constants/constants.rb,
lib/roebe/modules/remove_html.rb,
lib/roebe/shell/shell/core/is.rb,
lib/roebe/windows/usb_devices.rb,
lib/roebe/base/write_what_into.rb,
lib/roebe/classes/css_analyzer.rb,
lib/roebe/classes/day_calendar.rb,
lib/roebe/classes/file_renamer.rb,
lib/roebe/classes/fix_timezone.rb,
lib/roebe/classes/inputrc/misc.rb,
lib/roebe/classes/kill_firefox.rb,
lib/roebe/classes/misc/anteile.rb,
lib/roebe/classes/non_symlinks.rb,
lib/roebe/classes/prepend_this.rb,
lib/roebe/classes/rxinitrc/run.rb,
lib/roebe/classes/terminal_ps1.rb,
lib/roebe/classes/test_openssl.rb,
lib/roebe/colours/html_colours.rb,
lib/roebe/configuration/module.rb,
lib/roebe/gui/gtk2/email/email.rb,
lib/roebe/gui/gtk2/shell/shell.rb,
lib/roebe/gui/gtk3/email/email.rb,
lib/roebe/gui/gtk3/shell/shell.rb,
lib/roebe/shell/shell/core/add.rb,
lib/roebe/shell/shell/core/all.rb,
lib/roebe/shell/shell/core/cat.rb,
lib/roebe/shell/shell/core/cut.rb,
lib/roebe/shell/shell/core/env.rb,
lib/roebe/shell/shell/core/ftp.rb,
lib/roebe/shell/shell/core/irb.rb,
lib/roebe/shell/shell/core/irc.rb,
lib/roebe/shell/shell/core/iso.rb,
lib/roebe/shell/shell/core/log.rb,
lib/roebe/shell/shell/core/pdf.rb,
lib/roebe/shell/shell/core/pid.rb,
lib/roebe/shell/shell/core/rbt.rb,
lib/roebe/shell/shell/core/scp.rb,
lib/roebe/shell/shell/core/set.rb,
lib/roebe/shell/shell/core/tab.rb,
lib/roebe/shell/shell/core/url.rb,
lib/roebe/shell/shell/core/use.rb,
lib/roebe/toplevel_methods/env.rb,
lib/roebe/toplevel_methods/irb.rb,
lib/roebe/toplevel_methods/rds.rb,
lib/roebe/classes/add_irc_quote.rb,
lib/roebe/classes/caesar_cipher.rb,
lib/roebe/classes/done_and_open.rb,
lib/roebe/classes/grub_appender.rb,
lib/roebe/classes/kill_palemoon.rb,
lib/roebe/classes/mrxvt_options.rb,
lib/roebe/classes/n_directories.rb,
lib/roebe/classes/pristine_gems.rb,
lib/roebe/classes/pull_together.rb,
lib/roebe/classes/rxinitrc/help.rb,
lib/roebe/classes/sorted_output.rb,
lib/roebe/classes/todo_overview.rb,
lib/roebe/math/regel_von_sarrus.rb,
lib/roebe/shell/colours/colours.rb,
lib/roebe/shell/project/project.rb,
lib/roebe/shell/session/session.rb,
lib/roebe/shell/shell/constants.rb,
lib/roebe/shell/shell/core/call.rb,
lib/roebe/shell/shell/core/copy.rb,
lib/roebe/shell/shell/core/dump.rb,
lib/roebe/shell/shell/core/exit.rb,
lib/roebe/shell/shell/core/gems.rb,
lib/roebe/shell/shell/core/gist.rb,
lib/roebe/shell/shell/core/glob.rb,
lib/roebe/shell/shell/core/help.rb,
lib/roebe/shell/shell/core/make.rb,
lib/roebe/shell/shell/core/misc.rb,
lib/roebe/shell/shell/core/mode.rb,
lib/roebe/shell/shell/core/move.rb,
lib/roebe/shell/shell/core/open.rb,
lib/roebe/shell/shell/core/path.rb,
lib/roebe/shell/shell/core/ping.rb,
lib/roebe/shell/shell/core/play.rb,
lib/roebe/shell/shell/core/ruby.rb,
lib/roebe/shell/shell/core/save.rb,
lib/roebe/shell/shell/core/sort.rb,
lib/roebe/shell/shell/core/stat.rb,
lib/roebe/shell/shell/core/test.rb,
lib/roebe/shell/shell/core/time.rb,
lib/roebe/shell/shell/core/undo.rb,
lib/roebe/shell/shell/core/wlan.rb,
lib/roebe/shell/shell/core/yaml.rb,
lib/roebe/toplevel_methods/jp2a.rb,
lib/roebe/toplevel_methods/mama.rb,
lib/roebe/toplevel_methods/math.rb,
lib/roebe/toplevel_methods/misc.rb,
lib/roebe/toplevel_methods/opnn.rb,
lib/roebe/toplevel_methods/time.rb,
lib/roebe/toplevel_methods/trad.rb,
lib/roebe/toplevel_methods/wget.rb,
lib/roebe/toplevel_methods/zlib.rb,
lib/roebe/classes/append_to_line.rb,
lib/roebe/classes/calendar_maker.rb,
lib/roebe/classes/compile_kernel.rb,
lib/roebe/classes/font_installer.rb,
lib/roebe/classes/fragment_maker.rb,
lib/roebe/classes/gzip_this_file.rb,
lib/roebe/classes/hosts_appender.rb,
lib/roebe/classes/mount_iso_file.rb,
lib/roebe/classes/pad_via_quotes.rb,
lib/roebe/classes/proper_english.rb,
lib/roebe/classes/remove_missing.rb,
lib/roebe/classes/set_background.rb,
lib/roebe/classes/size_of_states.rb,
lib/roebe/classes/system_checker.rb,
lib/roebe/classes/test_for_psych.rb,
lib/roebe/classes/wlan/constants.rb,
lib/roebe/shell/shell/core/ascii.rb,
lib/roebe/shell/shell/core/audio.rb,
lib/roebe/shell/shell/core/chmod.rb,
lib/roebe/shell/shell/core/count.rb,
lib/roebe/shell/shell/core/debug.rb,
lib/roebe/shell/shell/core/delay.rb,
lib/roebe/shell/shell/core/email.rb,
lib/roebe/shell/shell/core/empty.rb,
lib/roebe/shell/shell/core/fetch.rb,
lib/roebe/shell/shell/core/merge.rb,
lib/roebe/shell/shell/core/mount.rb,
lib/roebe/shell/shell/core/phone.rb,
lib/roebe/shell/shell/core/popup.rb,
lib/roebe/shell/shell/core/serve.rb,
lib/roebe/shell/shell/core/sleep.rb,
lib/roebe/shell/shell/core/split.rb,
lib/roebe/shell/shell/core/start.rb,
lib/roebe/shell/shell/core/strip.rb,
lib/roebe/shell/shell/core/tasks.rb,
lib/roebe/shell/shell/core/video.rb,
lib/roebe/shell/shell/core/watch.rb,
lib/roebe/toplevel_methods/chdir.rb,
lib/roebe/toplevel_methods/files.rb,
lib/roebe/toplevel_methods/ntrad.rb,
lib/roebe/toplevel_methods/regex.rb,
lib/roebe/toplevel_methods/setup.rb,
lib/roebe/toplevel_methods/video.rb,
lib/roebe/toplevel_methods/whois.rb,
lib/roebe/classes/add_user_lighty.rb,
lib/roebe/classes/basic_configure.rb,
lib/roebe/classes/copy_from_glibc.rb,
lib/roebe/classes/covid_lethality.rb,
lib/roebe/classes/inputrc/inputrc.rb,
lib/roebe/classes/install_my_gems.rb,
lib/roebe/classes/kde/restore_kde.rb,
lib/roebe/classes/remove_newlines.rb,
lib/roebe/classes/show_only_files.rb,
lib/roebe/classes/take_screenshot.rb,
lib/roebe/classes/top_ten_aliases.rb,
lib/roebe/classes/unicode_snowman.rb,
lib/roebe/classes/unified_padding.rb,
lib/roebe/classes/upload_to_imgur.rb,
lib/roebe/classes/usb/usb_devices.rb,
lib/roebe/classes/wlan/initialize.rb,
lib/roebe/constants/archive_types.rb,
lib/roebe/irb/start_my_custom_irb.rb,
lib/roebe/shell/shell/core/action.rb,
lib/roebe/shell/shell/core/append.rb,
lib/roebe/shell/shell/core/assign.rb,
lib/roebe/shell/shell/core/backup.rb,
lib/roebe/shell/shell/core/become.rb,
lib/roebe/shell/shell/core/buffer.rb,
lib/roebe/shell/shell/core/checks.rb,
lib/roebe/shell/shell/core/cliner.rb,
lib/roebe/shell/shell/core/cracks.rb,
lib/roebe/shell/shell/core/create.rb,
lib/roebe/shell/shell/core/editor.rb,
lib/roebe/shell/shell/core/enable.rb,
lib/roebe/shell/shell/core/ensure.rb,
lib/roebe/shell/shell/core/google.rb,
lib/roebe/shell/shell/core/images.rb,
lib/roebe/shell/shell/core/random.rb,
lib/roebe/shell/shell/core/record.rb,
lib/roebe/shell/shell/core/reload.rb,
lib/roebe/shell/shell/core/remove.rb,
lib/roebe/shell/shell/core/repair.rb,
lib/roebe/shell/shell/core/repeat.rb,
lib/roebe/shell/shell/core/replay.rb,
lib/roebe/shell/shell/core/switch.rb,
lib/roebe/shell/shell/core/toggle.rb,
lib/roebe/shell/shell/core/upcase.rb,
lib/roebe/shell/shell/core/update.rb,
lib/roebe/shell/shell/core/upload.rb,
lib/roebe/shell/shell/core/wecker.rb,
lib/roebe/shell/shell/core/whoami.rb,
lib/roebe/toplevel_methods/base64.rb,
lib/roebe/toplevel_methods/chroot.rb,
lib/roebe/toplevel_methods/cliner.rb,
lib/roebe/toplevel_methods/editor.rb,
lib/roebe/toplevel_methods/enable.rb,
lib/roebe/toplevel_methods/images.rb,
lib/roebe/toplevel_methods/to_mp3.rb,
lib/roebe/classes/config_generator.rb,
lib/roebe/classes/doskey_generator.rb,
lib/roebe/classes/enable_autologin.rb,
lib/roebe/classes/extract_gem_file.rb,
lib/roebe/classes/find_empty_files.rb,
lib/roebe/classes/fotos_für_ingrid.rb,
lib/roebe/classes/generate_locales.rb,
lib/roebe/classes/get_dependencies.rb,
lib/roebe/classes/key_value_parser.rb,
lib/roebe/classes/nibble_converter.rb,
lib/roebe/classes/open_random_book.rb,
lib/roebe/classes/remove_directory.rb,
lib/roebe/classes/remove_extension.rb,
lib/roebe/classes/remove_localhost.rb,
lib/roebe/classes/serve_local_page.rb,
lib/roebe/classes/show_ten_aliases.rb,
lib/roebe/classes/simple_extractor.rb,
lib/roebe/classes/traverse_install.rb,
lib/roebe/classes/umlaut_converter.rb,
lib/roebe/classes/wlan/interactive.rb,
lib/roebe/constants/file_constants.rb,
lib/roebe/custom_methods/constants.rb,
lib/roebe/editors/vim_paradise/run.rb,
lib/roebe/jruby/jruby_enhancements.rb,
lib/roebe/requires/require_unicode.rb,
lib/roebe/shell/module_methods/ftp.rb,
lib/roebe/shell/shell/core/aliases.rb,
lib/roebe/shell/shell/core/browser.rb,
lib/roebe/shell/shell/core/burning.rb,
lib/roebe/shell/shell/core/compile.rb,
lib/roebe/shell/shell/core/disable.rb,
lib/roebe/shell/shell/core/english.rb,
lib/roebe/shell/shell/core/esystem.rb,
lib/roebe/shell/shell/core/extract.rb,
lib/roebe/shell/shell/core/get_var.rb,
lib/roebe/shell/shell/core/history.rb,
lib/roebe/shell/shell/core/install.rb,
lib/roebe/shell/shell/core/jumpers.rb,
lib/roebe/shell/shell/core/protect.rb,
lib/roebe/shell/shell/core/queries.rb,
lib/roebe/shell/shell/core/replace.rb,
lib/roebe/shell/shell/core/require.rb,
lib/roebe/shell/shell/core/symlink.rb,
lib/roebe/shell/shell/core/trainer.rb,
lib/roebe/shell/shell/core/trigger.rb,
lib/roebe/shell/shell/core/unalias.rb,
lib/roebe/shell/shell/core/webrick.rb,
lib/roebe/shell/shell/core/windows.rb,
lib/roebe/sql_paradise/insert_into.rb,
lib/roebe/sql_paradise/sql_command.rb,
lib/roebe/toplevel_methods/c_debug.rb,
lib/roebe/toplevel_methods/chained.rb,
lib/roebe/toplevel_methods/disable.rb,
lib/roebe/toplevel_methods/esystem.rb,
lib/roebe/toplevel_methods/extract.rb,
lib/roebe/toplevel_methods/newstud.rb,
lib/roebe/toplevel_methods/no_caps.rb,
lib/roebe/toplevel_methods/rubyzip.rb,
lib/roebe/toplevel_methods/to_bool.rb,
lib/roebe/toplevel_methods/webrick.rb,
lib/roebe/toplevel_methods/windows.rb,
lib/roebe/www/embeddable_interface.rb,
lib/roebe/classes/add_newline_after.rb,
lib/roebe/classes/available_classes.rb,
lib/roebe/classes/burn_iso/burn_iso.rb,
lib/roebe/classes/english_to_german.rb,
lib/roebe/classes/fetch_random_line.rb,
lib/roebe/classes/filter_apache_log.rb,
lib/roebe/classes/generate_rtf_file.rb,
lib/roebe/classes/html_form_fetcher.rb,
lib/roebe/classes/inputrc/constants.rb,
lib/roebe/classes/number_to_english.rb,
lib/roebe/classes/on_screen_display.rb,
lib/roebe/classes/random_background.rb,
lib/roebe/classes/replace_what_with.rb,
lib/roebe/classes/rxinitrc/rxinitrc.rb,
lib/roebe/classes/show_appointments.rb,
lib/roebe/classes/show_non_symlinks.rb,
lib/roebe/classes/symlink_directory.rb,
lib/roebe/classes/usb/automount_usb.rb,
lib/roebe/editors/vim_paradise/help.rb,
lib/roebe/editors/vim_paradise/menu.rb,
lib/roebe/linux/slackware/slackware.rb,
lib/roebe/shell/module_methods/misc.rb,
lib/roebe/shell/shell/core/archives.rb,
lib/roebe/shell/shell/core/collapse.rb,
lib/roebe/shell/shell/core/defaults.rb,
lib/roebe/shell/shell/core/downcase.rb,
lib/roebe/shell/shell/core/download.rb,
lib/roebe/shell/shell/core/generate.rb,
lib/roebe/shell/shell/core/hardware.rb,
lib/roebe/shell/shell/core/hostname.rb,
lib/roebe/shell/shell/core/optimize.rb,
lib/roebe/shell/shell/core/personal.rb,
lib/roebe/shell/shell/core/printing.rb,
lib/roebe/shell/shell/core/register.rb,
lib/roebe/shell/shell/core/treeview.rb,
lib/roebe/toplevel_methods/heredocs.rb,
lib/roebe/toplevel_methods/hostname.rb,
lib/roebe/toplevel_methods/keywords.rb,
lib/roebe/toplevel_methods/lighttpd.rb,
lib/roebe/toplevel_methods/platform.rb,
lib/roebe/toplevel_methods/studium1.rb,
lib/roebe/base/commandline_arguments.rb,
lib/roebe/classes/backup_core_system.rb,
lib/roebe/classes/burn_iso/constants.rb,
lib/roebe/classes/chmod_current_time.rb,
lib/roebe/classes/copy_kernel_config.rb,
lib/roebe/classes/create_jar_archive.rb,
lib/roebe/classes/delete_empty_files.rb,
lib/roebe/classes/do_a_google_search.rb,
lib/roebe/classes/downcase_extension.rb,
lib/roebe/classes/euclidian_distance.rb,
lib/roebe/classes/general_overviewer.rb,
lib/roebe/classes/generate_alsa_conf.rb,
lib/roebe/classes/generate_ls_colors.rb,
lib/roebe/classes/generate_protocols.rb,
lib/roebe/classes/google_url_cleaner.rb,
lib/roebe/classes/make_cookbooks_gem.rb,
lib/roebe/classes/monitor_resolution.rb,
lib/roebe/classes/one_line_passwords.rb,
lib/roebe/classes/output_random_line.rb,
lib/roebe/classes/percentage_counter.rb,
lib/roebe/classes/remove_lighty_logs.rb,
lib/roebe/classes/require_everything.rb,
lib/roebe/classes/rxinitrc/constants.rb,
lib/roebe/classes/show_prime_numbers.rb,
lib/roebe/classes/sum_of_all_numbers.rb,
lib/roebe/classes/threshold_splitter.rb,
lib/roebe/classes/wochentag_anzeiger.rb,
lib/roebe/classes/youtube_downloader.rb,
lib/roebe/gui/gtk2/ifconfig/ifconfig.rb,
lib/roebe/gui/gtk3/ifconfig/ifconfig.rb,
lib/roebe/shell/colours/colour_codes.rb,
lib/roebe/shell/shell/core/arguments.rb,
lib/roebe/shell/shell/core/autostart.rb,
lib/roebe/shell/shell/core/birthdays.rb,
lib/roebe/shell/shell/core/calculate.rb,
lib/roebe/shell/shell/core/clipboard.rb,
lib/roebe/shell/shell/core/passwords.rb,
lib/roebe/shell/shell/core/pkgconfig.rb,
lib/roebe/shell/shell/core/read_file.rb,
lib/roebe/shell/shell/core/repackage.rb,
lib/roebe/shell/shell/core/translate.rb,
lib/roebe/shell/shell/core/variables.rb,
lib/roebe/toplevel_methods/autoprune.rb,
lib/roebe/toplevel_methods/fibonacci.rb,
lib/roebe/toplevel_methods/halloween.rb,
lib/roebe/toplevel_methods/load_yaml.rb,
lib/roebe/toplevel_methods/move_file.rb,
lib/roebe/toplevel_methods/pp_output.rb,
lib/roebe/toplevel_methods/purgeboth.rb,
lib/roebe/toplevel_methods/puts_this.rb,
lib/roebe/toplevel_methods/rinstall2.rb,
lib/roebe/toplevel_methods/tokenitor.rb,
lib/roebe/toplevel_methods/variables.rb,
lib/roebe/classes/alphabetical_sorter.rb,
lib/roebe/classes/become_another_user.rb,
lib/roebe/classes/burn_iso/initialize.rb,
lib/roebe/classes/create_desktop_file.rb,
lib/roebe/classes/display_gcc_version.rb,
lib/roebe/classes/feet_to_centimetres.rb,
lib/roebe/classes/find_expanded_alias.rb,
lib/roebe/classes/find_out_version_of.rb,
lib/roebe/classes/install_debian_file.rb,
lib/roebe/classes/kde/kde_konsole/run.rb,
lib/roebe/classes/kde/konsole_new_tab.rb,
lib/roebe/classes/mark_this_directory.rb,
lib/roebe/classes/pascalsches_dreieck.rb,
lib/roebe/classes/path_generator/misc.rb,
lib/roebe/classes/return_random_image.rb,
lib/roebe/classes/scan_for_http_links.rb,
lib/roebe/classes/set_normal_alias_to.rb,
lib/roebe/classes/show_kernel_modules.rb,
lib/roebe/classes/show_twenty_aliases.rb,
lib/roebe/documentation/documentation.rb,
lib/roebe/gui/libui/rundll32/rundll32.rb,
lib/roebe/math/average_of_differences.rb,
lib/roebe/math/calculate_the_variance.rb,
lib/roebe/shell/shell/core/screenshot.rb,
lib/roebe/toplevel_methods/arrow_keys.rb,
lib/roebe/toplevel_methods/background.rb,
lib/roebe/toplevel_methods/cp_to_here.rb,
lib/roebe/toplevel_methods/multimedia.rb,
lib/roebe/toplevel_methods/open_ports.rb,
lib/roebe/toplevel_methods/return_pwd.rb,
lib/roebe/toplevel_methods/sitelibdir.rb,
lib/roebe/classes/check_for_bad_blocks.rb,
lib/roebe/classes/create_asoundrc_file.rb,
lib/roebe/classes/create_iso_for_games.rb,
lib/roebe/classes/downcase_directories.rb,
lib/roebe/classes/install_ruby_project.rb,
lib/roebe/classes/kde/kde_konsole/help.rb,
lib/roebe/classes/kde/kde_konsole/menu.rb,
lib/roebe/classes/kde/kde_konsole/misc.rb,
lib/roebe/classes/kde/kde_servicemenus.rb,
lib/roebe/classes/level_subdirectories.rb,
lib/roebe/classes/path_generator/reset.rb,
lib/roebe/classes/purge_gmon_out_files.rb,
lib/roebe/classes/readme_generator/run.rb,
lib/roebe/classes/ruby_use_config_file.rb,
lib/roebe/classes/show_available_fonts.rb,
lib/roebe/classes/show_available_users.rb,
lib/roebe/classes/skel_maker/constants.rb,
lib/roebe/classes/string_colour_parser.rb,
lib/roebe/classes/tales_from_the_crypt.rb,
lib/roebe/classes/wlan/eduroam/eduroam.rb,
lib/roebe/classes/wlan/show_and_report.rb,
lib/roebe/editors/vim_paradise/colours.rb,
lib/roebe/shell/shell/core/conversions.rb,
lib/roebe/shell/shell/core/information.rb,
lib/roebe/sql_paradise/create_database.rb,
lib/roebe/toplevel_methods/display_mbr.rb,
lib/roebe/toplevel_methods/grab_colour.rb,
lib/roebe/toplevel_methods/hello_world.rb,
lib/roebe/toplevel_methods/install_nss.rb,
lib/roebe/toplevel_methods/is_on_roebe.rb,
lib/roebe/toplevel_methods/mount_procs.rb,
lib/roebe/toplevel_methods/nano_addons.rb,
lib/roebe/toplevel_methods/remove_user.rb,
lib/roebe/toplevel_methods/return_date.rb,
lib/roebe/toplevel_methods/xorg_buffer.rb,
lib/roebe/base/home_directory_of_user_x.rb,
lib/roebe/classes/celsius_to_fahrenheit.rb,
lib/roebe/classes/create_benchmark_file.rb,
lib/roebe/classes/create_my_directories.rb,
lib/roebe/classes/find_static_libraries.rb,
lib/roebe/classes/kde/kde_konsole/reset.rb,
lib/roebe/classes/lilo_config_generator.rb,
lib/roebe/classes/married_with_children.rb,
lib/roebe/classes/n_gems_exist_in_total.rb,
lib/roebe/classes/pound_to_kg_converter.rb,
lib/roebe/classes/readme_generator/misc.rb,
lib/roebe/classes/remove_file_extension.rb,
lib/roebe/classes/ruby_version_switcher.rb,
lib/roebe/classes/skel_maker/skel_maker.rb,
lib/roebe/classes/time/display_weekdays.rb,
lib/roebe/classes/time/query_world_time.rb,
lib/roebe/commandline/parse_commandline.rb,
lib/roebe/constants/directory_constants.rb,
lib/roebe/custom_methods/custom_methods.rb,
lib/roebe/dosbox/generate_dosbox_config.rb,
lib/roebe/mouse/libffi_is_not_available.rb,
lib/roebe/shell/commandline/commandline.rb,
lib/roebe/shell/module_methods/encoding.rb,
lib/roebe/shell/shell/core/file_actions.rb,
lib/roebe/shell/shell/core/shellrc_file.rb,
lib/roebe/shell/standalone_classes/todo.rb,
lib/roebe/toplevel_methods/install_rust.rb,
lib/roebe/toplevel_methods/sanitize_url.rb,
lib/roebe/toplevel_methods/to_camelcase.rb,
lib/roebe/base/support_for_beautiful_url.rb,
lib/roebe/classes/birthday_notifications.rb,
lib/roebe/classes/conky_rcfile_generator.rb,
lib/roebe/classes/delete_all_directories.rb,
lib/roebe/classes/download_from_this_url.rb,
lib/roebe/classes/generate_nsswitch_conf.rb,
lib/roebe/classes/generate_rewrite_rules.rb,
lib/roebe/classes/generate_system_values.rb,
lib/roebe/classes/grant_superuser_rights.rb,
lib/roebe/classes/readme_generator/reset.rb,
lib/roebe/editors/vim_paradise/constants.rb,
lib/roebe/gui/gtk2/send_email/send_email.rb,
lib/roebe/gui/gtk3/send_email/send_email.rb,
lib/roebe/shell/module_methods/anmeldung.rb,
lib/roebe/shell/module_methods/main_file.rb,
lib/roebe/shell/shell/core/configuration.rb,
lib/roebe/shell/shell/core/documentation.rb,
lib/roebe/toplevel_methods/calculate_bmi.rb,
lib/roebe/toplevel_methods/display_array.rb,
lib/roebe/toplevel_methods/prime_numbers.rb,
lib/roebe/toplevel_methods/to_underscore.rb,
lib/roebe/toplevel_methods/update_pciids.rb,
lib/roebe/toplevel_methods/verbose_truth.rb,
lib/roebe/classes/compare_these_two_files.rb,
lib/roebe/classes/lotto/handle_quicktipps.rb,
lib/roebe/classes/permission_ascii_format.rb,
lib/roebe/classes/purge_ordoc_directories.rb,
lib/roebe/classes/report_same_named_files.rb,
lib/roebe/classes/time/set_hardware_clock.rb,
lib/roebe/classes/turn_ruby_file_into_gem.rb,
lib/roebe/classes/usb/create_bootable_usb.rb,
lib/roebe/classes/xfce/set_xfce_wallpaper.rb,
lib/roebe/gui/shared_code/shell/constants.rb,
lib/roebe/shell/help/colourized_help_line.rb,
lib/roebe/shell/module_methods/benchmarks.rb,
lib/roebe/toplevel_methods/ascii_paradise.rb,
lib/roebe/toplevel_methods/human_readable.rb,
lib/roebe/toplevel_methods/module_methods.rb,
lib/roebe/toplevel_methods/open_in_editor.rb,
lib/roebe/toplevel_methods/report_classes.rb,
lib/roebe/toplevel_methods/show_processes.rb,
lib/roebe/classes/create_file_skeleton/run.rb,
lib/roebe/classes/create_firefox_extension.rb,
lib/roebe/classes/delete_empty_directories.rb,
lib/roebe/classes/generate_robots_txt_file.rb,
lib/roebe/classes/generate_xauthority_file.rb,
lib/roebe/classes/interactive_file_creator.rb,
lib/roebe/classes/keys_generator/constants.rb,
lib/roebe/classes/left_hyphen_in_this_file.rb,
lib/roebe/classes/menu_generator/append_to.rb,
lib/roebe/classes/menu_generator/constants.rb,
lib/roebe/classes/path_generator/constants.rb,
lib/roebe/classes/time/trivial_time_parser.rb,
lib/roebe/gui/gtk3/task_viewer/task_viewer.rb,
lib/roebe/gui/gtk3/todo_viewer/todo_viewer.rb,
lib/roebe/shell/shell/core/clear_and_purge.rb,
lib/roebe/shell/shell/core/find_and_search.rb,
lib/roebe/shell/shell/core/question_answer.rb,
lib/roebe/toplevel_methods/beautify_system.rb,
lib/roebe/toplevel_methods/blinking_cursor.rb,
lib/roebe/toplevel_methods/crazy_make_mode.rb,
lib/roebe/toplevel_methods/download_emojis.rb,
lib/roebe/toplevel_methods/increase_volume.rb,
lib/roebe/toplevel_methods/install_vivaldi.rb,
lib/roebe/toplevel_methods/new_konsole_tab.rb,
lib/roebe/toplevel_methods/open_in_browser.rb,
lib/roebe/toplevel_methods/register_sigint.rb,
lib/roebe/toplevel_methods/set_ten_aliases.rb,
lib/roebe/toplevel_methods/write_what_into.rb,
lib/roebe/classes/copy_these_directories_to.rb,
lib/roebe/classes/custom_table/custom_table.rb,
lib/roebe/classes/kde/kde_konsole/constants.rb,
lib/roebe/classes/lighttpd_config_generator.rb,
lib/roebe/classes/my_default_webrick_server.rb,
lib/roebe/classes/remove_bad_fluxbox_styles.rb,
lib/roebe/classes/remove_comments/constants.rb,
lib/roebe/classes/twentyfour_hours_notation.rb,
lib/roebe/configuration/class/configuration.rb,
lib/roebe/editors/vim_paradise/vim_paradise.rb,
lib/roebe/gui/libui/todo_viewer/todo_viewer.rb,
lib/roebe/linux/slackware/remove_pulseaudio.rb,
lib/roebe/math/traurige_oder_fröhliche_zahl.rb,
lib/roebe/shell/configuration/configuration.rb,
lib/roebe/shell/gui/gtk3/vte_terminal_frame.rb,
lib/roebe/shell/module_methods/startup_time.rb,
lib/roebe/shell/shell/core/change_directory.rb,
lib/roebe/shell/shell/core/get_file_listing.rb,
lib/roebe/shell/shell/core/set_file_listing.rb,
lib/roebe/toplevel_methods/create_directory.rb,
lib/roebe/toplevel_methods/newstud/newstud1.rb,
lib/roebe/toplevel_methods/newstud/newstud2.rb,
lib/roebe/toplevel_methods/newstud/newstud3.rb,
lib/roebe/toplevel_methods/newstud/newstud4.rb,
lib/roebe/toplevel_methods/newstud/newstud5.rb,
lib/roebe/toplevel_methods/newstud/newstud6.rb,
lib/roebe/toplevel_methods/newstud/newstud7.rb,
lib/roebe/toplevel_methods/newstud/newstud8.rb,
lib/roebe/toplevel_methods/newstud/newstud9.rb,
lib/roebe/toplevel_methods/word_frequencies.rb,
lib/roebe/classes/apache_configuration_maker.rb,
lib/roebe/classes/batch_generate_all_my_gems.rb,
lib/roebe/classes/create_file_skeleton/reset.rb,
lib/roebe/classes/generate_gemspec/constants.rb,
lib/roebe/classes/grub/grub_config_generator.rb,
lib/roebe/classes/icewm/icewm_keys_generator.rb,
lib/roebe/classes/kde/kde_konsole/initialize.rb,
lib/roebe/classes/modify_shebang_header/menu.rb,
lib/roebe/classes/modify_shebang_header/misc.rb,
lib/roebe/classes/parse_apache_log/constants.rb,
lib/roebe/classes/purge_files_or_directories.rb,
lib/roebe/classes/readme_generator/constants.rb,
lib/roebe/classes/setup_chrooted_environment.rb,
lib/roebe/gui/gtk2/show_aliases/show_aliases.rb,
lib/roebe/gui/gtk3/show_aliases/show_aliases.rb,
lib/roebe/gui/shared_code/email/email_module.rb,
lib/roebe/gui/shared_code/shell/shell_module.rb,
lib/roebe/shell/help/documented_help_options.rb,
lib/roebe/shell/shell/core/directory_actions.rb,
lib/roebe/toplevel_methods/download_certdata.rb,
lib/roebe/toplevel_methods/install_this_font.rb,
lib/roebe/toplevel_methods/newstud/newstud10.rb,
lib/roebe/toplevel_methods/newstud/newstud11.rb,
lib/roebe/toplevel_methods/newstud/newstud12.rb,
lib/roebe/toplevel_methods/newstud/newstud13.rb,
lib/roebe/toplevel_methods/newstud/newstud14.rb,
lib/roebe/toplevel_methods/newstud/newstud15.rb,
lib/roebe/toplevel_methods/newstud/newstud16.rb,
lib/roebe/toplevel_methods/newstud/newstud17.rb,
lib/roebe/toplevel_methods/newstud/newstud18.rb,
lib/roebe/toplevel_methods/newstud/newstud19.rb,
lib/roebe/toplevel_methods/newstud/newstud20.rb,
lib/roebe/toplevel_methods/newstud/newstud21.rb,
lib/roebe/toplevel_methods/newstud/newstud22.rb,
lib/roebe/toplevel_methods/newstud/newstud23.rb,
lib/roebe/toplevel_methods/newstud/newstud24.rb,
lib/roebe/toplevel_methods/newstud/newstud25.rb,
lib/roebe/toplevel_methods/unicode/completed.rb,
lib/roebe/classes/install_flash/install_flash.rb,
lib/roebe/classes/kde/kde_konsole/kde_konsole.rb,
lib/roebe/classes/n_downloads_on_rubygems_org.rb,
lib/roebe/classes/readme_generator/initialize.rb,
lib/roebe/colours/permanently_disable_colours.rb,
lib/roebe/constants/home_of_the_user_called_x.rb,
lib/roebe/gui/libui/show_aliases/show_aliases.rb,
lib/roebe/modules/http_status_codes/constants.rb,
lib/roebe/shell/module_methods/home_directory.rb,
lib/roebe/shell/shellrc_parser/shellrc_parser.rb,
lib/roebe/toplevel_methods/boku_opening_times.rb,
lib/roebe/toplevel_methods/convert_global_env.rb,
lib/roebe/toplevel_methods/copy_setup_rb_file.rb,
lib/roebe/toplevel_methods/create_this_c_file.rb,
lib/roebe/toplevel_methods/master_boot_record.rb,
lib/roebe/toplevel_methods/programs_directory.rb,
lib/roebe/toplevel_methods/repetition_pattern.rb,
lib/roebe/toplevel_methods/show_beauty_string.rb,
lib/roebe/toplevel_methods/silent_redirection.rb,
lib/roebe/classes/create_ruby_directory_layout.rb,
lib/roebe/classes/files_that_could_become_apps.rb,
lib/roebe/classes/generate_master_shell_script.rb,
lib/roebe/classes/generate_xorg_conf/constants.rb,
lib/roebe/classes/install_openssl_certificates.rb,
lib/roebe/classes/kde/kde_konsole_send_command.rb,
lib/roebe/classes/monthly_activity_on_rubygems.rb,
lib/roebe/gui/gtk3/system_widget/system_widget.rb,
lib/roebe/toplevel_methods/bundle_exam_results.rb,
lib/roebe/toplevel_methods/important_pdf_files.rb,
lib/roebe/toplevel_methods/install_this_locale.rb,
lib/roebe/classes/compare_these_two_directories.rb,
lib/roebe/classes/convert_encoding_of_this_file.rb,
lib/roebe/classes/fluxbox/install_fluxbox_style.rb,
lib/roebe/classes/generate_etc_resolv_conf_file.rb,
lib/roebe/classes/increment_application_version.rb,
lib/roebe/classes/install_libreoffice/constants.rb,
lib/roebe/classes/kde/return_pid_of_kde_konsole.rb,
lib/roebe/classes/keys_generator/keys_generator.rb,
lib/roebe/classes/menu_generator/menu_generator.rb,
lib/roebe/classes/total_pages_in_finished_books.rb,
lib/roebe/toplevel_methods/calculate_hypotenuse.rb,
lib/roebe/toplevel_methods/colourized_tokenitor.rb,
lib/roebe/toplevel_methods/install_roebe_addons.rb,
lib/roebe/classes/convert_file_into_utf_encoding.rb,
lib/roebe/classes/create_file_skeleton/constants.rb,
lib/roebe/classes/kde/install_this_konsole_theme.rb,
lib/roebe/classes/put_all_gems_into_this_project.rb,
lib/roebe/classes/shells/generate_etc_shell_file.rb,
lib/roebe/classes/time/current_time_in_singapore.rb,
lib/roebe/gui/gtk2/code_generator/code_generator.rb,
lib/roebe/gui/gtk2/world_capitals/world_capitals.rb,
lib/roebe/gui/gtk3/code_generator/code_generator.rb,
lib/roebe/gui/gtk3/world_capitals/world_capitals.rb,
lib/roebe/gui/shared_code/shell/connect_skeleton.rb,
lib/roebe/shell/shell/core/act_filetype_specific.rb,
lib/roebe/toplevel_methods/copy_the_linux_kernel.rb,
lib/roebe/toplevel_methods/install_the_hack_font.rb,
lib/roebe/toplevel_methods/instance_variable_get.rb,
lib/roebe/browser/output_url_then_open_in_browser.rb,
lib/roebe/classes/create_docbook_sgml_dtd_catalog.rb,
lib/roebe/classes/modify_shebang_header/constants.rb,
lib/roebe/classes/remove_comments/remove_comments.rb,
lib/roebe/classes/return_aliases/return_n_aliases.rb,
lib/roebe/gui/libui/wlan_interface/wlan_interface.rb,
lib/roebe/requires/require_all_standalone_classes.rb,
lib/roebe/requires/require_all_standalone_modules.rb,
lib/roebe/shell/standalone_classes/time_converter.rb,
lib/roebe/toplevel_methods/load_custom_ruby_files.rb,
lib/roebe/gui/shared_code/ifconfig/ifconfig_module.rb,
lib/roebe/shell/shell/core/escape_shell_characters.rb,
lib/roebe/toplevel_methods/build_all_my_local_gems.rb,
lib/roebe/toplevel_methods/create_directory_layout.rb,
lib/roebe/toplevel_methods/does_this_program_exist.rb,
lib/roebe/classes/add_this_user_to_the_sudoers_file.rb,
lib/roebe/classes/generate_gemspec/generate_gemspec.rb,
lib/roebe/classes/parse_apache_log/parse_apache_log.rb,
lib/roebe/classes/return_aliases/return_ten_aliases.rb,
lib/roebe/gui/gtk2/world_capitals/capital_event_box.rb,
lib/roebe/gui/gtk3/world_capitals/capital_event_box.rb,
lib/roebe/shell/module_methods/available_components.rb,
lib/roebe/toplevel_methods/require_this_roebe_class.rb,
lib/roebe/toplevel_methods/wlan/scan_for_wlan_spots.rb,
lib/roebe/classes/fluxbox/autogenerate_fluxbox_files.rb,
lib/roebe/classes/fluxbox/generate_fluxbox_apps_file.rb,
lib/roebe/classes/fluxbox/generate_fluxbox_keys_file.rb,
lib/roebe/classes/mate_terminal/rename_mate_terminal.rb,
lib/roebe/classes/replace_space_with_underscore/help.rb,
lib/roebe/classes/replace_space_with_underscore/menu.rb,
lib/roebe/constants/array_install_these_gem_projects.rb,
lib/roebe/gui/gtk2/show_ten_aliases/show_ten_aliases.rb,
lib/roebe/gui/gtk3/show_ten_aliases/show_ten_aliases.rb,
lib/roebe/shell/module_methods/commandline_arguments.rb,
lib/roebe/toplevel_methods/generate_konsole_css_file.rb,
lib/roebe/toplevel_methods/install_the_cascadia_font.rb,
lib/roebe/toplevel_methods/move_to_torrent_directory.rb,
lib/roebe/toplevel_methods/n_characters_in_this_file.rb,
lib/roebe/toplevel_methods/replace_leading_file_name.rb,
lib/roebe/classes/differences_between_two_directories.rb,
lib/roebe/classes/find_all_files_with_a_question_mark.rb,
lib/roebe/classes/replace_space_with_underscore/reset.rb,
lib/roebe/gui/libui/show_ten_aliases/show_ten_aliases.rb,
lib/roebe/modules/http_status_codes/http_status_codes.rb,
lib/roebe/toplevel_methods/install_and_update_rcfiles.rb,
lib/roebe/toplevel_methods/open_in_editor_and_browser.rb,
lib/roebe/classes/find_duplicate_entries_in_alias_file.rb,
lib/roebe/classes/kde/split_kde_konsole_tab_vertically.rb,
lib/roebe/classes/remove_this_substring_from_all_files.rb,
lib/roebe/classes/return_aliases/return_twenty_aliases.rb,
lib/roebe/gui/shared_code/send_email/send_email_module.rb,
lib/roebe/shell/module_methods/generate_tab_completion.rb,
lib/roebe/toplevel_methods/replace_localhost_with_data.rb,
lib/roebe/classes/generate_xorg_conf/generate_xorg_conf.rb,
lib/roebe/classes/last_called_logger/last_called_logger.rb,
lib/roebe/classes/replace_global_variables_in_this_file.rb,
lib/roebe/classes/create_file_skeleton/generate_c_string.rb,
lib/roebe/colours/determine_whether_colours_will_be_used.rb,
lib/roebe/gui/shared_code/task_viewer/task_viewer_module.rb,
lib/roebe/math/calculate_the_distance_between_two_points.rb,
lib/roebe/toplevel_methods/unicode/unicode_chess_symbols.rb,
lib/roebe/classes/generate_fstab_file/generate_fstab_file.rb,
lib/roebe/classes/generate_unit_files/generate_unit_files.rb,
lib/roebe/classes/install_libreoffice/install_libreoffice.rb,
lib/roebe/classes/replace_space_with_underscore/constants.rb,
lib/roebe/toplevel_methods/unicode/unicode_block_elements.rb,
lib/roebe/toplevel_methods/wlan/bring_up_this_wlan_device.rb,
lib/roebe/classes/create_file_skeleton/generate_cpp_string.rb,
lib/roebe/classes/replace_space_with_underscore/initialize.rb,
lib/roebe/gui/gtk2/world_capitals/frame_for_world_capitals.rb,
lib/roebe/gui/gtk3/world_capitals/frame_for_world_capitals.rb,
lib/roebe/gui/shared_code/show_aliases/show_aliases_module.rb,
lib/roebe/toplevel_methods/colourize_files_and_directories.rb,
lib/roebe/toplevel_methods/run_this_file_in_the_background.rb,
lib/roebe/toplevel_methods/unicode/display_unicode_snowman.rb,
lib/roebe/toplevel_methods/unicode/popular_unicode_symbols.rb,
lib/roebe/classes/create_file_skeleton/create_file_skeleton.rb,
lib/roebe/classes/create_file_skeleton/generate_ruby_string.rb,
lib/roebe/classes/symlink_all_directories_in_this_directory.rb,
lib/roebe/shell/shell/core/show_display_feedback_and_report.rb,
lib/roebe/toplevel_methods/install_linux_kernel_api_headers.rb,
lib/roebe/toplevel_methods/install_the_jet_brains_mono_font.rb,
lib/roebe/toplevel_methods/unicode/download_unicode_dataset.rb,
lib/roebe/classes/output_text_then_assign_to_the_xorg_buffer.rb,
lib/roebe/gui/shared_code/system_widget/system_widget_module.rb,
lib/roebe/toplevel_methods/unicode/colourful_unicode_snowmen.rb,
lib/roebe/validation/validate_roeberia_environment_variables.rb,
lib/roebe/classes/modify_shebang_header/modify_shebang_header.rb,
lib/roebe/gui/libui/microsoft_controller/microsoft_controller.rb,
lib/roebe/toplevel_methods/does_this_terminal_support_unicode.rb,
lib/roebe/toplevel_methods/unicode/return_all_unicode_symbols.rb,
lib/roebe/classes/ascii/fix_missing_numbers_for_ascii_paradise.rb,
lib/roebe/gui/shared_code/code_generator/code_generator_module.rb,
lib/roebe/gui/shared_code/world_capitals/world_capitals_module.rb,
lib/roebe/shell/shell/core/tell_us_whether_this_program_exists.rb,
lib/roebe/toplevel_methods/unicode/map_input_to_unicode_symbol.rb,
lib/roebe/classes/prepend_this_string_to_every_line_of_this_file.rb,
lib/roebe/toplevel_methods/unicode/decompose_this_unicode_symbol.rb,
lib/roebe/classes/obtain_audio_recordings_from_voice_recorder/run.rb,
lib/roebe/gui/shared_code/world_capitals/capital_event_box_module.rb,
lib/roebe/classes/generate_overview_of_the_locally_available_books.rb,
lib/roebe/classes/obtain_audio_recordings_from_voice_recorder/help.rb,
lib/roebe/gui/gtk3/wlan_information_center/wlan_information_center.rb,
lib/roebe/gui/shared_code/show_ten_aliases/show_ten_aliases_module.rb,
lib/roebe/toplevel_methods/return_all_remote_entries_from_this_url.rb,
lib/roebe/toplevel_methods/permanently_set_project_base_directory_to.rb,
lib/roebe/toplevel_methods/return_even_numbered_lines_from_this_file.rb,
lib/roebe/toplevel_methods/report_the_location_of_the_default_browser.rb,
lib/roebe/classes/convert_this_cgi_file_into_a_sinatrafied_application.rb,
lib/roebe/gui/gtk3/interactive_caesar_cipher/interactive_caesar_cipher.rb,
lib/roebe/classes/obtain_audio_recordings_from_voice_recorder/constants.rb,
lib/roebe/gui/jruby/interactive_caesar_cipher/interactive_caesar_cipher.rb,
lib/roebe/gui/shared_code/world_capitals/frame_for_world_capitals_module.rb,
lib/roebe/toplevel_methods/downcase_all_entries_in_the_current_directory.rb,
lib/roebe/classes/symlink_everything_from_that_directory_to_this_directory.rb,
lib/roebe/gui/shared_code/microsoft_controller/microsoft_controller_module.rb,
lib/roebe/shell/module_methods/report_where_the_home_directory_can_be_found.rb,
lib/roebe/toplevel_methods/check_whether_an_internet_connection_is_available.rb,
lib/roebe/toplevel_methods/update_the_main_pdf_viewer_file_with_this_program.rb,
lib/roebe/classes/replace_space_with_underscore/replace_space_with_underscore.rb,
lib/roebe/classes/update_static_html_pages_in_the_directory_containing_my_fotos.rb,
lib/roebe/gui/unified_widgets/interactive_caesar_cipher/interactive_caesar_cipher.rb,
lib/roebe/classes/symlink_directories_from_that_directory_to_the_current_directory.rb,
lib/roebe/gui/shared_code/interactive_caesar_cipher/interactive_caesar_cipher_module.rb,
lib/roebe/classes/move_content_of_this_directory_to_that_directory_unless_target_already_exists.rb,
lib/roebe/classes/obtain_audio_recordings_from_voice_recorder/obtain_audio_recordings_from_voice_recorder.rb,
lib/roebe/classes/symlink_files_from_that_directory_to_the_current_directory/symlink_files_from_that_directory_to_the_current_directory.rb

Overview

#

Roebe::GUI::InteractiveCaesarCipherModule

#

require 'roebe/gui/shared_code/interactive_caesar_cipher/interactive_caesar_cipher_module.rb' include Roebe::GUI::InteractiveCaesarCipherModule

#

Defined Under Namespace

Modules: ArrowKeys, BlinkingCursor, Cat, Chess, Configuration, CustomMath, CustomMethods, DisplayArray, Documentation, Editors, EmbeddableInterface, Encoding, GUI, HttpStatusCodes, HumanReadable, Jruby, Linux, Math, Menu, Process, RemoveHtml, SaveFile, Sigint, SqlParadise, Terminal, Time, WWW, Windows, WordWrap Classes: AddIrcQuote, AddNewlineAfter, AddThisUserToTheSudoersFile, AddUserLighty, Aliases, AllGames, AllMyGems, AlphabeticalSorter, Anteile, ApacheConfigurationMaker, AppendThis, AppendToLine, At, AutomountUSB, Automounter, AvailableClasses, BackupCoreSystem, Base, BasicConfigure, BatchGenerateAllMyGems, BecomeAnotherUser, Bezirk, BirthdayNotifications, Browser, BurnISO, CSS_Analyzer, CaesarCipher, Calendar, CalendarMaker, CapitalEventBox, CelsiusToFahrenheit, CheckForBadBlocks, CheckYaml, ChmodCurrentTime, Clipboard, Clock, CompareTheseTwoDirectories, CompareTheseTwoFiles, CompileKernel, ConfigGenerator, Conky, ConkyRcfileGenerator, ConvertEncodingOfThisFile, ConvertFileIntoUtfEncoding, ConvertThisCgiFileIntoASinatrafiedApplication, CopyFromGlibc, CopyHere, CopyKernelConfig, CopyTheseDirectoriesTo, CovidLethality, CreateAsoundrcFile, CreateBenchmarkFile, CreateBootableUSB, CreateDesktopFile, CreateDocbookSgmlDtdCatalog, CreateFileSkeleton, CreateFirefoxExtension, CreateISO, CreateIsoForGames, CreateJarArchive, CreateMyDirectories, CreateRubyDirectoryLayout, CreateZip, CurrentTimeInSingapore, CustomTable, Daemonize, DateSort, DayCalendar, Dbus, DeleteAllDirectories, DeleteEmptyDirectories, DeleteEmptyFiles, Dhcpcd, DifferencesBetweenTwoDirectories, Disable, DisplayGccVersion, DisplayWeekdays, DoAGoogleSearch, DoInstall, Done, DoneAndOpen, DoskeyGenerator, DowncaseDirectories, DowncaseExtension, DownloadFromThisUrl, Eduroam, Email, Enable, EnableAutologin, EnglishToGerman, Ethernet, EuclidianDistance, ExtractGemFile, FeetToCentimetres, FetchRandomLine, FetchUrl, FileParser, FileRenamer, FilesThatCouldBecomeApps, FilterApacheLog, FindAllFilesWithAQuestionMark, FindDuplicateEntriesInAliasFile, FindEmptyFiles, FindExpandedAlias, FindOutVersionOf, FindStaticLibraries, Firefox, FixMcookie, FixMissingNumbersForAsciiParadise, FixTimezone, FontInstaller, FotosFürIngrid, FragmentMaker, FrameForWorldCapitals, GeneralOverviewer, GenerateAlsaConf, GenerateDosboxConfig, GenerateEtcResolvConfFile, GenerateEtcShellFile, GenerateFluxboxAppsFile, GenerateFluxboxKeysFile, GenerateFstabFile, GenerateGemspec, GenerateLocales, GenerateLsColors, GenerateMasterShellScript, GenerateNanoConfig, GenerateNsswitchConf, GenerateOverviewOfTheLocallyAvailableBooks, GenerateProtocols, GenerateRewriteRules, GenerateRobotsTxtFile, GenerateRtfFile, GenerateSystemValues, GenerateUnitFiles, GenerateXauthorityFile, GenerateXorgConf, GetDependencies, GoodNight, GoogleUrlCleaner, GrantSuperuserRights, GrubAppender, GrubConfigGenerator, GzipThisFile, HandleQuicktipps, HelloWorld, HexToRGB, Holiday, HostsAppender, HtmlFormFetcher, IPaste, IcewmKeysGenerator, Identical, Imdb, In, IncrementApplicationVersion, Inhalt, Inputrc, InstallDebianFile, InstallFlash, InstallFluxboxStyle, InstallLibreoffice, InstallMyGems, InstallOpensslCertificates, InstallRubyProject, InstallThisKonsoleTheme, InteractiveFileCreator, Into, IsoToUsb, JavaHeader, KdeKonsole, KdeKonsoleSendCommand, KdeServicemenus, KeyValueParser, KeysGenerator, KillFirefox, KillPalemoon, KonsoleNewTab, LastCalledLogger, LastLine, LeftHyphenInThisFile, LevelSubdirectories, LighttpdConfigGenerator, LiloConfigGenerator, Log10, MakeCookbooksGem, MakeGem, MarkThisDirectory, MarriedWithChildren, Mbl, ModifyShebangHeader, Modright, MonitorResolution, MonthlyActivityOnRubygems, Moodle, MountDVD, MountIsoFile, Mouse, MoveContentOfThisDirectoryToThatDirectoryUnlessTargetAlreadyExists, MoveFile, MoveMouse, Mrxvt, MrxvtOptions, MyDefaultWebrickServer, MyIp, NDirectories, NDownloadsOnRubygemsOrg, NGemsExistInTotal, NSymlinks, NcursesTerminal, NibbleConverter, NonSymlinks, NumberToEnglish, Nutrition, Nvidia, ObtainAudioRecordingsFromVoiceRecorder, OnScreenDisplay, OneLinePasswords, OpenPDF, OpenRandomBook, OutputRandomLine, OutputTextThenAssignToTheXorgBuffer, OutputUrlThenOpenInBrowser, PadViaQuotes, Palemoon, ParseApacheLog, PascalschesDreieck, Passwords, PathGenerator, PercentageCounter, PermissionAsciiFormat, PhpToRuby, PoundToKgConverter, PrependThis, PrependThisStringToEveryLineOfThisFile, PristineGems, ProperEnglish, PublishGem, PullTogether, PurgeFilesOrDirectories, PurgeGmonOutFiles, PurgeOrdocDirectories, PutAllGemsIntoThisProject, Qemu, QueryWorldTime, Quiz, RXinitrc, Ram, RandomBackground, RandomOpen, Rbashrc, Rdate, ReadmeGenerator, RegelVonSarrus, RemoteGems, RemoveBadFluxboxStyles, RemoveComments, RemoveDirectory, RemoveExtension, RemoveFileExtension, RemoveGems, RemoveLightyLogs, RemoveLine, RemoveLocalhost, RemoveMissing, RemoveNewlines, RemoveThisSubstringFromAllFiles, RenameMateTerminal, ReplaceGlobalVariablesInThisFile, ReplaceSpaceWithUnderscore, ReplaceWhatWith, ReportSameNamedFiles, RequireEverything, RestoreKde, ReturnNAliases, ReturnRandomImage, ReturnTenAliases, ReturnTwentyAliases, RubyCat, RubyHeader, RubyMain, RubyNano, RubySeq, RubyUseConfigFile, RubyVersionSwitcher, Run, Rundll32, ScanForHttpLinks, Schlafe, ServeLocalPage, SetAliases, SetBackground, SetChained, SetHardwareClock, SetNormalAliasTo, SetXfceWallpaper, SetupChrootedEnvironment, Shell, ShowAppointments, ShowAvailableFonts, ShowAvailableUsers, ShowKernelModules, ShowNonSymlinks, ShowOnlyFiles, ShowPrimeNumbers, ShowSigint, ShowTenAliases, ShowTwentyAliases, SimpleExtractor, SizeOf, SizeOfStates, SkelMaker, Slackware, Slogans, SlowLoad, SortedOutput, Sourcerank, StdRenamer, StringColourParser, SumOfAllNumbers, Supermerger, SymlinkAllDirectoriesInThisDirectory, SymlinkDirectoriesFromThatDirectoryToTheCurrentDirectory, SymlinkDirectory, SymlinkEverythingFromThatDirectoryToThisDirectory, SymlinkFilesFromThatDirectoryToTheCurrentDirectory, SystemChecker, TakeScreenshot, TalesFromTheCrypt, TerminalPS1, TestForPsych, TestOpenssl, TestYaml, ThresholdSplitter, TicTacToe, ToBinary, ToBuy, ToNext, ToSquashfs, ToTarBz2, ToUtf, Today, TodoOverview, TopTenAliases, TotalPagesInFinishedBooks, Translate, TraverseInstall, Treeview, TrivialTimeParser, TurnRubyFileIntoGem, TwentyfourHoursNotation, UmlautConverter, Undone, UnicodeSnowman, UnifiedPadding, Unrar, Upcaser, Update, UpdateStaticHtmlPagesInTheDirectoryContainingMyFotos, UploadToImgur, Usage, UsbDevices, ValidateRoeberiaEnvironmentVariables, VteStarter, Wallpaper, Wikipedia, Wlan, WochentagAnzeiger, WorldCapitals, YoutubeDownloader, Zenity, Zoll

Constant Summary collapse

MAIN_EDITOR_TO_USE =
#

MAIN_EDITOR_TO_USE

This used to be bluefish until May 2019 where it was changed to geany.

#
'bluefish'
BROWSER_TO_USE_BY_DEFAULT =
#

BROWSER_TO_USE_BY_DEFAULT

Which browser to use by default.

#
'palemoon'
STUDIUM =
"#{HOME_DIRECTORY_OF_USER_X}studium/"
STUDIUM_DIRECTORY =

STUDIUM_DIRECTORY

STUDIUM
STUDIUM_DIR =

STUDIUM_DIR

STUDIUM
DIRECTORY_ROEBE_YAML_PDF =
#

Roebe::DIRECTORY_ROEBE_YAML_PDF

The next constant is the base towards the various pdf-yaml files, such as pdf1.yml, pdf2.yml and so forth.

#
"#{Roebe.project_yaml_directory?}pdf/"
ASCII_DIFFERENCE =
#

Roebe::ASCII_DIFFERENCE

Ascii difference means the difference between an upcased and a downcased string.

#
32
TEMP_DIR =
'/tmp/'
FILE_BROWSER_YAML =
#

Roebe::FILE_BROWSER_YAML

This may be at a location such as:

/usr/lib/ruby/site_ruby/3.1.0/roebe/yaml/browser.yml
#
"#{project_yaml_dir?}browser.yml"
PROGRAMS_DIRECTORY =
'/Programs/'
VALID_IMAGES =
#

Roebe::VALID_IMAGES

All valid image formats.

#
%w(
  .png
  .jpg
  .gif
  .jpeg
)
COLOURS =
#

COLOURS

#
::Colours
ROEBE_IRB_PROMPT =
#

Roebe::ROEBE_IRB_PROMPT

#
{
  PROMPT_I: "\n",  # A newline is, oddly enough, required here.
  PROMPT_N: ".. ", # Or: "",
  PROMPT_S: '"',   # Or nil
  PROMPT_C: '',
  RETURN:   "=> %s\n"
}
PC =

Else we hardcode it.

"#{HOME_OF_THE_USER_CALLED_X}data/PC/"
LINUX_YAML =
#

LINUX_YAML

#
ENV['LINUX_YAML'].to_s
ROEBE_DATA_DIRECTORY =
#

Roebe::ROEBE_DATA_DIRECTORY

#
"#{HOME_OF_THE_USER_CALLED_X}data/"
ROEBE_PERSONAL_DIRECTORY =
#

ROEBE_PERSONAL_DIRECTORY

#
"#{ROEBE_DATA_DIRECTORY}personal/"
FILE_CONTACTS_YAML =
#

FILE_CONTACTS_YAML

#
"#{ROEBE_DATA_DIRECTORY}/personal/yaml/contacts.yml"
FILE_CONTACTS =

FILE_CONTACTS

FILE_CONTACTS_YAML
PROJECT_BASE_DIRECTORY =
#

Roebe::PROJECT_BASE_DIRECTORY

Note that the constant here is only used as the initial setter. The real query-value comes from @project_base_directory defined lateron in this file. Reason being that you can also lateron, at runtime, re-define that variable.

#
File.absolute_path("#{__dir__}/..")+'/'
FILE_PROJECT_BASE_DIRECTORY =
#

FILE_PROJECT_BASE_DIRECTORY

#
"#{Roebe.project_base_directory?}yaml/project_base_directory.yml"
VERSION =
#

VERSION

#
'0.5.117'
LAST_UPDATE =
#

LAST_UPDATE

This constant will keep track of when this project was last updated. We will store the time here in dd.mm.yyyy notation. Do note that this constant is not updated very frequently, so do not rely on it too much - it is more a “hint” as to when a last important updated happened.

#
'15.06.2022'
URL_TO_THE_DOCUMENTATION =
#

URL_TO_THE_DOCUMENTATION

#
"https://www.rubydoc.info/gems/#{self.to_s.downcase}/#{VERSION}"
N =
#

N

Simply a constant towards a newline.

#
"\n"
NAMESPACE =
#

Roebe::NAMESPACE

#
inspect
EURO =
#

Roebe::EURO

#
13.760300
ALPHABET =
#

Roebe::ALPHABET

#
('a'..'z').to_a
FILE_SIZE_OF_COUNTRIES =
#

FILE_SIZE_OF_COUNTRIES

#
"#{project_base_dir?}yaml/size_of_countries.yml"
RUBY_SRC_DIR =
HOME_OF_THE_USER_CALLED_X+'programming/ruby/src/'
RUBY_SRC =

RUBY_SRC

RUBY_SRC_DIR
STD_COMMENT =
#

STD_COMMENT

#
'# ====================================================================== #'
TOKEN =
#

TOKEN

#
STD_COMMENT
EOL =
#

EOL

#
"\r\n"
FILE_TO_BROWSER =
#

Roebe::FILE_TO_BROWSER

Denote where the browser.yml file resides, by default.

This is obviously highly specific for my own home system.

#
HOME_OF_THE_USER_CALLED_X+'DATA/PC/yaml/browser.yml'
ARRAY_VIDEO_FILE_TYPES =
#

ARRAY_VIDEO_FILE_TYPES

#
%w(
  .vob
  .avi
  .flv
  .mp4
)
DEFAULT_RUBY_HEADER =
#

DEFAULT_RUBY_HEADER

#
'#!/System/Index/bin/ruby -w
# Encoding: UTF-8
# frozen_string_literal: true
# =========================================================================== #
'
ONE_MINUTE =
#

ONE_MINUTE

#
60
ONE_HOUR =
#

ONE_HOUR

#
60 * ONE_MINUTE
ONE_DAY =
#

ONE_DAY

#
24 * ONE_HOUR
DAY_NAMES =
#

DAY_NAMES

The addition of this constant was necessary due to upstream MRI ruby removing the RFC2822_DAY_NAME constant from time.rb.

#
%w(
  Sun Mon Tue Wed Thu Fri Sat
)
WEEKDAYS_FROM_ENGLISH_TO_GERMAN =
#

Roebe::WEEKDAYS_FROM_ENGLISH_TO_GERMAN

We start with Monday.

#
{ # english -> german
  'Mon' => 'Montag',
  'Tue' => 'Dienstag',
  'Wed' => 'Mittwoch',
  'Thu' => 'Donnerstag',
  'Fri' => 'Freitag',
  'Sat' => 'Samstag',
  'Sun' => 'Sonntag',
}
ENGLISH_TO_GERMAN_WEEKDAY =
#

ENGLISH_TO_GERMAN_WEEKDAY

#
{
  'Monday'    => 'Montag',
  'Tuesday'   => 'Dienstag',
  'Wednesday' => 'Mittwoch',
  'Thursday'  => 'Donnerstag',
  'Friday'    => 'Freitag',
  'Saturday'  => 'Samstag',
  'Sunday'    => 'Sonntag'
}
WEEKDAYS_FROM_GERMAN_TO_ENGLISH =
#

Roebe::WEEKDAYS_FROM_GERMAN_TO_ENGLISH

We start with Monday.

#
{ # german -> english
  'Montag'     => 'Monday',
  'Dienstag'   => 'Tuesday',
  'Mittwoch'   => 'Wednesday',
  'Donnerstag' => 'Thursday',
  'Freitag'    => 'Friday',
  'Samstag'    => 'Saturday',
  'Sonntag'    => 'Sunday',
}
HASH_SHORT_TO_LONG_WEEKDAYS =
#

HASH_SHORT_TO_LONG_WEEKDAYS

#
{
  'Mon' => 'Monday',
  'Tue' => 'Tuesday',
  'Wed' => 'Wednesday',
  'Thu' => 'Thursday',
  'Fri' => 'Friday',
  'Sat' => 'Saturday',
  'Sun' => 'Sunday'
}
ARCHIVE_TYPES =
#

ARCHIVE_TYPES

Possible archive types are stored here.

#
%w(
  .gz
  .bz2
  .xz
  .tar
  .zip
  .tar.xz
  .tar.gz
  .tar.bz2
  .lz
)
FILE_CD_ALIASES =

else simply hardcode it

"#{HOME_DIRECTORY_OF_USER_X}programming/ruby/src/"\
"rcfiles/lib/rcfiles/yaml/cd_aliases.yml"
FILE_ALIASES =

else simply hardcode it

"#{HOME_DIRECTORY_OF_USER_X}programming/ruby/src/"\
"rcfiles/lib/rcfiles/yaml/aliases.yml"
FILE_AUTOSTART_THESE_PROGRAMS =
#

FILE_AUTOSTART_THESE_PROGRAMS

On my home system, the following .yml file can be found here:

bl $RSRC/roebe/lib/roebe/yaml/autostart_these_programs.yml
#
"#{Roebe.project_base_dir?}yaml/autostart_these_programs.yml"
FILE_DIRECTORY_STRUCTURE =
#

Roebe::FILE_DIRECTORY_STRUCTURE

Use the method below - it is more robust in the long run, IMO.

#
"#{Roebe.project_base_dir?}yaml/directory_structure.yml"
FILE_MARK_THIS_DIRECTORY =
#

FILE_MARK_THIS_DIRECTORY

#
"#{Roebe.project_base_dir?}yaml/mark_this_directory.yml"
ARRAY_RUBY_KEYWORDS =
#

Roebe::ARRAY_RUBY_KEYWORDS

#
%w(
  alias and BEGIN begin break case class def defined 
  do else elsif END end ensure false for if in module 
  next nil not or redo rescue retry return self super 
  then true undef unless until when while yield
)
RUBY_RESERVED_KEYWORDS =
ARRAY_RUBY_KEYWORDS
Keywords =

Ruby::Keywords

ARRAY_RUBY_KEYWORDS
FBSETBG_COMMAND =
#

Roebe::FBSETBG_COMMAND

#
'fbsetbg -c '
LINUX_DIRECTORY_FOR_TTF_FONTS =
#

LINUX_DIRECTORY_FOR_TTF_FONTS

#
'/usr/share/fonts/TTF/'
DIRECTORY_CONTAINING_THE_NANO_RC_FILES =
#

DIRECTORY_CONTAINING_THE_NANO_RC_FILES

#
"#{PROJECT_BASE_DIRECTORY}nano/"
LOG_DIRECTORY =
'/Depot/Temp/roebe/'
HOME_DIRECTORY_OF_USER_X =
#

Roebe::HOME_DIRECTORY_OF_USER_X

This constant is only useful on my home system.

#
'/home/x/'
CHECKMARK_COMPLETED =
#

CHECKMARK_COMPLETED

See here:

https://graphemica.com/%E2%9C%94

This is also called the “heavy check mark” (U+2714).

#
"\342\234\224"
CHECKMARK_COMPLETED_THIN =
#

CHECKMARK_COMPLETED_THIN

See here:

https://www.compart.com/en/unicode/U+2713
#
"\342\234\223"
HOME_OF_THE_USER_CALLED_X =
#

Roebe::HOME_OF_THE_USER_CALLED_X

#
'/home/x/'
MASTER_BOOD_RECORD_SIZE =
#

MASTER_BOOD_RECORD_SIZE

This constant keeps track of the MBR Total Size.

This size is calculated like so:

446 + 64 + 2 = 512

These values are derived from:

446 bytes - Bootstrap size.
 64 bytes - Partition table size.
  2 bytes - Signature size.

On the www there is also the 446 commonly used with “dd”. You can use 446 bytes to overwrite or restore your /dev/XYZ MBR boot code only with the contents of $mbr.backup.file.

You can use 512 bytes to overwrite or restore your /dev/XYZ the full MBR (which contains both boot code and the drive's partition table) with the contents of $mbr.backup.file.

#
512
ARRAY_INSTALL_THESE_GEM_PROJECTS =
#

ARRAY_INSTALL_THESE_GEM_PROJECTS

Although the listing will be sorted via a .sort, it is better to keep the entries sorted at all times - this will make later manual additions simpler.

#
%w(
  ascii_countdown
  ascii_paradise
  autostart
  backup_paradise
  beautiful_url
  bioroebe
  case_parser
  chemistry_paradise
  class_docu_shower
  cliner
  collect_first_word_of_case_menu
  colours
  convert_global_env
  csv_paradise
  cyberweb
  dictionaries
  directory_paradise
  easycompile
  environment_information
  esystem
  extracter
  find_line_in_file
  ftp_paradise
  games_paradise
  generate_rc_file
  generate_shell_completion
  gtk_paradise
  hardware_information
  hours_to_seconds
  html_tags
  image_paradise
  irc_paradise
  kaisers
  md5sum
  method_introspection
  mountpoints
  multimedia_paradise
  opn
  pdf_paradise
  percentage
  program_information
  rbt
  remove_file_suffix
  repackage
  roebe
  rpg_paradise
  ruby_token_parser
  save_file
  show_rdoc_docu
  stat_file
  studium
  symlink
  tiss_project
  totarxz
  tree
  verbose_truth
  wetter
  wget
  xorg_buffer
  tk_paradise
  fox_paradise
  economy_paradise
  libui_paradise
  open
  simple_widgets
  rcfiles
  univeral_pipe_handler
).sort
FILE_USE_COLOURS =
#

Roebe::FILE_USE_COLOURS

#
"#{project_base_dir?}yaml/use_colours.yml"

Constants included from Encoding

Encoding::ENCODING_BIT, Encoding::ENCODING_ISO, Encoding::ENCODING_UTF, Encoding::ISO_ENCODING, Encoding::UNICODE, Encoding::USE_THIS_ENCODING

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.[](i = '') ⇒ Object

#

RequireEverything[]

Easier instantiation-method.

#

154
155
156
157
158
159
160
161
162
163
# File 'lib/roebe/classes/require_everything.rb', line 154

def self.[](i = '')
  case i
  when :be_quiet, :be_silent
    _ = ::Roebe::RequireEverything.new :do_not_run_yet
    _.set_be_quiet
    _.run
  else
    new
  end
end

.add_comment(i = 76) ⇒ Object

#

Roebe.add_comment

#

138
139
140
141
# File 'lib/roebe/toplevel_methods/module_methods.rb', line 138

def self.add_comment(i = 76)
  i = ('=' * i.to_i)
  return i
end

.add_user_lightyObject

#

Roebe.add_user_lighty

#

107
108
109
# File 'lib/roebe/classes/add_user_lighty.rb', line 107

def self.add_user_lighty
  AddUserLighty.new
end

.all_unicode_nodesObject

#

Roebe.all_unicode_nodes

This method will return an Array of all unicode-note symbols - at the least those that may be useful.

#

770
771
772
773
774
775
776
777
778
779
780
# File 'lib/roebe/toplevel_methods/unicode/popular_unicode_symbols.rb', line 770

def self.all_unicode_nodes
  [
    quarter_note,
    eighth_note,
    beamed_eighth_notes,
    beamed_sixteenth_notes,
    music_flat_sign,
    music_natural_sign,
    music_sharp_sign
  ]
end

.almost_equal_toObject

#

Roebe.almost_equal_to

See also: www.fileformat.info/info/unicode/char/2248/index.htm

The symbol will be: ≈

#

723
724
725
# File 'lib/roebe/toplevel_methods/unicode/popular_unicode_symbols.rb', line 723

def self.almost_equal_to
  "\u{2248}"
end

.append_this_onto_that_file(what, into = 'foobar.md') ⇒ Object

#

Roebe.append_this_onto_that_file

This method can be used to append content onto a file.

#

63
64
65
66
67
68
# File 'lib/roebe/toplevel_methods/write_what_into.rb', line 63

def self.append_this_onto_that_file(
    what,
    into          = 'foobar.md'
  )
  ::Roebe::SaveFile.append_this_onto_that_file(what, into)
end

.append_this_program_to_the_autostart_array(i) ⇒ Object

#

Roebe.append_this_program_to_the_autostart_array

This method can be used to add a program to the applications that will be autostarted.

#

212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
# File 'lib/roebe/commandline/misc.rb', line 212

def self.append_this_program_to_the_autostart_array(i)
  what = i.to_s.dup
  unless what.start_with? '- '
    what.prepend('- ')
  end
  unless what.start_with? "\n"
    what.prepend("\n")
  end
  into = FILE_AUTOSTART_THESE_PROGRAMS
  e 'Now appending `'+what.delete("\n")+'` into '+into+'.'
  append_what_into(what, into)
  if is_on_roebe?
    # ===================================================================== #
    # Hardcoded will do fine for now.
    # ===================================================================== #
    into = HOME_DIRECTORY_OF_USER_X+'DATA/PROGRAMMING_LANGUAGES/RUBY/src/roebe/lib/roebe/yaml/autostart_these_programs.yml'
    e 'Now appending `'+what.delete("\n")+'` into '+into+'.'
    append_what_into(what, into)
  end
end

.append_to_gem_install_command(i) ⇒ Object

#

Roebe.append_to_gem_install_command

#

266
267
268
# File 'lib/roebe/classes/update.rb', line 266

def self.append_to_gem_install_command(i)
  @gem_install_command << ' '+i
end

.are_these_two_strings_an_anagram?(string1, string2) ⇒ Boolean

#

Roebe.are_these_two_strings_an_anagram?

#

Returns:

  • (Boolean)

14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# File 'lib/roebe/math/anagram.rb', line 14

def self.are_these_two_strings_an_anagram?(string1, string2)
  unless string1.size == string2.size
    return false # Early return since these strings can not be an anagram then.
  end
  string1 = string1.dup
  string2 = string2.dup
  string1.downcase!
  string2.downcase!
  copy_of_string2 = string2.dup
  # ======================================================================= #
  # We now here that both strings must have the same length.
  # ======================================================================= #
  string1.chars.each {|this_char|
    if copy_of_string2.include? this_char
      copy_of_string2[copy_of_string2.index(this_char)] = '' 
    end
  }
  if copy_of_string2.size == 0
    return true
  else
    return false
  end
end

.array_install_these_gem_projectsObject

#

Roebe.array_install_these_gem_projects

#

95
96
97
# File 'lib/roebe/constants/array_install_these_gem_projects.rb', line 95

def self.array_install_these_gem_projects
  ARRAY_INSTALL_THESE_GEM_PROJECTS
end

.at(i = nil) ⇒ Object

#

Roebe.at

#

300
301
302
# File 'lib/roebe/classes/at.rb', line 300

def self.at(i = nil)
  Roebe::At.new(i)
end

.autogenerate_fluxbox_filesObject

#

Roebe.autogeneraet_fluxbox_files

#

15
16
17
18
# File 'lib/roebe/classes/fluxbox/autogenerate_fluxbox_files.rb', line 15

def self.autogenerate_fluxbox_files
  Roebe.generate_fluxbox_keys_file
  Roebe.generate_fluxbox_apps_file { :be_quiet }
end

.autoprune(i = ARGV) ⇒ Object

#

Roebe.autoprune

This method can be used to auto-prune some ruby gems that need to be rebuilt.

A line given to this method may look like this:

"Ignoring glib2-3.3.0 because its extensions are not built. Try: gem pristine glib2 --version 3.3.0\n" +
#

20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# File 'lib/roebe/toplevel_methods/autoprune.rb', line 20

def self.autoprune(i = ARGV)
  if i.is_a? Array
    i = i.join(' ').strip
  end
  if i.is_a?(String) and i.include?("\n")
    splitted = i.split("\n").map(&:strip)
    splitted.each {|line|
      if line.include? 'Try: '
        line = line.split('Try: ').last.strip
        esystem line
      end
    }
  end
pp i
end

.autosourceObject

#

Roebe.autosource

#

5202
5203
5204
# File 'lib/roebe/custom_methods/custom_methods.rb', line 5202

def self.autosource
  ::Roebe::CustomMethods.autosource
end

.available_classes(optional_input = nil) ⇒ Object

#

Roebe.available_classes

#

211
212
213
# File 'lib/roebe/classes/available_classes.rb', line 211

def self.available_classes(optional_input = nil)
  Roebe::AvailableClasses.new(optional_input)
end

.average_of_differences(array1 = %w( 34.9 44.4 33.6 40.1 41.5 40.3 32.6 39.3 29.3 40.5 31.4 ).map(&:to_f), array2 = %w( 38.2 38.5 40.0 38.2 37.4 37.8 40.3 36.7 38.3 40.4 38.7 ).map(&:to_f)) ⇒ Object

#

Roebe.average_of_differences

Given two input-arrays with values, we calculate the average of differences between these two.

#

17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
# File 'lib/roebe/math/average_of_differences.rb', line 17

def self.average_of_differences(
    array1 = %w(
      34.9 44.4 33.6 40.1 41.5 40.3 32.6 39.3 29.3 40.5 31.4
    ).map(&:to_f),
    array2 = %w(
      38.2 38.5 40.0 38.2 37.4 37.8 40.3 36.7 38.3 40.4 38.7
    ).map(&:to_f)
  )
  array_differences = []
  array1.each_with_index {|value1, index|
    value2 = array2[index]
    result = (value1 - value2).round(3)
    array_differences << result
    e result
  }
  # pp array_differences
  average_of_differences = array_differences.sum / array_differences.size
  return average_of_differences
end

.backup_master_boot_record(save_in_this_file = 'backup_mbr', use_this_as_input_device = '/dev/sda') ⇒ Object

#

Roebe.backup_master_boot_record

This method can be used to backup the master boot record (MBR) into a local file.

I typically keep a “backup” MBR on my home system. The code at the end of this .rb file does this for me.

#

50
51
52
53
54
55
56
57
58
59
# File 'lib/roebe/toplevel_methods/master_boot_record.rb', line 50

def self.backup_master_boot_record(
    save_in_this_file        = 'backup_mbr',
    use_this_as_input_device = '/dev/sda'
  )
  cmd_to_use = 'dd if='+use_this_as_input_device+
          ' of='+
          save_in_this_file+
          ' bs='+MASTER_BOOD_RECORD_SIZE.to_s+' count=1'
  esystem(cmd_to_use)
end

.base64(this_file = 'image.png') ⇒ Object

#

Roebe.base64

This method expects an existing file as input.

It will then return the output of applying Base64.encode64() to that file. This will allow us to use that String as the binary encoding for e. g. a .png file.

#

19
20
21
22
23
24
25
26
27
28
29
30
31
# File 'lib/roebe/toplevel_methods/base64.rb', line 19

def self.base64(
    this_file = 'image.png'
  )
  if this_file.is_a? Array
    this_file = this_file.first
  end
  require 'base64'
  result = ''.dup
  File.open(this_file, 'r') { |f|
    result << Base64.encode64(f.read)
  }
  result.delete("\n")
end

.batch_rename_pdf_files_systematically(counter = 5) ⇒ Object

#

Roebe.batch_rename_pdf_files_systematically

This method will simply rename the .pdf files systematically, starting from “1” to “2” and so forth.

#

245
246
247
248
249
250
251
252
253
254
255
256
# File 'lib/roebe/toplevel_methods/misc.rb', line 245

def self.batch_rename_pdf_files_systematically(
    counter = 5
  )
  these_are_the_pdf_files = Dir['*'].select {|line|
    line.end_with? '.pdf'
  }.sort
  these_are_the_pdf_files.each {|this_pdf_file| counter += 1
    new_name = counter.to_s+'.pdf'
    e this_pdf_file.to_s+' -> '+new_name
    move_file(this_pdf_file, new_name)
  }
end

.beamed_eighth_noteObject

#

Roebe.beamed_eighth_note

#

91
92
93
# File 'lib/roebe/toplevel_methods/unicode/popular_unicode_symbols.rb', line 91

def self.beamed_eighth_note
  "\u{266B}"
end

.beamed_eighth_notesObject

#

Roebe.beamed_eighth_notes

The symbol will be: ♫

#

796
797
798
# File 'lib/roebe/toplevel_methods/unicode/popular_unicode_symbols.rb', line 796

def self.beamed_eighth_notes
  "\u{266B}"
end

.beamed_sixteenth_notesObject

#

Roebe.beamed_sixteenth_notes

The symbol will be: ♬

#

805
806
807
# File 'lib/roebe/toplevel_methods/unicode/popular_unicode_symbols.rb', line 805

def self.beamed_sixteenth_notes
  "\u{266C}"
end

.beautify_systemObject

#

Roebe.beautify_system

This method will simply delegate towards RBT::BeautifySystem.

#

14
15
16
17
18
19
# File 'lib/roebe/toplevel_methods/beautify_system.rb', line 14

def self.beautify_system
  unless Object.const_defined? :RBT
    require 'rbt/utility_scripts/beautify_system.rb'
  end
  RBT::BeautifySystem.new
end

.binning(i, n_bins = 3) ⇒ Object

#

Roebe.binning

The first argument to this method should be an Arary.

#

23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
# File 'lib/roebe/math/binning.rb', line 23

def self.binning(i, n_bins = 3)
  array = Array.new(n_bins, [])
  # ======================================================================= #
  # Now we have created the array that we will return.
  # The next step is to create the proper subarrays for it. 
  # ======================================================================= #
  i.sort_by {|entry| entry.size }.each {|this_is_the_sequence|
    length_of_the_sequence = this_is_the_sequence.size
    # ===================================================================== #
    # We must next decide onto which Array we will push this sub-sequence.
    # ===================================================================== #
    add_to_the_array_at_this_position = ( length_of_the_sequence ) / n_bins

    if array[add_to_the_array_at_this_position].empty?
      array[add_to_the_array_at_this_position] = [this_is_the_sequence.dup]
    else
      array[add_to_the_array_at_this_position] << this_is_the_sequence.dup
    end
  }
  array = expand_this_array(array)
  return array
end

.black_chess_bishopObject

#

Roebe.black_chess_bishop

#

74
75
76
# File 'lib/roebe/toplevel_methods/unicode/unicode_chess_symbols.rb', line 74

def self.black_chess_bishop # ♝
  "\u{265d}"
end

.black_chess_kingObject

#

Roebe.black_chess_king

#

53
54
55
# File 'lib/roebe/toplevel_methods/unicode/unicode_chess_symbols.rb', line 53

def self.black_chess_king # ♚
  "\u{265a}"
end

.black_chess_knightObject

#

Roebe.black_chess_knight

#

95
96
97
# File 'lib/roebe/toplevel_methods/unicode/unicode_chess_symbols.rb', line 95

def self.black_chess_knight # ♟
  "\u{265e}"
end

.black_chess_pawnObject

#

Roebe.black_chess_pawn

#

81
82
83
# File 'lib/roebe/toplevel_methods/unicode/unicode_chess_symbols.rb', line 81

def self.black_chess_pawn # ♟
  "\u{265f}"
end

.black_chess_queenObject

#

Roebe.black_chess_queen

#

60
61
62
# File 'lib/roebe/toplevel_methods/unicode/unicode_chess_symbols.rb', line 60

def self.black_chess_queen # ♛
  "\u{265b}"
end

.black_chess_rookObject

#

Roebe.black_chess_rook

#

67
68
69
# File 'lib/roebe/toplevel_methods/unicode/unicode_chess_symbols.rb', line 67

def self.black_chess_rook # ♜
  "\u{265c}"
end

.black_circleObject

#

Roebe.black_circle

The symbol will be: ●

#

712
713
714
# File 'lib/roebe/toplevel_methods/unicode/popular_unicode_symbols.rb', line 712

def self.black_circle
  "\u{25CF}"
end

.black_lozengeObject

#

Roebe.black_lozenge

#

137
138
139
# File 'lib/roebe/toplevel_methods/unicode/popular_unicode_symbols.rb', line 137

def self.black_lozenge
  "\u{29EB}"
end

.black_medium_diamondObject

#

Roebe.black_medium_diamond

#

130
131
132
# File 'lib/roebe/toplevel_methods/unicode/popular_unicode_symbols.rb', line 130

def self.black_medium_diamond
  "\u{2B25}"
end

.black_right_pointing_triangleObject

#

Roebe.black_right_pointing_triangle

#

84
85
86
# File 'lib/roebe/toplevel_methods/unicode/popular_unicode_symbols.rb', line 84

def self.black_right_pointing_triangle
  "\u{25B6}"
end

.black_rightwards_arrowObject

#

Roebe.black_rightwards_arrow

The symbol will be: ➡

See: www.compart.com/en/unicode/U+27A1

Invocation example:

puts Colours.crimson(Roebe.black_rightwards_arrow)
#

687
688
689
# File 'lib/roebe/toplevel_methods/unicode/popular_unicode_symbols.rb', line 687

def self.black_rightwards_arrow
  "\u{27A1}"
end

.black_shogi_pieceObject

#

Roebe.black_shogi_piece

#

165
166
167
# File 'lib/roebe/toplevel_methods/unicode/popular_unicode_symbols.rb', line 165

def self.black_shogi_piece
  "\u{2617}"
end

.black_smiling_faceObject

#

Roebe.black_smiling_face

#

568
569
570
# File 'lib/roebe/toplevel_methods/unicode/popular_unicode_symbols.rb', line 568

def self.black_smiling_face
  "\u{263B}"
end

.black_squareObject

#

Roebe.black_square

The symbol will be: ■

See: www.fileformat.info/info/unicode/char/25a0/index.htm

Invocation example:

puts Colours.crimson(Roebe.black_square_arrow)
#

703
704
705
# File 'lib/roebe/toplevel_methods/unicode/popular_unicode_symbols.rb', line 703

def self.black_square
  "\u{25A0}"
end

.blinking_cursorObject

#

Roebe.blinking_cursor

#

80
81
82
# File 'lib/roebe/toplevel_methods/blinking_cursor.rb', line 80

def self.blinking_cursor
  Roebe::BlinkingCursor.blink
end

.boku_opening_datesObject

#

Studium.boku_opening_dates

#

15
16
17
18
19
20
21
22
23
24
# File 'lib/roebe/toplevel_methods/boku_opening_times.rb', line 15

def self.boku_opening_dates
  e 'Öffnungszeiten'
  e
  e '  Montag:     von '+sandybrown('09:00')+'-'+sandybrown('12:00')+' Uhr'
  e '  Dienstag:   von '+sandybrown('09:00')+'-'+sandybrown('12:00')+' Uhr'
  e '  Mittwoch:   von '+sandybrown('14:00')+'-'+sandybrown('16:00')+' Uhr'
  e '  Donnerstag: von '+sandybrown('09:00')+'-'+sandybrown('12:00')+' Uhr'
  e '  Freitag:    von '+sandybrown('09:00')+'-'+sandybrown('12:00')+' Uhr'
  e
end

.box_drawings_heavy_down_and_horizontalObject

#

Roebe.box_drawings_heavy_down_and_horizontal

#

664
665
666
# File 'lib/roebe/toplevel_methods/unicode/popular_unicode_symbols.rb', line 664

def self.box_drawings_heavy_down_and_horizontal
  "\u{2533}" # => ┳
end

.box_drawings_heavy_down_and_leftObject

#

Roebe.box_drawings_heavy_down_and_left

#

650
651
652
# File 'lib/roebe/toplevel_methods/unicode/popular_unicode_symbols.rb', line 650

def self.box_drawings_heavy_down_and_left
  "\u{2513}" # => ┓
end

.box_drawings_heavy_down_and_rightObject

#

Roebe.box_drawings_heavy_down_and_right

This is the thick, top-left corner of a “commandline table”.

#

636
637
638
# File 'lib/roebe/toplevel_methods/unicode/popular_unicode_symbols.rb', line 636

def self.box_drawings_heavy_down_and_right
  "\u{250F}" # => ┏
end

.box_drawings_heavy_horizontalObject

#

Roebe.box_drawings_heavy_horizontal

This is a very useful building block for commandline applications, in that you can display a horizontal bar through it.

#

608
609
610
# File 'lib/roebe/toplevel_methods/unicode/popular_unicode_symbols.rb', line 608

def self.box_drawings_heavy_horizontal
  "\u{2501}" # ━
end

.box_drawings_heavy_up_and_horizontalObject

#

Roebe.box_drawings_heavy_up_and_horizontal

#

671
672
673
# File 'lib/roebe/toplevel_methods/unicode/popular_unicode_symbols.rb', line 671

def self.box_drawings_heavy_up_and_horizontal
  "\u{253B}" # => ┻
end

.box_drawings_heavy_up_and_leftObject

#

Roebe.box_drawings_heavy_up_and_left

#

657
658
659
# File 'lib/roebe/toplevel_methods/unicode/popular_unicode_symbols.rb', line 657

def self.box_drawings_heavy_up_and_left
  "\u{251B}" # => ┛
end

.box_drawings_heavy_up_and_rightObject

#

Roebe.box_drawings_heavy_up_and_right

#

643
644
645
# File 'lib/roebe/toplevel_methods/unicode/popular_unicode_symbols.rb', line 643

def self.box_drawings_heavy_up_and_right
  "\u{2517}" # => ┗
end

.box_drawings_heavy_verticalObject

#

Roebe.box_drawings_heavy_vertical

#

615
616
617
# File 'lib/roebe/toplevel_methods/unicode/popular_unicode_symbols.rb', line 615

def self.box_drawings_heavy_vertical
  "\u{2503}" # => ┃
end

.bring_up_this_wlan_device(use_this_device = 'wlan0') ⇒ Object

#

Roebe.bring_up_this_wlan_device

This method can be used to bring up a wlan-device, such as an USB stick.

wlan7: wpa_passphrase UPC1371700 >> /etc/wpa_supplicant.conf
#

20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
# File 'lib/roebe/toplevel_methods/wlan/bring_up_this_wlan_device.rb', line 20

def self.bring_up_this_wlan_device(
    use_this_device = 'wlan0'
  )
  if use_this_device.is_a? Array
    use_this_device = use_this_device.first
  end
  if use_this_device.nil?
    use_this_device = 'wlan0' # Use a default in this case.
  end
  _ = 'iw dev'
  esystem _
  _ = 'ip link show '+use_this_device
  esystem _
  _ = 'ip link set '+use_this_device+' up'
  esystem _
  _ = 'iw '+use_this_device+' link'
  esystem _
  _ = 'iw '+use_this_device+' scan'
  esystem _
  _ = 'wpa_supplicant -B -D wext -i '+use_this_device+' -c /etc/wpa_supplicant.conf'
  esystem _
  _ = 'iw '+use_this_device+' link'
  esystem _
  _ = 'dhclient '+use_this_device+''
  esystem _
end

.browser(use_this_url = ARGV, use_this_browser = BROWSER_TO_USE_BY_DEFAULT) ⇒ Object

#

Roebe.browser

The second argument specifies which browser is to be used, e. g. “palemoon” or another one. It is a String.

#

355
356
357
358
359
360
361
362
363
364
365
366
# File 'lib/roebe/browser/misc.rb', line 355

def self.browser(
    use_this_url     = ARGV,
    use_this_browser = BROWSER_TO_USE_BY_DEFAULT
  )
  if use_this_url.is_a? Array
    # ======================================================================= #
    # Trying this since as of 24.08.2018 - just convert it into a String.
    # ======================================================================= #
    use_this_url = use_this_url.join(' ').strip
  end
  ::Roebe::Browser.new(use_this_url)
end

.bugObject

#

Roebe.bug

#

547
548
549
# File 'lib/roebe/toplevel_methods/unicode/popular_unicode_symbols.rb', line 547

def self.bug
  "\u{1F41B}"
end

.build_all_my_local_gemsObject

#

Roebe.build_all_my_local_gems

This method will build all my local gems. They will then be moved to a target location at /Depot/MyGems.

#

15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# File 'lib/roebe/toplevel_methods/build_all_my_local_gems.rb', line 15

def self.build_all_my_local_gems
  require 'roebe/constants/array_install_these_gem_projects.rb'
  require 'roebe/classes/make_gem.rb'
  require 'roebe/constants/constants.rb'
  target_dir = '/Depot/MyGems/'
  mkdir(target_dir)
  array = self.class::ARRAY_INSTALL_THESE_GEM_PROJECTS
  # ======================================================================= #
  # One hack for now come next.
  # ======================================================================= #
  array.reject! {|entry| entry.include? 'pipe_handler' }
  array.each {|file|
    working_dir = RUBY_SRC+file+'/'
    cd working_dir
    MakeGem.new
    possible_gem_files = Dir[working_dir+'*.gem']
    unless possible_gem_files.empty?
      first = possible_gem_files.first
      move_file(first, target_dir, :be_verbose)
    end
  }
  return target_dir # Return it too - we can then use this in other scripts.
end

.bundle_exam_resultsObject

#

Roebe.bundle_exam_results

This will bundle together all my various exam results.

Invoke it like so:

rinvoke bundle_exam_results
#

23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
# File 'lib/roebe/toplevel_methods/bundle_exam_results.rb', line 23

def self.bundle_exam_results
  require 'pdf_paradise/merge_pdf_namespace'
  begin
    require 'pdf_paradise/merge_pdf/merge_pdf.rb'
  rescue LoadError; end
  store_here  = '/Depot/Temp/AllExams_generated_at_'+today?+'.pdf'
  merge_pdf   = MergePdf.new(:dont_run_yet)
  base_dir    = ::Studium.studium_at_home_dir?+'EXAMS_RESULT/'
  uni_wien    = Dir[base_dir+'UNI_WIEN/*Sammelzeugnis*.pdf'].first
  tu_wien     = Dir[base_dir+'TU_WIEN/*Sammelzeugnis*.pdf'].first
  meduni_wien = Dir[base_dir+'MEDUNI_WIEN/*Sammelzeugnis*.pdf'].first
  vetmed_wien = base_dir+'VETMED_UNI/Sammelzeugnis_Vetmed_2014.pdf'
  boku_wien   = Dir[base_dir+'BOKU_WIEN/*Sammelzeugnis*.pdf'].first
  e 'Now merging various .pdf files together (will store '\
    'at '+sfile(store_here)+').'
  merge_pdf << uni_wien
  merge_pdf << tu_wien
  merge_pdf << meduni_wien
  merge_pdf << vetmed_wien
  merge_pdf << boku_wien
  merge_pdf.store_at store_here
  merge_pdf.run
  merge_pdf.report
end

.c_debug?Boolean

#

Roebe.c_debug?

#

Returns:

  • (Boolean)

14
15
16
# File 'lib/roebe/toplevel_methods/c_debug.rb', line 14

def self.c_debug?
  e 'printf("file %s, line %d: wert: %ld\n", __FILE__, __LINE__, wert);'
end

.calculate_bmi(weight = 16.9, height = 105.4, round = 1) ⇒ Object

#

Roebe.calculate_bmi

This method will calculate the BMI, using the metric system.

The parameter weight should be given in kg; the height in n cm.

#

16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/roebe/toplevel_methods/calculate_bmi.rb', line 16

def self.calculate_bmi(
     weight =  16.9, # in kg
     height = 105.4, # in cm
     round  = 1      # round to n decimal places
   )
   if weight.is_a? Array
     weight = weight.first
   end
   result = (weight.to_f / (height.to_f * height.to_f)) * 10_000.0
   result = result.round(round) if round
   result
end

.calculate_hypotenuse(a, b) ⇒ Object

#

Roebe.calculate_hypotenuse

Pass a and b to calculate the hypotenuse of a triangle.

Usage examples:

Roebe.calculate_hypotenuse(3,5) # => 5.830951894845301
#

22
23
24
# File 'lib/roebe/toplevel_methods/calculate_hypotenuse.rb', line 22

def self.calculate_hypotenuse(a, b)
  return Math.sqrt((a.to_f ** 2) + ( b.to_f ** 2)) 
end

.calculate_the_distance_between_two_points(p1 = ARGV, p2 = nil) ⇒ Object

#

Roebe.calculate_the_distance_between_two_points

This method can calculate the distance between two points.

#

16
17
18
19
20
21
22
23
24
25
26
27
28
29
# File 'lib/roebe/math/calculate_the_distance_between_two_points.rb', line 16

def self.calculate_the_distance_between_two_points(p1 = ARGV, p2 = nil)
  if p1.is_a? Array and p2.nil?
    p2 = [ p1[3].to_f, p1[4].to_f, p1[5].to_f ]
    p1 = [ p1[0].to_f, p1[1].to_f, p1[2].to_f ]
    # ===================================================================== #
    # Squareoot of:
    #   (x2-x1)**2+(y2-y1)**2+(z2-z2)**2
    # ===================================================================== #
    a = (p2[0] - p1[0]) ** 2 # 0.7832250000000001
    b = (p2[1] - p1[1]) ** 2 # 1.4304159999999992
    c = (p2[2] - p1[2]) ** 2 # 0.013456000000000023
    return Math.sqrt(a+b+c)  # 1.4923461394730109
  end
end

.calculate_the_variance(*i) ⇒ Object

#

Roebe.calculate_the_variance

This method will calculate the variance of the given input array.

#

14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# File 'lib/roebe/math/calculate_the_variance.rb', line 14

def self.calculate_the_variance(*i)
  i.flatten!
  i.compact!
  # ======================================================================= #
  # In german: der "Mittelwert":
  # ======================================================================= #
  arithmetic_mean = i.map(&:to_f).sum / i.size.to_f
  # ======================================================================= #
  # Next, we need to calculate the deviations.
  # ======================================================================= #
  array_deviations = i.map {|entry|
    entry.to_f - arithmetic_mean
  }
  # ======================================================================= #
  # Next, determine the squared differences from that number:
  # ======================================================================= #
  array_squared_deviations = array_deviations.map {|entry|
    entry ** 2
  }
  sum = array_squared_deviations.sum
  # ======================================================================= #
  # Next, the variance is that sum-number, divided by n-1 entries:
  # ======================================================================= #
  variance = sum / (i.size.to_f - 1)
  return variance 
end

.calendar(i = ARGV) ⇒ Object

#

Roebe.calendar

#

303
304
305
# File 'lib/roebe/classes/calendar.rb', line 303

def self.calendar(i = ARGV)
  Roebe::Calendar.new(i).print
end

.capitalize_this_file(i = nil) ⇒ Object

#

Roebe.capitalize_this_file

This method can be used to capitalize files in a given directory.

To test this method from the Roebe::Shell, try:

mkdir /Depot/yooo; cd /Depot/yooo; touch ack; capitalize *
#

186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
# File 'lib/roebe/toplevel_methods/files.rb', line 186

def self.capitalize_this_file(
    i = nil
  )
  if i
    i = Dir['*'].select {|entry| File.file?(entry) } if i.nil?
    if i.is_a? Array
      i.each {|the_file| capitalize(the_file)}
    else # Else, capitalize it.
      basename = File.basename(i)
      _ = basename[0,1].upcase + basename[1..-1]
      e "Now capitalizing #{sfile(i)} to #{sfile(_)}."
      rename_file(basename,_) # bl $DIA/base/file_actions.rb 
    end
  end
end

.cat(i = ARGV) ⇒ Object

#

Roebe.cat (cat tag)

This method will display the content of a file.

#

168
169
170
171
172
173
174
175
176
177
178
# File 'lib/roebe/toplevel_methods/misc.rb', line 168

def self.cat(i = ARGV)
  require 'cat/module'
  if i.is_a? Array
    if i.empty?
    else
      i.each {|entry| cat(entry) }
    end
  else
    Cat[i]
  end
end

.chained(i = ARGV) ⇒ Object

#

Roebe.chained

#

10
11
12
13
# File 'lib/roebe/toplevel_methods/chained.rb', line 10

def self.chained(i = ARGV)
  require 'rbt' unless Object.const_defined? :RBT
  RBT.batch_compile(i) # Delegate towards RBT here.
end

.chdir(i = :home_dir) ⇒ Object

#

Roebe.chdir (chdir tag, cd tag)

This method can be used to simply change directory on the local filesystem.

#

17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# File 'lib/roebe/toplevel_methods/chdir.rb', line 17

def self.chdir(
    i = :home_dir
  )
  # ======================================================================= #
  # Perform some substitutions next.
  # ======================================================================= #
  case i
  # ======================================================================= #
  # === :home_dir
  # ======================================================================= #
  when :home_dir
    i = File.expand_path('~')
  # ======================================================================= #
  # === ~
  # ======================================================================= #
  when '~'
    i = File.expand_path(i)
  end
  if i.include? '$'
    i = convert_global_env(i)
  end
  if File.directory? i
    Dir.chdir(i) # cd into the directory in this case.
  end
end

.check_markObject

#

Roebe.check_mark

The symbol will be: ✓

URL: codepoints.net/U+2713?lang=en

#

760
761
762
# File 'lib/roebe/toplevel_methods/unicode/popular_unicode_symbols.rb', line 760

def self.check_mark
  "\u{2713}"
end

.check_whether_an_internet_connection_is_availableObject

#

Roebe.check_whether_an_internet_connection_is_available

This method will return a Boolean value - whether an internet connection is available (true) or whether we are offline.

#

16
17
18
19
20
21
22
23
24
25
26
27
28
# File 'lib/roebe/toplevel_methods/check_whether_an_internet_connection_is_available.rb', line 16

def self.check_whether_an_internet_connection_is_available
  require 'resolv'
  resolver = Resolv::DNS.new
  begin
    # ===================================================================== #
    # The first domain name ever. Will probably not be removed, ever.
    # ===================================================================== #
    resolver.getaddress('symbolics.com')
    true
  rescue Resolv::ResolvError
    false
  end
end

.checkmark_completed_thin?Boolean

#

Roebe.checkmark_completed_thin?

#

Returns:

  • (Boolean)

49
50
51
# File 'lib/roebe/toplevel_methods/unicode/completed.rb', line 49

def self.checkmark_completed_thin?
  CHECKMARK_COMPLETED_THIN
end

.cheering_megaphoneObject

#

Roebe.cheering_megaphone

This refers to the following symbol: „

#

877
878
879
# File 'lib/roebe/toplevel_methods/unicode/popular_unicode_symbols.rb', line 877

def self.cheering_megaphone
  "\u{1F4E3}"
end

.cliner(use_this_character = :default, how_often_to_use_that_token = :default, use_this_colour = :default) ⇒ Object

#

Roebe.cliner

The idea for this method is so that we do not depend on the gem called cliner.

Keep in mind that the input may be like this:

cliner('',grey?) {

Usage example:

Roebe.cliner('*')
#

29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
# File 'lib/roebe/toplevel_methods/cliner.rb', line 29

def self.cliner(
    use_this_character          = :default,
    how_often_to_use_that_token = :default,
    use_this_colour             = :default
  )
  case use_this_character
  # ======================================================================= #
  # === :default
  #
  # Specify the default character here.
  # ======================================================================= #
  when :default
    use_this_character = '='
  end
  result = use_this_character * 80
  if use_this_colour
    case use_this_colour
    when :default
      use_this_colour = :slateblue
    end
    result = Colours.send(use_this_colour, result)
  end
  e result
end

.clockObject

#

Roebe.clock

#

108
109
110
# File 'lib/roebe/classes/clock.rb', line 108

def self.clock
  Roebe::Clock.new
end

.colourize_files_and_directories(i = ARGF) ⇒ Object

#

Roebe.colourize_files_and_directories

#

16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
# File 'lib/roebe/toplevel_methods/colourize_files_and_directories.rb', line 16

def self.colourize_files_and_directories(i = ARGF)
  if i.respond_to? :read
    i = i.read
  end
  if i.is_a? String
    i = i.split("\n")
  end
  i = [i].flatten.compact
  i.map! {|entry|
    if File.exist?(entry) and
      (File.file?(entry) or
       File.directory?(entry) or
       File.symlink?(entry))

      splitted = entry.split('/')
      subrange_joined = (
        splitted[0 .. -2].join('/')+'/'
      ).squeeze('/')

      ftype = File.ftype(entry)

      case ftype
      # =================================================================== #
      # === file
      # =================================================================== #
      when 'file'
        entry = ::Colours.sdir(subrange_joined)+
                ::Colours.sfile(splitted.last)
      # =================================================================== #
      # === directory
      # =================================================================== #
      when 'directory'
        entry = ::Colours.sdir(
          (entry+'/').squeeze('/')
        )
      # =================================================================== #
      # === link
      # =================================================================== #
      when 'link'
        entry = ::Colours.sdir(subrange_joined)+
                ::Colours.ssymlink(splitted.last)
      end
    end
    entry
  }
  i.each {|entry| puts entry }
end

.colourized_tokenitor1(n_times = 80) ⇒ Object

#

Roebe.colourized_tokenitor1

#

16
17
18
# File 'lib/roebe/toplevel_methods/colourized_tokenitor.rb', line 16

def self.colourized_tokenitor1(n_times = 80)
  e steelblue('=' * n_times)
end

.colourized_tokenitor2(n_times = 80) ⇒ Object

#

Roebe.colourized_tokenitor2

#

23
24
25
# File 'lib/roebe/toplevel_methods/colourized_tokenitor.rb', line 23

def self.colourized_tokenitor2(n_times = 80)
  e olivedrab('=' * n_times)
end

.colourized_tokenitor3(n_times = 80) ⇒ Object

#

Roebe.colourized_tokenitor3

#

30
31
32
# File 'lib/roebe/toplevel_methods/colourized_tokenitor.rb', line 30

def self.colourized_tokenitor3(n_times = 80)
  e mediumseagreen('=' * n_times)
end

.colourized_tokenitor4(n_times = 80) ⇒ Object

#

Roebe.colourized_tokenitor4

#

37
38
39
# File 'lib/roebe/toplevel_methods/colourized_tokenitor.rb', line 37

def self.colourized_tokenitor4(n_times = 80)
  e mediumpurple('=' * n_times)
end

.colourized_tokenitor5(n_times = 80) ⇒ Object

#

Roebe.colourized_tokenitor5

#

44
45
46
# File 'lib/roebe/toplevel_methods/colourized_tokenitor.rb', line 44

def self.colourized_tokenitor5(n_times = 80)
  e mediumorchid('=' * n_times)
end

.compile_as_appdir(i = Dir.pwd) ⇒ Object

#

Roebe.compile_as_appdir (appconf, appdir)

This method allows you to quickly compile into an Appdir-Like structure.

#

195
196
197
198
# File 'lib/roebe/toplevel_methods/module_methods.rb', line 195

def self.compile_as_appdir(i = Dir.pwd)
  require 'easycompile'
  Easycompile::CompileAsAppdir.new(i, ARGV) # bl $RUBY_SRC/compile_into_appdir.rb
end

.completedObject

#

Roebe.completed

This returns a unicode “checkmark”. This is useful in the sense that you can use it to display that certain tasks on a todo-list have been completed.

See:

https://www.fileformat.info/info/unicode/char/2713/index.htm
#

34
35
36
# File 'lib/roebe/toplevel_methods/unicode/completed.rb', line 34

def self.completed
  CHECKMARK_COMPLETED
end

.controllerObject

#

Roebe.controller

This method is really only useful for my home system.

#

59
60
61
62
# File 'lib/roebe/toplevel_methods/is_on_roebe.rb', line 59

def self.controller
  require '/home/x/data/personal/controller/controller.rb'
  Roebe::Controller.start_sinatra_interface(ARGV)
end

.convert_global_env(i) ⇒ Object

#

Roebe.convert_global_env (global tag, ENV tag)

This method will convert a global $variable to its ENV value and return this value.

We do this by delegating towards class ConvertGlobalEnv.

#

17
18
19
20
21
22
23
24
25
26
27
# File 'lib/roebe/toplevel_methods/convert_global_env.rb', line 17

def self.convert_global_env(i)
  unless Object.const_defined? :ConvertGlobalEnv
    begin
      require 'convert_global_env'
    rescue LoadError; end
  end
  if Object.const_defined? :ConvertGlobalEnv
    i = ConvertGlobalEnv.convert(i)
  end
  i
end

.copy_bluefish_configuration_files(copy_from = Dir['/home/x/programming/ruby/src/roebe/lib/roebe/www/bluefish/*'], copy_to = ENV['HOME'].to_s+'/.bluefish/') ⇒ Object

#

Roebe.copy_bluefish_configuration_files

This method will copy my custom bluefish-related configuration files, if is_on_roebe? returns true (aka if we are on my home system).

Since as of

#

25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# File 'lib/roebe/toplevel_methods/editor.rb', line 25

def self.copy_bluefish_configuration_files(
    copy_from = Dir['/home/x/programming/ruby/src/roebe/lib/roebe/www/bluefish/*'],
    copy_to   = ENV['HOME'].to_s+'/.bluefish/'
  )
  e
  e 'Now trying to copy the following files:'
  e
  copy_from.each {|entry|
    e sfile(entry)
  }
  e
  e 'Copying onto the following directory:            '+sdir(copy_to)
  if is_on_roebe?
    mkdir(copy_to) unless File.directory? copy_to
    copy_files(copy_from, copy_to) # <- in the file copy_file.rb
  end
end

.copy_file(file, where_to = return_pwd, be_verbose = true) ⇒ Object

#

Roebe.copy_file

Use this method to copy a file to another location.

The second argument specifies the target directory/path, that is, where you want to copy the file to.

The method must be somewhat complex, in that it shall be able to interprete usage cases such as the following:

copy_files(
  from: '/AUTOGENERATED/',
  to:   chroot_target
)
#

96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
# File 'lib/roebe/toplevel_methods/files.rb', line 96

def self.copy_file(
    file,                    # ← Copy these files.
    where_to   = return_pwd, # ← Copy them to this position, defaulting to the current working directory.
    be_verbose = true
  )
  # ======================================================================= #
  # === Handle blocks first
  # ======================================================================= #
  if block_given?
    yielded = yield
    case yielded
    when :be_quiet
      be_verbose = false
    end
  end
  # ======================================================================= #
  # === Handle Array next
  # ======================================================================= #
  if file.is_a? Array
    file.each {|this_file|
      copy_file(this_file, where_to, be_verbose)
    }
  else
    # ===================================================================== #
    # === Handle Hashes next
    # ===================================================================== #
    if file.is_a? Hash
      if file.has_key? :to
        where_to = file.delete(:to)
      end
      if file.has_key? :from
        file = file.delete(:from)
        if File.directory?(file)
          file = Dir["#{file}*"]
        end
      end
      if file.empty?
        file = ''.dup
      end
    end
    if file.is_a? Array
      file.flatten.each {|entry|
        copy_file(entry, where_to, be_verbose)
      }
    else
      file = file.to_s.dup
      case where_to
      when '.'
        where_to = return_pwd
      end
      # ===================================================================== #
      # Make directory-targets cleaner.
      # ===================================================================== #
      if File.directory? where_to
        where_to << '/' unless where_to.end_with? '/'
      end
      if File.exist? file
        if be_verbose
          e "Now copying `#{sfile(file)}` to `#{sfile(where_to)}`."
        end
        FileUtils.cp(file, where_to)
      else
        e "Can not copy, as the file at `#{file}` does not exist."
      end
    end
  end
end

.copy_setup_file_to_pwdObject

#

Roebe.copy_setup_file_to_pwd

This method will copy the old setup.rb file to the pwd.

Note that Roebe.cpruby is an alias to this method.

#

22
23
24
25
26
27
28
29
30
31
32
33
34
35
# File 'lib/roebe/toplevel_methods/setup.rb', line 22

def self.copy_setup_file_to_pwd
  path_to_the_setup_rb_file = "#{PROJECT_BASE_DIRECTORY}setup/setup.rb"
  if block_given?
    yielded = yield
    case yielded
    when :be_verbose
      e 'Now copying the file '+sfile(path_to_the_setup_rb_file)
      e 'to the current working directory.'
    end
  end
  FileUtils.cp(
    path_to_the_setup_rb_file,'.'
  )
end

.copy_setup_rb_fileObject

#

Roebe.copy_setup_rb_file

This method will copy the setup.rb file to the current directory.

#

16
17
18
19
20
21
# File 'lib/roebe/toplevel_methods/copy_setup_rb_file.rb', line 16

def self.copy_setup_rb_file
  copy_file(
    '/home/x/DATA/PROGRAMMING_LANGUAGES/RUBY/src/roebe/lib/roebe/toplevel_methods/setup.rb',
    Dir.pwd
  )
end

.copy_the_linux_kernelObject

#

Roebe.copy_the_linux_kernel

This method will just copy relevant files onto /boot/, in particular bzImage and System.map.

#

18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# File 'lib/roebe/toplevel_methods/copy_the_linux_kernel.rb', line 18

def self.copy_the_linux_kernel
  current_directory = Dir.pwd
  # ======================================================================= #
  # Determine which linux-version we are using.
  # ======================================================================= #
  linux_version = File.basename(current_directory)
  if linux_version.include? '-'
    linux_version = linux_version.split('-').last
  end
  target = '/boot/vmlinuz-'+linux_version.to_s
  cp('arch/x86_64/boot/bzImage', target)
  target_for_the_new_system_map_file = "/boot/System.map-#{linux_version}"
  e 'Coping System.map onto '+target_for_the_new_system_map_file+' next.'
  cp('System.map', target_for_the_new_system_map_file)
end

.cp_to_here(copy_what = ARGV) ⇒ Object

#

Roebe.cp_to_here

#

16
17
18
19
20
21
22
23
24
25
26
27
28
# File 'lib/roebe/toplevel_methods/cp_to_here.rb', line 16

def self.cp_to_here(
    copy_what = ARGV
  )
  if copy_what.is_a? Array
    copy_what.each {|entry| cp_to_here(entry) }
  else
    require 'rbt'
    _ = RBT::Compile.new(copy_what) { :do_not_run_yet }
    path = _.cookbook_dataset_program_path?
    e 'Using this path: '+steelblue(path)
    cp(path, '.')
  end
end

.cpp_header?Boolean

#

Roebe.cpp_header?

#

Returns:

  • (Boolean)

174
175
176
177
178
179
180
181
182
183
184
185
186
187
# File 'lib/roebe/toplevel_methods/module_methods.rb', line 174

def self.cpp_header?
  _ = ''.dup
  _ << '#include <iostream>

using namespace std; 

int main()
{
return 0;
} // g++ foo*.cpp
'
  e _
  set_xorg_buffer(_)
end

.crazy_make_modeObject

#

Roebe.crazy_make_mode

This method is possibly fairly useless to most people, but I needed it in order to chroot-compile a program, and automatically copy the correct .h files into the /usr/include/ hierarchy.

This mode depends on the gem called “rbt”.

#

21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
# File 'lib/roebe/toplevel_methods/crazy_make_mode.rb', line 21

def self.crazy_make_mode
  require 'rbt'
  # ======================================================================= #
  # We need the 2>&1 variant to grab only the errors.
  # ======================================================================= #
  result = `make 2>&1`.split(N)
  result.select! {|line|
    # ===================================================================== #
    # Select the correct line(s) next.
    # ===================================================================== #
    line.include?('fatal error:') and
    line.include?('No such file or directory')
  }
  if Object.const_defined? :RBT
    unless RBT.const_defined? :ConfigLogParser
      require 'rbt/utility_scripts/config_log_parser.rb'
    end
    regex_to_use = RBT::ConfigLogParser::REGEX_FOR_MISSING_HEADER_FILES
    first = result.first
    first =~ regex_to_use
    this_file_appears_to_be_missing = $1.to_s.dup
    unless this_file_appears_to_be_missing.empty?
      e 'This file appears to be missing:'
      e
      e "  #{swarn(this_file_appears_to_be_missing)}"
      e
      # =================================================================== #
      # Hardcoded path to the backup-include directory next. This will
      # contain the default .h files.
      # =================================================================== #
      backup_include_dir = '/BACKUP_INCLUDE_DIR/'
      if on_roebe? and File.directory? backup_include_dir
        e 'Coping this file next.'
        # ================================================================= #
        # In this situation, copy the file.
        # ================================================================= #
        from = backup_include_dir+this_file_appears_to_be_missing
        to   = "/usr/include/#{this_file_appears_to_be_missing}"
        copy_file(from, to)
      end
    end
  end
end

.create_desktop_file_for(this_program) ⇒ Object

#

Roebe.create_desktop_file_for

Easier top-level method to create a .desktop file.

#

233
234
235
# File 'lib/roebe/classes/create_desktop_file.rb', line 233

def self.create_desktop_file_for(this_program)
  Roebe::CreateDesktopFile.new(this_program)
end

.create_directoriesObject

#

Roebe.create_directories (idirs tag, generate_my_directories tag)

This method creates my default directories, for use in a HiveOS-like system (my directories).

Usage example (from bash shell):

create_dirs
#

412
413
414
415
# File 'lib/roebe/toplevel_methods/module_methods.rb', line 412

def self.create_directories
  require_this_roebe_class 'create_my_directories'
  CreateMyDirectories.new
end

.create_directory(i, be_verbose = false) ⇒ Object

#

Roebe.create_directory

This method will try to create a directory (or several directories), by delegating onto FileUtils.mkdir_p().

#

18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
# File 'lib/roebe/toplevel_methods/create_directory.rb', line 18

def self.create_directory(
    i, be_verbose = false
  )
  case be_verbose
  when :be_verbose
    be_verbose = true
  end
  if i.is_a? Array
    i.each {|entry| create_directory(entry, be_verbose) }
  else
    if be_verbose and !File.directory?(i)
      e 'Creating the directory '+sdir(i)+' next.'
    end
    FileUtils.mkdir_p(i)
  end
end

.create_directory_layout(use_this_as_the_directory_structure = :use_the_roebe_project_in_order_to_infer_the_directory_structure) ⇒ Object

#

Roebe.create_directory_layout

Create my default directory layout scheme.

#

20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
# File 'lib/roebe/toplevel_methods/create_directory_layout.rb', line 20

def self.create_directory_layout(
    use_this_as_the_directory_structure =
      :use_the_roebe_project_in_order_to_infer_the_directory_structure
  )
  case use_this_as_the_directory_structure
  when :use_the_roebe_project_in_order_to_infer_the_directory_structure
    begin
      require 'yaml'
      this_file = Roebe.file_directory_structure
      use_this_as_the_directory_structure = YAML.load_file(this_file)
    rescue LoadError
      if is_on_roebe?
        # ================================================================= #
        # Hardcoded approach then:
        # ================================================================= #
        this_file = ::Roebe.file_directory_structure
        if File.exist? this_file
          use_this_as_the_directory_structure = YAML.load_file(this_file)
        else
          e "The file #{sfile(this_file)} does not exist."
        end
      else
        e 'The roebe project is not available. Consider installing it.'
        e
        e '  gem install roebe'
        e
      end
    end
  end
  unless use_this_as_the_directory_structure.is_a? Symbol
    create_directory(use_this_as_the_directory_structure, :be_verbose)
  end
end

.create_firefox_extension(i = ARGV) ⇒ Object

#

Roebe.create_firefox_extension

#

177
178
179
# File 'lib/roebe/classes/create_firefox_extension.rb', line 177

def self.create_firefox_extension(i = ARGV)
  ::Roebe::CreateFirefoxExtension.new(i)
end

.create_games_iso(i = '--default') ⇒ Object

#

Roebe.create_games_iso

#

308
309
310
# File 'lib/roebe/classes/create_iso_for_games.rb', line 308

def self.create_games_iso(i = '--default')
  ::Roebe::CreateIsoForGames.new(i)
end

.create_iso(i = DEFAULT_DIRECTORY, run_already = :default, &block) ⇒ Object

#

Roebe.create_iso

#

201
202
203
204
205
# File 'lib/roebe/classes/create_iso.rb', line 201

def self.create_iso(
    i = DEFAULT_DIRECTORY, run_already = :default, &block
  )
  ::Roebe::CreateISO.new(i, run_already, &block)
end

.create_lua_pc_fileObject

#

Roebe.create_lua_pc_file

#

5178
5179
5180
# File 'lib/roebe/custom_methods/custom_methods.rb', line 5178

def self.create_lua_pc_file
  ::Roebe::CustomMethods.create_lua_pc_file
end

.create_mad_pkgconfig_file(store_where = '/usr/lib/pkgconfig/mad.pc', use_this_prefix = '/usr') ⇒ Object

#

Roebe.create_mad_pkgconfig_file

The first argument denotes where this will be stored.

#

185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
# File 'lib/roebe/toplevel_methods/misc.rb', line 185

def self.create_mad_pkgconfig_file(
    store_where     = '/usr/lib/pkgconfig/mad.pc',
    use_this_prefix = '/usr'
  )
  store_what = 'prefix='+use_this_prefix+'
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=${prefix}/include

Name: mad
Description: MPEG audio decoder
Requires:
Version: 0.15.1b
Libs: -L${libdir} -lmad
Cflags: -I${includedir}'
  write_what_into(store_what, store_where)
  e 'Storing into `'+sfile(store_where)+'`.'
end

.create_my_gems(i = ARGV) ⇒ Object

#

Roebe.create_my_gems

#

132
133
134
# File 'lib/roebe/classes/batch_generate_all_my_gems.rb', line 132

def self.create_my_gems(i = ARGV)
  Roebe::BatchGenerateAllMyGems.new(i)
end

.create_this_c_file(name_of_the_c_file = 'hello_world.c', file_content_as_string = '#include <stdio.h> int main() { /* This will print hello world, in C */ printf("Hello, World! \n"); return 0; } ') ⇒ Object

#

Roebe.create_this_c_file

#

14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/roebe/toplevel_methods/create_this_c_file.rb', line 14

def self.create_this_c_file(
    name_of_the_c_file     = 'hello_world.c',
    file_content_as_string = '#include <stdio.h>

int main() {
/* This will print hello world, in C */
printf("Hello, World! \n");

return 0;
}
'
  )
  what = file_content_as_string
  into = name_of_the_c_file
  e 'Generating the file `'+sfile(into)+'` next.'
  write_what_into(what, into)
end

.create_zip(i) ⇒ Object

#

Roebe.create_zip

#

102
103
104
# File 'lib/roebe/classes/create_zip.rb', line 102

def self.create_zip(i)
  Roebe::CreateZip.new(i)
end

.current_stable_version_of_ruby(this_file = yaml_dir?+'current_ruby_versions.yml') ⇒ Object

#

Roebe.current_stable_version_of_ruby

#

356
357
358
359
360
# File 'lib/roebe/toplevel_methods/misc.rb', line 356

def self.current_stable_version_of_ruby(
    this_file = yaml_dir?+'current_ruby_versions.yml'
  )
  YAML.load_file(this_file)['current_stable_version_of_ruby']
end

.custom_shebang?Boolean

#

Roebe.custom_shebang?

#

Returns:

  • (Boolean)

208
209
210
# File 'lib/roebe/toplevel_methods/misc.rb', line 208

def self.custom_shebang?
  '#!/user/bioinf4/bin/ruby -w'
end

.dark_shadeObject

#

Roebe.dark_shade

#

167
168
169
# File 'lib/roebe/toplevel_methods/unicode/unicode_block_elements.rb', line 167

def self.dark_shade
  "\u{2593}" # This is ▓
end

.decompose_this_unicode_symbol(i) ⇒ Object

#

Roebe.decompose_this_unicode_symbol

Usage example:

array = (2000 .. 3000).to_a; array.each {|entry| puts Roebe.decompose_this_unicode_symbol(entry) }
#

17
18
19
20
# File 'lib/roebe/toplevel_methods/unicode/decompose_this_unicode_symbol.rb', line 17

def self.decompose_this_unicode_symbol(i)
  value = i.to_s.to_i(16)
  [ value ].pack('U*')
end

.default_comment_lineObject

#

Roebe.default_comment_line

#

21
22
23
# File 'lib/roebe/toplevel_methods/misc.rb', line 21

def self.default_comment_line
  '# '+('='*78)+' #'
end

.determine_whether_colours_will_be_used_based_on_the_file_use_colours(use_this_file = FILE_USE_COLOURS) ⇒ Object

#

Roebe.determine_whether_colours_will_be_used_based_on_the_file_use_colours

The first argument to this method should be a .yml file.

#

56
57
58
59
60
61
62
63
64
65
66
67
# File 'lib/roebe/colours/determine_whether_colours_will_be_used.rb', line 56

def self.determine_whether_colours_will_be_used_based_on_the_file_use_colours(
    use_this_file = FILE_USE_COLOURS
  )
  if File.exist? use_this_file
    @use_colours = YAML.load_file(use_this_file)
    if @use_colours == true
      Roebe.try_to_require_the_colours_project
    end
  else
    @use_colours = false
  end
end

.dhcpcd(i = ARGV) ⇒ Object

#

Roebe.dhcpcd

#

128
129
130
# File 'lib/roebe/classes/dhcpcd.rb', line 128

def self.dhcpcd(i = ARGV)
  Dhcpcd.new(i)
end

.directory_roebe_yaml_pdf?Boolean

#

Roebe.directory_roebe_yaml_pdf?

#

Returns:

  • (Boolean)

31
32
33
# File 'lib/roebe/toplevel_methods/important_pdf_files.rb', line 31

def self.directory_roebe_yaml_pdf?
  DIRECTORY_ROEBE_YAML_PDF
end

.disable(*i) ⇒ Object

#

disable (disable tag)

#

14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/roebe/toplevel_methods/disable.rb', line 14

def self.disable(*i)
  if i.is_a? Array
    i = i.join(' ').strip
  end
  case i.to_s # We need a String past this point.
  # ======================================================================= #
  # === disable colours
  # ======================================================================= #
  when /^colours?$/i
    disable_colours { :be_verbose }
  end
end

.disable_coloursObject

#

Roebe.disable_colours

#

39
40
41
# File 'lib/roebe/colours/determine_whether_colours_will_be_used.rb', line 39

def self.disable_colours
  @use_colours = false
end

.display_mbrObject

#

Roebe.display_mbr

#

15
16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/roebe/toplevel_methods/display_mbr.rb', line 15

def self.display_mbr
  e "#{rev}Displaying the content of this computer's MBR next:"
  cliner
  result = File.open('/dev/sda') {|f| f.read(512) } # <- This is a String.
  pp result
  if result.include? 'LILO'
    e
    e "#{rev}This MBR uses LILO (the Linux Loader) as its bootloader."
    e
  end
  cliner
  return result
end

.display_unicode_snowmanObject

#

Roebe.display_unicode_snowman

For commandline display, this could work:

roebe --snowman
#

23
24
25
# File 'lib/roebe/toplevel_methods/unicode/display_unicode_snowman.rb', line 23

def self.display_unicode_snowman
  e return_unicode_snowman
end

.do_compile_this_java_file_statically(work_on_these_files) ⇒ Object

#

Roebe.do_compile_this_java_file_statically

This method can be used to compile a .java file or an array of .java files into native executables, if GraalVM is installed as well as native-image is available.

This presently (in the year 2022) only works on Linux; it remains to be seen if - and when - this will be supported on windows.

#

24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
# File 'lib/roebe/commandline/misc.rb', line 24

def self.do_compile_this_java_file_statically(
    work_on_these_files
  )
  require 'roebe/classes/run/run.rb'
  work_on_these_files = [work_on_these_files].flatten.compact
  work_on_these_files.each {|work_on_this_file|
    cd File.dirname(work_on_this_file)
    e rev+'Next delegating towards class '+
      steelblue('Roebe::Run')+'.'
    Roebe::Run.new([
      File.basename(work_on_this_file),
      '--static-image'
    ])
    raw_filename = File.basename(work_on_this_file).
                   downcase.delete_suffix(
                     File.extname(work_on_this_file)
                   )
    e 'Next relocating the file towards `'+
      sfile(log_dir?+raw_filename)+'`.'
    move_file(raw_filename, log_dir?)
  }
end

.do_use_unicode_environmentObject

#

Roebe.do_use_unicode_environment

#

36
37
38
# File 'lib/roebe/toplevel_methods/env.rb', line 36

def self.do_use_unicode_environment
  @env['LC_ALL'] = ENV['LC_ALL'] = 'en_US.utf8'
end

.does_this_program_exist?(i = nil) ⇒ Boolean

#

Roebe.does_this_program_exist?

The argument to this method should be the name of the program, such as “htop” or “zlib”.

#

Returns:

  • (Boolean)

20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
# File 'lib/roebe/toplevel_methods/does_this_program_exist.rb', line 20

def self.does_this_program_exist?(
    i = nil
  )
  i = i.first if i.is_a? Array
  if i
    file_location = nil
    return_value  = false
    path = path?
    if path
      splitted_path = path.split(':')
      splitted_path.each {|entry|
        # =================================================================== #
        # If the file exists, we will assume that the program exists.
        # =================================================================== #
        location = rds(entry.to_s+'/'+i.to_s)
        if File.exist? location
          return_value = true
          file_location = location
          return [return_value, file_location] # Return here then at once, an Array.
        end
      } unless i.to_s.empty?
    else
      e 'No PATH variable seems to exist.'
    end
  end
  return false # This is the default return value.
end

.does_this_terminal_support_unicode?Boolean

#

Roebe.does_this_terminal_support_unicode?

#

Returns:

  • (Boolean)

12
13
14
15
16
17
18
19
20
21
# File 'lib/roebe/toplevel_methods/does_this_terminal_support_unicode.rb', line 12

def self.does_this_terminal_support_unicode?
  entries = ENV.values_at("LC_ALL","LC_CTYPE","LANG").compact
  first_entry_downcased = entries.first.downcase

  if first_entry_downcased.include?(("UTF-8").downcase.delete('-'))
    e "△ \\o/ Yes this terminal supports UTF-8 \\o/ △"
  else
    raise "Terminal can't handle UTF-8"
  end
end

.dosbox_config(i = ARGV) ⇒ Object

#

Roebe.dosbox_config

rinvoke dosbox_config

#

142
143
144
# File 'lib/roebe/dosbox/generate_dosbox_config.rb', line 142

def self.dosbox_config(i = ARGV)
  ::Roebe::GenerateDosboxConfig.new(i)
end

.double_low_quotation_markObject

#

Roebe.double_low_quotation_mark

This refers to the following symbol: „

#

868
869
870
# File 'lib/roebe/toplevel_methods/unicode/popular_unicode_symbols.rb', line 868

def self.double_low_quotation_mark
  "\u{201E}"
end

.downcase_all_entries_in_the_current_directory(entries = ARGV) ⇒ Object

#

Roebe.downcase_all_entries_in_the_current_directory

This method will simply downcase every entry in the current directory.

A shorter alias exists to this method, called `Roebe.downcase_all_entries`.

#

21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# File 'lib/roebe/toplevel_methods/downcase_all_entries_in_the_current_directory.rb', line 21

def self.downcase_all_entries_in_the_current_directory(
    entries = ARGV
  )
  entries = [entries].flatten.compact
  # ======================================================================= #
  # Populate the Array if the user did not input anything:
  # ======================================================================= #
  entries = Dir['*'] if entries.empty?
  entries.flatten!
  entries.each {|entry|
    to = File.basename(entry.downcase)
    unless File.exist? to
      e "#{rev}Downcasing from `#{sfile(entry)}` to `#{sfile(to)}`."
      FileUtils.mv(entry, to)
    end
  }
end

.downcase_extension(i = ARGV) ⇒ Object

#

Roebe.downcase_extension

#

132
133
134
# File 'lib/roebe/classes/downcase_extension.rb', line 132

def self.downcase_extension(i = ARGV)
  DowncaseExtension.new(i)
end

.download_autogenerated_rcfilesObject

#

Roebe.download_autogenerated_rcfiles

To invoke this method, try:

roebe --download-autogenerated
#

241
242
243
244
245
246
247
248
249
250
251
252
253
254
# File 'lib/roebe/commandline/misc.rb', line 241

def self.download_autogenerated_rcfiles
  remote_base_dir = 'http://shevy.bplaced.net/AUTOGENERATED/'
  %w(
    aliases_rc
    cd_aliases_rc
    programs_aliases_rc
    ps1_rc
    roeberia_settings_rc
    ls_colours_rc
  ).each {|remote_url| remote_url = remote_base_dir+remote_url
    e "Now downloading #{sfancy(remote_url)}"
    esystem "wget #{remote_url}"
  }
end

.download_certdataObject

#

Roebe.download_certdata

This method can be used to download the certdata.txt file from the BLFS project.

#

17
18
19
20
21
# File 'lib/roebe/toplevel_methods/download_certdata.rb', line 17

def self.download_certdata
  remote_url = 'http://anduin.linuxfromscratch.org/BLFS/other/certdata.txt'
  _ = "wget #{remote_url}"
  esystem _
end

.download_emojis(i = :default) ⇒ Object

#

Roebe.download_emojis

This method will download emojis, defaulting to the URL www.unicode.org/Public/emoji/4.0/.

Do note that the dataset obtained from there, via open-uri, will be filtered for only .txt files - everything else will be ignored.

#

21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
# File 'lib/roebe/toplevel_methods/download_emojis.rb', line 21

def self.download_emojis(i = :default)
  if i.is_a? Array
    i = i.first
  end
  case i
  when :default, nil
    # ===================================================================== #
    # This is the default URL.
    # ===================================================================== #
    i = 'http://www.unicode.org/Public/emoji/4.0/'
  end
  require 'open-uri'
  raw_dataset = open(i).read
  use_this_regex = /<a href=".+">(.+)<\/a>/ # See: https://rubular.com/r/mdUeXe4VzmGBZS
  scanned = raw_dataset.scan(use_this_regex).flatten
  scanned.map! {|entry| "#{i}#{entry}" }
  scanned.select! {|entry| entry.end_with? '.txt' }
  e 'Proceeding to download '+scanned.size.to_s+' files next:'
  scanned.each {|entry|
    esystem 'wget '+entry
  }
end

.download_unicode_dataset(use_this_url = 'https://www.unicode.org/Public/UNIDATA/') ⇒ Object

#

Roebe.download_unicode_dataset

This method will download the Unicode dataset from www.unicode.org.

#

16
17
18
19
20
21
22
23
24
25
26
# File 'lib/roebe/toplevel_methods/unicode/download_unicode_dataset.rb', line 16

def self.download_unicode_dataset(
    use_this_url = 'https://www.unicode.org/Public/UNIDATA/'
  )
  x = Roebe.return_all_remote_entries_from_this_url(use_this_url)
  puts x
  x.each {|remote_url|
    unless remote_url.end_with?('/') or remote_url.include?('index.html')
      system 'wget '+remote_url
    end
  }
end

.downwards_arrowObject

#

Roebe.downwards_arrow

The symbol will be: ↓

See: en.wikipedia.org/wiki/Arrow_%28symbol%29#Arrows_in_Unicode

Invocation example:

puts Colours.crimson(Roebe.up_arrow)
#

1028
1029
1030
1031
1032
1033
1034
# File 'lib/roebe/toplevel_methods/unicode/popular_unicode_symbols.rb', line 1028

def self.downwards_arrow
  result = "\u{2193}"
  if is_on_roebe?
    set_xorg_buffer(result.strip)
  end
  result
end

.e(i = '', make_newline = true) ⇒ Object

#

Roebe.e

#

12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/roebe/toplevel_methods/e.rb', line 12

def self.e(
    i            = '',
    make_newline = true
  )
  case make_newline
  when :do_not_make_a_newline
    make_newline = false
  end
  if i.is_a? Array
    i = i.join(' ')
  end
  if make_newline
    i = "#{i}\n"
  end
  print i
end

.ecomment(i) ⇒ Object

#

Roebe.ecomment

This method can be used to colourize strings that include a '#' character.

To test this, try:

Roebe.ecomment 'hello # world!'
#

20
21
22
23
24
25
26
27
# File 'lib/roebe/colours/ecomment.rb', line 20

def self.ecomment(i)
  if i.include? '#'
    splitted = i.split '#'
    e sfancy(splitted.first)+
      Colours::GREY+'#'+
      splitted.last+rev
  end
end

.edir(i = '') ⇒ Object

#

Roebe.edir

#

30
31
32
# File 'lib/roebe/colours/sdir.rb', line 30

def self.edir(i = '')
  e sdir(i)
end

.editor?Boolean

#

Roebe.editor?

#

Returns:

  • (Boolean)

23
24
25
# File 'lib/roebe/constants/misc.rb', line 23

def self.editor?
  MAIN_EDITOR_TO_USE
end

.efancy(i = '') ⇒ Object

#

Roebe.efancy

#

22
23
24
# File 'lib/roebe/colours/sfancy.rb', line 22

def self.efancy(i = '')
  e ::Roebe.sfancy(i)
end

.eighth_noteObject

#

Roebe.eighth_note

The symbol for this musical note will be: ♪

#

841
842
843
# File 'lib/roebe/toplevel_methods/unicode/popular_unicode_symbols.rb', line 841

def self.eighth_note
  "\u{266A}"
end

.email?Boolean

#

Roebe.email?

#

Returns:

  • (Boolean)

61
62
63
# File 'lib/roebe/toplevel_methods/misc.rb', line 61

def self.email?
  '[email protected]'
end

.embeddable_interfaceObject

#

Roebe.embeddable_interface

#

44
45
46
47
48
# File 'lib/roebe/www/embeddable_interface.rb', line 44

def self.embeddable_interface
  object = Object.new
  object.extend(::Roebe::EmbeddableInterface)
  return object
end

.enable(*i) ⇒ Object

#

enable (enable tag)

#

14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/roebe/toplevel_methods/enable.rb', line 14

def self.enable(*i)
  if i.is_a? Array
    i = i.join(' ').strip
  end
  case i.to_s # We need a String past this point.
  # ======================================================================= #
  # === enable colours
  # ======================================================================= #
  when /^colours?$/i
    enable_colours { :be_verbose }
  end
end

.enable_coloursObject

#

Roebe.enable_colours

#

46
47
48
49
# File 'lib/roebe/colours/determine_whether_colours_will_be_used.rb', line 46

def self.enable_colours
  @use_colours = true
  Roebe.try_to_require_the_colours_project
end

.encoding?Boolean

#

Roebe.encoding?

#

Returns:

  • (Boolean)

61
62
63
# File 'lib/roebe/encoding/encoding.rb', line 61

def self.encoding?
  Encoding::USE_THIS_ENCODING
end

.encoding_isoObject

#

Roebe.encoding_iso

Query-method towards the ISO encoding, specifically the ISO-8859-1 encoding.

#

71
72
73
# File 'lib/roebe/encoding/encoding.rb', line 71

def self.encoding_iso
  Encoding::ENCODING_ISO
end

.encoding_utf8Object

#

Roebe.encoding_utf8

Query-method towards the UTF-8 encoding.

#

80
81
82
# File 'lib/roebe/encoding/encoding.rb', line 80

def self.encoding_utf8
  Encoding::ENCODING_UTF
end

.ensure_main_encoding(i, use_this_encoding = encoding? ) ⇒ Object

#

Roebe.ensure_main_encoding

This method will ensure that the given input has the proper encoding.

It is usually used on Strings, but as can be seen in the code below, it can also be applied on Arrays and Hashes.

#

92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
# File 'lib/roebe/encoding/encoding.rb', line 92

def self.ensure_main_encoding(
    i,
    use_this_encoding = encoding?
  )
  if i.is_a? String
    i = i.force_encoding(use_this_encoding)
  elsif i.is_a? Array
    i.map! {|entry| entry.force_encoding(use_this_encoding) }
  elsif i.is_a? Hash
    new_hash = {}
    i.each_pair {|key, value|
      if key.is_a? String
        key = key.dup if key.frozen?
        key = key.force_encoding(use_this_encoding)
      end
      new_hash[key] = value
    }
    i = new_hash # And assign it here.
  end
end

.enter_chroot(which_variant = :depot_chroot, chroot_target = '/Depot/Chroot/', use_this_path_for_env = '/usr/bin/env') ⇒ Object

#

Roebe.enter_chroot

This method can be used to enter a chroot environment.

I am not sure whether this is possible from ruby - but at the least the shell-syntax can be shown on the commandline, which is one use case for this method here.

#

43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
# File 'lib/roebe/toplevel_methods/chroot.rb', line 43

def self.enter_chroot(
    which_variant         = :depot_chroot, # :lfs_first_stage,
    chroot_target         = '/Depot/Chroot/', # ENV['LFS'],
    use_this_path_for_env = '/usr/bin/env' # '/home/Programs/Coreutils/Current/bin/'
  )
  if which_variant.is_a? Array
    which_variant = which_variant.first
  end
  if which_variant.nil?
    which_variant = :default # Assume a default value in this case.
  end
  if File.directory?(chroot_target) and
     Dir.empty?(chroot_target) and
     is_on_roebe?
    # ===================================================================== #
    # Overrule the target in this case.
    # ===================================================================== #
    chroot_target = '/Depot/Chroot/'
  elsif which_variant and
        which_variant.is_a?(String) and
        File.directory?(which_variant)
    chroot_target = which_variant
    which_variant = :local_chroot
  end
  # ======================================================================= #
  # === Determine which path to bash is to be used next
  #
  # path_to_bash = '/tools/bin/bash'
  # ======================================================================= #
  path_to_bash          = '/usr/bin/bash'
  # ======================================================================= #
  # use_this_path_for_env = '/tools/bin/env'
  # ======================================================================= #
  case which_variant # case tag
  # ======================================================================= #
  # === local_chroot
  # ======================================================================= #
  when :local_chroot,
       :local,'local',':local',
       :depot_chroot,':depot_chroot','depot_chroot',
       :default
    if is_on_roebe?
      # =================================================================== #
      # Also create these entry-points for my home system.
      # =================================================================== #
      make_nodes_and_mount_dev_entries(chroot_target)
    end
    _ = <<-EOF

chroot "#{chroot_target}" #{use_this_path_for_env} -i HOME=/root TERM="$TERM" PS1='$(pwd)' PATH=/usr/bin:/bin:/sbin:/usr/sbin:/tools/bin #{path_to_bash} --login +h

EOF
  # ======================================================================= #
  # === toolchain
  # ======================================================================= #
  when :toolchain,'toolchain',':toolchain'
    chroot_target = '/home/Programs/Toolchain/'
    use_this_path_for_env = '/bin/env'
    path_to_bash          = '/bin/bash'
    _ = <<-EOF

chroot "#{chroot_target}" #{use_this_path_for_env} -i HOME=/root TERM="$TERM" PS1='$(pwd)' PATH=/usr/bin:/bin:/sbin:/usr/sbin:/tools/bin #{path_to_bash} --login +h

EOF
  # ======================================================================= #
  # === enterchroot --usb1
  # ======================================================================= #
  when /^-?-?usb1$/i
    _ = <<-EOF

chroot "#{ENV['MOUNT_USB1']}" #{use_this_path_for_env} -i HOME=/root TERM="$TERM" PS1='$(pwd)' PATH=/usr/bin:/bin:/sbin:/usr/sbin:/tools/bin #{path_to_bash} --login +h

EOF
  # ======================================================================= #
  # === :lfs_first_stage
  # ======================================================================= #
  when :lfs_first_stage
    _ = <<-EOF

chroot "$LFS" /tools/bin/env -i HOME=/root TERM="$TERM" PS1='$(pwd)' PATH=/bin:/usr/bin:/sbin:/usr/sbin:/tools/bin /tools/bin/bash --login +h

EOF
  end
  if _
    _ = _.dup if _.frozen?
    _.strip!
    cmd = _.strip.delete("\n").strip
    # ===================================================================== #
    # Next we will enter the chroot-target, but before we do so, we check
    # if we are on roebe, and if /AUTOGENERATED/ exists. If it does
    # not exist, but a directory called /AUTOGENERATED/ does exist
    # on the home system, then this will be copied first. That way I
    # can re-use my aliases quickly on the chroot-target.
    # ===================================================================== #
    target_for_autogenerated = "#{chroot_target}AUTOGENERATED/"
    if is_on_roebe? and
       File.directory?('/AUTOGENERATED/') and
      !File.directory?(target_for_autogenerated)
      e
      e "#{rev}No directory exists at #{sdir(target_for_autogenerated)}."
      e "Generating it, then copying the content from #{sdir('/AUTOGENERATED/')}"
      e 'as this is useful for my home system(s).'
      e
      mkdir(target_for_autogenerated)
      copy_files(
        from: '/AUTOGENERATED/',
        to:   "#{chroot_target}AUTOGENERATED/"
      )
    end
    e
    e "#{rev}Next entering the chroot target at #{steelblue(chroot_target)}."
    e
    esystem cmd
    e
  else
    e 'Something went wrong. The command would have been:'
    e
    e sfancy("  #{_}")
    e
  end
end

.env?Boolean

#

Roebe.env?

#

Returns:

  • (Boolean)

20
21
22
# File 'lib/roebe/toplevel_methods/env.rb', line 20

def self.env?
  @env
end

.eparse(i) ⇒ Object

#

Roebe.eparse

#

112
113
114
# File 'lib/roebe/commandline/help.rb', line 112

def self.eparse(i)
  ::Colours.eparse(i)
end

.error_line?Boolean

#

Roebe.error_line?

#

Returns:

  • (Boolean)

120
121
122
# File 'lib/roebe/constants/misc.rb', line 120

def self.error_line?
  '2>&1'
end

.esystem(i) ⇒ Object

#

Roebe.esystem

This method will simply combine e (aka puts) with a call to system().

That way we can run a verbose system command on the target computer.

#

17
18
19
20
# File 'lib/roebe/toplevel_methods/esystem.rb', line 17

def self.esystem(i)
  e i
  system i
end

.expand_this_array(array) ⇒ Object

#

Roebe.expand_this_array

#

10
11
12
13
14
15
16
# File 'lib/roebe/math/binning.rb', line 10

def self.expand_this_array(array)
  array.map {|inner_entry| # ["A", "QR"]
    inner_entry.map {|most_inner_entry|
      [most_inner_entry.size, most_inner_entry]
    }
  }
end

.extract_gem_file(this_gem_file) ⇒ Object

#

Roebe.extract_gem_file

The first path should be the location to a ruby .gem file. This is a mandatory argument, so it must always be supplied.

#

183
184
185
# File 'lib/roebe/classes/extract_gem_file.rb', line 183

def self.extract_gem_file(this_gem_file)
  Roebe::ExtractGemFile.new(this_gem_file)
end

.extract_this_file(i, to = Dir.pwd) ⇒ Object

#

Roebe.extract_this_file

#

44
45
46
47
48
49
50
51
# File 'lib/roebe/toplevel_methods/extract.rb', line 44

def self.extract_this_file(i, to = Dir.pwd)
  begin
    require 'extracter'
  rescue LoadError; end
  Extracter.extract_what_to(
    File.basename(i), to
  )
end

.extract_what_to(what, to = return_pwd, optional_use_this_colour = nil) ⇒ Object

#

Roebe.extract_what_to

This method will perform the actual extract-action on an archive. Since as of June 2012 we will use class Extracter for this task.

#

20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# File 'lib/roebe/toplevel_methods/extract.rb', line 20

def self.extract_what_to(
    what,
    to                       = return_pwd,
    optional_use_this_colour = nil # <- Use this to control the colour.
  )
  begin
    require 'extracter'
  rescue LoadError; end
  begin
    require 'extracter/extracter.rb'
  rescue LoadError; end
  e "Now extracting #{sfile(what.to_s)}."
  _ = ::Extracter.new(what, to, :dont_run_yet) # Pass control of this to class Extracter here.
  # _.extract_to = to
  if optional_use_this_colour
    _.set_colour_for_directories(optional_use_this_colour)
  end
  _.run
  return _.extracted_to?
end

.face_with_tears_of_joyObject

#

Roebe.face_with_tears_of_joy

puts Colours.crimson(Roebe.face_with_tears_of_joy)

#

123
124
125
# File 'lib/roebe/toplevel_methods/unicode/popular_unicode_symbols.rb', line 123

def self.face_with_tears_of_joy
  "\u{1f602}"
end

.face_without_mouthObject

#

Roebe.face_without_mouth

An emoji.

Usage example:

puts Colours.gold(Roebe.face_without_mouth*40)
#

561
562
563
# File 'lib/roebe/toplevel_methods/unicode/popular_unicode_symbols.rb', line 561

def self.face_without_mouth
  "\u{1F636}"
end

.fast_fibonacci(i) ⇒ Object

#

Roebe.fast_fibonacci

This implementation is significantly faster than the traditional fibonacci. It is also aliased via Roebe.fibonacci().

You can visit the following homepage for an explanation:

https://www.nayuki.io/page/fast-fibonacci-algorithms
#

76
77
78
79
80
81
82
83
84
85
86
87
88
89
# File 'lib/roebe/toplevel_methods/fibonacci.rb', line 76

def self.fast_fibonacci(i)
  if i.is_a? Array
    # ===================================================================== #
    # We only work with the first element of an Array in this case.
    # ===================================================================== #
    i = i.first
  end
  i = i.to_i if i.is_a? String
  if i <= 0
    e 'Please provide a number larger than 0.'
  else
    fast_fibonacci_implementation(i)[0]
  end
end

.fast_fibonacci_implementation(i) ⇒ Object

#

Roebe.fast_fibonacci_implementation

This is the “internal” implementation.

An Array will be returned.

#

16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/roebe/toplevel_methods/fibonacci.rb', line 16

def self.fast_fibonacci_implementation(i)
  i = i.to_i # We need a Number.
  if i == 0
    [0, 1]
  else
    a, b = fast_fibonacci_implementation(i / 2)
    c = a * (b * 2 - a)
    d = a * a + b * b
    if i % 2 == 0
      [c, d]
    else
      [d, c + d]
    end
  end
end

.feedback_base_dirObject

#

Roebe.feedback_base_dir

This method will feedback some generic-template that can be used to create some ruby file.

#

93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
# File 'lib/roebe/toplevel_methods/module_methods.rb', line 93

def self.feedback_base_dir
  unless Object.const_defined? :XorgBuffer
    require 'xorg_buffer/module'
  end
  project_name = File.basename(Dir.pwd)
  if project_name.include? '-'
    project_name = project_name.split('-').first
  end
  result = ''
  result << "  BASE_DIR = File.absolute_path(File.dirname(__FILE__)+'/..')+'/'"+N
  result << "  YAML_DIRECTORY = YAML_DIR = BASE_DIR+'yaml/'"+N
  result << '    or'+N
  result << '  PROJECT_BASE_DIRECTORY = Pathname(__FILE__).dirname.realpath.to_s'+N
  result << '    or'+N
  result << "  File.expand_path('..', __FILE__) # In the project base directory."+N
  result << '    or'+N
  result << "  PROJECT_BASE_DIRECTORY = RbConfig::CONFIG['sitelibdir']+'/name_of_project/'"+N
  result << '    or'+N
  result << ''+N
  module_string = ''
  module_string << 'module '+project_name.to_camelcase+
                   " # require '"+project_name.downcase+"/project.rb'"+N
  module_string << ''+N
  module_string << '  # '+add_comment(73)+' #'+N
  module_string << '  # === PROJECT_BASE_DIRECTORY'+N
  module_string << '  # '+add_comment(73)+' #'+N
  module_string << "  PROJECT_BASE_DIRECTORY = RbConfig::CONFIG['sitelibdir']+'/"+project_name+"/'"+N
  module_string << ''+N
  module_string << '  # '+add_comment(73)+' #'+N
  module_string << '  # === '+project_name.to_camelcase+'.project_base_dir?'+N
  module_string << '  # '+add_comment(73)+' #'+N
  module_string << '  def self.project_base_dir?'+N
  module_string << '    PROJECT_BASE_DIRECTORY'+N
  module_string << '  end'+N
  module_string << ''+N
  module_string << 'end'+N
  module_string << '  # Store the above into a file called '+sfancy('project_base_directory.rb')+N
  XorgBuffer.set_buffer(module_string)
  result << module_string
  e result
end

.file_contactsObject

#

Roebe.file_contacts

#

61
62
63
# File 'lib/roebe/constants/roebe.rb', line 61

def self.file_contacts
  FILE_CONTACTS_YAML
end

.file_directory_structureObject

#

Roebe.file_directory_structure

#

76
77
78
# File 'lib/roebe/constants/file_constants.rb', line 76

def self.file_directory_structure
  "#{Roebe.project_base_dir?}yaml/directory_structure.yml"
end

.file_does_not_exist(i) ⇒ Object

#

Roebe.file_does_not_exist

Consistently use this method here, or one of the aliases to it, when a file does not exist.

That way, we gain a simple and unified way to report missing files.

#

210
211
212
# File 'lib/roebe/toplevel_methods/files.rb', line 210

def self.file_does_not_exist(i)
  e "#{swarn('No file called')} #{sfile(i)} #{swarn('could be found.')}"
end

.file_holidaysObject

#

Roebe.file_holidays

#

83
84
85
# File 'lib/roebe/constants/file_constants.rb', line 83

def self.file_holidays
  "#{Roebe.project_base_dir?}yaml/holidays/holidays.yml"
end

.file_kernelObject

#

Roebe.file_kernel

This method will yield a string (a path) such as:

/usr/lib/ruby/site_ruby/3.0.0/roebe/yaml/kernel/kernel.yml
#

95
96
97
# File 'lib/roebe/constants/file_constants.rb', line 95

def self.file_kernel
  "#{Roebe.project_yaml_directory?}kernel/kernel.yml"
end

.file_networkObject

#

Roebe.file_network

#

54
55
56
# File 'lib/roebe/constants/file_constants.rb', line 54

def self.file_network
  "/home/x/data/personal/yaml/network/network.yml"
end

.file_pdf1?Boolean

#

Roebe.file_pdf1?

#

Returns:

  • (Boolean)

60
61
62
# File 'lib/roebe/toplevel_methods/important_pdf_files.rb', line 60

def self.file_pdf1?
  "#{RUBY_SRC}roebe/lib/roebe/yaml/pdf/pdf1.yml"
end

.file_pdf2?Boolean

#

Roebe.file_pdf2?

#

Returns:

  • (Boolean)

67
68
69
# File 'lib/roebe/toplevel_methods/important_pdf_files.rb', line 67

def self.file_pdf2?
  "#{RUBY_SRC}roebe/lib/roebe/yaml/pdf/pdf2.yml"
end

.file_pdf3?Boolean

#

Roebe.file_pdf3?

#

Returns:

  • (Boolean)

74
75
76
# File 'lib/roebe/toplevel_methods/important_pdf_files.rb', line 74

def self.file_pdf3?
  "#{RUBY_SRC}roebe/lib/roebe/yaml/pdf/pdf3.yml"
end

.file_pdf4?Boolean

#

Roebe.file_pdf4?

#

Returns:

  • (Boolean)

81
82
83
# File 'lib/roebe/toplevel_methods/important_pdf_files.rb', line 81

def self.file_pdf4?
  "#{RUBY_SRC}roebe/lib/roebe/yaml/pdf/pdf4.yml"
end

.file_pdf5?Boolean

#

Roebe.file_pdf5?

#

Returns:

  • (Boolean)

88
89
90
# File 'lib/roebe/toplevel_methods/important_pdf_files.rb', line 88

def self.file_pdf5?
  "#{RUBY_SRC}roebe/lib/roebe/yaml/pdf/pdf5.yml"
end

.file_pdf6?Boolean

#

Roebe.file_pdf6?

#

Returns:

  • (Boolean)

95
96
97
# File 'lib/roebe/toplevel_methods/important_pdf_files.rb', line 95

def self.file_pdf6?
  "#{RUBY_SRC}roebe/lib/roebe/yaml/pdf/pdf6.yml"
end

.file_pdf7?Boolean

#

Roebe.file_pdf7?

#

Returns:

  • (Boolean)

102
103
104
# File 'lib/roebe/toplevel_methods/important_pdf_files.rb', line 102

def self.file_pdf7?
  "#{RUBY_SRC}roebe/lib/roebe/yaml/pdf/pdf7.yml"
end

.file_pdf8?Boolean

#

Roebe.file_pdf8?

#

Returns:

  • (Boolean)

109
110
111
# File 'lib/roebe/toplevel_methods/important_pdf_files.rb', line 109

def self.file_pdf8?
  "#{RUBY_SRC}roebe/lib/roebe/yaml/pdf/pdf8.yml"
end

.file_pdf9?Boolean

#

Roebe.file_pdf9?

#

Returns:

  • (Boolean)

116
117
118
# File 'lib/roebe/toplevel_methods/important_pdf_files.rb', line 116

def self.file_pdf9?
  "#{RUBY_SRC}roebe/lib/roebe/yaml/pdf/pdf9.yml"
end

.file_roeberia_settingsObject

#

Roebe.file_roeberia_settings

#

68
69
70
# File 'lib/roebe/constants/roebe.rb', line 68

def self.file_roeberia_settings
  "#{ROEBE_PERSONAL_DIRECTORY}yaml/roeberia_settings.yml"
end

.file_these_pdf_files_were_openedObject

#

Roebe.file_these_pdf_files_were_opened

#

61
62
63
# File 'lib/roebe/constants/file_constants.rb', line 61

def self.file_these_pdf_files_were_opened
  "#{log_directory?}these_pdf_files_were_opened.yml"
end

.find_duplicate_entries_in_alias_file(i) ⇒ Object

#

Roebe.find_duplicate_entries_in_alias_file

#

160
161
162
# File 'lib/roebe/classes/find_duplicate_entries_in_alias_file.rb', line 160

def self.find_duplicate_entries_in_alias_file(i)
  ::Roebe::FindDuplicateEntriesInAliasFile.new(i)
end

.find_expanded_alias(i = ARGV) ⇒ Object

#

Roebe.find_expanded_alias

The first argument should be the alias that we are searching for.

#

256
257
258
# File 'lib/roebe/classes/find_expanded_alias.rb', line 256

def self.find_expanded_alias(i = ARGV)
  Roebe::FindExpandedAlias.new(i, :be_quiet).points_at?
end

.firefox(this_remote_url = ARGV) ⇒ Object

#

Roebe.firefox

#

43
44
45
# File 'lib/roebe/browser/firefox.rb', line 43

def self.firefox(this_remote_url = ARGV)
  Roebe::Firefox.new(this_remote_url)
end

.fix_iptables6Object

#

Roebe.fix_iptables6

#

36
37
38
39
40
41
42
43
44
# File 'lib/roebe/toplevel_methods/misc.rb', line 36

def self.fix_iptables6
  esystem 'ip6tables --policy INPUT   ACCEPT;'
  esystem 'ip6tables --policy OUTPUT  ACCEPT;'
  esystem 'ip6tables --policy FORWARD ACCEPT;'
  # start fresh
  esystem 'ip6tables -Z; # zero counters'
  esystem 'ip6tables -F; # flush (delete) rules'
  esystem 'ip6tables -X; # delete all extra chains'
end

.fragments(i = nil) ⇒ Object

#

Roebe.fragments

#

133
134
135
# File 'lib/roebe/classes/fragment_maker.rb', line 133

def self.fragments(i = nil)
  Roebe::FragmentMaker.new(i)
end

.full_blockObject

#

Roebe.full_block

#

90
91
92
# File 'lib/roebe/toplevel_methods/unicode/unicode_block_elements.rb', line 90

def self.full_block
  "\u{2588}" # This is █
end

.geas_itObject

#

Roebe.geas_it

#

348
349
350
351
# File 'lib/roebe/toplevel_methods/module_methods.rb', line 348

def self.geas_it
  require 'lpc'
  Lpc::Geas::Forum.run_in_loop
end

.geas_it2Object

#

Roebe.geas_it2

#

316
317
318
319
# File 'lib/roebe/toplevel_methods/module_methods.rb', line 316

def self.geas_it2
  require '/home/x/data/rpg/MUDS/GEAS/geas_forum.rb'
  Lpc::GeasForum.run_in_loop :background
end

.gem_install(use_this_command_to_install_the_gem = ::Roebe.gem_install_command, also_output_the_cmd = true) ⇒ Object

#

Roebe.gem_install

Use this method if you wish to install a ruby .gem archive.

#

292
293
294
295
296
297
298
299
300
301
302
# File 'lib/roebe/classes/update.rb', line 292

def self.gem_install(
    use_this_command_to_install_the_gem = ::Roebe.gem_install_command,
    also_output_the_cmd                 = true
  )
  if Dir['*.gem'].size > 0
    cmd = use_this_command_to_install_the_gem+' *.gem'
    cmd.squeeze!(' ')
    puts cmd if also_output_the_cmd
    system cmd
  end
end

.gem_install_commandObject

#

Roebe.gem_install_command

#

259
260
261
# File 'lib/roebe/classes/update.rb', line 259

def self.gem_install_command
  @gem_install_command
end

.generate_alsa_conf(i = ARGV) ⇒ Object

#

Roebe.generate_alsa_conf

#

108
109
110
# File 'lib/roebe/classes/generate_alsa_conf.rb', line 108

def self.generate_alsa_conf(i = ARGV)