roebe 0.5.187
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of roebe might be problematic. Click here for more details.
- checksums.yaml +7 -0
- data/README.md +5852 -0
- data/bin/blinking_cursor +7 -0
- data/bin/browser +7 -0
- data/bin/colourized_tokenitor1 +7 -0
- data/bin/colourized_tokenitor2 +7 -0
- data/bin/colourized_tokenitor3 +7 -0
- data/bin/colourized_tokenitor4 +7 -0
- data/bin/colourized_tokenitor5 +7 -0
- data/bin/compare_these_two_directories +7 -0
- data/bin/create_file_skeleton +7 -0
- data/bin/create_my_directories +7 -0
- data/bin/create_wpa_supplicant_build_file +7 -0
- data/bin/create_zip +7 -0
- data/bin/custom_invoke +28 -0
- data/bin/delete_empty_files +7 -0
- data/bin/display_gcc_version +7 -0
- data/bin/do_a_google_search +7 -0
- data/bin/extract_gem_file +7 -0
- data/bin/fragment_maker +7 -0
- data/bin/generate_fstab_file +7 -0
- data/bin/handle_xorg_related_boot_phase +7 -0
- data/bin/hello_world +7 -0
- data/bin/in +7 -0
- data/bin/increment_application_version +7 -0
- data/bin/increment_application_version_then_push_the_gem +13 -0
- data/bin/install_all_registered_fonts +7 -0
- data/bin/install_jruby_addons +7 -0
- data/bin/install_my_addons +97 -0
- data/bin/install_my_addons.rb +97 -0
- data/bin/interactive_file_creator +7 -0
- data/bin/java_compile_statically +11 -0
- data/bin/kill_firefox +7 -0
- data/bin/kill_palemoon +7 -0
- data/bin/konsole_title +7 -0
- data/bin/larrow +7 -0
- data/bin/log10 +7 -0
- data/bin/menugenerator +7 -0
- data/bin/modify_shebang_header +7 -0
- data/bin/openpdf1 +7 -0
- data/bin/openpdf2 +7 -0
- data/bin/openpdf3 +7 -0
- data/bin/openpdf4 +7 -0
- data/bin/openpdf5 +7 -0
- data/bin/openpdf6 +7 -0
- data/bin/openpdf7 +7 -0
- data/bin/openpdf8 +7 -0
- data/bin/openpdf9 +7 -0
- data/bin/passwords +7 -0
- data/bin/path_generator +7 -0
- data/bin/print_this_unicode_symbol +7 -0
- data/bin/quick_colour_test +13 -0
- data/bin/rarrow +7 -0
- data/bin/rdate +7 -0
- data/bin/remove_this_substring_from_all_files +7 -0
- data/bin/replace_space_with_underscore +7 -0
- data/bin/rfirefox +7 -0
- data/bin/rinstall2 +7 -0
- data/bin/roebe +7 -0
- data/bin/roebe_documentation +7 -0
- data/bin/roebeshell +11 -0
- data/bin/ruby_cat +7 -0
- data/bin/ruby_dhcpcd +7 -0
- data/bin/run +7 -0
- data/bin/rxinitrc +7 -0
- data/bin/set_alias_1 +7 -0
- data/bin/set_alias_10 +7 -0
- data/bin/set_alias_11 +7 -0
- data/bin/set_alias_12 +7 -0
- data/bin/set_alias_13 +7 -0
- data/bin/set_alias_14 +7 -0
- data/bin/set_alias_15 +7 -0
- data/bin/set_alias_2 +7 -0
- data/bin/set_alias_3 +7 -0
- data/bin/set_alias_4 +7 -0
- data/bin/set_alias_5 +7 -0
- data/bin/set_alias_6 +7 -0
- data/bin/set_alias_7 +7 -0
- data/bin/set_alias_8 +7 -0
- data/bin/set_alias_9 +7 -0
- data/bin/set_browser +7 -0
- data/bin/setpdf1 +7 -0
- data/bin/setpdf2 +7 -0
- data/bin/setpdf3 +7 -0
- data/bin/setpdf4 +7 -0
- data/bin/setpdf5 +7 -0
- data/bin/setpdf6 +7 -0
- data/bin/setpdf7 +7 -0
- data/bin/setpdf8 +7 -0
- data/bin/setpdf9 +7 -0
- data/bin/show_available_users +7 -0
- data/bin/show_ten_aliases +7 -0
- data/bin/simple_extractor +9 -0
- data/bin/start_lighty +7 -0
- data/bin/symlink_directories_from_that_directory_to_the_current_directory +7 -0
- data/bin/symlink_everything_from_that_directory_to_this_directory +7 -0
- data/bin/symlink_files_from_that_directory_to_the_current_directory +7 -0
- data/bin/take_screenshot +7 -0
- data/bin/to_binary +7 -0
- data/bin/tokenitor +7 -0
- data/bin/vim_paradise +7 -0
- data/bin/wlan +7 -0
- data/bin/word_count +7 -0
- data/bin/write_what_into +7 -0
- data/bin/yaml_check +7 -0
- data/doc/README.gen +5790 -0
- data/doc/add_ons_for_ruby/README.md +3 -0
- data/doc/add_ons_for_ruby/activerecord.md +99 -0
- data/doc/add_ons_for_ruby/ansicolor.md +62 -0
- data/doc/add_ons_for_ruby/axlsx.md +60 -0
- data/doc/add_ons_for_ruby/bundler.md +20 -0
- data/doc/add_ons_for_ruby/byebug.md +14 -0
- data/doc/add_ons_for_ruby/camping.md +9 -0
- data/doc/add_ons_for_ruby/caxlsx.md +72 -0
- data/doc/add_ons_for_ruby/cgi.md +124 -0
- data/doc/add_ons_for_ruby/chunkypng.md +19 -0
- data/doc/add_ons_for_ruby/classifier.md +7 -0
- data/doc/add_ons_for_ruby/coderay.md +82 -0
- data/doc/add_ons_for_ruby/daemons.md +92 -0
- data/doc/add_ons_for_ruby/dl.md +114 -0
- data/doc/add_ons_for_ruby/erb.md +25 -0
- data/doc/add_ons_for_ruby/erubis.md +124 -0
- data/doc/add_ons_for_ruby/ferret.md +16 -0
- data/doc/add_ons_for_ruby/ffi.md +28 -0
- data/doc/add_ons_for_ruby/fox_and_fxruby.md +492 -0
- data/doc/add_ons_for_ruby/fpdf.md +389 -0
- data/doc/add_ons_for_ruby/fpm.md +46 -0
- data/doc/add_ons_for_ruby/ftp.md +70 -0
- data/doc/add_ons_for_ruby/fxruby.md +14 -0
- data/doc/add_ons_for_ruby/gist.md +30 -0
- data/doc/add_ons_for_ruby/glimmer-libui.md +43 -0
- data/doc/add_ons_for_ruby/gmail.md +22 -0
- data/doc/add_ons_for_ruby/gosu.md +12 -0
- data/doc/add_ons_for_ruby/graphviz.md +246 -0
- data/doc/add_ons_for_ruby/gruff.md +95 -0
- data/doc/add_ons_for_ruby/hexapdf.md +66 -0
- data/doc/add_ons_for_ruby/highline.md +16 -0
- data/doc/add_ons_for_ruby/iconv.md +20 -0
- data/doc/add_ons_for_ruby/id3lib.md +173 -0
- data/doc/add_ons_for_ruby/inline.md +30 -0
- data/doc/add_ons_for_ruby/inotify.md +130 -0
- data/doc/add_ons_for_ruby/instiki.md +38 -0
- data/doc/add_ons_for_ruby/jruby.md +253 -0
- data/doc/add_ons_for_ruby/json.md +64 -0
- data/doc/add_ons_for_ruby/kramdown.md +34 -0
- data/doc/add_ons_for_ruby/lexer.md +19 -0
- data/doc/add_ons_for_ruby/libarchive.md +91 -0
- data/doc/add_ons_for_ruby/libburn.md +29 -0
- data/doc/add_ons_for_ruby/mail.md +51 -0
- data/doc/add_ons_for_ruby/md5reverse.md +10 -0
- data/doc/add_ons_for_ruby/mechanize.md +195 -0
- data/doc/add_ons_for_ruby/memcache.md +22 -0
- data/doc/add_ons_for_ruby/midilib.md +35 -0
- data/doc/add_ons_for_ruby/mime.md +15 -0
- data/doc/add_ons_for_ruby/minitest.md +39 -0
- data/doc/add_ons_for_ruby/misc.md +3 -0
- data/doc/add_ons_for_ruby/mongrel.md +68 -0
- data/doc/add_ons_for_ruby/mp3info.md +121 -0
- data/doc/add_ons_for_ruby/mpd.md +16 -0
- data/doc/add_ons_for_ruby/mruby.md +13 -0
- data/doc/add_ons_for_ruby/nokogiri.md +32 -0
- data/doc/add_ons_for_ruby/opal.md +53 -0
- data/doc/add_ons_for_ruby/openid.md +10 -0
- data/doc/add_ons_for_ruby/padrino.md +4 -0
- data/doc/add_ons_for_ruby/passenger.md +4 -0
- data/doc/add_ons_for_ruby/prawn.md +269 -0
- data/doc/add_ons_for_ruby/pry.md +85 -0
- data/doc/add_ons_for_ruby/puma.md +29 -0
- data/doc/add_ons_for_ruby/qt_and_kde.md +793 -0
- data/doc/add_ons_for_ruby/rack.md +212 -0
- data/doc/add_ons_for_ruby/ragel.md +19 -0
- data/doc/add_ons_for_ruby/rails.md +97 -0
- data/doc/add_ons_for_ruby/ramaze.md +72 -0
- data/doc/add_ons_for_ruby/rbenv.md +13 -0
- data/doc/add_ons_for_ruby/redcarpet.md +6 -0
- data/doc/add_ons_for_ruby/redcloth.md +11 -0
- data/doc/add_ons_for_ruby/redmine.md +8 -0
- data/doc/add_ons_for_ruby/rmagick.md +555 -0
- data/doc/add_ons_for_ruby/roda.md +6 -0
- data/doc/add_ons_for_ruby/rspec.md +12 -0
- data/doc/add_ons_for_ruby/rtf.md +74 -0
- data/doc/add_ons_for_ruby/rubocop.md +84 -0
- data/doc/add_ons_for_ruby/ruby_users.md +23 -0
- data/doc/add_ons_for_ruby/rubygame.md +403 -0
- data/doc/add_ons_for_ruby/ruport.md +23 -0
- data/doc/add_ons_for_ruby/rvm.md +17 -0
- data/doc/add_ons_for_ruby/sdl.md +200 -0
- data/doc/add_ons_for_ruby/sequel.md +55 -0
- data/doc/add_ons_for_ruby/setup.md +92 -0
- data/doc/add_ons_for_ruby/shoes.md +7 -0
- data/doc/add_ons_for_ruby/sinatra_tutorial/sinatra_tutorial.cgi +7 -0
- data/doc/add_ons_for_ruby/sinatra_tutorial/sinatra_tutorial.rb +960 -0
- data/doc/add_ons_for_ruby/sinatra_tutorial/sinatra_tutorial.sinatra +56 -0
- data/doc/add_ons_for_ruby/slop.md +27 -0
- data/doc/add_ons_for_ruby/spreadsheet.md +153 -0
- data/doc/add_ons_for_ruby/sqlite.md +115 -0
- data/doc/add_ons_for_ruby/systemu.md +21 -0
- data/doc/add_ons_for_ruby/thor.md +16 -0
- data/doc/add_ons_for_ruby/tk.md +468 -0
- data/doc/add_ons_for_ruby/tty.md +9 -0
- data/doc/add_ons_for_ruby/tty_box.md +28 -0
- data/doc/add_ons_for_ruby/tty_prompt.md +25 -0
- data/doc/add_ons_for_ruby/vorbistagger.md +33 -0
- data/doc/add_ons_for_ruby/watir.md +30 -0
- data/doc/add_ons_for_ruby/webrick.md +399 -0
- data/doc/add_ons_for_ruby/whois.md +52 -0
- data/doc/add_ons_for_ruby/windows.md +346 -0
- data/doc/add_ons_for_ruby/writeexcel.md +67 -0
- data/doc/add_ons_for_ruby/wxwidgets.md +3 -0
- data/doc/add_ons_for_ruby/xml.md +198 -0
- data/doc/add_ons_for_ruby/xosd.md +21 -0
- data/doc/add_ons_for_ruby/yard.md +39 -0
- data/doc/add_ons_for_ruby/zip.md +67 -0
- data/doc/core/abbrev.md +31 -0
- data/doc/core/argf.md +26 -0
- data/doc/core/argv.md +102 -0
- data/doc/core/array.md +1142 -0
- data/doc/core/base64.md +7 -0
- data/doc/core/basic_object.md +24 -0
- data/doc/core/benchmarks_and_profiling.md +87 -0
- data/doc/core/bigdecimal.md +13 -0
- data/doc/core/binding.md +33 -0
- data/doc/core/blocks.md +45 -0
- data/doc/core/class.md +43 -0
- data/doc/core/closure.md +207 -0
- data/doc/core/commandline.md +9 -0
- data/doc/core/comparable.md +9 -0
- data/doc/core/compiling_ruby_c_code.md +1969 -0
- data/doc/core/conditional_requires.md +13 -0
- data/doc/core/constants.md +87 -0
- data/doc/core/csv.md +55 -0
- data/doc/core/dir.md +102 -0
- data/doc/core/drb.md +121 -0
- data/doc/core/encoding.md +158 -0
- data/doc/core/enumerable.md +160 -0
- data/doc/core/enumerator.md +38 -0
- data/doc/core/env.md +12 -0
- data/doc/core/errno.md +24 -0
- data/doc/core/error_codes_in_ruby.md +19 -0
- data/doc/core/etc.md +95 -0
- data/doc/core/eval.md +20 -0
- data/doc/core/exceptions_and_errors.md +247 -0
- data/doc/core/fiber.md +23 -0
- data/doc/core/fiddle.md +20 -0
- data/doc/core/file.md +388 -0
- data/doc/core/fileutils.md +74 -0
- data/doc/core/float.md +33 -0
- data/doc/core/garbage_collection_in_ruby.md +75 -0
- data/doc/core/gem_and_gemspec.md +447 -0
- data/doc/core/getoptlang.md +19 -0
- data/doc/core/handling_networks.md +63 -0
- data/doc/core/hash.md +485 -0
- data/doc/core/hooks.md +47 -0
- data/doc/core/imap.md +7 -0
- data/doc/core/integer.md +106 -0
- data/doc/core/io.md +126 -0
- data/doc/core/io_console.md +31 -0
- data/doc/core/irb.md +180 -0
- data/doc/core/iterators.md +194 -0
- data/doc/core/kernel.md +227 -0
- data/doc/core/keyword_arguments.md +10 -0
- data/doc/core/loops.md +24 -0
- data/doc/core/marshal.md +123 -0
- data/doc/core/math.md +452 -0
- data/doc/core/matrix.md +16 -0
- data/doc/core/mechanize.md +3 -0
- data/doc/core/methods.md +221 -0
- data/doc/core/misc.md +1779 -0
- data/doc/core/mkmf.md +164 -0
- data/doc/core/module.md +76 -0
- data/doc/core/mutex.md +63 -0
- data/doc/core/nil.md +14 -0
- data/doc/core/object.md +238 -0
- data/doc/core/objectspace.md +28 -0
- data/doc/core/open3.md +24 -0
- data/doc/core/open_uri.md +29 -0
- data/doc/core/openssl.md +45 -0
- data/doc/core/openstruct.md +67 -0
- data/doc/core/optparser.md +234 -0
- data/doc/core/pathname.md +49 -0
- data/doc/core/performance_considerations_in_ruby.md +31 -0
- data/doc/core/pp.md +39 -0
- data/doc/core/precedence.md +27 -0
- data/doc/core/prime.md +13 -0
- data/doc/core/proc.md +131 -0
- data/doc/core/process.md +303 -0
- data/doc/core/pstore.md +23 -0
- data/doc/core/psych.md +7 -0
- data/doc/core/pty.md +11 -0
- data/doc/core/ractor.md +12 -0
- data/doc/core/rake.md +130 -0
- data/doc/core/random.md +17 -0
- data/doc/core/range.md +25 -0
- data/doc/core/rational.md +7 -0
- data/doc/core/rbconfig.md +39 -0
- data/doc/core/rdoc.md +67 -0
- data/doc/core/readline.md +306 -0
- data/doc/core/refinements.md +23 -0
- data/doc/core/regex.md +663 -0
- data/doc/core/reline.md +76 -0
- data/doc/core/ripper.md +57 -0
- data/doc/core/ruby_and_c.md +8 -0
- data/doc/core/rubyvm.md +28 -0
- data/doc/core/set.md +26 -0
- data/doc/core/shellwords.md +34 -0
- data/doc/core/signals.md +32 -0
- data/doc/core/singleton.md +47 -0
- data/doc/core/sockets.md +137 -0
- data/doc/core/splat.md +10 -0
- data/doc/core/stderr.md +3 -0
- data/doc/core/stdin.md +27 -0
- data/doc/core/stdout.md +14 -0
- data/doc/core/string.md +854 -0
- data/doc/core/stringio.md +54 -0
- data/doc/core/stringscanner.md +43 -0
- data/doc/core/struct.md +52 -0
- data/doc/core/subclassing.md +41 -0
- data/doc/core/symbols.md +47 -0
- data/doc/core/system.md +3 -0
- data/doc/core/tcpsocket.md +14 -0
- data/doc/core/telnet.md +35 -0
- data/doc/core/tempfile.md +34 -0
- data/doc/core/threads.md +127 -0
- data/doc/core/time.md +335 -0
- data/doc/core/tracepoint.md +7 -0
- data/doc/core/unicode.md +5 -0
- data/doc/core/unittest.md +8 -0
- data/doc/core/unprintable_characters.md +17 -0
- data/doc/core/uri.md +14 -0
- data/doc/core/xml.md +13 -0
- data/doc/core/yaml.md +376 -0
- data/doc/core/zlib.md +111 -0
- data/doc/deprecations/deprecations.md +60 -0
- data/doc/documentation_viewer.cgi +87 -0
- data/doc/linux_may_have_issues/linux_may_have_issues.md +92 -0
- data/doc/misc/how_to_publish.md +49 -0
- data/doc/misc/links.md +19 -0
- data/doc/misc/the_initialize_method.md +2 -0
- data/doc/misc/the_perfect_book.md +14 -0
- data/doc/roebeshell/CONFIGURATION_FOR_THE_ROEBE_SHELL.md +381 -0
- data/doc/roebeshell/MANIFESTO_FOR_THE_ROEBE_SHELL_COMPONENT.md +391 -0
- data/doc/roebeshell/PHILOSOPHY_OF_THE_ROEBE_SHELL.md +64 -0
- data/doc/ruby_on_rails_tutorial/data_types_for_rails_migrations.md +11 -0
- data/doc/ruby_on_rails_tutorial/ruby_on_rails_tutorial.cgi +404 -0
- data/doc/statistics/statistics.md +94 -0
- data/doc/the_ruby_philosophy/the_ruby_philosophy.md +209 -0
- data/doc/todo/todo_for_the_roebe_project_on_windows.md +4 -0
- data/doc/todo/todo_for_the_roebe_shell.md +741 -0
- data/examples/README.md +4 -0
- data/examples/date_and_time/is_this_day_part_of_that_range.rb +45 -0
- data/examples/gui/fxruby/hello_world.rb +11 -0
- data/examples/gui/fxruby/text_editor.rb +51 -0
- data/examples/misc/argv_encoding_test.rb +38 -0
- data/examples/misc/arrays/center_two_arrays.rb +24 -0
- data/examples/misc/forking_example/forking_example.rb +28 -0
- data/examples/misc/loops/display_coloured_vertical_bars.rb +10 -0
- data/examples/rack/README.md +2 -0
- data/examples/rack/all_in_one_rack_example.rb +241 -0
- data/examples/rack/hello_world_in_rack.rb +44 -0
- data/examples/recursion/README.md +2 -0
- data/examples/recursion/quadratic_sum_of_a_number.rb +23 -0
- data/examples/recursion/reverse_the_string.rb +31 -0
- data/examples/recursion/shift_highest_value.rb +30 -0
- data/examples/recursion/shuffle_sort_string.rb +35 -0
- data/examples/reline/multiline_editing.rb +21 -0
- data/examples/reline/simple_example.rb +39 -0
- data/examples/rmagick/001_axes.rb +68 -0
- data/examples/rmagick/002_basic_2D_canvas.rb +29 -0
- data/examples/rmagick/003_a_walking_duck.rb +42 -0
- data/examples/rmagick/004_black_rectangle_with_red_border.rb +37 -0
- data/examples/rmagick/A_WALKING_DUCK.gif +0 -0
- data/examples/rmagick/foobar.png +0 -0
- data/examples/tty_box/all_in_one.rb +33 -0
- data/lib/roebe/autoinclude.rb +4 -0
- data/lib/roebe/autoinclude_encoding.rb +11 -0
- data/lib/roebe/autoinclude_open.rb +3 -0
- data/lib/roebe/base/base.rb +29 -0
- data/lib/roebe/base/chdir.rb +48 -0
- data/lib/roebe/base/colours.rb +671 -0
- data/lib/roebe/base/commandline_arguments.rb +109 -0
- data/lib/roebe/base/constants.rb +25 -0
- data/lib/roebe/base/copy.rb +72 -0
- data/lib/roebe/base/editor.rb +18 -0
- data/lib/roebe/base/encoding.rb +54 -0
- data/lib/roebe/base/env.rb +22 -0
- data/lib/roebe/base/esystem.rb +141 -0
- data/lib/roebe/base/home_directory_of_user_x.rb +27 -0
- data/lib/roebe/base/is_on_roebe.rb +22 -0
- data/lib/roebe/base/misc.rb +502 -0
- data/lib/roebe/base/next.rb +29 -0
- data/lib/roebe/base/opnn.rb +63 -0
- data/lib/roebe/base/prototype.rb +523 -0
- data/lib/roebe/base/reset.rb +53 -0
- data/lib/roebe/base/run.rb +17 -0
- data/lib/roebe/base/simp.rb +25 -0
- data/lib/roebe/base/support_for_beautiful_url.rb +35 -0
- data/lib/roebe/base/symlink.rb +52 -0
- data/lib/roebe/base/time.rb +175 -0
- data/lib/roebe/base/verbose_truth.rb +22 -0
- data/lib/roebe/base/write_what_into.rb +33 -0
- data/lib/roebe/browser/README.md +5 -0
- data/lib/roebe/browser/browser.rb +26 -0
- data/lib/roebe/browser/constants.rb +43 -0
- data/lib/roebe/browser/firefox.rb +47 -0
- data/lib/roebe/browser/menu.rb +103 -0
- data/lib/roebe/browser/misc.rb +367 -0
- data/lib/roebe/browser/output_url_then_open_in_browser.rb +175 -0
- data/lib/roebe/browser/palemoon.rb +59 -0
- data/lib/roebe/browser/reset.rb +47 -0
- data/lib/roebe/cat/class.rb +226 -0
- data/lib/roebe/cat/method.rb +14 -0
- data/lib/roebe/classes/add_irc_quote.rb +132 -0
- data/lib/roebe/classes/add_newline_after.rb +124 -0
- data/lib/roebe/classes/add_newline_after_n_characters.rb +65 -0
- data/lib/roebe/classes/add_this_user_to_the_sudoers_file.rb +67 -0
- data/lib/roebe/classes/add_two_binary_numbers.rb +58 -0
- data/lib/roebe/classes/add_user_lighty.rb +107 -0
- data/lib/roebe/classes/aggregate_all_files_together_from_this_directory.rb +86 -0
- data/lib/roebe/classes/aliases.rb +683 -0
- data/lib/roebe/classes/all_games.rb +61 -0
- data/lib/roebe/classes/all_my_gems.rb +100 -0
- data/lib/roebe/classes/alltagsgeschichte.rb +106 -0
- data/lib/roebe/classes/alphabetical_sorter.rb +213 -0
- data/lib/roebe/classes/apache_configuration_maker.rb +234 -0
- data/lib/roebe/classes/append_this.rb +158 -0
- data/lib/roebe/classes/append_to_line.rb +141 -0
- data/lib/roebe/classes/ascii/README.md +2 -0
- data/lib/roebe/classes/ascii/fix_missing_numbers_for_ascii_paradise.rb +96 -0
- data/lib/roebe/classes/at.rb +343 -0
- data/lib/roebe/classes/audio_information/audio_information.rb +116 -0
- data/lib/roebe/classes/auto_rename_file_based_on_time_today.rb +76 -0
- data/lib/roebe/classes/autodater.rb +112 -0
- data/lib/roebe/classes/automounter.rb +181 -0
- data/lib/roebe/classes/available_classes.rb +219 -0
- data/lib/roebe/classes/backup_core_system.rb +223 -0
- data/lib/roebe/classes/basic_configure.rb +110 -0
- data/lib/roebe/classes/batch_generate_all_my_gems.rb +132 -0
- data/lib/roebe/classes/become_another_user.rb +86 -0
- data/lib/roebe/classes/bezirk.rb +91 -0
- data/lib/roebe/classes/birthday_notifications.rb +291 -0
- data/lib/roebe/classes/books/books.rb +781 -0
- data/lib/roebe/classes/books/finished_books/finished_books.rb +136 -0
- data/lib/roebe/classes/books/menu.rb +258 -0
- data/lib/roebe/classes/books/sanitize_this_book_path/sanitize_this_book_path.rb +117 -0
- data/lib/roebe/classes/burn_iso/burn_iso.rb +262 -0
- data/lib/roebe/classes/burn_iso/constants.rb +43 -0
- data/lib/roebe/classes/burn_iso/initialize.rb +33 -0
- data/lib/roebe/classes/caesar_cipher.rb +88 -0
- data/lib/roebe/classes/calendar.rb +369 -0
- data/lib/roebe/classes/calendar_maker.rb +61 -0
- data/lib/roebe/classes/celsius_to_fahrenheit.rb +195 -0
- data/lib/roebe/classes/check_for_bad_blocks.rb +67 -0
- data/lib/roebe/classes/check_yaml.rb +71 -0
- data/lib/roebe/classes/chmod_current_time.rb +71 -0
- data/lib/roebe/classes/clipboard.rb +221 -0
- data/lib/roebe/classes/clock.rb +118 -0
- data/lib/roebe/classes/colourize_numbers.rb +70 -0
- data/lib/roebe/classes/compare_these_two_directories.rb +101 -0
- data/lib/roebe/classes/compare_these_two_files.rb +167 -0
- data/lib/roebe/classes/compile_kernel.rb +114 -0
- data/lib/roebe/classes/config_generator.rb +204 -0
- data/lib/roebe/classes/conky.rb +114 -0
- data/lib/roebe/classes/conky_rcfile_generator.rb +61 -0
- data/lib/roebe/classes/convert_encoding_of_this_file.rb +216 -0
- data/lib/roebe/classes/convert_file_into_utf_encoding.rb +89 -0
- data/lib/roebe/classes/convert_this_cgi_file_into_a_sinatrafied_application.rb +145 -0
- data/lib/roebe/classes/copy_from_glibc.rb +134 -0
- data/lib/roebe/classes/copy_here.rb +76 -0
- data/lib/roebe/classes/copy_kernel_config.rb +59 -0
- data/lib/roebe/classes/copy_these_directories_to.rb +121 -0
- data/lib/roebe/classes/correct_gibberish.rb +89 -0
- data/lib/roebe/classes/covid_lethality.rb +243 -0
- data/lib/roebe/classes/create_asoundrc_file.rb +66 -0
- data/lib/roebe/classes/create_benchmark_file.rb +77 -0
- data/lib/roebe/classes/create_desktop_file.rb +236 -0
- data/lib/roebe/classes/create_docbook_sgml_dtd_catalog.rb +113 -0
- data/lib/roebe/classes/create_file_skeleton/constants.rb +70 -0
- data/lib/roebe/classes/create_file_skeleton/create_file_skeleton.rb +470 -0
- data/lib/roebe/classes/create_file_skeleton/generate_c_string.rb +31 -0
- data/lib/roebe/classes/create_file_skeleton/generate_cpp_string.rb +33 -0
- data/lib/roebe/classes/create_file_skeleton/generate_ruby_string.rb +124 -0
- data/lib/roebe/classes/create_file_skeleton/reset.rb +56 -0
- data/lib/roebe/classes/create_file_skeleton/run.rb +23 -0
- data/lib/roebe/classes/create_firefox_extension.rb +178 -0
- data/lib/roebe/classes/create_iso.rb +203 -0
- data/lib/roebe/classes/create_iso_for_games.rb +307 -0
- data/lib/roebe/classes/create_jar_archive.rb +58 -0
- data/lib/roebe/classes/create_local_images_yaml_file.rb +83 -0
- data/lib/roebe/classes/create_my_directories.rb +208 -0
- data/lib/roebe/classes/create_ruby_directory_layout.rb +117 -0
- data/lib/roebe/classes/create_zip.rb +118 -0
- data/lib/roebe/classes/css_analyzer.rb +125 -0
- data/lib/roebe/classes/current_monitor_resolution.rb +107 -0
- data/lib/roebe/classes/custom_table/custom_table.rb +198 -0
- data/lib/roebe/classes/cut_after_colon.rb +79 -0
- data/lib/roebe/classes/cute_emoji.rb +142 -0
- data/lib/roebe/classes/daemonize.rb +131 -0
- data/lib/roebe/classes/date_sort.rb +149 -0
- data/lib/roebe/classes/day_calendar.rb +153 -0
- data/lib/roebe/classes/dbus.rb +127 -0
- data/lib/roebe/classes/delete_all_directories.rb +100 -0
- data/lib/roebe/classes/delete_empty_directories.rb +96 -0
- data/lib/roebe/classes/delete_empty_files.rb +158 -0
- data/lib/roebe/classes/dhcpcd/README.md +3 -0
- data/lib/roebe/classes/dhcpcd/dhcpcd.rb +232 -0
- data/lib/roebe/classes/dhcpcd/kill_dhcpcd.rb +75 -0
- data/lib/roebe/classes/differences_between_two_directories.rb +140 -0
- data/lib/roebe/classes/disable.rb +172 -0
- data/lib/roebe/classes/display_gcc_version.rb +135 -0
- data/lib/roebe/classes/do_a_google_search.rb +67 -0
- data/lib/roebe/classes/do_install.rb +337 -0
- data/lib/roebe/classes/done.rb +158 -0
- data/lib/roebe/classes/done_and_open.rb +185 -0
- data/lib/roebe/classes/doskey_generator.rb +229 -0
- data/lib/roebe/classes/downcase_directories.rb +83 -0
- data/lib/roebe/classes/downcase_extension.rb +131 -0
- data/lib/roebe/classes/download_from_this_url.rb +266 -0
- data/lib/roebe/classes/duplicate_files.rb +115 -0
- data/lib/roebe/classes/email.rb +881 -0
- data/lib/roebe/classes/empty.rb +81 -0
- data/lib/roebe/classes/enable.rb +60 -0
- data/lib/roebe/classes/enable_autologin.rb +371 -0
- data/lib/roebe/classes/english_to_german.rb +128 -0
- data/lib/roebe/classes/ethernet.rb +171 -0
- data/lib/roebe/classes/euclidian_distance.rb +148 -0
- data/lib/roebe/classes/extract_documentation.rb +191 -0
- data/lib/roebe/classes/extract_gem_file.rb +208 -0
- data/lib/roebe/classes/feet_to_centimetres.rb +106 -0
- data/lib/roebe/classes/fetch_url.rb +77 -0
- data/lib/roebe/classes/file_filter.rb +143 -0
- data/lib/roebe/classes/file_filters/jpg.rb +61 -0
- data/lib/roebe/classes/file_parser.rb +126 -0
- data/lib/roebe/classes/file_renamer.rb +229 -0
- data/lib/roebe/classes/files_that_could_become_apps.rb +91 -0
- data/lib/roebe/classes/filter_apache_log.rb +90 -0
- data/lib/roebe/classes/find_all_files_encoded_in_iso.rb +95 -0
- data/lib/roebe/classes/find_all_files_with_a_question_mark.rb +148 -0
- data/lib/roebe/classes/find_duplicate_entries_in_alias_file.rb +191 -0
- data/lib/roebe/classes/find_empty_files.rb +85 -0
- data/lib/roebe/classes/find_expanded_alias.rb +262 -0
- data/lib/roebe/classes/find_out_version_of.rb +186 -0
- data/lib/roebe/classes/find_static_libraries.rb +213 -0
- data/lib/roebe/classes/fix_mcookie.rb +76 -0
- data/lib/roebe/classes/fix_timezone.rb +95 -0
- data/lib/roebe/classes/fluxbox/README.md +3 -0
- data/lib/roebe/classes/fluxbox/autogenerate_fluxbox_files.rb +20 -0
- data/lib/roebe/classes/fluxbox/generate_fluxbox_apps_file.rb +155 -0
- data/lib/roebe/classes/fluxbox/generate_fluxbox_keys_file.rb +110 -0
- data/lib/roebe/classes/fluxbox/install_fluxbox_style.rb +85 -0
- data/lib/roebe/classes/font_installer.rb +139 -0
- data/lib/roebe/classes/foto_searcher.rb +351 -0
- data/lib/roebe/classes/fotos_f/303/274r_ingrid.rb +53 -0
- data/lib/roebe/classes/fragment_maker.rb +141 -0
- data/lib/roebe/classes/general_overviewer.rb +258 -0
- data/lib/roebe/classes/generate_alsa_conf.rb +133 -0
- data/lib/roebe/classes/generate_etc_resolv_conf_file.rb +106 -0
- data/lib/roebe/classes/generate_fstab_file/generate_fstab_file.rb +255 -0
- data/lib/roebe/classes/generate_gemspec/constants.rb +58 -0
- data/lib/roebe/classes/generate_gemspec/generate_gemspec.rb +195 -0
- data/lib/roebe/classes/generate_grub_config.rb +186 -0
- data/lib/roebe/classes/generate_locales.rb +92 -0
- data/lib/roebe/classes/generate_ls_colors.rb +87 -0
- data/lib/roebe/classes/generate_master_shell_script.rb +254 -0
- data/lib/roebe/classes/generate_nsswitch_conf.rb +95 -0
- data/lib/roebe/classes/generate_overview_of_the_locally_available_books.rb +267 -0
- data/lib/roebe/classes/generate_protocols.rb +253 -0
- data/lib/roebe/classes/generate_rewrite_rules.rb +266 -0
- data/lib/roebe/classes/generate_robots_txt_file.rb +97 -0
- data/lib/roebe/classes/generate_rtf_file.rb +123 -0
- data/lib/roebe/classes/generate_system_values.rb +164 -0
- data/lib/roebe/classes/generate_unit_files/README.md +9 -0
- data/lib/roebe/classes/generate_unit_files/generate_unit_files.rb +192 -0
- data/lib/roebe/classes/generate_xauthority_file.rb +119 -0
- data/lib/roebe/classes/generate_xorg_conf/constants.rb +145 -0
- data/lib/roebe/classes/generate_xorg_conf/generate_xorg_conf.rb +767 -0
- data/lib/roebe/classes/get_dependencies.rb +175 -0
- data/lib/roebe/classes/github.rb +60 -0
- data/lib/roebe/classes/good_night.rb +72 -0
- data/lib/roebe/classes/google_url_cleaner.rb +147 -0
- data/lib/roebe/classes/grant_superuser_rights.rb +146 -0
- data/lib/roebe/classes/grub/grub_config_generator.rb +176 -0
- data/lib/roebe/classes/grub_appender.rb +246 -0
- data/lib/roebe/classes/gzip_this_file.rb +86 -0
- data/lib/roebe/classes/handle_lighttpd.rb +210 -0
- data/lib/roebe/classes/hello_world.rb +60 -0
- data/lib/roebe/classes/hex_to_rgb.rb +89 -0
- data/lib/roebe/classes/holiday.rb +99 -0
- data/lib/roebe/classes/hosts_appender.rb +171 -0
- data/lib/roebe/classes/html_form_fetcher.rb +101 -0
- data/lib/roebe/classes/icewm/README.md +3 -0
- data/lib/roebe/classes/icewm/icewm_keys_generator.rb +162 -0
- data/lib/roebe/classes/identical.rb +174 -0
- data/lib/roebe/classes/imdb.rb +86 -0
- data/lib/roebe/classes/in.rb +156 -0
- data/lib/roebe/classes/increment_application_version.rb +306 -0
- data/lib/roebe/classes/inhalt.rb +166 -0
- data/lib/roebe/classes/inputrc/constants.rb +37 -0
- data/lib/roebe/classes/inputrc/inputrc.rb +567 -0
- data/lib/roebe/classes/inputrc/misc.rb +11 -0
- data/lib/roebe/classes/install_debian_file.rb +165 -0
- data/lib/roebe/classes/install_flash/install_flash.rb +179 -0
- data/lib/roebe/classes/install_libreoffice/constants.rb +43 -0
- data/lib/roebe/classes/install_libreoffice/install_libreoffice.rb +277 -0
- data/lib/roebe/classes/install_my_gems.rb +100 -0
- data/lib/roebe/classes/install_openssl_certificates.rb +238 -0
- data/lib/roebe/classes/install_ruby_project.rb +180 -0
- data/lib/roebe/classes/install_wrapper.rb +134 -0
- data/lib/roebe/classes/interactive_file_creator.rb +229 -0
- data/lib/roebe/classes/into.rb +102 -0
- data/lib/roebe/classes/ipaste.rb +88 -0
- data/lib/roebe/classes/iso_to_usb.rb +240 -0
- data/lib/roebe/classes/java_header.rb +112 -0
- data/lib/roebe/classes/java_runner.rb +85 -0
- data/lib/roebe/classes/kde/install_this_konsole_theme.rb +87 -0
- data/lib/roebe/classes/kde/kde_konsole/constants.rb +54 -0
- data/lib/roebe/classes/kde/kde_konsole/help.rb +33 -0
- data/lib/roebe/classes/kde/kde_konsole/initialize.rb +40 -0
- data/lib/roebe/classes/kde/kde_konsole/kde_konsole.rb +37 -0
- data/lib/roebe/classes/kde/kde_konsole/menu.rb +200 -0
- data/lib/roebe/classes/kde/kde_konsole/misc.rb +333 -0
- data/lib/roebe/classes/kde/kde_konsole/reset.rb +42 -0
- data/lib/roebe/classes/kde/kde_konsole/run.rb +22 -0
- data/lib/roebe/classes/kde/kde_konsole_send_command.rb +95 -0
- data/lib/roebe/classes/kde/kde_servicemenus.rb +83 -0
- data/lib/roebe/classes/kde/konsole_new_tab.rb +124 -0
- data/lib/roebe/classes/kde/restore_kde.rb +103 -0
- data/lib/roebe/classes/kde/return_pid_of_kde_konsole.rb +30 -0
- data/lib/roebe/classes/kde/split_kde_konsole_tab_vertically.rb +28 -0
- data/lib/roebe/classes/key_value_parser.rb +145 -0
- data/lib/roebe/classes/keys_generator/constants.rb +72 -0
- data/lib/roebe/classes/keys_generator/keys_generator.rb +328 -0
- data/lib/roebe/classes/kill_firefox.rb +126 -0
- data/lib/roebe/classes/kill_palemoon.rb +132 -0
- data/lib/roebe/classes/last_called_logger/last_called_logger.rb +67 -0
- data/lib/roebe/classes/last_line.rb +69 -0
- data/lib/roebe/classes/left_hyphen_in_this_file.rb +74 -0
- data/lib/roebe/classes/level_subdirectories.rb +126 -0
- data/lib/roebe/classes/lighttpd_config_generator.rb +106 -0
- data/lib/roebe/classes/lilo_config_generator.rb +403 -0
- data/lib/roebe/classes/line_padder.rb +97 -0
- data/lib/roebe/classes/lotto/handle_quicktipps.rb +96 -0
- data/lib/roebe/classes/lotto/lotto_quicktip.rb +214 -0
- data/lib/roebe/classes/make_cookbooks_gem.rb +109 -0
- data/lib/roebe/classes/make_gem.rb +280 -0
- data/lib/roebe/classes/mark_this_directory.rb +76 -0
- data/lib/roebe/classes/married_with_children.rb +110 -0
- data/lib/roebe/classes/mate_terminal/rename_mate_terminal.rb +56 -0
- data/lib/roebe/classes/mbl.rb +318 -0
- data/lib/roebe/classes/meal_maker.rb +88 -0
- data/lib/roebe/classes/menu_generator/append_to.rb +35 -0
- data/lib/roebe/classes/menu_generator/constants.rb +80 -0
- data/lib/roebe/classes/menu_generator/menu_generator.rb +623 -0
- data/lib/roebe/classes/merge.rb +121 -0
- data/lib/roebe/classes/misc/README.md +2 -0
- data/lib/roebe/classes/misc/anteile.rb +91 -0
- data/lib/roebe/classes/modify_shebang_header/modify_shebang_header.rb +435 -0
- data/lib/roebe/classes/modright.rb +110 -0
- data/lib/roebe/classes/monthly_activity_on_rubygems.rb +219 -0
- data/lib/roebe/classes/mount_dvd.rb +92 -0
- data/lib/roebe/classes/mount_iso_file.rb +108 -0
- data/lib/roebe/classes/move_content_of_this_directory_to_that_directory_unless_target_already_exists.rb +119 -0
- data/lib/roebe/classes/move_file.rb +234 -0
- data/lib/roebe/classes/move_mouse.rb +75 -0
- data/lib/roebe/classes/mrxvt.rb +140 -0
- data/lib/roebe/classes/mrxvt_options.rb +295 -0
- data/lib/roebe/classes/my_default_webrick_server.rb +125 -0
- data/lib/roebe/classes/my_ip.rb +69 -0
- data/lib/roebe/classes/n_directories.rb +98 -0
- data/lib/roebe/classes/n_downloads_on_rubygems_org.rb +246 -0
- data/lib/roebe/classes/n_files.rb +71 -0
- data/lib/roebe/classes/n_fotos.rb +48 -0
- data/lib/roebe/classes/n_gems_exist_in_total.rb +136 -0
- data/lib/roebe/classes/n_symlinks.rb +125 -0
- data/lib/roebe/classes/nano_config.rb +186 -0
- data/lib/roebe/classes/nibble_converter.rb +172 -0
- data/lib/roebe/classes/non_symlinks.rb +115 -0
- data/lib/roebe/classes/number_files.rb +89 -0
- data/lib/roebe/classes/number_to_english.rb +167 -0
- data/lib/roebe/classes/nutrition.rb +69 -0
- data/lib/roebe/classes/nvidia.rb +83 -0
- data/lib/roebe/classes/obtain_audio_recordings_from_voice_recorder/constants.rb +38 -0
- data/lib/roebe/classes/obtain_audio_recordings_from_voice_recorder/help.rb +27 -0
- data/lib/roebe/classes/obtain_audio_recordings_from_voice_recorder/obtain_audio_recordings_from_voice_recorder.rb +610 -0
- data/lib/roebe/classes/obtain_audio_recordings_from_voice_recorder/run.rb +22 -0
- data/lib/roebe/classes/on_screen_display.rb +320 -0
- data/lib/roebe/classes/one_line_passwords.rb +201 -0
- data/lib/roebe/classes/open_pdf.rb +293 -0
- data/lib/roebe/classes/open_random_book.rb +129 -0
- data/lib/roebe/classes/output_random_line.rb +110 -0
- data/lib/roebe/classes/output_text_then_assign_to_the_xorg_buffer.rb +114 -0
- data/lib/roebe/classes/package_java_compiler.rb +92 -0
- data/lib/roebe/classes/pad_via_quotes.rb +63 -0
- data/lib/roebe/classes/paragraph_onto_one_line.rb +73 -0
- data/lib/roebe/classes/parse_apache_log/constants.rb +55 -0
- data/lib/roebe/classes/parse_apache_log/parse_apache_log.rb +331 -0
- data/lib/roebe/classes/pascalsches_dreieck.rb +108 -0
- data/lib/roebe/classes/passwords.rb +759 -0
- data/lib/roebe/classes/path_generator/constants.rb +68 -0
- data/lib/roebe/classes/path_generator/misc.rb +332 -0
- data/lib/roebe/classes/path_generator/path_generator.rb +31 -0
- data/lib/roebe/classes/path_generator/reset.rb +33 -0
- data/lib/roebe/classes/percentage_counter.rb +84 -0
- data/lib/roebe/classes/permission_ascii_format.rb +228 -0
- data/lib/roebe/classes/php_to_ruby.rb +177 -0
- data/lib/roebe/classes/pound_to_kg_converter.rb +86 -0
- data/lib/roebe/classes/prepend_this.rb +280 -0
- data/lib/roebe/classes/prepend_this_line_to_that_file.rb +259 -0
- data/lib/roebe/classes/prepend_this_string_to_every_line_of_this_file.rb +195 -0
- data/lib/roebe/classes/prepend_todays_date.rb +67 -0
- data/lib/roebe/classes/pristine_gems.rb +71 -0
- data/lib/roebe/classes/proper_english.rb +115 -0
- data/lib/roebe/classes/publish_gem.rb +249 -0
- data/lib/roebe/classes/pull_together.rb +126 -0
- data/lib/roebe/classes/purge_files_or_directories.rb +67 -0
- data/lib/roebe/classes/purge_gmon_out_files.rb +102 -0
- data/lib/roebe/classes/purge_ordoc_directories.rb +66 -0
- data/lib/roebe/classes/put_all_gems_into_this_project.rb +326 -0
- data/lib/roebe/classes/qemu/README.md +2 -0
- data/lib/roebe/classes/qemu/qemu.rb +72 -0
- data/lib/roebe/classes/quiz.rb +300 -0
- data/lib/roebe/classes/ram.rb +160 -0
- data/lib/roebe/classes/random_background.rb +208 -0
- data/lib/roebe/classes/random_open.rb +110 -0
- data/lib/roebe/classes/rbashrc.rb +160 -0
- data/lib/roebe/classes/rdate.rb +259 -0
- data/lib/roebe/classes/readme_generator/constants.rb +21 -0
- data/lib/roebe/classes/readme_generator/initialize.rb +38 -0
- data/lib/roebe/classes/readme_generator/misc.rb +548 -0
- data/lib/roebe/classes/readme_generator/readme_generator.rb +11 -0
- data/lib/roebe/classes/readme_generator/reset.rb +28 -0
- data/lib/roebe/classes/readme_generator/run.rb +20 -0
- data/lib/roebe/classes/remote_gems.rb +154 -0
- data/lib/roebe/classes/remove_bad_fluxbox_styles.rb +108 -0
- data/lib/roebe/classes/remove_comments/autoinclude.rb +3 -0
- data/lib/roebe/classes/remove_comments/constants.rb +22 -0
- data/lib/roebe/classes/remove_comments/remove_comments.rb +214 -0
- data/lib/roebe/classes/remove_directory.rb +212 -0
- data/lib/roebe/classes/remove_duplicate_lines.rb +101 -0
- data/lib/roebe/classes/remove_extension.rb +95 -0
- data/lib/roebe/classes/remove_file_extension.rb +106 -0
- data/lib/roebe/classes/remove_gems.rb +182 -0
- data/lib/roebe/classes/remove_lighty_logs.rb +66 -0
- data/lib/roebe/classes/remove_line.rb +172 -0
- data/lib/roebe/classes/remove_localhost.rb +355 -0
- data/lib/roebe/classes/remove_missing.rb +107 -0
- data/lib/roebe/classes/remove_newlines.rb +116 -0
- data/lib/roebe/classes/remove_solo_numbers.rb +85 -0
- data/lib/roebe/classes/remove_this_substring_from_all_files.rb +70 -0
- data/lib/roebe/classes/replace_global_variables_in_this_file.rb +181 -0
- data/lib/roebe/classes/replace_space_with_underscore/replace_space_with_underscore.rb +866 -0
- data/lib/roebe/classes/replace_what_with.rb +111 -0
- data/lib/roebe/classes/report_how_many_classes_exist_for_this_directory.rb +128 -0
- data/lib/roebe/classes/report_same_named_files.rb +88 -0
- data/lib/roebe/classes/require_everything.rb +155 -0
- data/lib/roebe/classes/return_aliases/return_n_aliases.rb +178 -0
- data/lib/roebe/classes/return_aliases/return_ten_aliases.rb +78 -0
- data/lib/roebe/classes/return_aliases/return_twenty_aliases.rb +79 -0
- data/lib/roebe/classes/return_random_image.rb +83 -0
- data/lib/roebe/classes/roman_number_converter.rb +92 -0
- data/lib/roebe/classes/ruby_cat.rb +139 -0
- data/lib/roebe/classes/ruby_header.rb +122 -0
- data/lib/roebe/classes/ruby_main.rb +133 -0
- data/lib/roebe/classes/ruby_seq.rb +67 -0
- data/lib/roebe/classes/ruby_use_config_file.rb +104 -0
- data/lib/roebe/classes/ruby_version_switcher.rb +99 -0
- data/lib/roebe/classes/run/menu.rb +87 -0
- data/lib/roebe/classes/run/run.rb +746 -0
- data/lib/roebe/classes/run_each_line_as_esystem.rb +54 -0
- data/lib/roebe/classes/rxinitrc/constants.rb +101 -0
- data/lib/roebe/classes/rxinitrc/help.rb +40 -0
- data/lib/roebe/classes/rxinitrc/run.rb +25 -0
- data/lib/roebe/classes/rxinitrc/rxinitrc.rb +531 -0
- data/lib/roebe/classes/scan_for_http_links.rb +114 -0
- data/lib/roebe/classes/schlafe.rb +101 -0
- data/lib/roebe/classes/send_email.rb +170 -0
- data/lib/roebe/classes/serve_local_page.rb +280 -0
- data/lib/roebe/classes/set_aliases.rb +372 -0
- data/lib/roebe/classes/set_background.rb +113 -0
- data/lib/roebe/classes/set_chained.rb +79 -0
- data/lib/roebe/classes/set_current_iso.rb +76 -0
- data/lib/roebe/classes/set_hwclock.rb +67 -0
- data/lib/roebe/classes/set_normal_alias_to.rb +583 -0
- data/lib/roebe/classes/setup_chrooted_environment.rb +402 -0
- data/lib/roebe/classes/shells/generate_etc_shell_file.rb +107 -0
- data/lib/roebe/classes/show_appointments.rb +216 -0
- data/lib/roebe/classes/show_available_fonts.rb +146 -0
- data/lib/roebe/classes/show_available_users.rb +319 -0
- data/lib/roebe/classes/show_kernel_modules.rb +88 -0
- data/lib/roebe/classes/show_non_symlinks.rb +98 -0
- data/lib/roebe/classes/show_only_files.rb +90 -0
- data/lib/roebe/classes/show_prime_numbers.rb +122 -0
- data/lib/roebe/classes/show_sigint.rb +50 -0
- data/lib/roebe/classes/show_ten_aliases.rb +395 -0
- data/lib/roebe/classes/show_twenty_aliases.rb +243 -0
- data/lib/roebe/classes/simple_boot_script.rb +358 -0
- data/lib/roebe/classes/simple_extractor.rb +104 -0
- data/lib/roebe/classes/simple_markdown_parser.rb +274 -0
- data/lib/roebe/classes/size_of.rb +234 -0
- data/lib/roebe/classes/size_of_states.rb +157 -0
- data/lib/roebe/classes/skel_maker/constants.rb +65 -0
- data/lib/roebe/classes/skel_maker/skel_maker.rb +230 -0
- data/lib/roebe/classes/slogans.rb +283 -0
- data/lib/roebe/classes/slow_load.rb +62 -0
- data/lib/roebe/classes/sorted_output.rb +86 -0
- data/lib/roebe/classes/sourcerank.rb +76 -0
- data/lib/roebe/classes/special_symlink.rb +97 -0
- data/lib/roebe/classes/start_program.rb +74 -0
- data/lib/roebe/classes/std_renamer.rb +285 -0
- data/lib/roebe/classes/stories.rb +107 -0
- data/lib/roebe/classes/story.rb +177 -0
- data/lib/roebe/classes/string_colour_parser.rb +165 -0
- data/lib/roebe/classes/sum_of_all_numbers.rb +153 -0
- data/lib/roebe/classes/supermerger.rb +121 -0
- data/lib/roebe/classes/symlink_all_directories_in_this_directory.rb +101 -0
- data/lib/roebe/classes/symlink_directories_from_that_directory_to_the_current_directory.rb +178 -0
- data/lib/roebe/classes/symlink_directory.rb +104 -0
- data/lib/roebe/classes/symlink_everything_from_that_directory_to_this_directory.rb +196 -0
- data/lib/roebe/classes/symlink_files_from_that_directory_to_the_current_directory/symlink_files_from_that_directory_to_the_current_directory.rb +271 -0
- data/lib/roebe/classes/syntax_checker.rb +200 -0
- data/lib/roebe/classes/system_checker.rb +646 -0
- data/lib/roebe/classes/take_screenshot.rb +390 -0
- data/lib/roebe/classes/tales_from_the_crypt.rb +552 -0
- data/lib/roebe/classes/terminal.rb +62 -0
- data/lib/roebe/classes/terminal_ps1.rb +128 -0
- data/lib/roebe/classes/test_for_psych.rb +77 -0
- data/lib/roebe/classes/test_openssl.rb +200 -0
- data/lib/roebe/classes/test_yaml.rb +70 -0
- data/lib/roebe/classes/threshold_splitter.rb +96 -0
- data/lib/roebe/classes/tic_tac_toe.rb +326 -0
- data/lib/roebe/classes/time/current_time_in_singapore.rb +121 -0
- data/lib/roebe/classes/time/display_weekdays.rb +78 -0
- data/lib/roebe/classes/time/query_world_time.rb +149 -0
- data/lib/roebe/classes/time/set_hardware_clock.rb +158 -0
- data/lib/roebe/classes/time/trivial_time_parser.rb +162 -0
- data/lib/roebe/classes/to_binary.rb +127 -0
- data/lib/roebe/classes/to_buy.rb +216 -0
- data/lib/roebe/classes/to_next.rb +139 -0
- data/lib/roebe/classes/to_squashfs.rb +83 -0
- data/lib/roebe/classes/to_tar_bz2.rb +62 -0
- data/lib/roebe/classes/to_utf.rb +87 -0
- data/lib/roebe/classes/today.rb +67 -0
- data/lib/roebe/classes/todo_overview.rb +87 -0
- data/lib/roebe/classes/todo_sanitizer.rb +168 -0
- data/lib/roebe/classes/top_ten_aliases.rb +104 -0
- data/lib/roebe/classes/total_pages_in_finished_books.rb +76 -0
- data/lib/roebe/classes/translate.rb +295 -0
- data/lib/roebe/classes/traverse_install.rb +268 -0
- data/lib/roebe/classes/treeview.rb +186 -0
- data/lib/roebe/classes/turn_ruby_file_into_gem.rb +195 -0
- data/lib/roebe/classes/twentyfour_hours_notation.rb +174 -0
- data/lib/roebe/classes/umlaut_converter.rb +137 -0
- data/lib/roebe/classes/undone.rb +126 -0
- data/lib/roebe/classes/unicode_snowman.rb +120 -0
- data/lib/roebe/classes/unified_padding.rb +144 -0
- data/lib/roebe/classes/unrar.rb +95 -0
- data/lib/roebe/classes/upcaser.rb +145 -0
- data/lib/roebe/classes/update.rb +376 -0
- data/lib/roebe/classes/update_static_html_pages_in_the_directory_containing_my_fotos.rb +73 -0
- data/lib/roebe/classes/upload_to_imgur.rb +177 -0
- data/lib/roebe/classes/upwards_counter.rb +59 -0
- data/lib/roebe/classes/usage.rb +158 -0
- data/lib/roebe/classes/usb/automount_usb.rb +82 -0
- data/lib/roebe/classes/usb/create_bootable_usb.rb +118 -0
- data/lib/roebe/classes/usb/usb_devices.rb +188 -0
- data/lib/roebe/classes/use_jruby.rb +68 -0
- data/lib/roebe/classes/vte.rb +110 -0
- data/lib/roebe/classes/wallpaper.rb +177 -0
- data/lib/roebe/classes/wayland_or_xorgserver.rb +69 -0
- data/lib/roebe/classes/webfancy_controller.rb +229 -0
- data/lib/roebe/classes/wikipedia.rb +99 -0
- data/lib/roebe/classes/wlan/eduroam/eduroam.rb +133 -0
- data/lib/roebe/classes/wlan/wlan.rb +1303 -0
- data/lib/roebe/classes/wochentag_anzeiger.rb +220 -0
- data/lib/roebe/classes/word_wrap.rb +67 -0
- data/lib/roebe/classes/write_what_into.rb +91 -0
- data/lib/roebe/classes/xfce/README.md +2 -0
- data/lib/roebe/classes/xfce/set_xfce_wallpaper.rb +91 -0
- data/lib/roebe/classes/yaml_check.rb +63 -0
- data/lib/roebe/classes/youtube_downloader.rb +157 -0
- data/lib/roebe/classes/zenity.rb +319 -0
- data/lib/roebe/classes/zoll.rb +88 -0
- data/lib/roebe/colours/colours.rb +440 -0
- data/lib/roebe/commandline/help.rb +125 -0
- data/lib/roebe/commandline/menu.rb +753 -0
- data/lib/roebe/commandline/misc.rb +278 -0
- data/lib/roebe/commandline/parse_commandline.rb +55 -0
- data/lib/roebe/configuration/autoinclude.rb +7 -0
- data/lib/roebe/configuration/class/configuration.rb +998 -0
- data/lib/roebe/configuration/module.rb +35 -0
- data/lib/roebe/constants/archive_types.rb +26 -0
- data/lib/roebe/constants/array_install_these_gem_projects.rb +115 -0
- data/lib/roebe/constants/constants.rb +96 -0
- data/lib/roebe/constants/emojis.rb +19 -0
- data/lib/roebe/constants/file_and_directory_constants.rb +159 -0
- data/lib/roebe/constants/home_of_the_user_called_x.rb +14 -0
- data/lib/roebe/constants/misc.rb +143 -0
- data/lib/roebe/constants/newline.rb +16 -0
- data/lib/roebe/constants/roebe.rb +74 -0
- data/lib/roebe/constants/www.rb +43 -0
- data/lib/roebe/core/README.md +6 -0
- data/lib/roebe/core/array.rb +347 -0
- data/lib/roebe/core/dir.rb +126 -0
- data/lib/roebe/core/enumerable.rb +25 -0
- data/lib/roebe/core/file.rb +140 -0
- data/lib/roebe/core/fixnum.rb +155 -0
- data/lib/roebe/core/float.rb +86 -0
- data/lib/roebe/core/hash.rb +48 -0
- data/lib/roebe/core/integer.rb +41 -0
- data/lib/roebe/core/kernel.rb +82 -0
- data/lib/roebe/core/math.rb +61 -0
- data/lib/roebe/core/module.rb +91 -0
- data/lib/roebe/core/numeric.rb +64 -0
- data/lib/roebe/core/object.rb +53 -0
- data/lib/roebe/core/proc.rb +10 -0
- data/lib/roebe/core/process.rb +27 -0
- data/lib/roebe/core/range.rb +18 -0
- data/lib/roebe/core/string.rb +651 -0
- data/lib/roebe/core/struct.rb +22 -0
- data/lib/roebe/core/windows.rb +758 -0
- data/lib/roebe/css/project.css +38 -0
- data/lib/roebe/custom_methods/README.md +8 -0
- data/lib/roebe/custom_methods/constants.rb +53 -0
- data/lib/roebe/custom_methods/custom_methods.rb +5651 -0
- data/lib/roebe/dosbox/README.md +5 -0
- data/lib/roebe/dosbox/autoexec.conf +114 -0
- data/lib/roebe/dosbox/bios.conf +20 -0
- data/lib/roebe/dosbox/cpu.conf +42 -0
- data/lib/roebe/dosbox/cycles.conf +41 -0
- data/lib/roebe/dosbox/dos.conf +55 -0
- data/lib/roebe/dosbox/dosbox.conf +34 -0
- data/lib/roebe/dosbox/games.conf +37 -0
- data/lib/roebe/dosbox/generate_dosbox_config.rb +150 -0
- data/lib/roebe/dosbox/gus.conf +26 -0
- data/lib/roebe/dosbox/ipx.conf +14 -0
- data/lib/roebe/dosbox/keyboard.conf +17 -0
- data/lib/roebe/dosbox/midi.conf +18 -0
- data/lib/roebe/dosbox/mixer.conf +26 -0
- data/lib/roebe/dosbox/render.conf +31 -0
- data/lib/roebe/dosbox/sblaster.conf +38 -0
- data/lib/roebe/dosbox/sdl.conf +115 -0
- data/lib/roebe/dosbox/serial.conf +22 -0
- data/lib/roebe/dosbox/speaker.conf +20 -0
- data/lib/roebe/editors/README.md +2 -0
- data/lib/roebe/editors/ruby_nano.rb +80 -0
- data/lib/roebe/editors/vim_paradise/colours.rb +30 -0
- data/lib/roebe/editors/vim_paradise/constants.rb +113 -0
- data/lib/roebe/editors/vim_paradise/help.rb +37 -0
- data/lib/roebe/editors/vim_paradise/menu.rb +62 -0
- data/lib/roebe/editors/vim_paradise/run.rb +22 -0
- data/lib/roebe/editors/vim_paradise/vim_paradise.rb +630 -0
- data/lib/roebe/emoji/README.md +2 -0
- data/lib/roebe/emoji/emoji_table.rb +44 -0
- data/lib/roebe/encoding/encoding.rb +113 -0
- data/lib/roebe/extensions.rb +23 -0
- data/lib/roebe/gemrc/gemrc +19 -0
- data/lib/roebe/gui/cgi/interactive_caesar_cipher/interactive_caesar_cipher.cgi +56 -0
- data/lib/roebe/gui/cgi/md5_comparer/md5_comparer.cgi +83 -0
- data/lib/roebe/gui/glimmer/examples/001_hello_world.rb +8 -0
- data/lib/roebe/gui/glimmer/examples/002_basic_table_progress_bar.rb +29 -0
- data/lib/roebe/gui/glimmer/examples/003_form_table_example.rb +118 -0
- data/lib/roebe/gui/glimmer/microsoft_controller/microsoft_controller.rb +58 -0
- data/lib/roebe/gui/gtk2/code_generator/code_generator.config +6 -0
- data/lib/roebe/gui/gtk2/code_generator/code_generator.rb +39 -0
- data/lib/roebe/gui/gtk2/email/email.config +6 -0
- data/lib/roebe/gui/gtk2/email/email.rb +31 -0
- data/lib/roebe/gui/gtk2/ifconfig/ifconfig.rb +34 -0
- data/lib/roebe/gui/gtk2/send_email/send_email.rb +34 -0
- data/lib/roebe/gui/gtk2/show_aliases/show_aliases.rb +31 -0
- data/lib/roebe/gui/gtk2/show_ten_aliases/show_ten_aliases.rb +34 -0
- data/lib/roebe/gui/gtk2/world_capitals/capital_event_box.rb +18 -0
- data/lib/roebe/gui/gtk2/world_capitals/frame_for_world_capitals.rb +27 -0
- data/lib/roebe/gui/gtk2/world_capitals/world_capitals.rb +31 -0
- data/lib/roebe/gui/gtk3/code_generator/code_generator.rb +31 -0
- data/lib/roebe/gui/gtk3/email/email.rb +34 -0
- data/lib/roebe/gui/gtk3/generate_xorg_configuration/generate_xorg_configuration.rb +223 -0
- data/lib/roebe/gui/gtk3/ifconfig/ifconfig.rb +34 -0
- data/lib/roebe/gui/gtk3/install_operating_system/install_operating_system.rb +159 -0
- data/lib/roebe/gui/gtk3/interactive_caesar_cipher/interactive_caesar_cipher.rb +112 -0
- data/lib/roebe/gui/gtk3/md5_comparer/md5_comparer.rb +120 -0
- data/lib/roebe/gui/gtk3/os_installer/os_installer.rb +140 -0
- data/lib/roebe/gui/gtk3/send_email/send_email.rb +34 -0
- data/lib/roebe/gui/gtk3/shell/misc.rb +70 -0
- data/lib/roebe/gui/gtk3/shell/shell.rb +392 -0
- data/lib/roebe/gui/gtk3/show_aliases/show_aliases.rb +64 -0
- data/lib/roebe/gui/gtk3/show_ten_aliases/show_ten_aliases.rb +34 -0
- data/lib/roebe/gui/gtk3/system_widget/system_widget.rb +34 -0
- data/lib/roebe/gui/gtk3/task_viewer/task_viewer.rb +34 -0
- data/lib/roebe/gui/gtk3/todo_viewer/todo_viewer.rb +290 -0
- data/lib/roebe/gui/gtk3/wecker/wecker.rb +440 -0
- data/lib/roebe/gui/gtk3/wlan_information_center/README.md +9 -0
- data/lib/roebe/gui/gtk3/wlan_information_center/wlan_information_center.css +13 -0
- data/lib/roebe/gui/gtk3/wlan_information_center/wlan_information_center.rb +708 -0
- data/lib/roebe/gui/gtk3/world_capitals/capital_event_box.rb +24 -0
- data/lib/roebe/gui/gtk3/world_capitals/frame_for_world_capitals.rb +29 -0
- data/lib/roebe/gui/gtk3/world_capitals/world_capitals.rb +24 -0
- data/lib/roebe/gui/gtk4/interactive_caesar_cipher/interactive_caesar_cipher.rb +119 -0
- data/lib/roebe/gui/gtk4/shell/shell.rb +93 -0
- data/lib/roebe/gui/jruby/calculator/calculator.rb +122 -0
- data/lib/roebe/gui/jruby/interactive_caesar_cipher/interactive_caesar_cipher.rb +123 -0
- data/lib/roebe/gui/jruby/shell/shell.rb +107 -0
- data/lib/roebe/gui/libui/foto_searcher/foto_searcher.rb +108 -0
- data/lib/roebe/gui/libui/interactive_caesar_cipher/interactive_caesar_cipher.rb +147 -0
- data/lib/roebe/gui/libui/md5_comparer/md5_comparer.rb +89 -0
- data/lib/roebe/gui/libui/microsoft_controller/README.me +3 -0
- data/lib/roebe/gui/libui/microsoft_controller/microsoft_controller.rb +206 -0
- data/lib/roebe/gui/libui/rundll32/rundll32.rb +89 -0
- data/lib/roebe/gui/libui/shell/shell.rb +139 -0
- data/lib/roebe/gui/libui/show_aliases/show_aliases.rb +81 -0
- data/lib/roebe/gui/libui/show_ten_aliases/show_ten_aliases.rb +99 -0
- data/lib/roebe/gui/libui/todo_viewer/todo_viewer.rb +117 -0
- data/lib/roebe/gui/libui/wlan_interface/wlan_interface.rb +140 -0
- data/lib/roebe/gui/shared_code/code_generator/code_generator_module.rb +273 -0
- data/lib/roebe/gui/shared_code/email/email_module.rb +178 -0
- data/lib/roebe/gui/shared_code/ifconfig/ifconfig_module.rb +1163 -0
- data/lib/roebe/gui/shared_code/interactive_caesar_cipher/interactive_caesar_cipher_module.rb +346 -0
- data/lib/roebe/gui/shared_code/md5_comparer/md5_comparer_module.rb +244 -0
- data/lib/roebe/gui/shared_code/microsoft_controller/microsoft_controller_module.rb +215 -0
- data/lib/roebe/gui/shared_code/send_email/send_email.css +0 -0
- data/lib/roebe/gui/shared_code/send_email/send_email_module.rb +291 -0
- data/lib/roebe/gui/shared_code/shell/shell_module.rb +426 -0
- data/lib/roebe/gui/shared_code/show_aliases/show_aliases_module.rb +196 -0
- data/lib/roebe/gui/shared_code/show_ten_aliases/show_ten_aliases_module.rb +315 -0
- data/lib/roebe/gui/shared_code/system_widget/system_widget_module.rb +161 -0
- data/lib/roebe/gui/shared_code/task_viewer/task_viewer_module.rb +222 -0
- data/lib/roebe/gui/shared_code/wlan_interface/wlan_interface.css +13 -0
- data/lib/roebe/gui/shared_code/wlan_interface/wlan_interface_base.rb +0 -0
- data/lib/roebe/gui/shared_code/wlan_interface/wlan_interface_module.rb +0 -0
- data/lib/roebe/gui/shared_code/world_capitals/capital_event_box_module.rb +201 -0
- data/lib/roebe/gui/shared_code/world_capitals/frame_for_world_capitals_module.rb +80 -0
- data/lib/roebe/gui/shared_code/world_capitals/world_capitals_module.rb +276 -0
- data/lib/roebe/gui/sinatra/md5_comparer/md5_comparer.rb +108 -0
- data/lib/roebe/gui/swing/README.md +6 -0
- data/lib/roebe/gui/swing/interactive_caesar_cipher/InteractiveCaesarCipher.class +0 -0
- data/lib/roebe/gui/swing/interactive_caesar_cipher/InteractiveCaesarCipher.java +87 -0
- data/lib/roebe/gui/swing/text_editor/TextEditor.class +0 -0
- data/lib/roebe/gui/swing/text_editor/TextEditor.java +248 -0
- data/lib/roebe/gui/unified_widgets/README.md +5 -0
- data/lib/roebe/gui/unified_widgets/interactive_caesar_cipher/interactive_caesar_cipher.rb +137 -0
- data/lib/roebe/hello_world/hello_world.rb +1 -0
- data/lib/roebe/images/ROEBE_LOGO.png +0 -0
- data/lib/roebe/irb/README.md +3 -0
- data/lib/roebe/irb/clean_irbrc +216 -0
- data/lib/roebe/java_roebe/Ant.java +26 -0
- data/lib/roebe/java_roebe/EnglishToGerman.class +0 -0
- data/lib/roebe/java_roebe/EnglishToGerman.java +52 -0
- data/lib/roebe/java_roebe/MoveFile.class +0 -0
- data/lib/roebe/java_roebe/MoveFile.java +50 -0
- data/lib/roebe/java_roebe/MyIp.java +42 -0
- data/lib/roebe/java_roebe/RemoveDirectory.class +0 -0
- data/lib/roebe/java_roebe/RemoveDirectory.java +92 -0
- data/lib/roebe/java_roebe/RemoveLine.class +0 -0
- data/lib/roebe/java_roebe/RemoveLine.java +168 -0
- data/lib/roebe/java_roebe/ReturnRandomImage.class +0 -0
- data/lib/roebe/java_roebe/ReturnRandomImage.java +54 -0
- data/lib/roebe/java_roebe/Schlafe.class +0 -0
- data/lib/roebe/java_roebe/Schlafe.java +65 -0
- data/lib/roebe/java_roebe/SetBackground.class +0 -0
- data/lib/roebe/java_roebe/SetBackground.java +104 -0
- data/lib/roebe/java_roebe/ShowOnlyFiles.class +0 -0
- data/lib/roebe/java_roebe/ShowOnlyFiles.java +86 -0
- data/lib/roebe/java_roebe/ShowPrimeNumbers.class +0 -0
- data/lib/roebe/java_roebe/ShowPrimeNumbers.java +75 -0
- data/lib/roebe/java_roebe/TakeScreenshot.class +0 -0
- data/lib/roebe/java_roebe/TakeScreenshot.java +126 -0
- data/lib/roebe/java_roebe/TalesFromTheCrypt.class +0 -0
- data/lib/roebe/java_roebe/TalesFromTheCrypt.java +128 -0
- data/lib/roebe/java_roebe/ToBinary.class +0 -0
- data/lib/roebe/java_roebe/ToBinary.java +21 -0
- data/lib/roebe/java_roebe/ToBuy.java +94 -0
- data/lib/roebe/java_roebe/ToSquashfs.class +0 -0
- data/lib/roebe/java_roebe/ToSquashfs.java +84 -0
- data/lib/roebe/java_roebe/ToTarBz2.class +0 -0
- data/lib/roebe/java_roebe/ToTarBz2.java +57 -0
- data/lib/roebe/java_roebe/Today.java +71 -0
- data/lib/roebe/java_roebe/TodoOverview.class +0 -0
- data/lib/roebe/java_roebe/TodoOverview.java +78 -0
- data/lib/roebe/java_roebe/Translate.class +0 -0
- data/lib/roebe/java_roebe/Translate.java +93 -0
- data/lib/roebe/java_roebe/TwentyfourHoursNotation.class +0 -0
- data/lib/roebe/java_roebe/TwentyfourHoursNotation.java +60 -0
- data/lib/roebe/java_roebe/Undone.class +0 -0
- data/lib/roebe/java_roebe/Undone.java +143 -0
- data/lib/roebe/java_roebe/UnicodeSnowman.class +0 -0
- data/lib/roebe/java_roebe/UnicodeSnowman.java +48 -0
- data/lib/roebe/java_roebe/Upcaser.class +0 -0
- data/lib/roebe/java_roebe/Upcaser.java +69 -0
- data/lib/roebe/java_roebe/UploadToImgur.class +0 -0
- data/lib/roebe/java_roebe/UploadToImgur.java +97 -0
- data/lib/roebe/java_roebe/UpwardsCounter.class +0 -0
- data/lib/roebe/java_roebe/UpwardsCounter.java +77 -0
- data/lib/roebe/java_roebe/Wikipedia.class +0 -0
- data/lib/roebe/java_roebe/Wikipedia.java +43 -0
- data/lib/roebe/java_roebe/WriteWhatInto.class +0 -0
- data/lib/roebe/java_roebe/WriteWhatInto.java +56 -0
- data/lib/roebe/java_roebe/Zoll.class +0 -0
- data/lib/roebe/java_roebe/Zoll.java +42 -0
- data/lib/roebe/java_roebe/controller/ControllerWithCSSSupport$1.class +0 -0
- data/lib/roebe/java_roebe/controller/ControllerWithCSSSupport.class +0 -0
- data/lib/roebe/java_roebe/controller/ControllerWithCSSSupport.java +277 -0
- data/lib/roebe/java_roebe/gui/Calculator.class +0 -0
- data/lib/roebe/java_roebe/gui/Calculator.java +287 -0
- data/lib/roebe/java_roebe/java_roebe/ShowPrimeNumbers.class +0 -0
- data/lib/roebe/java_roebe/java_roebe/ShowPrimeNumbers.java +75 -0
- data/lib/roebe/java_roebe/java_roebe/TakeScreenshot.class +0 -0
- data/lib/roebe/java_roebe/java_roebe/TakeScreenshot.java +126 -0
- data/lib/roebe/java_roebe/java_roebe/TalesFromTheCrypt.class +0 -0
- data/lib/roebe/java_roebe/java_roebe/TalesFromTheCrypt.java +128 -0
- data/lib/roebe/java_roebe/java_roebe/Zoll.class +0 -0
- data/lib/roebe/java_roebe/java_roebe/Zoll.java +42 -0
- data/lib/roebe/java_roebe/show_the_content_of_this_directory/ShowTheContentOfThisDirectory.class +0 -0
- data/lib/roebe/java_roebe/show_the_content_of_this_directory/ShowTheContentOfThisDirectory.java +50 -0
- data/lib/roebe/jruby/jruby_enhancements.rb +18 -0
- data/lib/roebe/jruby/swing/absolute_positioning_example.rb +75 -0
- data/lib/roebe/jruby/swing/complete_windows_example.rb +90 -0
- data/lib/roebe/jruby/swing/paint_demo.rb +37 -0
- data/lib/roebe/jruby/swing/quit_button_example.rb +54 -0
- data/lib/roebe/jruby/swing/simple_swing_example.rb +33 -0
- data/lib/roebe/jruby/swing/tooltip_example.rb +90 -0
- data/lib/roebe/jruby/swing/two_buttons_example.rb +62 -0
- data/lib/roebe/knowledge_base/knowledge_base.rb +103 -0
- data/lib/roebe/linux/README.md +3 -0
- data/lib/roebe/linux/linux.rb +106 -0
- data/lib/roebe/linux/slackware/remove_pulseaudio.rb +34 -0
- data/lib/roebe/linux/slackware/slackware.rb +122 -0
- data/lib/roebe/math/README.md +4 -0
- data/lib/roebe/math/anagram.rb +42 -0
- data/lib/roebe/math/average_of_differences.rb +41 -0
- data/lib/roebe/math/binning.rb +56 -0
- data/lib/roebe/math/calculate_the_distance_between_two_points.rb +38 -0
- data/lib/roebe/math/calculate_the_variance.rb +45 -0
- data/lib/roebe/math/circle.rb +101 -0
- data/lib/roebe/math/draw_line.rb +25 -0
- data/lib/roebe/math/draw_triangle.rb +26 -0
- data/lib/roebe/math/fact.rb +44 -0
- data/lib/roebe/math/levensthein.rb +69 -0
- data/lib/roebe/math/log10.rb +54 -0
- data/lib/roebe/math/math.rb +314 -0
- data/lib/roebe/math/pi.rb +29 -0
- data/lib/roebe/math/primfaktorzerlegung.rb +105 -0
- data/lib/roebe/math/regel_von_sarrus.rb +70 -0
- data/lib/roebe/math/sphere.rb +126 -0
- data/lib/roebe/math/steigung.rb +59 -0
- data/lib/roebe/math/traurige_oder_fr/303/266hliche_zahl.rb +47 -0
- data/lib/roebe/math/traurige_oder_gl/303/274ckliche_zahl.rb +55 -0
- data/lib/roebe/math/zylinder.rb +59 -0
- data/lib/roebe/mime_types/mime_types.rb +389 -0
- data/lib/roebe/misc/README.md +2 -0
- data/lib/roebe/misc/chrome_extensions/roebe/background.js +1 -0
- data/lib/roebe/misc/chrome_extensions/roebe/commands_to_run.rb +1 -0
- data/lib/roebe/misc/chrome_extensions/roebe/content.js +1 -0
- data/lib/roebe/misc/chrome_extensions/roebe/images/64.png +0 -0
- data/lib/roebe/misc/chrome_extensions/roebe/index.html +130 -0
- data/lib/roebe/misc/chrome_extensions/roebe/manifest.json +22 -0
- data/lib/roebe/misc/chrome_extensions/roebe/popup.html +46 -0
- data/lib/roebe/misc/chrome_extensions/roebe/popup.js +0 -0
- data/lib/roebe/misc/chrome_extensions/roebe/simulate_a_dice.js +28 -0
- data/lib/roebe/misc/fluxbox_keys_file +117 -0
- data/lib/roebe/misc/icewm_keys_file +88 -0
- data/lib/roebe/misc/master_boot_record/master_boot_record +0 -0
- data/lib/roebe/misc/ublock_origin/ublock_origin.md +4 -0
- data/lib/roebe/modules/as_uid.rb +61 -0
- data/lib/roebe/modules/extensions/README.md +2 -0
- data/lib/roebe/modules/extensions/hexapdf.rb +14 -0
- data/lib/roebe/modules/http_status_codes/constants.rb +105 -0
- data/lib/roebe/modules/http_status_codes/http_status_codes.rb +59 -0
- data/lib/roebe/modules/remove_html.rb +61 -0
- data/lib/roebe/mouse/README.md +2 -0
- data/lib/roebe/mouse/libffi_is_not_available.rb +70 -0
- data/lib/roebe/mouse/mouse.rb +205 -0
- data/lib/roebe/nano/README.md +42 -0
- data/lib/roebe/nano/c.md +77 -0
- data/lib/roebe/nano/cpp.md +68 -0
- data/lib/roebe/nano/css.md +16 -0
- data/lib/roebe/nano/fasta.md +10 -0
- data/lib/roebe/nano/general_settings.md +199 -0
- data/lib/roebe/nano/generic.md +52 -0
- data/lib/roebe/nano/html.md +7 -0
- data/lib/roebe/nano/include.md +26 -0
- data/lib/roebe/nano/java.md +31 -0
- data/lib/roebe/nano/mail.md +36 -0
- data/lib/roebe/nano/ml.md +21 -0
- data/lib/roebe/nano/nano.cgi +23 -0
- data/lib/roebe/nano/nanorc.md +16 -0
- data/lib/roebe/nano/nexus.md +12 -0
- data/lib/roebe/nano/opal.md +66 -0
- data/lib/roebe/nano/patch_files.md +12 -0
- data/lib/roebe/nano/perl.md +12 -0
- data/lib/roebe/nano/php.md +26 -0
- data/lib/roebe/nano/python.md +12 -0
- data/lib/roebe/nano/ruby.md +122 -0
- data/lib/roebe/nano/shell_scripts.md +15 -0
- data/lib/roebe/nano/top.md +14 -0
- data/lib/roebe/nano/yaml.md +70 -0
- data/lib/roebe/nano/zzz_misc.md +13 -0
- data/lib/roebe/no_colours.rb +7 -0
- data/lib/roebe/pdf/README.md +1 -0
- data/lib/roebe/pdf/prawn/all_in_one_showcasing_prawn.rb +164 -0
- data/lib/roebe/project/project.rb +77 -0
- data/lib/roebe/python/base/__pycache__/base.cpython-39.pyc +0 -0
- data/lib/roebe/python/base/base.py +40 -0
- data/lib/roebe/python/zoll.py +16 -0
- data/lib/roebe/requires/basic_common_requires.rb +18 -0
- data/lib/roebe/requires/colours.rb +7 -0
- data/lib/roebe/requires/failsafe_require_of_beautiful_url.rb +12 -0
- data/lib/roebe/requires/failsafe_require_of_opn.rb +12 -0
- data/lib/roebe/requires/require_all_standalone_classes.rb +65 -0
- data/lib/roebe/requires/require_all_standalone_modules.rb +61 -0
- data/lib/roebe/requires/require_burn_iso.rb +5 -0
- data/lib/roebe/requires/require_kde_konsole.rb +7 -0
- data/lib/roebe/requires/require_menu_generator.rb +7 -0
- data/lib/roebe/requires/require_remove_directory.rb +7 -0
- data/lib/roebe/requires/require_ruby_header.rb +7 -0
- data/lib/roebe/requires/require_the_browser_files.rb +11 -0
- data/lib/roebe/requires/require_the_roebe_documentation.rb +11 -0
- data/lib/roebe/requires/require_the_roebe_shell.rb +22 -0
- data/lib/roebe/requires/require_the_run_class.rb +7 -0
- data/lib/roebe/requires/require_the_toplevel_methods.rb +11 -0
- data/lib/roebe/requires/require_the_whole_roebe_project.rb +75 -0
- data/lib/roebe/requires/require_traverse_install.rb +7 -0
- data/lib/roebe/requires/require_unicode.rb +31 -0
- data/lib/roebe/requires/require_yaml.rb +1 -0
- data/lib/roebe/setup/README.md +1 -0
- data/lib/roebe/setup/setup.rb +1665 -0
- data/lib/roebe/shell/README.md +6 -0
- data/lib/roebe/shell/colours/colour_codes.rb +178 -0
- data/lib/roebe/shell/colours/colours.rb +331 -0
- data/lib/roebe/shell/commandline/commandline.rb +404 -0
- data/lib/roebe/shell/configuration/configuration.rb +165 -0
- data/lib/roebe/shell/gui/gtk3/vte_terminal_frame.rb +77 -0
- data/lib/roebe/shell/help/colourized_help_line.rb +183 -0
- data/lib/roebe/shell/help/documented_help_options.rb +254 -0
- data/lib/roebe/shell/help/help.rb +105 -0
- data/lib/roebe/shell/module_methods/anmeldung.rb +75 -0
- data/lib/roebe/shell/module_methods/available_components.rb +78 -0
- data/lib/roebe/shell/module_methods/benchmarks.rb +70 -0
- data/lib/roebe/shell/module_methods/commandline_arguments.rb +35 -0
- data/lib/roebe/shell/module_methods/encoding.rb +95 -0
- data/lib/roebe/shell/module_methods/ftp.rb +65 -0
- data/lib/roebe/shell/module_methods/generate_tab_completion.rb +96 -0
- data/lib/roebe/shell/module_methods/home_directory.rb +108 -0
- data/lib/roebe/shell/module_methods/main_file.rb +41 -0
- data/lib/roebe/shell/module_methods/misc.rb +181 -0
- data/lib/roebe/shell/module_methods/report_where_the_home_directory_can_be_found.rb +35 -0
- data/lib/roebe/shell/module_methods/startup_time.rb +34 -0
- data/lib/roebe/shell/project/project.rb +47 -0
- data/lib/roebe/shell/session/session.rb +205 -0
- data/lib/roebe/shell/shell/constants.rb +272 -0
- data/lib/roebe/shell/shell/menu_for_the_main_loop.rb +8380 -0
- data/lib/roebe/shell/shell/shell.rb +24639 -0
- data/lib/roebe/shell/shellrc_parser/shellrc_parser.rb +276 -0
- data/lib/roebe/shell/standalone_classes/time_converter.rb +86 -0
- data/lib/roebe/shell/standalone_classes/todo.rb +100 -0
- data/lib/roebe/shell/yaml/configuration/autoconvert_numbers.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/be_verbose.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/cd_burn_program.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/check_for_isos.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/check_upcoming_exams.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/collapse.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/colours.yml +10 -0
- data/lib/roebe/shell/yaml/configuration/debug.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/default_browser_location.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/default_delay.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/default_file_action.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/dictionaries.yml +2 -0
- data/lib/roebe/shell/yaml/configuration/display_index.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/do_show_modification_time.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/dvd_burn_program.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/editor.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/enter_extracted_directory.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/events.yml +2 -0
- data/lib/roebe/shell/yaml/configuration/guess_directory_name.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/jumper_directories.yml +9 -0
- data/lib/roebe/shell/yaml/configuration/last_directory.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/logfile_for_history.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/may_we_generate_file_skeleton.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/may_we_use_ftp.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/mplayer_favourite_files.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/official_release.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/open_downloaded_pdf_files_at_once.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/operating_system.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/padding.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/pdf_viewer.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/preferred_encoding.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/protected_directories.yml +8 -0
- data/lib/roebe/shell/yaml/configuration/remove_globbed_files.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/run_simulation.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/shall_we_log_the_user_input_history.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/shell_name.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/shell_prompt.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/shorten_directory_names.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/show_absolute_path.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/show_condensed_permissions.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/show_hidden_files.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/show_n_lines.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/simplified.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/stop_on_missing_symlink.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/title_renamer.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/translate_unknown_words.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/truncate_long_file_names.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/upload_screenshots.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/use_aliases.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/use_colours.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/use_dictionary.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/use_irb_drop.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/use_irc.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/use_konsole_colours.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/use_readline.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/video_collection.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/video_player.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/which_bin_shell_to_use.yml +1 -0
- data/lib/roebe/shell/yaml/configuration/which_shell.yml +1 -0
- data/lib/roebe/shell/yaml/default_apps.yml +7 -0
- data/lib/roebe/shell/yaml/ignore_these_last_commands.yml +12 -0
- data/lib/roebe/shell/yaml/lazy_load_these_components.yml +51 -0
- data/lib/roebe/shell_scripts/README.md +13 -0
- data/lib/roebe/shell_scripts/bashrc +39 -0
- data/lib/roebe/shell_scripts/check_bootloader.sh +30 -0
- data/lib/roebe/shell_scripts/cliner.sh +98 -0
- data/lib/roebe/shell_scripts/colour_grey_matrix.sh +7 -0
- data/lib/roebe/shell_scripts/coloured_calendar.sh +25 -0
- data/lib/roebe/shell_scripts/compile_ruby.sh +58 -0
- data/lib/roebe/shell_scripts/completion_for_rf.sh +1065 -0
- data/lib/roebe/shell_scripts/count_down.sh +13 -0
- data/lib/roebe/shell_scripts/create_new_file.sh +25 -0
- data/lib/roebe/shell_scripts/custom_prompts.sh +39 -0
- data/lib/roebe/shell_scripts/do_install.sh +24 -0
- data/lib/roebe/shell_scripts/do_stripped_install.sh +22 -0
- data/lib/roebe/shell_scripts/echo_loop_example.sh +4 -0
- data/lib/roebe/shell_scripts/extname.sh +21 -0
- data/lib/roebe/shell_scripts/extract.sh +42 -0
- data/lib/roebe/shell_scripts/extract_archive.sh +59 -0
- data/lib/roebe/shell_scripts/first_character.sh +31 -0
- data/lib/roebe/shell_scripts/how_to_obtain_user_input.sh +17 -0
- data/lib/roebe/shell_scripts/install_base_roebe.sh +41 -0
- data/lib/roebe/shell_scripts/lfs/001_binutils_1.sh +19 -0
- data/lib/roebe/shell_scripts/lfs/002_gcc_1.sh +36 -0
- data/lib/roebe/shell_scripts/lfs/003_linux_1.sh +23 -0
- data/lib/roebe/shell_scripts/lfs/004_glibc_1.sh +42 -0
- data/lib/roebe/shell_scripts/lfs/005_libstdc++_1.sh +25 -0
- data/lib/roebe/shell_scripts/lfs/006_m4_2.sh +22 -0
- data/lib/roebe/shell_scripts/lfs/007_ncurses_2.sh +39 -0
- data/lib/roebe/shell_scripts/lfs/008_bash_2.sh +21 -0
- data/lib/roebe/shell_scripts/lfs/009_coreutils_2.sh +25 -0
- data/lib/roebe/shell_scripts/lfs/010_diffutils_2.sh +20 -0
- data/lib/roebe/shell_scripts/lfs/011_file_2.sh +25 -0
- data/lib/roebe/shell_scripts/lfs/012_findutils_2.sh +20 -0
- data/lib/roebe/shell_scripts/lfs/013_gawk_2.sh +21 -0
- data/lib/roebe/shell_scripts/lfs/014_grep_2.sh +20 -0
- data/lib/roebe/shell_scripts/lfs/015_gzip_2.sh +20 -0
- data/lib/roebe/shell_scripts/lfs/016_make_2.sh +20 -0
- data/lib/roebe/shell_scripts/lfs/017_patch_2.sh +17 -0
- data/lib/roebe/shell_scripts/lfs/018_sed_2.sh +19 -0
- data/lib/roebe/shell_scripts/lfs/019_tar_2.sh +16 -0
- data/lib/roebe/shell_scripts/lfs/020_xz_2.sh +15 -0
- data/lib/roebe/shell_scripts/lfs/021_binutils_2.sh +30 -0
- data/lib/roebe/shell_scripts/lfs/022_gcc_2.sh +50 -0
- data/lib/roebe/shell_scripts/lfs/README.md +28 -0
- data/lib/roebe/shell_scripts/lfs/lfs_build_variables.sh +251 -0
- data/lib/roebe/shell_scripts/lfs/lfs_variables.sh +31 -0
- data/lib/roebe/shell_scripts/lfs/libstdc++_2.sh +20 -0
- data/lib/roebe/shell_scripts/lfs/ruby_2.sh +11 -0
- data/lib/roebe/shell_scripts/list_colours.sh +25 -0
- data/lib/roebe/shell_scripts/locales.sh +15 -0
- data/lib/roebe/shell_scripts/loop_example.sh +5 -0
- data/lib/roebe/shell_scripts/lower.sh +21 -0
- data/lib/roebe/shell_scripts/misc.sh +327 -0
- data/lib/roebe/shell_scripts/musl_cross_compiler.sh +178 -0
- data/lib/roebe/shell_scripts/no_caps.sh +16 -0
- data/lib/roebe/shell_scripts/number_guessing_game.sh +37 -0
- data/lib/roebe/shell_scripts/parameters_example.sh +58 -0
- data/lib/roebe/shell_scripts/query_parameters.sh +58 -0
- data/lib/roebe/shell_scripts/remove_broken_symlinks_in_the_current_working_directory.sh +1 -0
- data/lib/roebe/shell_scripts/reset_path.sh +15 -0
- data/lib/roebe/shell_scripts/return_random_file.sh +20 -0
- data/lib/roebe/shell_scripts/run_gobo_fixes.sh +17 -0
- data/lib/roebe/shell_scripts/shell_file_containing_the_html_colours.sh +148 -0
- data/lib/roebe/shell_scripts/show_semigraphic_characters.sh +14 -0
- data/lib/roebe/shell_scripts/show_site_ruby.sh +15 -0
- data/lib/roebe/shell_scripts/source_in_all_completions.sh +9 -0
- data/lib/roebe/shell_scripts/true_ata.sh +34 -0
- data/lib/roebe/shell_scripts/truecolour_line.sh +13 -0
- data/lib/roebe/shell_scripts/zenity_count_to_100.sh +5 -0
- data/lib/roebe/sinatra/README.md +6 -0
- data/lib/roebe/sinatra/erb_example/erb_example.erb +10 -0
- data/lib/roebe/sinatra/erb_example/erb_example.rb +13 -0
- data/lib/roebe/sinatra/inline_template_example/inline_template_example.rb +27 -0
- data/lib/roebe/sinatra/modify_http_response_headers_example/modify_http_response_headers_example.rb +13 -0
- data/lib/roebe/sinatra/multi_urls/multi_urls.rb +29 -0
- data/lib/roebe/sinatra/optional_route.rb +19 -0
- data/lib/roebe/sinatra/query_the_name/query_the_name.rb +7 -0
- data/lib/roebe/sinatra/rock_paper_and_scissors_example/rock_paper_and_scissors_example.rb +51 -0
- data/lib/roebe/sinatra/route_definition_examples/route_definition_examples.rb +25 -0
- data/lib/roebe/sinatra/send_file_example/send_file_example.rb +54 -0
- data/lib/roebe/sinatra/session_counter/session_counter.rb +51 -0
- data/lib/roebe/sinatra/show_the_environment_variables/show_the_environment_variables.rb +9 -0
- data/lib/roebe/sinatra/simple_authentication/simple_authentication.rb +25 -0
- data/lib/roebe/sinatra/simple_hello_world/simple_hello_world.rb +5 -0
- data/lib/roebe/sinatra/sinatra_authentication_example/sinatra_authentication_example.rb +117 -0
- data/lib/roebe/sinatra/sinatra_example_with_rack_component/sinatra_example_with_rack_component.rb +15 -0
- data/lib/roebe/sinatra/subclassing_sinatra_example/subclassing_sinatra_example.rb +19 -0
- data/lib/roebe/snippets/README.md +1 -0
- data/lib/roebe/snippets/first_argument.rb +5 -0
- data/lib/roebe/snippets/obtain_all_descendants.rb +31 -0
- data/lib/roebe/sql_paradise/commands.rb +604 -0
- data/lib/roebe/sql_paradise/create_database.rb +43 -0
- data/lib/roebe/sql_paradise/create_table.rb +47 -0
- data/lib/roebe/sql_paradise/insert_into.rb +77 -0
- data/lib/roebe/sql_paradise/sql_command.rb +22 -0
- data/lib/roebe/sql_paradise/sql_paradise.rb +180 -0
- data/lib/roebe/time/README.md +6 -0
- data/lib/roebe/time/seconds.rb +79 -0
- data/lib/roebe/time/time.rb +196 -0
- data/lib/roebe/toplevel_methods/arrow_keys.rb +37 -0
- data/lib/roebe/toplevel_methods/ascii_paradise.rb +23 -0
- data/lib/roebe/toplevel_methods/autoprune.rb +40 -0
- data/lib/roebe/toplevel_methods/background.rb +89 -0
- data/lib/roebe/toplevel_methods/base64.rb +37 -0
- data/lib/roebe/toplevel_methods/beautify_system.rb +25 -0
- data/lib/roebe/toplevel_methods/blinking_cursor.rb +88 -0
- data/lib/roebe/toplevel_methods/boku_opening_times.rb +30 -0
- data/lib/roebe/toplevel_methods/build_all_my_local_gems.rb +39 -0
- data/lib/roebe/toplevel_methods/bundle_exam_results.rb +48 -0
- data/lib/roebe/toplevel_methods/c_debug.rb +22 -0
- data/lib/roebe/toplevel_methods/calculate_bmi.rb +41 -0
- data/lib/roebe/toplevel_methods/calculate_hypotenuse.rb +26 -0
- data/lib/roebe/toplevel_methods/chained.rb +19 -0
- data/lib/roebe/toplevel_methods/chdir.rb +44 -0
- data/lib/roebe/toplevel_methods/check_whether_an_internet_connection_is_available.rb +38 -0
- data/lib/roebe/toplevel_methods/chroot.rb +170 -0
- data/lib/roebe/toplevel_methods/cliner.rb +72 -0
- data/lib/roebe/toplevel_methods/colourize_files_and_directories.rb +69 -0
- data/lib/roebe/toplevel_methods/colourized_tokenitor.rb +56 -0
- data/lib/roebe/toplevel_methods/convert_global_env.rb +34 -0
- data/lib/roebe/toplevel_methods/copy_setup_rb_file.rb +27 -0
- data/lib/roebe/toplevel_methods/copy_the_linux_kernel.rb +38 -0
- data/lib/roebe/toplevel_methods/cp_to_here.rb +34 -0
- data/lib/roebe/toplevel_methods/crazy_make_mode.rb +70 -0
- data/lib/roebe/toplevel_methods/create_directory.rb +35 -0
- data/lib/roebe/toplevel_methods/create_directory_layout.rb +58 -0
- data/lib/roebe/toplevel_methods/create_this_c_file.rb +36 -0
- data/lib/roebe/toplevel_methods/disable.rb +27 -0
- data/lib/roebe/toplevel_methods/display_array.rb +97 -0
- data/lib/roebe/toplevel_methods/display_mbr.rb +33 -0
- data/lib/roebe/toplevel_methods/does_this_program_exist.rb +57 -0
- data/lib/roebe/toplevel_methods/does_this_terminal_support_unicode.rb +27 -0
- data/lib/roebe/toplevel_methods/downcase_all_entries_in_the_current_directory.rb +43 -0
- data/lib/roebe/toplevel_methods/download_certdata.rb +29 -0
- data/lib/roebe/toplevel_methods/download_emojis.rb +48 -0
- data/lib/roebe/toplevel_methods/e.rb +33 -0
- data/lib/roebe/toplevel_methods/editor.rb +47 -0
- data/lib/roebe/toplevel_methods/email.rb +32 -0
- data/lib/roebe/toplevel_methods/enable.rb +27 -0
- data/lib/roebe/toplevel_methods/env.rb +40 -0
- data/lib/roebe/toplevel_methods/esystem.rb +22 -0
- data/lib/roebe/toplevel_methods/extract.rb +53 -0
- data/lib/roebe/toplevel_methods/fibonacci.rb +108 -0
- data/lib/roebe/toplevel_methods/files.rb +361 -0
- data/lib/roebe/toplevel_methods/generate_konsole_css_file.rb +82 -0
- data/lib/roebe/toplevel_methods/grab_colour.rb +31 -0
- data/lib/roebe/toplevel_methods/halloween.rb +105 -0
- data/lib/roebe/toplevel_methods/hello_world.rb +28 -0
- data/lib/roebe/toplevel_methods/heredocs.rb +32 -0
- data/lib/roebe/toplevel_methods/hostname.rb +38 -0
- data/lib/roebe/toplevel_methods/human_readable.rb +41 -0
- data/lib/roebe/toplevel_methods/images.rb +28 -0
- data/lib/roebe/toplevel_methods/important_pdf_files.rb +131 -0
- data/lib/roebe/toplevel_methods/increase_volume.rb +19 -0
- data/lib/roebe/toplevel_methods/install_and_update_rcfiles.rb +26 -0
- data/lib/roebe/toplevel_methods/install_linux_kernel_api_headers.rb +50 -0
- data/lib/roebe/toplevel_methods/install_nss.rb +52 -0
- data/lib/roebe/toplevel_methods/install_roebe_addons.rb +68 -0
- data/lib/roebe/toplevel_methods/install_rust.rb +26 -0
- data/lib/roebe/toplevel_methods/install_the_cascadia_font.rb +59 -0
- data/lib/roebe/toplevel_methods/install_the_hack_font.rb +69 -0
- data/lib/roebe/toplevel_methods/install_the_jet_brains_mono_font.rb +55 -0
- data/lib/roebe/toplevel_methods/install_this_font.rb +80 -0
- data/lib/roebe/toplevel_methods/install_this_locale.rb +30 -0
- data/lib/roebe/toplevel_methods/install_vivaldi.rb +33 -0
- data/lib/roebe/toplevel_methods/instance_variable_get.rb +22 -0
- data/lib/roebe/toplevel_methods/irb.rb +34 -0
- data/lib/roebe/toplevel_methods/is_on_roebe.rb +64 -0
- data/lib/roebe/toplevel_methods/jp2a.rb +49 -0
- data/lib/roebe/toplevel_methods/keywords.rb +43 -0
- data/lib/roebe/toplevel_methods/lighttpd.rb +12 -0
- data/lib/roebe/toplevel_methods/load_custom_ruby_files.rb +41 -0
- data/lib/roebe/toplevel_methods/load_yaml.rb +28 -0
- data/lib/roebe/toplevel_methods/mama.rb +30 -0
- data/lib/roebe/toplevel_methods/master_boot_record.rb +84 -0
- data/lib/roebe/toplevel_methods/math.rb +29 -0
- data/lib/roebe/toplevel_methods/misc.rb +837 -0
- data/lib/roebe/toplevel_methods/module_methods.rb +425 -0
- data/lib/roebe/toplevel_methods/mount_procs.rb +25 -0
- data/lib/roebe/toplevel_methods/move_file.rb +38 -0
- data/lib/roebe/toplevel_methods/move_to_torrent_directory.rb +48 -0
- data/lib/roebe/toplevel_methods/multimedia.rb +117 -0
- data/lib/roebe/toplevel_methods/n_characters_in_this_file.rb +45 -0
- data/lib/roebe/toplevel_methods/nano_addons.rb +36 -0
- data/lib/roebe/toplevel_methods/new_konsole_tab.rb +21 -0
- data/lib/roebe/toplevel_methods/newstud/newstud1.rb +24 -0
- data/lib/roebe/toplevel_methods/newstud/newstud10.rb +24 -0
- data/lib/roebe/toplevel_methods/newstud/newstud11.rb +24 -0
- data/lib/roebe/toplevel_methods/newstud/newstud12.rb +24 -0
- data/lib/roebe/toplevel_methods/newstud/newstud13.rb +24 -0
- data/lib/roebe/toplevel_methods/newstud/newstud14.rb +24 -0
- data/lib/roebe/toplevel_methods/newstud/newstud15.rb +24 -0
- data/lib/roebe/toplevel_methods/newstud/newstud16.rb +24 -0
- data/lib/roebe/toplevel_methods/newstud/newstud17.rb +24 -0
- data/lib/roebe/toplevel_methods/newstud/newstud18.rb +24 -0
- data/lib/roebe/toplevel_methods/newstud/newstud19.rb +24 -0
- data/lib/roebe/toplevel_methods/newstud/newstud2.rb +24 -0
- data/lib/roebe/toplevel_methods/newstud/newstud20.rb +24 -0
- data/lib/roebe/toplevel_methods/newstud/newstud21.rb +24 -0
- data/lib/roebe/toplevel_methods/newstud/newstud22.rb +24 -0
- data/lib/roebe/toplevel_methods/newstud/newstud23.rb +24 -0
- data/lib/roebe/toplevel_methods/newstud/newstud24.rb +24 -0
- data/lib/roebe/toplevel_methods/newstud/newstud25.rb +24 -0
- data/lib/roebe/toplevel_methods/newstud/newstud3.rb +24 -0
- data/lib/roebe/toplevel_methods/newstud/newstud4.rb +24 -0
- data/lib/roebe/toplevel_methods/newstud/newstud5.rb +24 -0
- data/lib/roebe/toplevel_methods/newstud/newstud6.rb +24 -0
- data/lib/roebe/toplevel_methods/newstud/newstud7.rb +24 -0
- data/lib/roebe/toplevel_methods/newstud/newstud8.rb +24 -0
- data/lib/roebe/toplevel_methods/newstud/newstud9.rb +24 -0
- data/lib/roebe/toplevel_methods/newstud.rb +23 -0
- data/lib/roebe/toplevel_methods/no_caps.rb +29 -0
- data/lib/roebe/toplevel_methods/ntrad.rb +36 -0
- data/lib/roebe/toplevel_methods/open_in_browser.rb +30 -0
- data/lib/roebe/toplevel_methods/open_in_editor.rb +29 -0
- data/lib/roebe/toplevel_methods/open_in_editor_and_browser.rb +38 -0
- data/lib/roebe/toplevel_methods/open_ports.rb +67 -0
- data/lib/roebe/toplevel_methods/opnn.rb +31 -0
- data/lib/roebe/toplevel_methods/permanently_set_project_base_directory_to.rb +40 -0
- data/lib/roebe/toplevel_methods/platform.rb +46 -0
- data/lib/roebe/toplevel_methods/pp_output.rb +31 -0
- data/lib/roebe/toplevel_methods/prime_numbers.rb +22 -0
- data/lib/roebe/toplevel_methods/programs_directory.rb +29 -0
- data/lib/roebe/toplevel_methods/purgeboth.rb +51 -0
- data/lib/roebe/toplevel_methods/puts_this.rb +29 -0
- data/lib/roebe/toplevel_methods/rds.rb +33 -0
- data/lib/roebe/toplevel_methods/regex.rb +87 -0
- data/lib/roebe/toplevel_methods/register_sigint.rb +67 -0
- data/lib/roebe/toplevel_methods/remove_user.rb +29 -0
- data/lib/roebe/toplevel_methods/repetition_pattern.rb +38 -0
- data/lib/roebe/toplevel_methods/replace_leading_file_name.rb +35 -0
- data/lib/roebe/toplevel_methods/replace_localhost_with_data.rb +39 -0
- data/lib/roebe/toplevel_methods/report_classes.rb +51 -0
- data/lib/roebe/toplevel_methods/report_the_gtk_versions_available.rb +40 -0
- data/lib/roebe/toplevel_methods/report_the_location_of_the_default_browser.rb +40 -0
- data/lib/roebe/toplevel_methods/require_this_roebe_class.rb +23 -0
- data/lib/roebe/toplevel_methods/return_all_remote_entries_from_this_url.rb +38 -0
- data/lib/roebe/toplevel_methods/return_date.rb +23 -0
- data/lib/roebe/toplevel_methods/return_even_numbered_lines_from_this_file.rb +37 -0
- data/lib/roebe/toplevel_methods/return_pwd.rb +25 -0
- data/lib/roebe/toplevel_methods/rinstall2.rb +115 -0
- data/lib/roebe/toplevel_methods/rubyzip.rb +85 -0
- data/lib/roebe/toplevel_methods/run_this_file_in_the_background.rb +26 -0
- data/lib/roebe/toplevel_methods/sanitize_url.rb +74 -0
- data/lib/roebe/toplevel_methods/set_ten_aliases.rb +25 -0
- data/lib/roebe/toplevel_methods/setup.rb +37 -0
- data/lib/roebe/toplevel_methods/show_beauty_string.rb +27 -0
- data/lib/roebe/toplevel_methods/show_processes.rb +31 -0
- data/lib/roebe/toplevel_methods/silent_redirection.rb +17 -0
- data/lib/roebe/toplevel_methods/sitelibdir.rb +24 -0
- data/lib/roebe/toplevel_methods/studium1.rb +30 -0
- data/lib/roebe/toplevel_methods/time.rb +152 -0
- data/lib/roebe/toplevel_methods/to_bool.rb +31 -0
- data/lib/roebe/toplevel_methods/to_camelcase.rb +19 -0
- data/lib/roebe/toplevel_methods/to_mp3.rb +40 -0
- data/lib/roebe/toplevel_methods/to_underscore.rb +36 -0
- data/lib/roebe/toplevel_methods/tokenitor.rb +29 -0
- data/lib/roebe/toplevel_methods/trad.rb +37 -0
- data/lib/roebe/toplevel_methods/try_to_enable_the_expanded_cd_aliases.rb +64 -0
- data/lib/roebe/toplevel_methods/unicode/README.md +1 -0
- data/lib/roebe/toplevel_methods/unicode/colourful_unicode_snowmen.rb +151 -0
- data/lib/roebe/toplevel_methods/unicode/completed.rb +57 -0
- data/lib/roebe/toplevel_methods/unicode/decompose_this_unicode_symbol.rb +26 -0
- data/lib/roebe/toplevel_methods/unicode/display_unicode_snowman.rb +31 -0
- data/lib/roebe/toplevel_methods/unicode/download_unicode_dataset.rb +31 -0
- data/lib/roebe/toplevel_methods/unicode/map_input_to_unicode_symbol.rb +260 -0
- data/lib/roebe/toplevel_methods/unicode/popular_unicode_symbols.rb +1090 -0
- data/lib/roebe/toplevel_methods/unicode/return_all_unicode_symbols.rb +26 -0
- data/lib/roebe/toplevel_methods/unicode/unicode_block_elements.rb +262 -0
- data/lib/roebe/toplevel_methods/unicode/unicode_chess_symbols.rb +162 -0
- data/lib/roebe/toplevel_methods/update_pciids.rb +71 -0
- data/lib/roebe/toplevel_methods/update_the_main_pdf_viewer_file_with_this_program.rb +58 -0
- data/lib/roebe/toplevel_methods/variables.rb +26 -0
- data/lib/roebe/toplevel_methods/verbose_truth.rb +23 -0
- data/lib/roebe/toplevel_methods/video.rb +39 -0
- data/lib/roebe/toplevel_methods/warning.rb +184 -0
- data/lib/roebe/toplevel_methods/webrick.rb +80 -0
- data/lib/roebe/toplevel_methods/wget.rb +17 -0
- data/lib/roebe/toplevel_methods/whois.rb +36 -0
- data/lib/roebe/toplevel_methods/windows.rb +22 -0
- data/lib/roebe/toplevel_methods/wlan/bring_up_this_wlan_device.rb +51 -0
- data/lib/roebe/toplevel_methods/wlan/scan_for_wlan_spots.rb +39 -0
- data/lib/roebe/toplevel_methods/word_frequencies.rb +65 -0
- data/lib/roebe/toplevel_methods/write_what_into.rb +86 -0
- data/lib/roebe/toplevel_methods/xorg_buffer.rb +30 -0
- data/lib/roebe/toplevel_methods/zlib.rb +57 -0
- data/lib/roebe/urxvt/config +7 -0
- data/lib/roebe/validation/README.md +3 -0
- data/lib/roebe/validation/validate_roeberia_environment_variables.rb +120 -0
- data/lib/roebe/version/version.rb +54 -0
- data/lib/roebe/windows/bat/README.md +1 -0
- data/lib/roebe/windows/bat/compile_gtk_application_hello_world_example.bat +1 -0
- data/lib/roebe/windows/bat/screenCapture.bat +282 -0
- data/lib/roebe/windows/doskey.md +50452 -0
- data/lib/roebe/windows/misc.rb +40 -0
- data/lib/roebe/windows/popup_windows_message_box.rb +21 -0
- data/lib/roebe/windows/powershell.rb +341 -0
- data/lib/roebe/windows/usb_devices.rb +38 -0
- data/lib/roebe/www/1984/1984.cgi +98 -0
- data/lib/roebe/www/BIOS/BIOS.cgi +79 -0
- data/lib/roebe/www/GIS/GIS.cgi +192 -0
- data/lib/roebe/www/GhostBSD/GhostBSD.cgi +7 -0
- data/lib/roebe/www/GhostBSD/GhostBSD.rb +39 -0
- data/lib/roebe/www/GhostBSD/GhostBSD.sinatra +56 -0
- data/lib/roebe/www/HDMI/HDMI.cgi +34 -0
- data/lib/roebe/www/IntelliJ_IDEA/tutorial.cgi +82 -0
- data/lib/roebe/www/LATEX/LATEX.md +29 -0
- data/lib/roebe/www/LEDS/LEDS.cgi +7 -0
- data/lib/roebe/www/LEDS/LEDS.rb +201 -0
- data/lib/roebe/www/LEDS/LEDS.sinatra +58 -0
- data/lib/roebe/www/OLEDS/OLEDS.md +44 -0
- data/lib/roebe/www/PCR/PCR.cgi +106 -0
- data/lib/roebe/www/R/R.cgi +9 -0
- data/lib/roebe/www/R/R.rb +1492 -0
- data/lib/roebe/www/R/R.sinatra +58 -0
- data/lib/roebe/www/R/examples/boxplot_example.R +42 -0
- data/lib/roebe/www/R/functions/functions.R +104 -0
- data/lib/roebe/www/RAM/RAM.cgi +7 -0
- data/lib/roebe/www/RAM/RAM.rb +254 -0
- data/lib/roebe/www/RAM/RAM.sinatra +56 -0
- data/lib/roebe/www/REST/REST.md +12 -0
- data/lib/roebe/www/RNA/RNA.cgi +245 -0
- data/lib/roebe/www/SDL/SDL.cgi +7 -0
- data/lib/roebe/www/SDL/SDL.rb +710 -0
- data/lib/roebe/www/SDL/SDL.sinatra +56 -0
- data/lib/roebe/www/SQL/SQL.cgi +34 -0
- data/lib/roebe/www/T-mobile/vienna.md +2 -0
- data/lib/roebe/www/UNIX/UNIX.cgi +68 -0
- data/lib/roebe/www/X3D/X3D.cgi +7 -0
- data/lib/roebe/www/X3D/X3D.rb +46 -0
- data/lib/roebe/www/X3D/X3D.sinatra +56 -0
- data/lib/roebe/www/abwasch/abwasch.cgi +7 -0
- data/lib/roebe/www/abwasch/abwasch.rb +116 -0
- data/lib/roebe/www/abwasch/abwasch.sinatra +52 -0
- data/lib/roebe/www/adobe_acrobat_reader/content.md +7 -0
- data/lib/roebe/www/aging/aging.cgi +7 -0
- data/lib/roebe/www/aging/aging.rb +1322 -0
- data/lib/roebe/www/aging/aging.sinatra +56 -0
- data/lib/roebe/www/agrarm/303/244rkte/agrarm/303/244rkte.cgi +209 -0
- data/lib/roebe/www/aids/aids.cgi +7 -0
- data/lib/roebe/www/aids/aids.rb +240 -0
- data/lib/roebe/www/aids/aids.sinatra +56 -0
- data/lib/roebe/www/ajax/ajax.cgi +7 -0
- data/lib/roebe/www/ajax/ajax.rb +88 -0
- data/lib/roebe/www/ajax/ajax.sinatra +56 -0
- data/lib/roebe/www/algorithms/algorithms.cgi +7 -0
- data/lib/roebe/www/algorithms/algorithms.rb +262 -0
- data/lib/roebe/www/algorithms/algorithms.sinatra +56 -0
- data/lib/roebe/www/alkohole/alkohole.cgi +61 -0
- data/lib/roebe/www/allegro/allegro.cgi +7 -0
- data/lib/roebe/www/allegro/allegro.rb +396 -0
- data/lib/roebe/www/allegro/allegro.sinatra +56 -0
- data/lib/roebe/www/alsa/alsa.cgi +7 -0
- data/lib/roebe/www/alsa/alsa.rb +313 -0
- data/lib/roebe/www/alsa/alsa.sinatra +56 -0
- data/lib/roebe/www/amino_acids/amino_acids.cgi +7 -0
- data/lib/roebe/www/amino_acids/amino_acids.rb +34 -0
- data/lib/roebe/www/amino_acids/amino_acids.sinatra +56 -0
- data/lib/roebe/www/amusing_bits/fussball_zitate.cgi +7 -0
- data/lib/roebe/www/amusing_bits/fussball_zitate.rb +182 -0
- data/lib/roebe/www/amusing_bits/fussball_zitate.sinatra +56 -0
- data/lib/roebe/www/amusing_bits/george_bush/george_bush.cgi +7 -0
- data/lib/roebe/www/amusing_bits/george_bush/george_bush.rb +189 -0
- data/lib/roebe/www/amusing_bits/george_bush/george_bush.sinatra +56 -0
- data/lib/roebe/www/amusing_bits/lustige_menschen/lustige_menschen.cgi +7 -0
- data/lib/roebe/www/amusing_bits/lustige_menschen/lustige_menschen.rb +142 -0
- data/lib/roebe/www/amusing_bits/lustige_menschen/lustige_menschen.sinatra +56 -0
- data/lib/roebe/www/amusing_bits/lustige_tiere/lustige_tiere.cgi +9 -0
- data/lib/roebe/www/amusing_bits/lustige_tiere/lustige_tiere.rb +211 -0
- data/lib/roebe/www/amusing_bits/lustige_tiere/lustige_tiere.sinatra +56 -0
- data/lib/roebe/www/amusing_bits/the_iraq_war_and_other_wars/the_iraq_war_and_other_wars.cgi +7 -0
- data/lib/roebe/www/amusing_bits/the_iraq_war_and_other_wars/the_iraq_war_and_other_wars.rb +74 -0
- data/lib/roebe/www/amusing_bits/the_iraq_war_and_other_wars/the_iraq_war_and_other_wars.sinatra +56 -0
- data/lib/roebe/www/analytical_chemistry/content.md +2 -0
- data/lib/roebe/www/anthropology/anthropology.cgi +7 -0
- data/lib/roebe/www/anthropology/anthropology.rb +26 -0
- data/lib/roebe/www/anthropology/anthropology.sinatra +56 -0
- data/lib/roebe/www/antibiotics/antibiotics.cgi +68 -0
- data/lib/roebe/www/antibodies/antibodies.cgi +7 -0
- data/lib/roebe/www/antibodies/antibodies.rb +311 -0
- data/lib/roebe/www/antibodies/antibodies.sinatra +56 -0
- data/lib/roebe/www/ants/ants.cgi +7 -0
- data/lib/roebe/www/ants/ants.rb +150 -0
- data/lib/roebe/www/ants/ants.sinatra +56 -0
- data/lib/roebe/www/ants/news.md +90 -0
- data/lib/roebe/www/apache/apache.cgi +7 -0
- data/lib/roebe/www/apache/apache.rb +1164 -0
- data/lib/roebe/www/apache/apache.sinatra +56 -0
- data/lib/roebe/www/apache/configuration/add_handler.conf +26 -0
- data/lib/roebe/www/apache/configuration/add_type.conf +29 -0
- data/lib/roebe/www/apache/configuration/autogenerated_rewrite_rules.conf +66 -0
- data/lib/roebe/www/apache/configuration/document_root.conf +32 -0
- data/lib/roebe/www/apache/configuration/email.conf +8 -0
- data/lib/roebe/www/apache/configuration/error_log.conf +36 -0
- data/lib/roebe/www/apache/configuration/load_modules.conf +48 -0
- data/lib/roebe/www/apache/configuration/mime_module.conf +11 -0
- data/lib/roebe/www/apache/configuration/php.conf +22 -0
- data/lib/roebe/www/apache/configuration/proxy_html_module.conf +6 -0
- data/lib/roebe/www/apache/configuration/rewrite_rules.conf +137 -0
- data/lib/roebe/www/apache/configuration/ruby.conf +13 -0
- data/lib/roebe/www/apache/configuration/server_name.conf +10 -0
- data/lib/roebe/www/apache/configuration/server_root.conf +6 -0
- data/lib/roebe/www/apache/configuration/unixd_module.conf +22 -0
- data/lib/roebe/www/apoptose/apoptose.cgi +31 -0
- data/lib/roebe/www/apple/apple.cgi +7 -0
- data/lib/roebe/www/apple/apple.rb +237 -0
- data/lib/roebe/www/apple/apple.sinatra +56 -0
- data/lib/roebe/www/archaea/archaea.cgi +7 -0
- data/lib/roebe/www/archaea/archaea.rb +540 -0
- data/lib/roebe/www/archaea/archaea.sinatra +56 -0
- data/lib/roebe/www/arduino/arduino.cgi +7 -0
- data/lib/roebe/www/arduino/arduino.rb +275 -0
- data/lib/roebe/www/arduino/arduino.sinatra +56 -0
- data/lib/roebe/www/arduino/sketches/0001_blink.sketch +30 -0
- data/lib/roebe/www/ariolante_and_the_kitten/AriolanteAndTheKitten.rb +92 -0
- data/lib/roebe/www/ariolante_and_the_kitten/ariolante_and_the_kitten.cgi +7 -0
- data/lib/roebe/www/ariolante_and_the_kitten/ariolante_and_the_kitten.html +45455 -0
- data/lib/roebe/www/ariolante_and_the_kitten/ariolante_and_the_kitten.md +104 -0
- data/lib/roebe/www/ariolante_and_the_kitten/ariolante_and_the_kitten.rb +113 -0
- data/lib/roebe/www/ariolante_and_the_kitten/ariolante_and_the_kitten.sinatra +61 -0
- data/lib/roebe/www/armaturen/armaturen.cgi +7 -0
- data/lib/roebe/www/armaturen/armaturen.rb +93 -0
- data/lib/roebe/www/armaturen/armaturen.sinatra +56 -0
- data/lib/roebe/www/art/art.cgi +7 -0
- data/lib/roebe/www/art/art.rb +288 -0
- data/lib/roebe/www/art/art.sinatra +52 -0
- data/lib/roebe/www/artificial_intelligence/artificial_intelligence.cgi +7 -0
- data/lib/roebe/www/artificial_intelligence/artificial_intelligence.rb +589 -0
- data/lib/roebe/www/artificial_intelligence/artificial_intelligence.sinatra +56 -0
- data/lib/roebe/www/atomkraftwerke/atomkraftwerke.cgi +7 -0
- data/lib/roebe/www/atomkraftwerke/atomkraftwerke.rb +320 -0
- data/lib/roebe/www/atomkraftwerke/atomkraftwerke.sinatra +56 -0
- data/lib/roebe/www/audacity/audacity.cgi +29 -0
- data/lib/roebe/www/audio/audio.cgi +9 -0
- data/lib/roebe/www/audio/audio.rb +2747 -0
- data/lib/roebe/www/audio/audio.sinatra +56 -0
- data/lib/roebe/www/avisynth/avisynth.cgi +173 -0
- data/lib/roebe/www/bacteria/bacteria.cgi +7 -0
- data/lib/roebe/www/bacteria/bacteria.rb +41 -0
- data/lib/roebe/www/bacteria/bacteria.sinatra +56 -0
- data/lib/roebe/www/batterien/batterien.cgi +9 -0
- data/lib/roebe/www/batterien/batterien.rb +162 -0
- data/lib/roebe/www/batterien/batterien.sinatra +56 -0
- data/lib/roebe/www/beamte/beamte.cgi +7 -0
- data/lib/roebe/www/beamte/beamte.rb +19 -0
- data/lib/roebe/www/beamte/beamte.sinatra +56 -0
- data/lib/roebe/www/beauty/beauty.cgi +9 -0
- data/lib/roebe/www/beauty/beauty.rb +132 -0
- data/lib/roebe/www/beauty/beauty.sinatra +56 -0
- data/lib/roebe/www/best_voices/best_voices.cgi +7 -0
- data/lib/roebe/www/best_voices/best_voices.rb +71 -0
- data/lib/roebe/www/best_voices/best_voices.sinatra +56 -0
- data/lib/roebe/www/biobricks/biobricks.cgi +7 -0
- data/lib/roebe/www/biobricks/biobricks.rb +19 -0
- data/lib/roebe/www/biobricks/biobricks.sinatra +56 -0
- data/lib/roebe/www/biochemistry/biochemistry.cgi +7 -0
- data/lib/roebe/www/biochemistry/biochemistry.rb +403 -0
- data/lib/roebe/www/biochemistry/biochemistry.sinatra +56 -0
- data/lib/roebe/www/biochips/biochips.cgi +26 -0
- data/lib/roebe/www/bioinformatics/bioinformatics.cgi +11 -0
- data/lib/roebe/www/bioinformatics/bioinformatics.rb +416 -0
- data/lib/roebe/www/bioinformatics/bioinformatics.sinatra +56 -0
- data/lib/roebe/www/biology/biology.cgi +134 -0
- data/lib/roebe/www/biology/biology.md +19 -0
- data/lib/roebe/www/biomarkers/biomarkers.cgi +138 -0
- data/lib/roebe/www/biomaterials/biomaterials.cgi +7 -0
- data/lib/roebe/www/biomaterials/biomaterials.rb +349 -0
- data/lib/roebe/www/biomaterials/biomaterials.sinatra +56 -0
- data/lib/roebe/www/biotechnology/biotechnology.cgi +7 -0
- data/lib/roebe/www/biotechnology/biotechnology.rb +525 -0
- data/lib/roebe/www/biotechnology/biotechnology.sinatra +56 -0
- data/lib/roebe/www/blender3d/blender3d.cgi +7 -0
- data/lib/roebe/www/blender3d/blender3d.rb +265 -0
- data/lib/roebe/www/blender3d/blender3d.sinatra +56 -0
- data/lib/roebe/www/blog/blog.cgi +9 -0
- data/lib/roebe/www/blog/blog.rb +258 -0
- data/lib/roebe/www/blog/blog.sinatra +56 -0
- data/lib/roebe/www/bluefish/README.md +5 -0
- data/lib/roebe/www/bluefish/STD.bfproject +62 -0
- data/lib/roebe/www/bluefish/STD.bfproject~ +62 -0
- data/lib/roebe/www/bluefish/TODO.md +6 -0
- data/lib/roebe/www/bodenkunde/bodenkunde.cgi +128 -0
- data/lib/roebe/www/bsd/bsd.cgi +7 -0
- data/lib/roebe/www/bsd/bsd.rb +90 -0
- data/lib/roebe/www/bsd/bsd.sinatra +56 -0
- data/lib/roebe/www/calculator/calculator.cgi +7 -0
- data/lib/roebe/www/calculator/calculator.rb +15 -0
- data/lib/roebe/www/calculator/calculator.sinatra +56 -0
- data/lib/roebe/www/cameras/cameras.cgi +9 -0
- data/lib/roebe/www/cameras/cameras.rb +358 -0
- data/lib/roebe/www/cameras/cameras.sinatra +56 -0
- data/lib/roebe/www/cancer/cancer.cgi +7 -0
- data/lib/roebe/www/cancer/cancer.rb +270 -0
- data/lib/roebe/www/cancer/cancer.sinatra +56 -0
- data/lib/roebe/www/cassette/cassette.cgi +719 -0
- data/lib/roebe/www/cats/cats.cgi +7 -0
- data/lib/roebe/www/cats/cats.rb +310 -0
- data/lib/roebe/www/cats/cats.sinatra +56 -0
- data/lib/roebe/www/cell_cultures/cell_cultures.cgi +378 -0
- data/lib/roebe/www/cellbiology/cellbiology.cgi +7 -0
- data/lib/roebe/www/cellbiology/cellbiology.rb +1110 -0
- data/lib/roebe/www/cellbiology/cellbiology.sinatra +56 -0
- data/lib/roebe/www/cellulose/cellulose.cgi +7 -0
- data/lib/roebe/www/cellulose/cellulose.rb +28 -0
- data/lib/roebe/www/cellulose/cellulose.sinatra +56 -0
- data/lib/roebe/www/chemistry/chemistry.cgi +7 -0
- data/lib/roebe/www/chemistry/chemistry.rb +1961 -0
- data/lib/roebe/www/chemistry/chemistry.sinatra +58 -0
- data/lib/roebe/www/chromatography/content.md +2 -0
- data/lib/roebe/www/chrome_and_chromium/chrome_and_chromium.cgi +7 -0
- data/lib/roebe/www/chrome_and_chromium/chrome_and_chromium.rb +295 -0
- data/lib/roebe/www/chrome_and_chromium/chrome_and_chromium.sinatra +56 -0
- data/lib/roebe/www/cmake/CMakeTemplate.txt +48 -0
- data/lib/roebe/www/cmake/cmake.cgi +7 -0
- data/lib/roebe/www/cmake/cmake.rb +142 -0
- data/lib/roebe/www/cmake/cmake.sinatra +52 -0
- data/lib/roebe/www/codecs/codecs.cgi +94 -0
- data/lib/roebe/www/codepages/codepages.cgi +9 -0
- data/lib/roebe/www/codepages/codepages.rb +17 -0
- data/lib/roebe/www/codepages/codepages.sinatra +56 -0
- data/lib/roebe/www/cognitive_biology/cognitive_biology.cgi +805 -0
- data/lib/roebe/www/cognitive_biology/cognitive_biology.html +40634 -0
- data/lib/roebe/www/compact_disc/compact_disc.cgi +7 -0
- data/lib/roebe/www/compact_disc/compact_disc.rb +124 -0
- data/lib/roebe/www/compact_disc/compact_disc.sinatra +56 -0
- data/lib/roebe/www/compiling/compiling.cgi +9 -0
- data/lib/roebe/www/compiling/compiling.rb +2580 -0
- data/lib/roebe/www/compiling/compiling.sinatra +52 -0
- data/lib/roebe/www/componists/vivaldi.cgi +224 -0
- data/lib/roebe/www/computers/computers.cgi +107 -0
- data/lib/roebe/www/conference_talks/conference_talks.md +11 -0
- data/lib/roebe/www/conky/conky.cgi +7 -0
- data/lib/roebe/www/conky/conky.rb +132 -0
- data/lib/roebe/www/conky/conky.sinatra +56 -0
- data/lib/roebe/www/conky/my_conkyrc_04.02.2020 +83 -0
- data/lib/roebe/www/consumers/consumers.cgi +7 -0
- data/lib/roebe/www/consumers/consumers.rb +23 -0
- data/lib/roebe/www/consumers/consumers.sinatra +56 -0
- data/lib/roebe/www/covid19/covid19.cgi +10 -0
- data/lib/roebe/www/covid19/covid19.rb +2160 -0
- data/lib/roebe/www/covid19/covid19.sinatra +56 -0
- data/lib/roebe/www/creativity/creativity.cgi +9 -0
- data/lib/roebe/www/creativity/creativity.rb +40 -0
- data/lib/roebe/www/creativity/creativity.sinatra +56 -0
- data/lib/roebe/www/crispr/crispr.cgi +7 -0
- data/lib/roebe/www/crispr/crispr.rb +317 -0
- data/lib/roebe/www/crispr/crispr.sinatra +56 -0
- data/lib/roebe/www/cron/cron.cgi +7 -0
- data/lib/roebe/www/cron/cron.rb +99 -0
- data/lib/roebe/www/cron/cron.sinatra +56 -0
- data/lib/roebe/www/cyanobacteria/cyanobacteria.cgi +7 -0
- data/lib/roebe/www/cyanobacteria/cyanobacteria.rb +127 -0
- data/lib/roebe/www/cyanobacteria/cyanobacteria.sinatra +56 -0
- data/lib/roebe/www/cytogenetics/cytogenetics.cgi +7 -0
- data/lib/roebe/www/cytogenetics/cytogenetics.rb +41 -0
- data/lib/roebe/www/cytogenetics/cytogenetics.sinatra +56 -0
- data/lib/roebe/www/databases/databases.cgi +78 -0
- data/lib/roebe/www/databases/postgresql/postgresql.cgi +7 -0
- data/lib/roebe/www/databases/postgresql/postgresql.rb +323 -0
- data/lib/roebe/www/databases/postgresql/postgresql.sinatra +56 -0
- data/lib/roebe/www/databases/postgresql/psqlrc +22 -0
- data/lib/roebe/www/databases/sqlite/sqlite.cgi +7 -0
- data/lib/roebe/www/databases/sqlite/sqlite.rb +625 -0
- data/lib/roebe/www/databases/sqlite/sqlite.sinatra +56 -0
- data/lib/roebe/www/decibel/decibel.cgi +96 -0
- data/lib/roebe/www/designing/SLOGANS.md +3 -0
- data/lib/roebe/www/designing_and_art/designing_and_art.cgi +9 -0
- data/lib/roebe/www/designing_and_art/designing_and_art.rb +755 -0
- data/lib/roebe/www/designing_and_art/designing_and_art.sinatra +56 -0
- data/lib/roebe/www/designing_on_linux/designing_on_linux.cgi +7 -0
- data/lib/roebe/www/designing_on_linux/designing_on_linux.rb +66 -0
- data/lib/roebe/www/designing_on_linux/designing_on_linux.sinatra +56 -0
- data/lib/roebe/www/developmental_biology/developmental_biology.cgi +7 -0
- data/lib/roebe/www/developmental_biology/developmental_biology.rb +503 -0
- data/lib/roebe/www/developmental_biology/developmental_biology.sinatra +56 -0
- data/lib/roebe/www/die_erde/die_erde.cgi +7 -0
- data/lib/roebe/www/die_erde/die_erde.rb +45 -0
- data/lib/roebe/www/die_erde/die_erde.sinatra +56 -0
- data/lib/roebe/www/die_herrenlose_katze/die_herrenlose_katze.cgi +7 -0
- data/lib/roebe/www/die_herrenlose_katze/die_herrenlose_katze.html +41583 -0
- data/lib/roebe/www/die_herrenlose_katze/die_herrenlose_katze.rb +476 -0
- data/lib/roebe/www/die_herrenlose_katze/die_herrenlose_katze.sinatra +61 -0
- data/lib/roebe/www/die_katze_im_schnee/DieKatzeImSchnee.rb +80 -0
- data/lib/roebe/www/die_katze_im_schnee/die_katze_im_schnee.cgi +7 -0
- data/lib/roebe/www/die_katze_im_schnee/die_katze_im_schnee.html +41461 -0
- data/lib/roebe/www/die_katze_im_schnee/die_katze_im_schnee.md +185 -0
- data/lib/roebe/www/die_katze_im_schnee/die_katze_im_schnee.rb +111 -0
- data/lib/roebe/www/die_katze_im_schnee/die_katze_im_schnee.sinatra +61 -0
- data/lib/roebe/www/direct_democracy/direct_democracy.cgi +7 -0
- data/lib/roebe/www/direct_democracy/direct_democracy.rb +45 -0
- data/lib/roebe/www/direct_democracy/direct_democracy.sinatra +56 -0
- data/lib/roebe/www/distcc/distcc.cgi +7 -0
- data/lib/roebe/www/distcc/distcc.rb +78 -0
- data/lib/roebe/www/distcc/distcc.sinatra +56 -0
- data/lib/roebe/www/dna_repair_and_mutations/dna_repair_and_mutations.cgi +448 -0
- data/lib/roebe/www/dna_replication/DNA_replication.cgi +32 -0
- data/lib/roebe/www/documentation/README.md +3 -0
- data/lib/roebe/www/documentation/documentation.rb +98 -0
- data/lib/roebe/www/dolphin/add_to_vlc_playlist.desktop +12 -0
- data/lib/roebe/www/dosbox/autogenerated_dosbox.conf +776 -0
- data/lib/roebe/www/dosbox/dosbox.cgi +7 -0
- data/lib/roebe/www/dosbox/dosbox.rb +241 -0
- data/lib/roebe/www/dosbox/dosbox.sinatra +52 -0
- data/lib/roebe/www/dosboxx/dosboxx.cgi +74 -0
- data/lib/roebe/www/drucker/drucker.cgi +7 -0
- data/lib/roebe/www/drucker/drucker.rb +256 -0
- data/lib/roebe/www/drucker/drucker.sinatra +56 -0
- data/lib/roebe/www/economy/economy.cgi +7 -0
- data/lib/roebe/www/economy/economy.rb +16 -0
- data/lib/roebe/www/economy/economy.sinatra +56 -0
- data/lib/roebe/www/economy/mieten_und_wohnen.cgi +7 -0
- data/lib/roebe/www/economy/mieten_und_wohnen.rb +39 -0
- data/lib/roebe/www/economy/mieten_und_wohnen.sinatra +56 -0
- data/lib/roebe/www/elektrophorese/elektrophorese.cgi +277 -0
- data/lib/roebe/www/emacs/emacs.cgi +7 -0
- data/lib/roebe/www/emacs/emacs.rb +71 -0
- data/lib/roebe/www/emacs/emacs.sinatra +56 -0
- data/lib/roebe/www/embeddable_interface.rb +54 -0
- data/lib/roebe/www/encodings/encodings.cgi +7 -0
- data/lib/roebe/www/encodings/encodings.rb +80 -0
- data/lib/roebe/www/encodings/encodings.sinatra +56 -0
- data/lib/roebe/www/english/english.cgi +7 -0
- data/lib/roebe/www/english/english.rb +62 -0
- data/lib/roebe/www/english/english.sinatra +52 -0
- data/lib/roebe/www/enzymes/enzymes.cgi +53 -0
- data/lib/roebe/www/epigenetics/epigenetics.cgi +75 -0
- data/lib/roebe/www/erben/erben.cgi +7 -0
- data/lib/roebe/www/erben/erben.rb +45 -0
- data/lib/roebe/www/erben/erben.sinatra +56 -0
- data/lib/roebe/www/ern/303/244hrung/ern/303/244hrung.cgi +7 -0
- data/lib/roebe/www/ern/303/244hrung/ern/303/244hrung.rb +263 -0
- data/lib/roebe/www/ern/303/244hrung/ern/303/244hrung.sinatra +56 -0
- data/lib/roebe/www/erste_hilfe/erste_hilfe.cgi +186 -0
- data/lib/roebe/www/ethernet/ethernet.cgi +27 -0
- data/lib/roebe/www/ethik/ethik.md +4 -0
- data/lib/roebe/www/euphemismen_und_werturteile/euphemismen_und_werturteile.cgi +9 -0
- data/lib/roebe/www/euphemismen_und_werturteile/euphemismen_und_werturteile.rb +301 -0
- data/lib/roebe/www/euphemismen_und_werturteile/euphemismen_und_werturteile.sinatra +56 -0
- data/lib/roebe/www/evolution/evolution.cgi +7 -0
- data/lib/roebe/www/evolution/evolution.rb +454 -0
- data/lib/roebe/www/evolution/evolution.sinatra +52 -0
- data/lib/roebe/www/excel/excel.cgi +7 -0
- data/lib/roebe/www/excel/excel.rb +23 -0
- data/lib/roebe/www/excel/excel.sinatra +56 -0
- data/lib/roebe/www/festplatten/festplatten.cgi +7 -0
- data/lib/roebe/www/festplatten/festplatten.rb +839 -0
- data/lib/roebe/www/festplatten/festplatten.sinatra +56 -0
- data/lib/roebe/www/ffmpeg/ffmpeg.cgi +454 -0
- data/lib/roebe/www/fire/fire.cgi +9 -0
- data/lib/roebe/www/fire/fire.rb +803 -0
- data/lib/roebe/www/fire/fire.sinatra +56 -0
- data/lib/roebe/www/firefox/firefox.cgi +11 -0
- data/lib/roebe/www/firefox/firefox.rb +1317 -0
- data/lib/roebe/www/firefox/firefox.sinatra +56 -0
- data/lib/roebe/www/firefox/mozconfig +93 -0
- data/lib/roebe/www/flexible_foto_gallery/README.md +3 -0
- data/lib/roebe/www/flexible_foto_gallery/flexible_foto_gallery.cgi +64 -0
- data/lib/roebe/www/food/food.cgi +7 -0
- data/lib/roebe/www/food/food.rb +369 -0
- data/lib/roebe/www/food/food.sinatra +56 -0
- data/lib/roebe/www/fox/fox.cgi +7 -0
- data/lib/roebe/www/fox/fox.rb +890 -0
- data/lib/roebe/www/fox/fox.sinatra +56 -0
- data/lib/roebe/www/ftp/ftp.cgi +7 -0
- data/lib/roebe/www/ftp/ftp.rb +134 -0
- data/lib/roebe/www/ftp/ftp.sinatra +56 -0
- data/lib/roebe/www/funk/funk.cgi +7 -0
- data/lib/roebe/www/funk/funk.rb +385 -0
- data/lib/roebe/www/funk/funk.sinatra +56 -0
- data/lib/roebe/www/gedichte/gedichte.cgi +7 -0
- data/lib/roebe/www/gedichte/gedichte.rb +13 -0
- data/lib/roebe/www/gedichte/gedichte.sinatra +56 -0
- data/lib/roebe/www/gene_expression/SLOGANS.md +28 -0
- data/lib/roebe/www/gene_expression/gene_expression.cgi +7 -0
- data/lib/roebe/www/gene_expression/gene_expression.rb +209 -0
- data/lib/roebe/www/gene_therapy/06.08.2008_Human_gene_therapy_for_RPE65_isomerase_deficiency.md +29 -0
- data/lib/roebe/www/gene_therapy/28.11.2008_Gentherapie_am_Auge_erfolgreich.md +41 -0
- data/lib/roebe/www/gene_therapy/31.01.2000_Earlier_Gene_Test_Deaths_Not_Reported.md +62 -0
- data/lib/roebe/www/gene_therapy/SLOGANS.md +25 -0
- data/lib/roebe/www/genetic_diseases/genetic_diseases.cgi +142 -0
- data/lib/roebe/www/genetics/genetics.cgi +7 -0
- data/lib/roebe/www/genetics/genetics.rb +1447 -0
- data/lib/roebe/www/genetics/genetics.sinatra +52 -0
- data/lib/roebe/www/genomics/genomics.cgi +7 -0
- data/lib/roebe/www/genomics/genomics.rb +212 -0
- data/lib/roebe/www/genomics/genomics.sinatra +56 -0
- data/lib/roebe/www/geologie/geologie.cgi +156 -0
- data/lib/roebe/www/geometrie/geometrie.cgi +7 -0
- data/lib/roebe/www/geometrie/geometrie.rb +387 -0
- data/lib/roebe/www/geometrie/geometrie.sinatra +56 -0
- data/lib/roebe/www/gesundheit/diabetes/diabetes.cgi +7 -0
- data/lib/roebe/www/gesundheit/diabetes/diabetes.rb +71 -0
- data/lib/roebe/www/gesundheit/diabetes/diabetes.sinatra +56 -0
- data/lib/roebe/www/gesundheit/metabolic_syndrome/metabolic_syndrome.cgi +7 -0
- data/lib/roebe/www/gesundheit/metabolic_syndrome/metabolic_syndrome.rb +47 -0
- data/lib/roebe/www/gesundheit/metabolic_syndrome/metabolic_syndrome.sinatra +56 -0
- data/lib/roebe/www/gesundheit/myokarditis/myokarditis.cgi +7 -0
- data/lib/roebe/www/gesundheit/myokarditis/myokarditis.rb +113 -0
- data/lib/roebe/www/gesundheit/myokarditis/myokarditis.sinatra +56 -0
- data/lib/roebe/www/gimp/gimp.cgi +7 -0
- data/lib/roebe/www/gimp/gimp.rb +1519 -0
- data/lib/roebe/www/gimp/gimp.sinatra +56 -0
- data/lib/roebe/www/ginger_der_bandit/GingerDerBandit.rb +92 -0
- data/lib/roebe/www/ginger_der_bandit/ginger_der_bandit.cgi +7 -0
- data/lib/roebe/www/ginger_der_bandit/ginger_der_bandit.html +40757 -0
- data/lib/roebe/www/ginger_der_bandit/ginger_der_bandit.md +518 -0
- data/lib/roebe/www/ginger_der_bandit/ginger_der_bandit.rb +119 -0
- data/lib/roebe/www/ginger_der_bandit/ginger_der_bandit.sinatra +61 -0
- data/lib/roebe/www/git/git.cgi +7 -0
- data/lib/roebe/www/git/git.rb +264 -0
- data/lib/roebe/www/git/git.sinatra +52 -0
- data/lib/roebe/www/git/gitconfig +7 -0
- data/lib/roebe/www/gnuplot/force.dat +16 -0
- data/lib/roebe/www/gnuplot/gnuplot.cgi +7 -0
- data/lib/roebe/www/gnuplot/gnuplot.rb +431 -0
- data/lib/roebe/www/gnuplot/gnuplot.sinatra +56 -0
- data/lib/roebe/www/gnuplot/number_of_eukaryotic_genes.dat +25 -0
- data/lib/roebe/www/google/google.cgi +7 -0
- data/lib/roebe/www/google/google.rb +49 -0
- data/lib/roebe/www/google/google.sinatra +56 -0
- data/lib/roebe/www/graphviz/graphviz.cgi +7 -0
- data/lib/roebe/www/graphviz/graphviz.rb +196 -0
- data/lib/roebe/www/graphviz/graphviz.sinatra +56 -0
- data/lib/roebe/www/grub/README.md +1 -0
- data/lib/roebe/www/grub/grub.cgi +7 -0
- data/lib/roebe/www/grub/grub.rb +615 -0
- data/lib/roebe/www/grub/grub.sinatra +56 -0
- data/lib/roebe/www/grub/std_menu.lst +87 -0
- data/lib/roebe/www/haiku/haiku.cgi +9 -0
- data/lib/roebe/www/haiku/haiku.rb +73 -0
- data/lib/roebe/www/haiku/haiku.sinatra +56 -0
- data/lib/roebe/www/hardware/computersysteme/computersysteme.cgi +7 -0
- data/lib/roebe/www/hardware/computersysteme/computersysteme.rb +517 -0
- data/lib/roebe/www/hardware/computersysteme/computersysteme.sinatra +56 -0
- data/lib/roebe/www/hardware/heizk/303/266rper/heizk/303/266rper.cgi +7 -0
- data/lib/roebe/www/hardware/heizk/303/266rper/heizk/303/266rper.rb +62 -0
- data/lib/roebe/www/hardware/heizk/303/266rper/heizk/303/266rper.sinatra +56 -0
- data/lib/roebe/www/hardware/kabel_und_adaptoren/kabel_und_adaptoren.cgi +7 -0
- data/lib/roebe/www/hardware/kabel_und_adaptoren/kabel_und_adaptoren.rb +394 -0
- data/lib/roebe/www/hardware/kabel_und_adaptoren/kabel_und_adaptoren.sinatra +56 -0
- data/lib/roebe/www/hardware/schrauben_muttern_und_n/303/244gel/schrauben_muttern_und_n/303/244gel.cgi +7 -0
- data/lib/roebe/www/hardware/schrauben_muttern_und_n/303/244gel/schrauben_muttern_und_n/303/244gel.rb +100 -0
- data/lib/roebe/www/hardware/schrauben_muttern_und_n/303/244gel/schrauben_muttern_und_n/303/244gel.sinatra +56 -0
- data/lib/roebe/www/hardware_assembly/hardware_assembly.cgi +10 -0
- data/lib/roebe/www/hardware_assembly/hardware_assembly.rb +265 -0
- data/lib/roebe/www/hardware_assembly/hardware_assembly.sinatra +56 -0
- data/lib/roebe/www/heart/heart.cgi +7 -0
- data/lib/roebe/www/heart/heart.rb +53 -0
- data/lib/roebe/www/heart/heart.sinatra +56 -0
- data/lib/roebe/www/history/KNOWLEDGE_BITS.md +2 -0
- data/lib/roebe/www/history/yaml/scientific_history.yml +1 -0
- data/lib/roebe/www/hiveos/hiveos.cgi +9 -0
- data/lib/roebe/www/hiveos/hiveos.rb +836 -0
- data/lib/roebe/www/hiveos/hiveos.sinatra +56 -0
- data/lib/roebe/www/hormone/hormone.cgi +76 -0
- data/lib/roebe/www/htop/htop.md +1 -0
- data/lib/roebe/www/humans_are_funny/humans_are_funny.cgi +7 -0
- data/lib/roebe/www/humans_are_funny/humans_are_funny.rb +23 -0
- data/lib/roebe/www/humans_are_funny/humans_are_funny.sinatra +52 -0
- data/lib/roebe/www/h/303/244user/h/303/244user.cgi +7 -0
- data/lib/roebe/www/h/303/244user/h/303/244user.rb +115 -0
- data/lib/roebe/www/h/303/244user/h/303/244user.sinatra +56 -0
- data/lib/roebe/www/icewm/icewm.cgi +7 -0
- data/lib/roebe/www/icewm/icewm.rb +34 -0
- data/lib/roebe/www/icewm/icewm.sinatra +56 -0
- data/lib/roebe/www/icewm/keys +88 -0
- data/lib/roebe/www/icewm/menu_file +171 -0
- data/lib/roebe/www/icewm/preferences +1043 -0
- data/lib/roebe/www/icewm/programs +322 -0
- data/lib/roebe/www/icewm/theme +11 -0
- data/lib/roebe/www/icewm/toolbar +7 -0
- data/lib/roebe/www/icewm/winoptions +61 -0
- data/lib/roebe/www/ifpi_austria/ifpi_austria.cgi +7 -0
- data/lib/roebe/www/ifpi_austria/ifpi_austria.rb +351 -0
- data/lib/roebe/www/ifpi_austria/ifpi_austria.sinatra +56 -0
- data/lib/roebe/www/image_formats/image_formats.cgi +50 -0
- data/lib/roebe/www/imagemagick/README.md +45 -0
- data/lib/roebe/www/imagemagick/imagemagick.cgi +31 -0
- data/lib/roebe/www/images/images.cgi +26 -0
- data/lib/roebe/www/immunology/immunology.cgi +7 -0
- data/lib/roebe/www/immunology/immunology.rb +1527 -0
- data/lib/roebe/www/immunology/immunology.sinatra +56 -0
- data/lib/roebe/www/individual_page_viewer/individual_page_viewer.cgi +7 -0
- data/lib/roebe/www/individual_page_viewer/individual_page_viewer.rb +41 -0
- data/lib/roebe/www/individual_page_viewer/individual_page_viewer.sinatra +52 -0
- data/lib/roebe/www/industrial_chemistry/industrial_chemistry.cgi +50 -0
- data/lib/roebe/www/informatik/SLOGANS.md +13 -0
- data/lib/roebe/www/inhaltsverzeichnis/inhaltsverzeichnis.yml +65 -0
- data/lib/roebe/www/inkscape/inkscape.cgi +9 -0
- data/lib/roebe/www/inkscape/inkscape.rb +84 -0
- data/lib/roebe/www/inkscape/inkscape.sinatra +56 -0
- data/lib/roebe/www/inotify/inotify.cgi +39 -0
- data/lib/roebe/www/inspirational_people/inspirational_people.cgi +11 -0
- data/lib/roebe/www/inspirational_people/inspirational_people.rb +645 -0
- data/lib/roebe/www/inspirational_people/inspirational_people.sinatra +56 -0
- data/lib/roebe/www/interesting_linux_distributions/interesting_linux_distributions.md +71 -0
- data/lib/roebe/www/interviews/interviews.cgi +7 -0
- data/lib/roebe/www/interviews/interviews.rb +14 -0
- data/lib/roebe/www/interviews/interviews.sinatra +56 -0
- data/lib/roebe/www/irc/irc.cgi +7 -0
- data/lib/roebe/www/irc/irc.rb +41 -0
- data/lib/roebe/www/irc/irc.sinatra +56 -0
- data/lib/roebe/www/irc_quotes/irc_quotes.md +835 -0
- data/lib/roebe/www/jobs/jobs.cgi +9 -0
- data/lib/roebe/www/jobs/jobs.rb +100 -0
- data/lib/roebe/www/jobs/jobs.sinatra +56 -0
- data/lib/roebe/www/json/example1.json +18 -0
- data/lib/roebe/www/json/json.cgi +7 -0
- data/lib/roebe/www/json/json.rb +32 -0
- data/lib/roebe/www/json/json.sinatra +56 -0
- data/lib/roebe/www/jupyter/content.md +34 -0
- data/lib/roebe/www/kaizen/kaizen.cgi +7 -0
- data/lib/roebe/www/kaizen/kaizen.rb +15 -0
- data/lib/roebe/www/kaizen/kaizen.sinatra +56 -0
- data/lib/roebe/www/kde/DEPRECATED_kde.cgi +1266 -0
- data/lib/roebe/www/kde/kde.cgi +7 -0
- data/lib/roebe/www/kde/kde.rb +60 -0
- data/lib/roebe/www/kde/kde.sinatra +56 -0
- data/lib/roebe/www/kde/konsole_multiple_tabs +10 -0
- data/lib/roebe/www/kde/konsolerc +40 -0
- data/lib/roebe/www/kde/konsoleui.rc +65 -0
- data/lib/roebe/www/kde/yakuakerc +8 -0
- data/lib/roebe/www/klimabonus/klimabonus.md +11 -0
- data/lib/roebe/www/klimawandel/klimawandel.cgi +7 -0
- data/lib/roebe/www/klimawandel/klimawandel.rb +100 -0
- data/lib/roebe/www/klimawandel/klimawandel.sinatra +56 -0
- data/lib/roebe/www/kramdown_viewer/kramdown_viewer.cgi +51 -0
- data/lib/roebe/www/kriminelle_firmen/kriminelle_firmen.cgi +7 -0
- data/lib/roebe/www/kriminelle_firmen/kriminelle_firmen.rb +26 -0
- data/lib/roebe/www/kriminelle_firmen/kriminelle_firmen.sinatra +52 -0
- data/lib/roebe/www/krita/krita.cgi +7 -0
- data/lib/roebe/www/krita/krita.rb +53 -0
- data/lib/roebe/www/krita/krita.sinatra +56 -0
- data/lib/roebe/www/kryptografie/kryptografie.cgi +48 -0
- data/lib/roebe/www/k/303/244se/k/303/244se.cgi +9 -0
- data/lib/roebe/www/k/303/244se/k/303/244se.rb +137 -0
- data/lib/roebe/www/k/303/244se/k/303/244se.sinatra +56 -0
- data/lib/roebe/www/lame/lame.cgi +7 -0
- data/lib/roebe/www/lame/lame.rb +105 -0
- data/lib/roebe/www/lame/lame.sinatra +56 -0
- data/lib/roebe/www/languages/languages.cgi +7 -0
- data/lib/roebe/www/languages/languages.rb +66 -0
- data/lib/roebe/www/languages/languages.sinatra +52 -0
- data/lib/roebe/www/laser/laser.cgi +7 -0
- data/lib/roebe/www/laser/laser.rb +301 -0
- data/lib/roebe/www/laser/laser.sinatra +56 -0
- data/lib/roebe/www/latex/HelloWorld.tex +9 -0
- data/lib/roebe/www/latex/examples/misc/misc.aux +2 -0
- data/lib/roebe/www/latex/examples/misc/misc.log +87 -0
- data/lib/roebe/www/latex/examples/misc/misc.pdf +0 -0
- data/lib/roebe/www/latex/examples/misc/misc.tex +31 -0
- data/lib/roebe/www/latex/examples/numbered_list/numbered_list.tex +31 -0
- data/lib/roebe/www/latex/examples/simple_paragraph/simple_paragraph.tex +4 -0
- data/lib/roebe/www/latex/latex.cgi +7 -0
- data/lib/roebe/www/latex/latex.rb +105 -0
- data/lib/roebe/www/latex/latex.sinatra +56 -0
- data/lib/roebe/www/law/law.cgi +7 -0
- data/lib/roebe/www/law/law.rb +983 -0
- data/lib/roebe/www/law/law.sinatra +56 -0
- data/lib/roebe/www/lego/lego.cgi +7 -0
- data/lib/roebe/www/lego/lego.rb +53 -0
- data/lib/roebe/www/lego/lego.sinatra +52 -0
- data/lib/roebe/www/libreoffice/libreoffice.cgi +9 -0
- data/lib/roebe/www/libreoffice/libreoffice.rb +96 -0
- data/lib/roebe/www/libreoffice/libreoffice.sinatra +56 -0
- data/lib/roebe/www/libreoffice/macros/README.md +4 -0
- data/lib/roebe/www/libreoffice/macros/hello_world.macro +24 -0
- data/lib/roebe/www/libreoffice/macros/hello_world_in_python.py_macro +7 -0
- data/lib/roebe/www/libreoffice/misc/empty_libreoffice_document.docx +0 -0
- data/lib/roebe/www/libreoffice/misc/empty_libreoffice_document.odt +0 -0
- data/lib/roebe/www/libreoffice/misc/empty_libreoffice_presentation.odp +0 -0
- data/lib/roebe/www/libreoffice/misc/empty_libreoffice_spreadsheet.xls +1 -0
- data/lib/roebe/www/licht/licht.cgi +25 -0
- data/lib/roebe/www/light/light.cgi +27 -0
- data/lib/roebe/www/lighttpd/autogenerated_lighttpd.conf +428 -0
- data/lib/roebe/www/lighttpd/configuration/cgi.conf +21 -0
- data/lib/roebe/www/lighttpd/configuration/dir_listing.conf +15 -0
- data/lib/roebe/www/lighttpd/configuration/document_root.conf +11 -0
- data/lib/roebe/www/lighttpd/configuration/groupname.conf +9 -0
- data/lib/roebe/www/lighttpd/configuration/index.conf +29 -0
- data/lib/roebe/www/lighttpd/configuration/logfiles.conf +18 -0
- data/lib/roebe/www/lighttpd/configuration/mimetypes.conf +88 -0
- data/lib/roebe/www/lighttpd/configuration/modules.conf +75 -0
- data/lib/roebe/www/lighttpd/configuration/php.conf +11 -0
- data/lib/roebe/www/lighttpd/configuration/pid_file.conf +1 -0
- data/lib/roebe/www/lighttpd/configuration/port.conf +13 -0
- data/lib/roebe/www/lighttpd/configuration/redirects.conf +67 -0
- data/lib/roebe/www/lighttpd/configuration/status.conf +29 -0
- data/lib/roebe/www/lighttpd/configuration/upload.conf +5 -0
- data/lib/roebe/www/lighttpd/configuration/username.conf +4 -0
- data/lib/roebe/www/lighttpd/lighttpd.cgi +7 -0
- data/lib/roebe/www/lighttpd/lighttpd.rb +140 -0
- data/lib/roebe/www/lighttpd/lighttpd.sinatra +52 -0
- data/lib/roebe/www/lilo/lilo.cgi +9 -0
- data/lib/roebe/www/lilo/lilo.conf +71 -0
- data/lib/roebe/www/lilo/lilo.rb +114 -0
- data/lib/roebe/www/lilo/lilo.sinatra +56 -0
- data/lib/roebe/www/lilypond/lilypond.cgi +95 -0
- data/lib/roebe/www/linguistics/linguistics.cgi +25 -0
- data/lib/roebe/www/links/links.cgi +9 -0
- data/lib/roebe/www/links/links.rb +310 -0
- data/lib/roebe/www/links/links.sinatra +56 -0
- data/lib/roebe/www/linux/ICEWM/preferences +1476 -0
- data/lib/roebe/www/linux/KaOS/KaOS.cgi +37 -0
- data/lib/roebe/www/linux/MX-Linux/mxlinux.cgi +7 -0
- data/lib/roebe/www/linux/MX-Linux/mxlinux.rb +28 -0
- data/lib/roebe/www/linux/MX-Linux/mxlinux.sinatra +56 -0
- data/lib/roebe/www/linux/antiX/antiX.cgi +7 -0
- data/lib/roebe/www/linux/antiX/antiX.rb +42 -0
- data/lib/roebe/www/linux/antiX/antiX.sinatra +56 -0
- data/lib/roebe/www/linux/deepin/deepin.cgi +30 -0
- data/lib/roebe/www/linux/doc/how_to_shrink_the_home_partition.md +13 -0
- data/lib/roebe/www/linux/fedora/fedora.cgi +7 -0
- data/lib/roebe/www/linux/fedora/fedora.rb +44 -0
- data/lib/roebe/www/linux/fedora/fedora.sinatra +56 -0
- data/lib/roebe/www/linux/gobolinux/gobolinux.cgi +7 -0
- data/lib/roebe/www/linux/gobolinux/gobolinux.rb +1424 -0
- data/lib/roebe/www/linux/gobolinux/gobolinux.sinatra +56 -0
- data/lib/roebe/www/linux/linux.cgi +12 -0
- data/lib/roebe/www/linux/linux.rb +6268 -0
- data/lib/roebe/www/linux/linux.sinatra +56 -0
- data/lib/roebe/www/linux/manjaro/content.md +7 -0
- data/lib/roebe/www/linux/mxlinux +1 -0
- data/lib/roebe/www/linux/neptune/neptune.cgi +54 -0
- data/lib/roebe/www/linux/resources/Xdefaults +180 -0
- data/lib/roebe/www/linux/slackware/slackware.cgi +7 -0
- data/lib/roebe/www/linux/slackware/slackware.rb +150 -0
- data/lib/roebe/www/linux/slackware/slackware.sinatra +56 -0
- data/lib/roebe/www/linux/sparky_linux/specification.md +19 -0
- data/lib/roebe/www/linux/ubuntu/ubuntu.cgi +7 -0
- data/lib/roebe/www/linux/ubuntu/ubuntu.rb +144 -0
- data/lib/roebe/www/linux/ubuntu/ubuntu.sinatra +56 -0
- data/lib/roebe/www/linux/void/void.cgi +7 -0
- data/lib/roebe/www/linux/void/void.rb +56 -0
- data/lib/roebe/www/linux/void/void.sinatra +56 -0
- data/lib/roebe/www/linux_certifications/linux_certifications.cgi +7 -0
- data/lib/roebe/www/linux_certifications/linux_certifications.rb +15 -0
- data/lib/roebe/www/linux_certifications/linux_certifications.sinatra +56 -0
- data/lib/roebe/www/linux_commands/linux_commands.cgi +7 -0
- data/lib/roebe/www/linux_commands/linux_commands.rb +5224 -0
- data/lib/roebe/www/linux_commands/linux_commands.sinatra +56 -0
- data/lib/roebe/www/linux_distributions/README.md +3 -0
- data/lib/roebe/www/linux_distributions/linux_distributions.cgi +9 -0
- data/lib/roebe/www/linux_distributions/linux_distributions.rb +2215 -0
- data/lib/roebe/www/linux_distributions/linux_distributions.sinatra +56 -0
- data/lib/roebe/www/linuxmint/linuxmint.cgi +7 -0
- data/lib/roebe/www/linuxmint/linuxmint.rb +58 -0
- data/lib/roebe/www/linuxmint/linuxmint.sinatra +56 -0
- data/lib/roebe/www/llvm/llvm.cgi +7 -0
- data/lib/roebe/www/llvm/llvm.rb +38 -0
- data/lib/roebe/www/llvm/llvm.sinatra +56 -0
- data/lib/roebe/www/luft/luft.cgi +7 -0
- data/lib/roebe/www/luft/luft.rb +15 -0
- data/lib/roebe/www/luft/luft.sinatra +52 -0
- data/lib/roebe/www/luft/luft_english.md +96 -0
- data/lib/roebe/www/luft/luft_german.md +117 -0
- data/lib/roebe/www/lyrics/lyrics.cgi +7 -0
- data/lib/roebe/www/lyrics/lyrics.rb +48 -0
- data/lib/roebe/www/lyrics/lyrics.sinatra +56 -0
- data/lib/roebe/www/m4/m4.cgi +7 -0
- data/lib/roebe/www/m4/m4.rb +24 -0
- data/lib/roebe/www/m4/m4.sinatra +56 -0
- data/lib/roebe/www/mageia/mageia.cgi +7 -0
- data/lib/roebe/www/mageia/mageia.rb +104 -0
- data/lib/roebe/www/mageia/mageia.sinatra +56 -0
- data/lib/roebe/www/make/make.cgi +7 -0
- data/lib/roebe/www/make/make.rb +216 -0
- data/lib/roebe/www/make/make.sinatra +56 -0
- data/lib/roebe/www/markdown/cheat_sheet.md +17 -0
- data/lib/roebe/www/markdown/example.md +232 -0
- data/lib/roebe/www/marketing/marketing.cgi +7 -0
- data/lib/roebe/www/marketing/marketing.rb +94 -0
- data/lib/roebe/www/marketing/marketing.sinatra +56 -0
- data/lib/roebe/www/mars/mars.cgi +7 -0
- data/lib/roebe/www/mars/mars.rb +51 -0
- data/lib/roebe/www/mars/mars.sinatra +52 -0
- data/lib/roebe/www/mate_desktop/mate_desktop.cgi +40 -0
- data/lib/roebe/www/mathematics/bin/303/244rsystem/bin/303/244rsystem.cgi +158 -0
- data/lib/roebe/www/mathematics/common.rb +16 -0
- data/lib/roebe/www/mathematics/funktionen/funktion.cgi +81 -0
- data/lib/roebe/www/mathematics/logarithmus/logarithmus.cgi +76 -0
- data/lib/roebe/www/mathematics/mathematics.cgi +7 -0
- data/lib/roebe/www/mathematics/mathematics.rb +1276 -0
- data/lib/roebe/www/mathematics/mathematics.sinatra +52 -0
- data/lib/roebe/www/matlab/matlab.cgi +31 -0
- data/lib/roebe/www/md5sum/md5sum.cgi +33 -0
- data/lib/roebe/www/meson/meson.cgi +7 -0
- data/lib/roebe/www/meson/meson.rb +57 -0
- data/lib/roebe/www/meson/meson.sinatra +56 -0
- data/lib/roebe/www/metabolic_pathways/metabolic_pathways.cgi +9 -0
- data/lib/roebe/www/metabolic_pathways/metabolic_pathways.rb +243 -0
- data/lib/roebe/www/metabolic_pathways/metabolic_pathways.sinatra +56 -0
- data/lib/roebe/www/meteorologie/meteorologie.cgi +547 -0
- data/lib/roebe/www/microbial_ecology/microbial_ecology.cgi +33 -0
- data/lib/roebe/www/microbial_interactions/microbial_interactions.cgi +163 -0
- data/lib/roebe/www/microbiology/microbiology.cgi +7 -0
- data/lib/roebe/www/microbiology/microbiology.rb +1136 -0
- data/lib/roebe/www/microbiology/microbiology.sinatra +56 -0
- data/lib/roebe/www/microphones/microphones.cgi +7 -0
- data/lib/roebe/www/microphones/microphones.rb +53 -0
- data/lib/roebe/www/microphones/microphones.sinatra +56 -0
- data/lib/roebe/www/microscopy/microscopy.cgi +7 -0
- data/lib/roebe/www/microscopy/microscopy.rb +289 -0
- data/lib/roebe/www/microscopy/microscopy.sinatra +56 -0
- data/lib/roebe/www/microsoft/how_to_compile_from_source_on_windows/how_to_compile_from_source_on_windows.cgi +7 -0
- data/lib/roebe/www/microsoft/how_to_compile_from_source_on_windows/how_to_compile_from_source_on_windows.rb +85 -0
- data/lib/roebe/www/microsoft/how_to_compile_from_source_on_windows/how_to_compile_from_source_on_windows.sinatra +56 -0
- data/lib/roebe/www/microsoft/microsoft.cgi +11 -0
- data/lib/roebe/www/microsoft/microsoft.rb +2354 -0
- data/lib/roebe/www/microsoft/microsoft.sinatra +56 -0
- data/lib/roebe/www/midi/al_adagi.mid +0 -0
- data/lib/roebe/www/mikrobielle_physiologie/mikrobielle_physiologie.cgi +7 -0
- data/lib/roebe/www/mikrobielle_physiologie/mikrobielle_physiologie.rb +1055 -0
- data/lib/roebe/www/mikrobielle_physiologie/mikrobielle_physiologie.sinatra +56 -0
- data/lib/roebe/www/military/military.cgi +7 -0
- data/lib/roebe/www/military/military.rb +23 -0
- data/lib/roebe/www/military/military.sinatra +56 -0
- data/lib/roebe/www/misc/blutgruppen.md +26 -0
- data/lib/roebe/www/mitochondria/mitochondria.cgi +56 -0
- data/lib/roebe/www/module_www.rb +184 -0
- data/lib/roebe/www/molecular_simulations/molecular_simulations.cgi +30 -0
- data/lib/roebe/www/molecular_therapies/molecular_therapies.cgi +7 -0
- data/lib/roebe/www/molecular_therapies/molecular_therapies.rb +169 -0
- data/lib/roebe/www/molecular_therapies/molecular_therapies.sinatra +56 -0
- data/lib/roebe/www/mpv/hints.md +4 -0
- data/lib/roebe/www/mrxvt/mrxvtrc +424 -0
- data/lib/roebe/www/multimedia_and_law/multimedia_and_law.cgi +7 -0
- data/lib/roebe/www/multimedia_and_law/multimedia_and_law.rb +118 -0
- data/lib/roebe/www/multimedia_and_law/multimedia_and_law.sinatra +56 -0
- data/lib/roebe/www/mysql/mysql.cgi +7 -0
- data/lib/roebe/www/mysql/mysql.rb +544 -0
- data/lib/roebe/www/mysql/mysql.sinatra +52 -0
- data/lib/roebe/www/nano/nano.cgi +100 -0
- data/lib/roebe/www/nanotechnology/nanotechnology.cgi +7 -0
- data/lib/roebe/www/nanotechnology/nanotechnology.rb +173 -0
- data/lib/roebe/www/nanotechnology/nanotechnology.sinatra +56 -0
- data/lib/roebe/www/nato/nato.cgi +7 -0
- data/lib/roebe/www/nato/nato.rb +35 -0
- data/lib/roebe/www/nato/nato.sinatra +52 -0
- data/lib/roebe/www/naturschutz/naturschutz.cgi +1463 -0
- data/lib/roebe/www/netbsd/netbsd.cgi +7 -0
- data/lib/roebe/www/netbsd/netbsd.rb +27 -0
- data/lib/roebe/www/netbsd/netbsd.sinatra +52 -0
- data/lib/roebe/www/networking_on_linux/networking_on_linux.cgi +7 -0
- data/lib/roebe/www/networking_on_linux/networking_on_linux.rb +1652 -0
- data/lib/roebe/www/networking_on_linux/networking_on_linux.sinatra +56 -0
- data/lib/roebe/www/neuroanatomie/neuroanatomie.cgi +98 -0
- data/lib/roebe/www/neurobiology/neurobiology.cgi +7 -0
- data/lib/roebe/www/neurobiology/neurobiology.rb +355 -0
- data/lib/roebe/www/neurobiology/neurobiology.sinatra +56 -0
- data/lib/roebe/www/news/news.cgi +7 -0
- data/lib/roebe/www/news/news.rb +20 -0
- data/lib/roebe/www/news/news.sinatra +56 -0
- data/lib/roebe/www/news/news_content.md +2798 -0
- data/lib/roebe/www/nginx/nginx.cgi +7 -0
- data/lib/roebe/www/nginx/nginx.rb +18 -0
- data/lib/roebe/www/nginx/nginx.sinatra +56 -0
- data/lib/roebe/www/nim/nim.cgi +7 -0
- data/lib/roebe/www/nim/nim.rb +77 -0
- data/lib/roebe/www/nim/nim.sinatra +56 -0
- data/lib/roebe/www/nocturnal_hunt/nocturnal_hunt.cgi +7 -0
- data/lib/roebe/www/nocturnal_hunt/nocturnal_hunt.rb +458 -0
- data/lib/roebe/www/nocturnal_hunt/nocturnal_hunt.sinatra +61 -0
- data/lib/roebe/www/node/snippets.md +15 -0
- data/lib/roebe/www/nosql/nosql.cgi +7 -0
- data/lib/roebe/www/nosql/nosql.rb +23 -0
- data/lib/roebe/www/nosql/nosql.sinatra +52 -0
- data/lib/roebe/www/ntfs/ntfs.cgi +7 -0
- data/lib/roebe/www/ntfs/ntfs.rb +41 -0
- data/lib/roebe/www/ntfs/ntfs.sinatra +56 -0
- data/lib/roebe/www/obst/obst.cgi +45 -0
- data/lib/roebe/www/ogre3d/ogre3d.cgi +7 -0
- data/lib/roebe/www/ogre3d/ogre3d.rb +247 -0
- data/lib/roebe/www/ogre3d/ogre3d.sinatra +56 -0
- data/lib/roebe/www/openbsd/openbsd.cgi +7 -0
- data/lib/roebe/www/openbsd/openbsd.rb +28 -0
- data/lib/roebe/www/openbsd/openbsd.sinatra +56 -0
- data/lib/roebe/www/opengl/opengl.cgi +9 -0
- data/lib/roebe/www/opengl/opengl.rb +193 -0
- data/lib/roebe/www/opengl/opengl.sinatra +56 -0
- data/lib/roebe/www/openssl/openssl.cgi +7 -0
- data/lib/roebe/www/openssl/openssl.rb +142 -0
- data/lib/roebe/www/openssl/openssl.sinatra +56 -0
- data/lib/roebe/www/opensuse/opensuse.cgi +24 -0
- data/lib/roebe/www/opera/opera.cgi +7 -0
- data/lib/roebe/www/opera/opera.rb +38 -0
- data/lib/roebe/www/opera/opera.sinatra +56 -0
- data/lib/roebe/www/operating_systems/operating_systems.cgi +43 -0
- data/lib/roebe/www/optical_character_recognition/optical_character_recognition.cgi +7 -0
- data/lib/roebe/www/optical_character_recognition/optical_character_recognition.rb +85 -0
- data/lib/roebe/www/optical_character_recognition/optical_character_recognition.sinatra +56 -0
- data/lib/roebe/www/organic_chemistry/organic_chemistry.cgi +33 -0
- data/lib/roebe/www/organic_chemistry/organic_chemistry.md +16 -0
- data/lib/roebe/www/our_solar_system/our_solar_system.cgi +7 -0
- data/lib/roebe/www/our_solar_system/our_solar_system.rb +448 -0
- data/lib/roebe/www/our_solar_system/our_solar_system.sinatra +56 -0
- data/lib/roebe/www/packaging_on_linux/packaging_on_linux.cgi +7 -0
- data/lib/roebe/www/packaging_on_linux/packaging_on_linux.rb +394 -0
- data/lib/roebe/www/packaging_on_linux/packaging_on_linux.sinatra +56 -0
- data/lib/roebe/www/palemoon/palemoon.cgi +7 -0
- data/lib/roebe/www/palemoon/palemoon.rb +111 -0
- data/lib/roebe/www/palemoon/palemoon.sinatra +56 -0
- data/lib/roebe/www/paradise_island/paradise_island.cgi +9 -0
- data/lib/roebe/www/paradise_island/paradise_island.rb +449 -0
- data/lib/roebe/www/paradise_island/paradise_island.sinatra +56 -0
- data/lib/roebe/www/patente/patente.cgi +7 -0
- data/lib/roebe/www/patente/patente.rb +58 -0
- data/lib/roebe/www/patente/patente.sinatra +56 -0
- data/lib/roebe/www/pathologie/content.md +1 -0
- data/lib/roebe/www/pathologie/pathologie.cgi +52 -0
- data/lib/roebe/www/pathologie/vokabelliste.yml +1284 -0
- data/lib/roebe/www/pdf/pdf.cgi +7 -0
- data/lib/roebe/www/pdf/pdf.rb +129 -0
- data/lib/roebe/www/pdf/pdf.sinatra +56 -0
- data/lib/roebe/www/pekwm/autoproperties +219 -0
- data/lib/roebe/www/pekwm/config +72 -0
- data/lib/roebe/www/pekwm/keys +301 -0
- data/lib/roebe/www/pekwm/menu +97 -0
- data/lib/roebe/www/pekwm/mouse +141 -0
- data/lib/roebe/www/pekwm/start +18 -0
- data/lib/roebe/www/pekwm/vars +2 -0
- data/lib/roebe/www/phages/phages.cgi +117 -0
- data/lib/roebe/www/pharmacy/content.md +5 -0
- data/lib/roebe/www/phones_and_mobile_phones/phones_and_mobile_phones.cgi +7 -0
- data/lib/roebe/www/phones_and_mobile_phones/phones_and_mobile_phones.rb +66 -0
- data/lib/roebe/www/phones_and_mobile_phones/phones_and_mobile_phones.sinatra +56 -0
- data/lib/roebe/www/photosynthesis/photosynthesis.cgi +7 -0
- data/lib/roebe/www/photosynthesis/photosynthesis.rb +55 -0
- data/lib/roebe/www/photosynthesis/photosynthesis.sinatra +56 -0
- data/lib/roebe/www/physics/physics.cgi +7 -0
- data/lib/roebe/www/physics/physics.rb +348 -0
- data/lib/roebe/www/physics/physics.sinatra +56 -0
- data/lib/roebe/www/physiology/physiology.cgi +7 -0
- data/lib/roebe/www/physiology/physiology.rb +373 -0
- data/lib/roebe/www/physiology/physiology.sinatra +56 -0
- data/lib/roebe/www/pidgin/pidgin.cgi +7 -0
- data/lib/roebe/www/pidgin/pidgin.rb +28 -0
- data/lib/roebe/www/pidgin/pidgin.sinatra +56 -0
- data/lib/roebe/www/pilze/pilze.cgi +276 -0
- data/lib/roebe/www/plants/plants.cgi +7 -0
- data/lib/roebe/www/plants/plants.rb +78 -0
- data/lib/roebe/www/plants/plants.sinatra +56 -0
- data/lib/roebe/www/play_songs/play_songs.cgi +100 -0
- data/lib/roebe/www/play_this_video_file/play_this_video_file.cgi +103 -0
- data/lib/roebe/www/politics/politics.cgi +7 -0
- data/lib/roebe/www/politics/politics.rb +24 -0
- data/lib/roebe/www/politics/politics.sinatra +56 -0
- data/lib/roebe/www/politics/yaml/wahlbeteiligung_wien.yml +6 -0
- data/lib/roebe/www/porg/main.m +26 -0
- data/lib/roebe/www/porg/porg.cgi +7 -0
- data/lib/roebe/www/porg/porg.rb +14 -0
- data/lib/roebe/www/porg/porg.sinatra +56 -0
- data/lib/roebe/www/porg/rpaco_base.h +19 -0
- data/lib/roebe/www/porg/rpaco_base.m +20 -0
- data/lib/roebe/www/povray/povray.cgi +7 -0
- data/lib/roebe/www/povray/povray.rb +289 -0
- data/lib/roebe/www/povray/povray.sinatra +56 -0
- data/lib/roebe/www/povray/povray_files/sphere_and_lights.pov +14 -0
- data/lib/roebe/www/povray/povray_files/sphere_and_lights_test.pov +28 -0
- data/lib/roebe/www/powershell/powershell.cgi +7 -0
- data/lib/roebe/www/powershell/powershell.rb +31 -0
- data/lib/roebe/www/powershell/powershell.sinatra +56 -0
- data/lib/roebe/www/preise/preise.cgi +47 -0
- data/lib/roebe/www/preisvergleiche/preisvergleiche.cgi +7 -0
- data/lib/roebe/www/preisvergleiche/preisvergleiche.rb +53 -0
- data/lib/roebe/www/preisvergleiche/preisvergleiche.sinatra +56 -0
- data/lib/roebe/www/presentations/fuzzy_words_versus_action_words.md +9 -0
- data/lib/roebe/www/presentations/presentations.cgi +7 -0
- data/lib/roebe/www/presentations/presentations.rb +103 -0
- data/lib/roebe/www/presentations/presentations.sinatra +52 -0
- data/lib/roebe/www/presentations/useful_words.md +16 -0
- data/lib/roebe/www/problems_of_the_european_union/problems_of_the_european_union.cgi +7 -0
- data/lib/roebe/www/problems_of_the_european_union/problems_of_the_european_union.rb +457 -0
- data/lib/roebe/www/problems_of_the_european_union/problems_of_the_european_union.sinatra +52 -0
- data/lib/roebe/www/programming_advice/programming_advice.yml +31 -0
- data/lib/roebe/www/programming_bible/programming_bible.cgi +7 -0
- data/lib/roebe/www/programming_bible/programming_bible.rb +32 -0
- data/lib/roebe/www/programming_bible/programming_bible.sinatra +56 -0
- data/lib/roebe/www/programming_languages/javascript/javascript.cgi +10 -0
- data/lib/roebe/www/programming_languages/javascript/javascript.rb +312 -0
- data/lib/roebe/www/programming_languages/javascript/javascript.sinatra +56 -0
- data/lib/roebe/www/project_management/project_management.cgi +7 -0
- data/lib/roebe/www/project_management/project_management.rb +327 -0
- data/lib/roebe/www/project_management/project_management.sinatra +56 -0
- data/lib/roebe/www/prokaryotic_evolution/prokaryotic_evolution.cgi +267 -0
- data/lib/roebe/www/propaganda/propaganda.cgi +7 -0
- data/lib/roebe/www/propaganda/propaganda.rb +30 -0
- data/lib/roebe/www/propaganda/propaganda.sinatra +56 -0
- data/lib/roebe/www/protein_engineering/protein_engineering.cgi +5 -0
- data/lib/roebe/www/protein_engineering/protein_engineering.rb +725 -0
- data/lib/roebe/www/protein_engineering/protein_engineering.sinatra +56 -0
- data/lib/roebe/www/proteins/proteins.cgi +7 -0
- data/lib/roebe/www/proteins/proteins.rb +32 -0
- data/lib/roebe/www/proteins/proteins.sinatra +56 -0
- data/lib/roebe/www/protisten/protisten.cgi +72 -0
- data/lib/roebe/www/psychologie/psychologie.cgi +7 -0
- data/lib/roebe/www/psychologie/psychologie.rb +233 -0
- data/lib/roebe/www/psychologie/psychologie.sinatra +56 -0
- data/lib/roebe/www/publishing_scientific_papers/useful_phrases_and_tips_for_publishing_scientific_papers.md +259 -0
- data/lib/roebe/www/pulseaudio/pulseaudio.cgi +7 -0
- data/lib/roebe/www/pulseaudio/pulseaudio.rb +166 -0
- data/lib/roebe/www/pulseaudio/pulseaudio.sinatra +56 -0
- data/lib/roebe/www/qemu/content.md +5 -0
- data/lib/roebe/www/qualit/303/244tsmanagement/qualit/303/244tsmanagement.cgi +7 -0
- data/lib/roebe/www/qualit/303/244tsmanagement/qualit/303/244tsmanagement.rb +423 -0
- data/lib/roebe/www/qualit/303/244tsmanagement/qualit/303/244tsmanagement.sinatra +56 -0
- data/lib/roebe/www/quotes/quotes.cgi +7 -0
- data/lib/roebe/www/quotes/quotes.rb +603 -0
- data/lib/roebe/www/quotes/quotes.sinatra +52 -0
- data/lib/roebe/www/radiation/content.md +3 -0
- data/lib/roebe/www/radio/radio.cgi +54 -0
- data/lib/roebe/www/radioactivity/radioactivity.cgi +36 -0
- data/lib/roebe/www/ratpoison/ratpoisonrc +62 -0
- data/lib/roebe/www/reactos/reactos.cgi +9 -0
- data/lib/roebe/www/reactos/reactos.rb +95 -0
- data/lib/roebe/www/reactos/reactos.sinatra +56 -0
- data/lib/roebe/www/recursion/recursion.md +41 -0
- data/lib/roebe/www/restriktionsenzyme/restriktionsenzyme.cgi +7 -0
- data/lib/roebe/www/restriktionsenzyme/restriktionsenzyme.rb +96 -0
- data/lib/roebe/www/restriktionsenzyme/restriktionsenzyme.sinatra +56 -0
- data/lib/roebe/www/rfid/rfid.cgi +7 -0
- data/lib/roebe/www/rfid/rfid.rb +956 -0
- data/lib/roebe/www/rfid/rfid.sinatra +56 -0
- data/lib/roebe/www/rhetorics/rhetorics.md +15 -0
- data/lib/roebe/www/rhythmbox/rhythmbox.cgi +122 -0
- data/lib/roebe/www/rna +1 -0
- data/lib/roebe/www/robots/robots.cgi +9 -0
- data/lib/roebe/www/robots/robots.rb +24 -0
- data/lib/roebe/www/robots/robots.sinatra +56 -0
- data/lib/roebe/www/routers/routers.cgi +7 -0
- data/lib/roebe/www/routers/routers.rb +46 -0
- data/lib/roebe/www/routers/routers.sinatra +56 -0
- data/lib/roebe/www/ruby_viewer/ruby_viewer.cgi +7 -0
- data/lib/roebe/www/ruby_viewer/ruby_viewer.rb +51 -0
- data/lib/roebe/www/ruby_viewer/ruby_viewer.sinatra +56 -0
- data/lib/roebe/www/scanner/scanner.cgi +9 -0
- data/lib/roebe/www/scanner/scanner.rb +194 -0
- data/lib/roebe/www/scanner/scanner.sinatra +56 -0
- data/lib/roebe/www/science/URL_to_different_scientific_articles.md +12 -0
- data/lib/roebe/www/science/science.cgi +7 -0
- data/lib/roebe/www/science/science.rb +1806 -0
- data/lib/roebe/www/science/science.sinatra +56 -0
- data/lib/roebe/www/security/security.cgi +7 -0
- data/lib/roebe/www/security/security.rb +381 -0
- data/lib/roebe/www/security/security.sinatra +56 -0
- data/lib/roebe/www/sed/sed_script_remove_colours.sed +1 -0
- data/lib/roebe/www/shells/shells.cgi +7 -0
- data/lib/roebe/www/shells/shells.rb +258 -0
- data/lib/roebe/www/shells/shells.sinatra +56 -0
- data/lib/roebe/www/shops/shops.cgi +7 -0
- data/lib/roebe/www/shops/shops.rb +26 -0
- data/lib/roebe/www/shops/shops.sinatra +56 -0
- data/lib/roebe/www/signal_transduction/signal_transduction.cgi +93 -0
- data/lib/roebe/www/simpsons/simpsons.cgi +7 -0
- data/lib/roebe/www/simpsons/simpsons.rb +24 -0
- data/lib/roebe/www/simpsons/simpsons.sinatra +56 -0
- data/lib/roebe/www/smoking/smoking.cgi +26 -0
- data/lib/roebe/www/sociology/content.md +26 -0
- data/lib/roebe/www/socken/socken.cgi +7 -0
- data/lib/roebe/www/socken/socken.rb +25 -0
- data/lib/roebe/www/socken/socken.sinatra +56 -0
- data/lib/roebe/www/solarzellen/solarzellen.cgi +7 -0
- data/lib/roebe/www/solarzellen/solarzellen.rb +13 -0
- data/lib/roebe/www/solarzellen/solarzellen.sinatra +56 -0
- data/lib/roebe/www/sound_theory/sound_theory.cgi +163 -0
- data/lib/roebe/www/space_exploration/space_exploration.cgi +7 -0
- data/lib/roebe/www/space_exploration/space_exploration.rb +31 -0
- data/lib/roebe/www/space_exploration/space_exploration.sinatra +56 -0
- data/lib/roebe/www/sprechanlagen/sprechanlagen.cgi +34 -0
- data/lib/roebe/www/statistik/statistik.cgi +7 -0
- data/lib/roebe/www/statistik/statistik.rb +939 -0
- data/lib/roebe/www/statistik/statistik.sinatra +56 -0
- data/lib/roebe/www/std_linux.rb +95 -0
- data/lib/roebe/www/stem_cells/stem_cells.cgi +219 -0
- data/lib/roebe/www/strom/strom.cgi +7 -0
- data/lib/roebe/www/strom/strom.rb +152 -0
- data/lib/roebe/www/strom/strom.sinatra +56 -0
- data/lib/roebe/www/structural_biology/structural_biology.cgi +65 -0
- data/lib/roebe/www/sudoers/sudoers +43 -0
- data/lib/roebe/www/svg/svg.cgi +7 -0
- data/lib/roebe/www/svg/svg.rb +47 -0
- data/lib/roebe/www/svg/svg.sinatra +56 -0
- data/lib/roebe/www/synthetic_biology/synthetic_biology.cgi +7 -0
- data/lib/roebe/www/synthetic_biology/synthetic_biology.rb +234 -0
- data/lib/roebe/www/synthetic_biology/synthetic_biology.sinatra +56 -0
- data/lib/roebe/www/systemd/systemd.cgi +9 -0
- data/lib/roebe/www/systemd/systemd.rb +61 -0
- data/lib/roebe/www/systemd/systemd.sinatra +56 -0
- data/lib/roebe/www/tales_from_the_crypt/tales_from_the_crypt.html +71 -0
- data/lib/roebe/www/techniques_and_methods_in_molecular_biology/techniques_and_methods_in_molecular_biology.cgi +7 -0
- data/lib/roebe/www/techniques_and_methods_in_molecular_biology/techniques_and_methods_in_molecular_biology.rb +287 -0
- data/lib/roebe/www/techniques_and_methods_in_molecular_biology/techniques_and_methods_in_molecular_biology.sinatra +56 -0
- data/lib/roebe/www/telnet/telnet.cgi +64 -0
- data/lib/roebe/www/terminals/lilyterm.md +8 -0
- data/lib/roebe/www/terminals/terminals.cgi +7 -0
- data/lib/roebe/www/terminals/terminals.rb +125 -0
- data/lib/roebe/www/terminals/terminals.sinatra +56 -0
- data/lib/roebe/www/test/README.md +1 -0
- data/lib/roebe/www/test/database.sql +0 -0
- data/lib/roebe/www/test/test.cgi +38 -0
- data/lib/roebe/www/the_linux_kernel/the_linux_kernel.cgi +11 -0
- data/lib/roebe/www/the_linux_kernel/the_linux_kernel.rb +1660 -0
- data/lib/roebe/www/the_linux_kernel/the_linux_kernel.sinatra +56 -0
- data/lib/roebe/www/the_universe/the_universe.cgi +34 -0
- data/lib/roebe/www/theoretische_informatik/theoretische_informatik.cgi +35 -0
- data/lib/roebe/www/thermodynamik/thermodynamik.cgi +32 -0
- data/lib/roebe/www/thinking_methods/thinking_methods.cgi +7 -0
- data/lib/roebe/www/thinking_methods/thinking_methods.rb +144 -0
- data/lib/roebe/www/thinking_methods/thinking_methods.sinatra +56 -0
- data/lib/roebe/www/thunderbird/thunderbird.cgi +7 -0
- data/lib/roebe/www/thunderbird/thunderbird.rb +70 -0
- data/lib/roebe/www/thunderbird/thunderbird.sinatra +56 -0
- data/lib/roebe/www/tierzucht/tierzucht.cgi +723 -0
- data/lib/roebe/www/time/time.cgi +7 -0
- data/lib/roebe/www/time/time.rb +82 -0
- data/lib/roebe/www/time/time.sinatra +56 -0
- data/lib/roebe/www/tmux/tmux.cgi +7 -0
- data/lib/roebe/www/tmux/tmux.rb +74 -0
- data/lib/roebe/www/tmux/tmux.sinatra +56 -0
- data/lib/roebe/www/toxikologie/toxikologie.cgi +7 -0
- data/lib/roebe/www/toxikologie/toxikologie.rb +553 -0
- data/lib/roebe/www/toxikologie/toxikologie.sinatra +56 -0
- data/lib/roebe/www/trac/trac.cgi +7 -0
- data/lib/roebe/www/trac/trac.rb +46 -0
- data/lib/roebe/www/trac/trac.sinatra +56 -0
- data/lib/roebe/www/training/training.cgi +7 -0
- data/lib/roebe/www/training/training.rb +281 -0
- data/lib/roebe/www/training/training.sinatra +52 -0
- data/lib/roebe/www/transcription/transcription.cgi +7 -0
- data/lib/roebe/www/transcription/transcription.rb +163 -0
- data/lib/roebe/www/transcription/transcription.sinatra +56 -0
- data/lib/roebe/www/tv/tv.cgi +182 -0
- data/lib/roebe/www/udev/udev.cgi +7 -0
- data/lib/roebe/www/udev/udev.rb +128 -0
- data/lib/roebe/www/udev/udev.sinatra +56 -0
- data/lib/roebe/www/unicode/unicode.cgi +28 -0
- data/lib/roebe/www/unionfs/unionfs.cgi +8 -0
- data/lib/roebe/www/unionfs/unionfs.rb +325 -0
- data/lib/roebe/www/unionfs/unionfs.sinatra +56 -0
- data/lib/roebe/www/usb/usb.cgi +7 -0
- data/lib/roebe/www/usb/usb.rb +807 -0
- data/lib/roebe/www/usb/usb.sinatra +52 -0
- data/lib/roebe/www/vaccines/vaccines.cgi +70 -0
- data/lib/roebe/www/vectors/vectors.cgi +7 -0
- data/lib/roebe/www/vectors/vectors.rb +90 -0
- data/lib/roebe/www/vectors/vectors.sinatra +56 -0
- data/lib/roebe/www/verfahrenstechnik/verfahrenstechnik.cgi +62 -0
- data/lib/roebe/www/video/video.cgi +7 -0
- data/lib/roebe/www/video/video.rb +7723 -0
- data/lib/roebe/www/video/video.sinatra +52 -0
- data/lib/roebe/www/view_via_pre_tag/README.md +2 -0
- data/lib/roebe/www/view_via_pre_tag/view_via_pre_tag.cgi +26 -0
- data/lib/roebe/www/vim/aliases/vim_aliases.yml +487 -0
- data/lib/roebe/www/vim/autocmds/vim_autocmds +50 -0
- data/lib/roebe/www/vim/colours/desert.vim +105 -0
- data/lib/roebe/www/vim/colours/golden.vim +72 -0
- data/lib/roebe/www/vim/colours/sienna.vim +47 -0
- data/lib/roebe/www/vim/colours/softblue.vim +45 -0
- data/lib/roebe/www/vim/colours/zenburn.vim +135 -0
- data/lib/roebe/www/vim/functions/functions +185 -0
- data/lib/roebe/www/vim/mappings/mappings.md +372 -0
- data/lib/roebe/www/vim/matrix/matrix.vim +316 -0
- data/lib/roebe/www/vim/tetris/tetris.vim +331 -0
- data/lib/roebe/www/vim/vim.cgi +7 -0
- data/lib/roebe/www/vim/vim.rb +856 -0
- data/lib/roebe/www/vim/vim.sinatra +52 -0
- data/lib/roebe/www/vim/vimrc/vimrc +332 -0
- data/lib/roebe/www/virology/virology.cgi +7 -0
- data/lib/roebe/www/virology/virology.rb +603 -0
- data/lib/roebe/www/virology/virology.sinatra +56 -0
- data/lib/roebe/www/virtual_reality/virtual_reality.cgi +7 -0
- data/lib/roebe/www/virtual_reality/virtual_reality.rb +184 -0
- data/lib/roebe/www/virtual_reality/virtual_reality.sinatra +52 -0
- data/lib/roebe/www/visual_studio/visual_studio.cgi +7 -0
- data/lib/roebe/www/visual_studio/visual_studio.rb +38 -0
- data/lib/roebe/www/visual_studio/visual_studio.sinatra +56 -0
- data/lib/roebe/www/visualization/content.md +2 -0
- data/lib/roebe/www/vitamines/vitamines.cgi +11 -0
- data/lib/roebe/www/vitamines/vitamines.rb +138 -0
- data/lib/roebe/www/vitamines/vitamines.sinatra +56 -0
- data/lib/roebe/www/vivaldi/vivaldi.cgi +27 -0
- data/lib/roebe/www/vlc/vlc.cgi +32 -0
- data/lib/roebe/www/vnc/vnc.cgi +7 -0
- data/lib/roebe/www/vnc/vnc.rb +28 -0
- data/lib/roebe/www/vnc/vnc.sinatra +56 -0
- data/lib/roebe/www/voice_recorders/voice_recorders.cgi +7 -0
- data/lib/roebe/www/voice_recorders/voice_recorders.rb +48 -0
- data/lib/roebe/www/voice_recorders/voice_recorders.sinatra +52 -0
- data/lib/roebe/www/waagen/waagen.cgi +36 -0
- data/lib/roebe/www/wahrscheinlichkeit/wahrscheinlichkeit.cgi +7 -0
- data/lib/roebe/www/wahrscheinlichkeit/wahrscheinlichkeit.rb +270 -0
- data/lib/roebe/www/wahrscheinlichkeit/wahrscheinlichkeit.sinatra +56 -0
- data/lib/roebe/www/war_in_Ukraine_2022/war_in_Ukraine_2022.cgi +7 -0
- data/lib/roebe/www/war_in_Ukraine_2022/war_in_Ukraine_2022.rb +251 -0
- data/lib/roebe/www/war_in_Ukraine_2022/war_in_Ukraine_2022.sinatra +56 -0
- data/lib/roebe/www/waschmaschinen/waschmaschinen.cgi +7 -0
- data/lib/roebe/www/waschmaschinen/waschmaschinen.rb +168 -0
- data/lib/roebe/www/waschmaschinen/waschmaschinen.sinatra +52 -0
- data/lib/roebe/www/wayland/wayland.cgi +25 -0
- data/lib/roebe/www/webserving/webserving.cgi +7 -0
- data/lib/roebe/www/webserving/webserving.rb +905 -0
- data/lib/roebe/www/webserving/webserving.sinatra +52 -0
- data/lib/roebe/www/weechat/weechat.cgi +7 -0
- data/lib/roebe/www/weechat/weechat.rb +166 -0
- data/lib/roebe/www/weechat/weechat.sinatra +52 -0
- data/lib/roebe/www/wein/wein.cgi +7 -0
- data/lib/roebe/www/wein/wein.rb +41 -0
- data/lib/roebe/www/wein/wein.sinatra +56 -0
- data/lib/roebe/www/wget/wgetrc +124 -0
- data/lib/roebe/www/why_linux/why_linux.cgi +7 -0
- data/lib/roebe/www/why_linux/why_linux.rb +317 -0
- data/lib/roebe/www/why_linux/why_linux.sinatra +56 -0
- data/lib/roebe/www/wikis/wikis.cgi +7 -0
- data/lib/roebe/www/wikis/wikis.rb +18 -0
- data/lib/roebe/www/wikis/wikis.sinatra +56 -0
- data/lib/roebe/www/wine/wine.cgi +7 -0
- data/lib/roebe/www/wine/wine.rb +323 -0
- data/lib/roebe/www/wine/wine.sinatra +52 -0
- data/lib/roebe/www/wine/wine_config +69 -0
- data/lib/roebe/www/wings3d/data/House_Villa.wings +0 -0
- data/lib/roebe/www/wings3d/wings3d.cgi +7 -0
- data/lib/roebe/www/wings3d/wings3d.rb +64 -0
- data/lib/roebe/www/wings3d/wings3d.sinatra +56 -0
- data/lib/roebe/www/witze/witze.cgi +9 -0
- data/lib/roebe/www/witze/witze.rb +1054 -0
- data/lib/roebe/www/witze/witze.sinatra +56 -0
- data/lib/roebe/www/wlan/wlan.cgi +9 -0
- data/lib/roebe/www/wlan/wlan.rb +778 -0
- data/lib/roebe/www/wlan/wlan.sinatra +56 -0
- data/lib/roebe/www/wlan/wpa_supplicant.conf +57 -0
- data/lib/roebe/www/working_from_home/working_from_home.md +60 -0
- data/lib/roebe/www/world_health_organization/world_health_organization.cgi +7 -0
- data/lib/roebe/www/world_health_organization/world_health_organization.rb +68 -0
- data/lib/roebe/www/world_health_organization/world_health_organization.sinatra +56 -0
- data/lib/roebe/www/xampp/xampp.cgi +7 -0
- data/lib/roebe/www/xampp/xampp.rb +126 -0
- data/lib/roebe/www/xampp/xampp.sinatra +56 -0
- data/lib/roebe/www/xchat/xchat.cgi +7 -0
- data/lib/roebe/www/xchat/xchat.rb +146 -0
- data/lib/roebe/www/xchat/xchat.sinatra +56 -0
- data/lib/roebe/www/xfce/xfce.cgi +31 -0
- data/lib/roebe/www/xmas/xmas.cgi +7 -0
- data/lib/roebe/www/xmas/xmas.rb +521 -0
- data/lib/roebe/www/xmas/xmas.sinatra +56 -0
- data/lib/roebe/www/xorg/xorg.cgi +9 -0
- data/lib/roebe/www/xorg/xorg.rb +2912 -0
- data/lib/roebe/www/xorg/xorg.sinatra +56 -0
- data/lib/roebe/www/xournalpp/content.md +12 -0
- data/lib/roebe/www/yeast/yeast.cgi +7 -0
- data/lib/roebe/www/yeast/yeast.rb +147 -0
- data/lib/roebe/www/yeast/yeast.sinatra +56 -0
- data/lib/roebe/www/zenity/zenity.cgi +7 -0
- data/lib/roebe/www/zenity/zenity.rb +208 -0
- data/lib/roebe/www/zenity/zenity.sinatra +56 -0
- data/lib/roebe/www/zitieren/example.md +10 -0
- data/lib/roebe/www/zitieren/wie_zitiert_man_in_der_Wissenschaft_richtig.md +261 -0
- data/lib/roebe/www/zoologie/zoologie.cgi +7 -0
- data/lib/roebe/www/zoologie/zoologie.gtk +150 -0
- data/lib/roebe/www/zoologie/zoologie.rb +280 -0
- data/lib/roebe/www/zoologie/zoologie.sinatra +56 -0
- data/lib/roebe/www/zoom/zoom.cgi +7 -0
- data/lib/roebe/www/zoom/zoom.rb +55 -0
- data/lib/roebe/www/zoom/zoom.sinatra +56 -0
- data/lib/roebe/www/zsh/zshrc +360 -0
- data/lib/roebe/xml/catalog +29 -0
- data/lib/roebe/yaml/advertisement_servers/advertisement_servers.yml +18 -0
- data/lib/roebe/yaml/autogenerate_these_rewrite_rules/autogenerate_these_rewrite_rules.yml +131 -0
- data/lib/roebe/yaml/autostart_these_programs.yml +22 -0
- data/lib/roebe/yaml/bezirke_in_wien/bezirke_in_wien.yml +29 -0
- data/lib/roebe/yaml/binary_to_hexadecimal/binary_to_hexadecimal.csv +17 -0
- data/lib/roebe/yaml/bin/303/244re_einheiten/bin/303/244re_einheiten.yml +9 -0
- data/lib/roebe/yaml/books/favourite_books.yml +15 -0
- data/lib/roebe/yaml/boot_settings/boot_settings.yml +53 -0
- data/lib/roebe/yaml/browser.yml +1 -0
- data/lib/roebe/yaml/compile/compile.yml +262 -0
- data/lib/roebe/yaml/current_ruby_versions.yml +12 -0
- data/lib/roebe/yaml/directory_structure.yml +121 -0
- data/lib/roebe/yaml/display_settings/display_settings.yml +184 -0
- data/lib/roebe/yaml/e_kennzeichnungen/e_kennzeichnungen.yml +101 -0
- data/lib/roebe/yaml/english_letter_frequency/english_letter_frequency.yml +30 -0
- data/lib/roebe/yaml/error_codes/error_codes.yml +342 -0
- data/lib/roebe/yaml/escape_codes/escape_codes.yml +12 -0
- data/lib/roebe/yaml/examples/README.md +4 -0
- data/lib/roebe/yaml/examples/c_headers_creator.yml +10 -0
- data/lib/roebe/yaml/examples/constant.yml +4 -0
- data/lib/roebe/yaml/examples/fixnum.yml +1 -0
- data/lib/roebe/yaml/examples/hash_example.yml +42 -0
- data/lib/roebe/yaml/examples/ruby_keywords.yml +43 -0
- data/lib/roebe/yaml/examples/symbols.yml +3 -0
- data/lib/roebe/yaml/examples/test.yml +9 -0
- data/lib/roebe/yaml/examples/tree.yml +8 -0
- data/lib/roebe/yaml/famous_bboys/famous_bboys.yml +14 -0
- data/lib/roebe/yaml/file_information.yml +34 -0
- data/lib/roebe/yaml/fonts/fonts.yml +33 -0
- data/lib/roebe/yaml/forbidden_IPs/forbidden_IPs.yml +2 -0
- data/lib/roebe/yaml/fstab/fstab.yml +122 -0
- data/lib/roebe/yaml/funstuff/am/303/274sante_deutsche_w/303/266rter.yml +2 -0
- data/lib/roebe/yaml/gnome/gnome.yml +8 -0
- data/lib/roebe/yaml/holidays/holidays.yml +24 -0
- data/lib/roebe/yaml/http_status_codes/http_status_codes.yml +52 -0
- data/lib/roebe/yaml/individual_environment_variables/cflags.yml +59 -0
- data/lib/roebe/yaml/individual_environment_variables/lang.yml +75 -0
- data/lib/roebe/yaml/individual_environment_variables/ldflags.yml +2 -0
- data/lib/roebe/yaml/individual_environment_variables/term.yml +14 -0
- data/lib/roebe/yaml/ip_suffix/ip_suffix.yml +22 -0
- data/lib/roebe/yaml/irc/irc.yml +11 -0
- data/lib/roebe/yaml/kde/kde.yml +54 -0
- data/lib/roebe/yaml/kernel/kernel.yml +11 -0
- data/lib/roebe/yaml/kernel_config/kernel_config.yml +79 -0
- data/lib/roebe/yaml/linux_kernel_settings.yml +11 -0
- data/lib/roebe/yaml/ls_colors.yml +17 -0
- data/lib/roebe/yaml/main_avi.yml +1 -0
- data/lib/roebe/yaml/main_editor.yml +1 -0
- data/lib/roebe/yaml/main_jpg.yml +1 -0
- data/lib/roebe/yaml/main_pdf.yml +1 -0
- data/lib/roebe/yaml/main_png.yml +1 -0
- data/lib/roebe/yaml/mark_this_directory.yml +1 -0
- data/lib/roebe/yaml/mime/mime.yml +615 -0
- data/lib/roebe/yaml/mime_types.yml +37 -0
- data/lib/roebe/yaml/monitors/monitors.yml +127 -0
- data/lib/roebe/yaml/n_people_in_these_countries.yml +31 -0
- data/lib/roebe/yaml/name_for_the_wireless_interface.yml +1 -0
- data/lib/roebe/yaml/pdf/pdf1.yml +1 -0
- data/lib/roebe/yaml/pdf/pdf2.yml +1 -0
- data/lib/roebe/yaml/pdf/pdf3.yml +1 -0
- data/lib/roebe/yaml/pdf/pdf4.yml +1 -0
- data/lib/roebe/yaml/pdf/pdf5.yml +1 -0
- data/lib/roebe/yaml/pdf/pdf6.yml +1 -0
- data/lib/roebe/yaml/pdf/pdf7.yml +1 -0
- data/lib/roebe/yaml/pdf/pdf8.yml +1 -0
- data/lib/roebe/yaml/pdf/pdf9.yml +1 -0
- data/lib/roebe/yaml/peoples_age.yml +6 -0
- data/lib/roebe/yaml/ports/ports.yml +50 -0
- data/lib/roebe/yaml/posix_character_classes.yml +13 -0
- data/lib/roebe/yaml/project_base_directory.yml +0 -0
- data/lib/roebe/yaml/rufnummern_in_/303/266sterreich/rufnummern_in_/303/266sterreich.yml +5 -0
- data/lib/roebe/yaml/size_of_countries.yml +197 -0
- data/lib/roebe/yaml/statistics/statistics.yml +17 -0
- data/lib/roebe/yaml/sternzeichen/sternzeichen.yml +16 -0
- data/lib/roebe/yaml/system/system.yml +80 -0
- data/lib/roebe/yaml/temperature_of_the_planets_in_our_solar_system/temperature_of_the_planets_in_our_solar_system.yml +22 -0
- data/lib/roebe/yaml/test/README.md +4 -0
- data/lib/roebe/yaml/test/umlaute.yml +2 -0
- data/lib/roebe/yaml/the_beginning_of_linux/the_beginning_of_linux.yml +29 -0
- data/lib/roebe/yaml/use_colours.yml +1 -0
- data/lib/roebe/yaml/world_capitals/world_capitals.yml +204 -0
- data/lib/roebe/yaml/world_geography_and_people/world_geography_and_people.yml +25 -0
- data/lib/roebe.rb +7 -0
- data/roebe.gemspec +104 -0
- data/test/active_record/testing +0 -0
- data/test/active_record/testing_active_record.rb +25 -0
- data/test/comparison_example/comparison_example.rb +34 -0
- data/test/hello_world/hello_world.rb +1 -0
- data/test/misc/README.md +2 -0
- data/test/misc/arity_example.rb +44 -0
- data/test/misc/display_the_shell_colours.rb +48 -0
- data/test/misc/fetch_a_specific_key_from_a_hash.rb +26 -0
- data/test/misc/fork_example.rb +15 -0
- data/test/misc/hello_world.rb +1 -0
- data/test/misc/heredoc_example.rb +9 -0
- data/test/misc/hooks/README.md +3 -0
- data/test/misc/hooks/test_inherited_hook.rb +13 -0
- data/test/misc/minimal_irc_bot/minimal_irc_bot.rb +33 -0
- data/test/misc/name_of_this_script.rb +12 -0
- data/test/misc/read_keypresses.rb +79 -0
- data/test/misc/readline/README.md +1 -0
- data/test/misc/readline/completion_for_a_static_list.rb +33 -0
- data/test/misc/readline/simple_readline_example.rb +14 -0
- data/test/misc/simple_sigint_example.rb +51 -0
- data/test/misc/simple_user_input_via_stdin_or_Readline_example.rb +14 -0
- data/test/misc/tcp_socket_example.rb +28 -0
- data/test/misc/tracer.rb +39 -0
- data/test/misc/with_border.rb +22 -0
- data/test/testing_cat.rb +3 -0
- data/test/testing_class_configuration/testing_class_configuration.rb +81 -0
- data/test/testing_core_functionality_of_ruby/README.md +6 -0
- data/test/testing_core_functionality_of_ruby/file_test.rb +1 -0
- data/test/testing_core_functionality_of_ruby/verbose_file_copy.rb +5 -0
- data/test/testing_google_url_cleaner.rb +25 -0
- data/test/testing_http_status_codes.rb +13 -0
- data/test/testing_identical.rb +17 -0
- data/test/testing_move_file.rb +14 -0
- data/test/testing_permission_ascii_format.rb +23 -0
- data/test/testing_sql_paradise.rb +17 -0
- data/test/testing_the_roebe_shell.rb +31 -0
- data/test/testing_twentyfour_hours_notation.rb +37 -0
- data/test/testing_zenity.rb +26 -0
- metadata +3031 -0
@@ -0,0 +1,1969 @@
|
|
1
|
+
|
2
|
+
|
3
|
+
|
4
|
+
|
5
|
+
|
6
|
+
|
7
|
+
|
8
|
+
|
9
|
+
|
10
|
+
|
11
|
+
|
12
|
+
|
13
|
+
|
14
|
+
|
15
|
+
|
16
|
+
|
17
|
+
|
18
|
+
|
19
|
+
|
20
|
+
|
21
|
+
|
22
|
+
|
23
|
+
|
24
|
+
|
25
|
+
|
26
|
+
|
27
|
+
|
28
|
+
|
29
|
+
|
30
|
+
Dies ist mein Tutorial, wie man Ruby <b>embedded</b>, also mit
|
31
|
+
C Programmen verknüpft.
|
32
|
+
|
33
|
+
Ein Vorteil des "Embedding" ist der immense
|
34
|
+
<b class="darkblue FI">Geschwindigkeitsgewinn</b>.
|
35
|
+
|
36
|
+
Meine Beispiele hierzu findet man unter:
|
37
|
+
|
38
|
+
cd $RSRC/C
|
39
|
+
|
40
|
+
_
|
41
|
+
|
42
|
+
## Wie überprüfe ich, in Ruby-MRB, ob ein String Objekt
|
43
|
+
frozen ist?
|
44
|
+
!MRB_FROZEN_P(mrb->exc)) {
|
45
|
+
|
46
|
+
Man kann auch recht einfach bestehende .rb Dateien
|
47
|
+
in Ruby-C (um)schreiben.
|
48
|
+
|
49
|
+
Dir Initialisierung (also der Beginn) geht via:
|
50
|
+
|
51
|
+
ruby_init()','BO
|
52
|
+
|
53
|
+
Dabei wird der <b>Ruby Interpreter</b> initialisiert.
|
54
|
+
|
55
|
+
ruby_init_loadpath()
|
56
|
+
|
57
|
+
ist sehr wichtig wenn man Module laden will, denn sie
|
58
|
+
initialisiert
|
59
|
+
|
60
|
+
die <b class="BO">$LOAD_PATH Variable</b>.
|
61
|
+
|
62
|
+
Sie enthält auch den Ort von <b>site_ruby</b>.
|
63
|
+
|
64
|
+
<b>ruby_script(name</b> ist einfach, denn diese Funktion
|
65
|
+
weist den Namen des Ruby Scripts an die $0 variable.
|
66
|
+
|
67
|
+
Abfragen gehen zum Beispiel so:
|
68
|
+
|
69
|
+
if $0 != "embed"
|
70
|
+
|
71
|
+
Fehlt dies, so <b></b>wird $0 der false Wert zugewiesen</b>.
|
72
|
+
|
73
|
+
Klingt ein wenig chaotisch?
|
74
|
+
|
75
|
+
Nun gut - bringen wir ein wenig Ordnung in dieses Chaos.
|
76
|
+
|
77
|
+
# ===================================================================== #
|
78
|
+
# === Ruby QTrue tag (true tag)
|
79
|
+
# ===================================================================== #
|
80
|
+
## Ruby True',HEADER_CSS,'true',HEADER_BORDER
|
81
|
+
VALUE some_function(VALUE mod)
|
82
|
+
{
|
83
|
+
return Qtrue;
|
84
|
+
}
|
85
|
+
|
86
|
+
# ===================================================================== #
|
87
|
+
# === Define alias in Ruby C. alias tag.
|
88
|
+
# ===================================================================== #
|
89
|
+
## Ruby Aliases in C',HEADER_CSS, HEADER_BORDER,
|
90
|
+
'rb_define_alias
|
91
|
+
|
92
|
+
Dies geht via <b>rb_define_alias</b>, wobei der
|
93
|
+
erste Name der AliasName ist:
|
94
|
+
|
95
|
+
rb_define_alias(klass, name1, name2);
|
96
|
+
rb_define_alias(cJukebox, "a", "add");
|
97
|
+
rb_define_alias(cJukebox, "d", "delete");
|
98
|
+
|
99
|
+
(Das gehört zum Beispiel innerhalb der <b>Init_*</b> Funktion rein.)
|
100
|
+
|
101
|
+
# ===================================================================== #
|
102
|
+
# === Ruby Funcall
|
103
|
+
# ===================================================================== #
|
104
|
+
## Ruby Funcall',HEADER_CSS,'ruby_funcall',HEADER_BORDER
|
105
|
+
rb_funcall - Calls a method.
|
106
|
+
|
107
|
+
First arg is the invocant','marl1em
|
108
|
+
|
109
|
+
Second is the method','marl2em
|
110
|
+
|
111
|
+
Third is the number of arguments','marl3em
|
112
|
+
|
113
|
+
Der Rest sind die restlichen Argumente.
|
114
|
+
|
115
|
+
rb_funcall(file, method, 1, self);
|
116
|
+
VALUE name = rb_funcall(current, rb_intern("to_s"), 0);
|
117
|
+
|
118
|
+
anm('<b>rb_funcall</b> raises a NameError if you try to call
|
119
|
+
a method that does not exist.
|
120
|
+
|
121
|
+
# ==================================================================== #
|
122
|
+
# === rb iv get tag
|
123
|
+
#
|
124
|
+
# Getter Methode.
|
125
|
+
#
|
126
|
+
# rf ruby_embedded rb_iv_get
|
127
|
+
#
|
128
|
+
# ===================================================================== #
|
129
|
+
## rb_iv_get',HEADER_CSS,'rb_iv_get',HEADER_BORDER
|
130
|
+
Getter Methode auf Ruby-C Ebene.
|
131
|
+
|
132
|
+
array_sum = rb_iv_get(self, "@array_sum");
|
133
|
+
|
134
|
+
rb_iv_get(self, "@file");
|
135
|
+
rb_iv_get(self, "@line");
|
136
|
+
|
137
|
+
# ===================================================================== #
|
138
|
+
# === Ruby Cache
|
139
|
+
# ===================================================================== #
|
140
|
+
## Ruby Cache',HEADER_CSS,'ruby_cache',HEADER_BORDER
|
141
|
+
rb_clear_cache_by_id(id);
|
142
|
+
|
143
|
+
# ===================================================================== #
|
144
|
+
# === RESPOND TO
|
145
|
+
# ===================================================================== #
|
146
|
+
## Ruby and .respond_to?',HEADER_CSS,'ruby_respond_to',HEADER_BORDER
|
147
|
+
rb_respond_to(current, rb_intern("to_s")));
|
148
|
+
|
149
|
+
# ===================================================================== #
|
150
|
+
# === protect method calls in ruby-C
|
151
|
+
# ===================================================================== #
|
152
|
+
## Ruby and protected methods?',HEADER_CSS,'rb_protet',HEADER_BORDER)+
|
153
|
+
Method calls can be protected by surrounding them via:
|
154
|
+
|
155
|
+
rb_protect();
|
156
|
+
|
157
|
+
# ===================================================================== #
|
158
|
+
# === Ruby Thread Schedule
|
159
|
+
# ===================================================================== #
|
160
|
+
## Ruby Thread Schedule',HEADER_CSS,'ruby_thread_schedule',HEADER_BORDER)+
|
161
|
+
Mache einen Scheduler:
|
162
|
+
|
163
|
+
rb_thread_schedule();
|
164
|
+
|
165
|
+
Once you are finished with your Ruby thread and assuming no
|
166
|
+
other threads are scheduled to run, control will return back to the
|
167
|
+
point in C extension where you called rb_thread_schedule().
|
168
|
+
|
169
|
+
Das ganze ist letzten Endes <b>Thread.pass</b> in Ruby direkt
|
170
|
+
äquivalent.
|
171
|
+
|
172
|
+
# ===================================================================== #
|
173
|
+
# Modul Funktionen definieren
|
174
|
+
# ===================================================================== #
|
175
|
+
## Modul Funktionen definieren',HEADER_CSS, 'ruby_module_functions',HEADER_BORDER)+
|
176
|
+
mModul = rb_define_module("CModul");
|
177
|
+
rb_define_module_function(mModul, "sendeGrussAnC", sendeGrussAnC, 1);
|
178
|
+
rb_define_module_function(mDB2CLI,
|
179
|
+
"SQLColAttribute", db2_SQLColAttribute, 4);
|
180
|
+
|
181
|
+
Das erste Argument in rb_define_module_function ist das Module, das
|
182
|
+
die Funktion erhalten soll.
|
183
|
+
|
184
|
+
# ===================================================================== #
|
185
|
+
# === Ruby Info. Ruby Version.
|
186
|
+
# ===================================================================== #
|
187
|
+
## Ruby Info',HEADER_CSS,'ruby_info',HEADER_BORDER)+
|
188
|
+
Zeige information über Ruby an:
|
189
|
+
|
190
|
+
ruby_show_version(); // shows ruby info like so:
|
191
|
+
ruby 1.8.6 (2007-03-13 patchlevel 0) [i686-linux]
|
192
|
+
|
193
|
+
# ===================================================================== #
|
194
|
+
# === Data get Tag. get tag. struct tag.
|
195
|
+
# ===================================================================== #
|
196
|
+
div(id: 'Data_Get_Struct'){
|
197
|
+
e("Data_Get_Struct wird recht häufig eingesetzt")+
|
198
|
+
|
199
|
+
Zuerst die allgemeine Syntax hierzu:
|
200
|
+
|
201
|
+
void Data_Get_Struct(VALUE obj, type, type *ptr
|
202
|
+
Data_Get_Struct(self, qp_movie_context, movie_ctx);
|
203
|
+
|
204
|
+
Die C Extension sieht dann etwa so aus:
|
205
|
+
|
206
|
+
VALUE CompondShape_arelink VALUE self) {
|
207
|
+
CompoundShape *ptr;
|
208
|
+
Data_Get_Struct(selof, CompoundShape, ptr);')
|
209
|
+
|
210
|
+
# ===================================================================== #
|
211
|
+
# === Ruby Return Values.
|
212
|
+
#
|
213
|
+
# qtrue tag siehe eins darunter.
|
214
|
+
#
|
215
|
+
# return tag. qnil tag. qfalse tag.
|
216
|
+
# ===================================================================== #
|
217
|
+
## Ruby Return Values',HEADER_CSS,'return_values',HEADER_BORDER)+
|
218
|
+
Ein VALUE (wie die folgenden) auf der C Seite ist das Äquivalent
|
219
|
+
zu einem Object auf Ruby Seite.
|
220
|
+
|
221
|
+
Hat man eine Funktion vom void type, gibt man <b>return Qnil</b>
|
222
|
+
zurück.
|
223
|
+
|
224
|
+
return Qtrue;
|
225
|
+
return Qfalse;
|
226
|
+
return Qnil;
|
227
|
+
return Qundef;
|
228
|
+
br+
|
229
|
+
# ===================================================================== #
|
230
|
+
# === RUBY METHODEN DEFINIEREN in C via rb_define_method tag
|
231
|
+
#
|
232
|
+
# method tag
|
233
|
+
# METHODEN tag. rf embedded ruby_methods
|
234
|
+
# ===================================================================== #
|
235
|
+
## Methoden - Ruby Methoden definieren in RUBY C, (es wird eine Klasse
|
236
|
+
gebraucht)', HEADER_CSS, 'ruby_methods', HEADER_BORDER)+
|
237
|
+
In Ruby erklärt man eine Methode mittels
|
238
|
+
<b class="darkblue">def</b>.
|
239
|
+
|
240
|
+
Auf C Seite geschieht das mittels <b>rb_define_method</b>.
|
241
|
+
|
242
|
+
Jede Methode in Ruby-C, die etwas bestimmtes mit Ruby Pointern
|
243
|
+
macht, muss als erstes Argument <b>VALUE self</b> erhalten.
|
244
|
+
|
245
|
+
Beispiel:
|
246
|
+
|
247
|
+
static VALUE t_add(VALUE self, VALUE anObject);
|
248
|
+
|
249
|
+
Instanz Methoden in Ruby-C setzt man mittels
|
250
|
+
<b>rb_define_method</b>:
|
251
|
+
|
252
|
+
static VALUE der_klassen_pointer;
|
253
|
+
rb_define_method(dieRubyKlasse, const char * methodName, VALUE(*) cFunc, int numArgs);
|
254
|
+
rb_define_method(der_klassen_pointer, "add", t_add, 1);
|
255
|
+
rb_define_method(cTest, "initialize", t_init, 0);
|
256
|
+
rb_define_method(cSimpleClass, "add_to_array", t_add, 1 // akzeptiert 1 Argument);
|
257
|
+
rb_define_method(cSimpleClass, "show_var", t_show_var, 0);
|
258
|
+
rb_define_method(cCircle, "area", Circle_area, 3 // akzeptiert 3 Argumente);
|
259
|
+
rb_define_method(rb_mKernel, "nil?", rb_false, 0);
|
260
|
+
rb_define_method(rb_cMeine_klasse, "methoden_name_in_ruby",
|
261
|
+
name_der_c_funktion, anzahl_der_argumente_als_int);
|
262
|
+
|
263
|
+
Das erste Argument ist also immer die Klasse, an der die Methode anhaftet -
|
264
|
+
das letzte Argument sagt einem, wie viele Argumente die Methode erhalten
|
265
|
+
soll.
|
266
|
+
|
267
|
+
Nun ein kurzer Ausflug nach array.c, um anzusehen,
|
268
|
+
wie es implementiert ist auf C Ebene:
|
269
|
+
|
270
|
+
rb_define_method(rb_cArray,"to_s", rb_ary_to_s, 0);
|
271
|
+
|
272
|
+
Um die <b>method_id</b> zu bekommen verwendet man rb_intern:
|
273
|
+
|
274
|
+
rb_intern("method_name");
|
275
|
+
|
276
|
+
Noch ein kompletteres Beispiel, wie so eine Methode dann
|
277
|
+
aussieht:
|
278
|
+
|
279
|
+
VALUE your_method(VALUE self) {
|
280
|
+
int x = 10;
|
281
|
+
return INT2NUM(x
|
282
|
+
}
|
283
|
+
br+
|
284
|
+
# ===================================================================== #
|
285
|
+
# === CONSTANTS AND RUBY const tag constants tag
|
286
|
+
# rf rubyembedded ruby_constants
|
287
|
+
# ===================================================================== #
|
288
|
+
## Constants und Ruby',HEADER_CSS,'ruby_constants',HEADER_BORDER)+
|
289
|
+
|
290
|
+
|
291
|
+
Eine <b>normale Konstante</b> in Ruby folgt diesen Regeln:
|
292
|
+
|
293
|
+
rb_define_const(klass, name_of_our_constant, value);
|
294
|
+
rb_define_const(module_or_class, "NAME", value);' )+
|
295
|
+
|
296
|
+
name_of_our_constant ist der Name unserer Konstanten.
|
297
|
+
|
298
|
+
Weitere, konkrete Beispiele für Konstanten:
|
299
|
+
|
300
|
+
rb_define_const("RELEASE_DATE", d);
|
301
|
+
rb_define_const(module, "Value", rb_str_new2("Hello World"));
|
302
|
+
rb_define_const(rb_mProcess, "PRIO_PROCESS", INT2FIX(PRIO_PROCESS);
|
303
|
+
rb_define_const(rb_mProcess, "PRIO_PGRP", INT2FIX(PRIO_PGRP);
|
304
|
+
rb_define_const(rb_mProcess, "PRIO_USER", INT2FIX(PRIO_USER);
|
305
|
+
rb_define_const(mRubygame,"INIT_TIMER",INT2NUM(SDL_INIT_TIMER);
|
306
|
+
rb_define_const(cCD,"STOPPED",INT2NUM(CD_STOPPED);
|
307
|
+
rb_define_const(cCD,"PLAYING",INT2NUM(CD_PLAYING);
|
308
|
+
rb_define_const(cCD,"PAUSED",INT2NUM(CD_PAUSED);
|
309
|
+
rb_define_const(cCD,"ERROR",INT2NUM(CD_ERROR);
|
310
|
+
rb_define_const(mVte, "BUILD_VERSION);",
|
311
|
+
rb_ary_new3(3, INT2FIX(VTE_MAJOR_VERSION),
|
312
|
+
INT2FIX(VTE_MINOR_VERSION), INT2FIX(VTE_MICRO_VERSION)));
|
313
|
+
|
314
|
+
Innerhalb einer ifdef Schleife geht dies so:
|
315
|
+
|
316
|
+
ifdef RLIMIT_CORE
|
317
|
+
rb_define_const(rb_mProcess, "RLIMIT_CORE", INT2FIX(RLIMIT_CORE)
|
318
|
+
#endif
|
319
|
+
|
320
|
+
# ===================================================================== #
|
321
|
+
# === Ruby False tag
|
322
|
+
# ===================================================================== #
|
323
|
+
## Ruby False',HEADER_CSS,'false',HEADER_BORDER)+
|
324
|
+
In ruby können wir <b>false</b> wie folgt verwenden:
|
325
|
+
|
326
|
+
VALUE some_function(VALUE mod)
|
327
|
+
{
|
328
|
+
return Qfalse;
|
329
|
+
}
|
330
|
+
|
331
|
+
# ===================================================================== #
|
332
|
+
# === RUBY OBJEKTE IN C
|
333
|
+
#
|
334
|
+
# Ruby_objekte. # rf embedded Ruby_objekte
|
335
|
+
# ===================================================================== #
|
336
|
+
## Ruby Objekte in C',HEADER_CSS,'Ruby_objekte',HEADER_BORDER)+
|
337
|
+
In Ruby wird jeder Inhalt eines Objektes mittels
|
338
|
+
einer <b>C Structure</b> beschrieben.
|
339
|
+
|
340
|
+
Dies wird mittels <b>pointer</b> realisiert.
|
341
|
+
|
342
|
+
Jede Klasse hat eine andere <b>struct</b>, der Pointer Type ist
|
343
|
+
aber immer <b>VALUE</b>. Mit anderen Worten, ein VALUE auf C
|
344
|
+
Ebene ist ein Objekt auf Ruby Ebene.
|
345
|
+
|
346
|
+
img('PC/RUBY/ch_object_value.png','bblack1 mars1em
|
347
|
+
|
348
|
+
<b>VALUE</b> wiederum findet man in <b>ruby.h</b>
|
349
|
+
|
350
|
+
vim $PROGRAMS/Ruby/Current/lib/ruby/1.8/i686-linux/ruby.h','BO s3em
|
351
|
+
|
352
|
+
Dort gibt es viele besondere Structs, wie zum Beispiel:
|
353
|
+
|
354
|
+
struct RData
|
355
|
+
struct RBasic
|
356
|
+
struct RObject
|
357
|
+
struct RClass
|
358
|
+
struct RHash
|
359
|
+
struct RFile
|
360
|
+
struct RFloat
|
361
|
+
struct RString # siehe Anhang für ein beispiel
|
362
|
+
struct RArray
|
363
|
+
struct RRegexp
|
364
|
+
|
365
|
+
Und <b>VALUE</b> hat diese Struktur:
|
366
|
+
|
367
|
+
typedef unsigned long VALUE;
|
368
|
+
|
369
|
+
Folgendes Beispiel zeigt eine <b>Initialierung eines Ruby
|
370
|
+
Array</b> (entspräche dem Ruby Code <b>def initialize</b>):
|
371
|
+
|
372
|
+
static VALUE t_init(VALUE self) //# def initialize
|
373
|
+
{
|
374
|
+
VALUE array;
|
375
|
+
array = rb_ary_new();
|
376
|
+
rb_iv_set(self, "@array", array);
|
377
|
+
return self;
|
378
|
+
}
|
379
|
+
|
380
|
+
Genauer betrachtet ist .new in Ruby-C etwas komplizierter,
|
381
|
+
wie folgendes Beispiel illustriert:
|
382
|
+
|
383
|
+
info = Data_Make_Struct(cTest, MP3Info, 0, free, one);
|
384
|
+
|
385
|
+
rb_obj_call_init(info, argc, argv);
|
386
|
+
|
387
|
+
Klassen sind in Ruby ein <b>zentrales Element</b>,
|
388
|
+
die zuerst deklariert werden müssen, bevor man sie
|
389
|
+
verwenden kann.','padl1em
|
390
|
+
|
391
|
+
Folgendes Beispiel illustriert dies anhand der
|
392
|
+
cTest Klasse:
|
393
|
+
|
394
|
+
VALUE cTest;
|
395
|
+
|
396
|
+
void Init_my_test() {
|
397
|
+
cTest = rb_define_class("MyTest", rb_cObject
|
398
|
+
|
399
|
+
Jede C-Extension definiert eine globale C Funktion
|
400
|
+
namens <b>Init_</b>, der Name der Extension wird
|
401
|
+
angehängt.
|
402
|
+
|
403
|
+
Mit anderen Worten, die allgemein Syntax ist:
|
404
|
+
|
405
|
+
Init_moduleName
|
406
|
+
|
407
|
+
Lädt man zb eine Datei namens <b>hello_world.so</b>,
|
408
|
+
so ist die dazugehörige Init funktion diese:
|
409
|
+
|
410
|
+
Init_hello_world
|
411
|
+
|
412
|
+
Diese <b>muss</b> soweit mir bekannt immer vom <b>void</b>
|
413
|
+
Typ sein, nicht static oder irgendwas sonst. Beispiel:
|
414
|
+
|
415
|
+
void Init_global_variables();
|
416
|
+
void Init_hello_world();
|
417
|
+
void Init_genx4r();
|
418
|
+
|
419
|
+
Diese Funktion wird aufgerufen wenn der Interpreter
|
420
|
+
die <b>Extension ladet</b>.
|
421
|
+
|
422
|
+
Ausserdem kann man das ganze in eine schöne Methode
|
423
|
+
verpacken, in Verbindung mit Data_Make_Struct. Siehe
|
424
|
+
dazu folgendes Beispiel:
|
425
|
+
|
426
|
+
VALUE mp3_info_new() {
|
427
|
+
VALUE info;
|
428
|
+
MP3Info *one;
|
429
|
+
info = Data_Make_Struct(cTest, MP3Info, 0, free, one
|
430
|
+
rb_obj_call_init(info, 0, 0
|
431
|
+
return info;
|
432
|
+
}
|
433
|
+
|
434
|
+
# ===================================================================== #
|
435
|
+
# === rb_class2name
|
436
|
+
# ===================================================================== #
|
437
|
+
## Ruby Class2Name Konversion',HEADER_CSS,'rb_class2name',HEADER_BORDER)+
|
438
|
+
Die reverse function von rb_class2Name() ist so:
|
439
|
+
|
440
|
+
rb_path2class(path);
|
441
|
+
|
442
|
+
# ===================================================================== #
|
443
|
+
# === Define ruby attr Ruby C
|
444
|
+
# ===================================================================== #
|
445
|
+
## Ruby Attr in C',HEADER_CSS,'rb_define_attr',HEADER_BORDER)+
|
446
|
+
Attr Methoden gehen einfach, wobei ein Wert von 1 ein <b>ja</b>
|
447
|
+
bedeutet.
|
448
|
+
|
449
|
+
Zuerst kommt read, dann write.
|
450
|
+
|
451
|
+
rb_define_attr( die_klass_für_das_attr, ihr_attr_name, read, write)
|
452
|
+
rb_define_attr( cLoader, "families", 1, 1 );
|
453
|
+
rb_define_attr( cprivateType, "value", 1, 1 );
|
454
|
+
rb_define_attr( cJukebox, "value", 1, 1 );
|
455
|
+
rb_define_attr( cparser, "options", 1, 1 );
|
456
|
+
rb_define_attr( cTest, "test_var", 1, 0 );
|
457
|
+
|
458
|
+
# ===================================================================== #
|
459
|
+
# === rb_scan_args tag. rf embedded rb_scan_args
|
460
|
+
# ===================================================================== #
|
461
|
+
## Ruby und rb_scan_args',HEADER_CSS,'rb_scan_args',HEADER_BORDER)+
|
462
|
+
rb_scan_args ist zu verwenden um Arguments zu counten.
|
463
|
+
|
464
|
+
Beispiel:
|
465
|
+
|
466
|
+
static VALUE my_function(int argc, VALUE* argv, VALUE self)
|
467
|
+
{
|
468
|
+
VALUE v_name, v_age; // die argumente
|
469
|
+
|
470
|
+
rb_scan_args(argc, argv, "11", &v_name, &v_age
|
471
|
+
|
472
|
+
Zudem kann man rb_scan_args verwenden um default values zu
|
473
|
+
setzen:
|
474
|
+
in_ruby+
|
475
|
+
def foobar(arg=1)
|
476
|
+
end
|
477
|
+
|
478
|
+
in_ruby_c+
|
479
|
+
rb_define_method(myclass, "method_name", meth_fnc, -1);
|
480
|
+
rb_define_method_function(module, "name", c_function, argc);
|
481
|
+
|
482
|
+
In your method use rb_scan_args to scan the argument list.
|
483
|
+
|
484
|
+
If you dont get enough arguments, use the default values instead.
|
485
|
+
|
486
|
+
div {
|
487
|
+
h2('Random Tidbits
|
488
|
+
Ruby stores ivars for immutable object types (e.g. Fixnum/Symbol)
|
489
|
+
in external hashes (see generic_ivar_* in variable.c for
|
490
|
+
ruby/trunk).')
|
491
|
+
|
492
|
+
div {
|
493
|
+
## Was ist rb_funcall2?')
|
494
|
+
|
495
|
+
div {
|
496
|
+
## Wie erhalte ich den Namen einer Klasse in Ruby-C?
|
497
|
+
class Bar; end; Object.const_get("bar".capitalize).new
|
498
|
+
VALUE time_klass = rb_const_get( rb_cObject, rb_intern("Time") );')
|
499
|
+
|
500
|
+
div {
|
501
|
+
Hier eine Liste mit C code und Ruby code:
|
502
|
+
|
503
|
+
table2('s1em','','',
|
504
|
+
'rb_current_realfilepath', '== __FILE__'
|
505
|
+
)
|
506
|
+
|
507
|
+
From 1.8 to 1.9...
|
508
|
+
bitsweat> change RSTRING(...)->ptr to RSTRING_PTR(...)
|
509
|
+
bitsweat> and same for ->len to _LEN
|
510
|
+
|
511
|
+
Damit die .c Beispiele funktionieren, müssen sie allesamt
|
512
|
+
eine <b class="FI darkblue">Init Funktion</b> deklarieren,
|
513
|
+
wie zum Beispiel so:
|
514
|
+
|
515
|
+
void Init_genx4r();
|
516
|
+
void Init_ruby_fstab();
|
517
|
+
void Init_hello();
|
518
|
+
|
519
|
+
Die Init Funktionen geben <b>nichts zurück</b> via return.
|
520
|
+
|
521
|
+
anm('Der Name der Init Funktionen ist immer <b>der Name der
|
522
|
+
Extension</b>, also zum Beispiel:','FW4
|
523
|
+
|
524
|
+
void Init_extname();
|
525
|
+
|
526
|
+
// void Init_jukebox() // wie man hier sieht, muss
|
527
|
+
der Name nach Init_ <b>klein</b> geschrieben werden.
|
528
|
+
|
529
|
+
# ===================================================================== #
|
530
|
+
# === Data Wrap Tag. Wrap tag. struct tag.
|
531
|
+
# ===================================================================== #
|
532
|
+
div {
|
533
|
+
## Ruby Data_Wrap_Struct',HEADER_CSS,'rb_data_wrap_struct',HEADER_BORDER)+
|
534
|
+
Ruby-C stellt eine besonderen Data Type bereit, mit dem man Pointers
|
535
|
+
zu C und C++ Speicher nutzen kann. Der Ruby Interpreter glaubt, das es
|
536
|
+
sich um echte Ruby Klassen handelt.
|
537
|
+
|
538
|
+
API des Makro ist:
|
539
|
+
|
540
|
+
VALUE Data_Wrap_Struct(VALUE class, void (*mark_func) (void *),
|
541
|
+
void (*free_func) (void *), void *ptr
|
542
|
+
|
543
|
+
Der ptr nimmt einen Pointer zu einer Speicherort auf.
|
544
|
+
|
545
|
+
Typischerweise sieht der Code dann in etwa so aus:
|
546
|
+
|
547
|
+
lem(' CompoundShape *ptr;
|
548
|
+
lem(' VALUE obj;
|
549
|
+
|
550
|
+
lem(' ptr = CreateCompoundShape(
|
551
|
+
lem(' obj = Data_Wrap_Struct(cCompoundShape, CompoundShape_mark,
|
552
|
+
CompoundShape_free, ptr
|
553
|
+
|
554
|
+
Es gibt eine ähnliche Form dieses Funktion, und zwar wird hierbei
|
555
|
+
eine neue Instanz des C struczt erstellt, und erst danach wird die
|
556
|
+
<b>Data_Wrap_Struct()</b> Aktion durchgeführt:
|
557
|
+
|
558
|
+
lem(' VALUE Data_Make_Struct(VALUE class, type, void
|
559
|
+
(*mark_func)(void *), void (*free_func)(void *), void
|
560
|
+
*ptr
|
561
|
+
|
562
|
+
Nutzt man diesen Code, dann wird der Speicher mittels Rubys
|
563
|
+
ALLOC macro alloziiert. Dieser Makro ruft wiederum malloc() auf,
|
564
|
+
und wenn Speicher limitiert ist, ruft er Rubys Garbage Collector
|
565
|
+
auf bevor er malloc() aufruft.
|
566
|
+
|
567
|
+
Anmerkung: dieser Speicher sollte mit free() befreit werden.
|
568
|
+
|
569
|
+
Zudem muss man jedes Mal wenn man Data_Make_Struct() oder
|
570
|
+
<b>Data_Wrap_Struct()</b> verwendet, pointers zur C Funktion
|
571
|
+
schicken, die die mark und free Phasen sehen.')
|
572
|
+
|
573
|
+
# ===================================================================== #
|
574
|
+
# === ruby_singleton_methods
|
575
|
+
# ===================================================================== #
|
576
|
+
## Definieren von Singleton Methods:',HEADER_CSS,
|
577
|
+
'ruby_singleton_methods',HEADER_BORDER)+
|
578
|
+
rb_define_singleton_method
|
579
|
+
|
580
|
+
# ===================================================================== #
|
581
|
+
# === OBJECT ID tag
|
582
|
+
#
|
583
|
+
# von http://www.oreillynet.com/ruby/blog/2006/02/ruby_values_and_object_ids.html
|
584
|
+
# ===================================================================== #
|
585
|
+
## Object ID von Ruby Objekten',HEADER_CSS,'ruby_object_id',HEADER_BORDER)+
|
586
|
+
Ruby kalkuliert Objekt IDs (object_id) wie folgt: # drbrain: see rb_obj_id for how the object_id is computed
|
587
|
+
|
588
|
+
VALUE rb_obj_id(VALUE obj)
|
589
|
+
{
|
590
|
+
if (SPECIAL_CONST_pobj)) {
|
591
|
+
cmd3('return LONG2NUM((long)obj
|
592
|
+
}
|
593
|
+
return (VALUE)((long)obj|FIXNUM_FLAG
|
594
|
+
}
|
595
|
+
|
596
|
+
nil.object_id zb gibt immer <b>4</b> zurück.
|
597
|
+
|
598
|
+
# ===================================================================== #
|
599
|
+
# === Check_Type
|
600
|
+
# ===================================================================== #
|
601
|
+
## Herausfinden was was ist mit Check_Type',
|
602
|
+
HEADER_CSS,'ruby_check_type',HEADER_BORDER
|
603
|
+
)+
|
604
|
+
Finde heraus, was was ist mittels Check_Type(VALUE val, int type)
|
605
|
+
|
606
|
+
Check_Type(val, T_STRING); // Ist es ein String?
|
607
|
+
Check_Type(val, T_OBJECT); // Ist es ein Object?
|
608
|
+
|
609
|
+
# ===================================================================== #
|
610
|
+
# === STRUCTS TAG
|
611
|
+
# ===================================================================== #
|
612
|
+
## Hier ein Beispiel von Struct Usage',HEADER_CSS,'ruby_struct',HEADER_BORDER)+
|
613
|
+
struct time_object {
|
614
|
+
|
615
|
+
struct timeval tv;
|
616
|
+
struct tm tm;
|
617
|
+
int gmt;
|
618
|
+
int tm_got;
|
619
|
+
|
620
|
+
};
|
621
|
+
|
622
|
+
struct time_object *tobj;
|
623
|
+
obj = Data_Make_Struct(klass, struct time_object, 0, time_free, tobj
|
624
|
+
tobj->tm_got = 0;
|
625
|
+
tobj->tv.tv_sec = 0;
|
626
|
+
tobj->tv.tv_usec = 0;
|
627
|
+
|
628
|
+
# ===================================================================== #
|
629
|
+
# === COMPILEN VON RUBY C CODE STRUKTUREN. compile tag
|
630
|
+
#
|
631
|
+
# Makefile tag.
|
632
|
+
# rf embedded compiling
|
633
|
+
# ===================================================================== #
|
634
|
+
## Compilen von Ruby C Code Strukturen mittels mkmf / Makefile:',
|
635
|
+
HEADER_CSS,'compiling',HEADER_BORDER)+
|
636
|
+
Zum Compilen muss man zb dies hier machen:
|
637
|
+
|
638
|
+
-lruby
|
639
|
+
|
640
|
+
Hier ein Beispiel dazu:
|
641
|
+
|
642
|
+
gcc test.c -lruby -o embedded','extconf
|
643
|
+
|
644
|
+
gcc -o embeddedRuby embeddedRuby.o -O2 -fpic \\")+
|
645
|
+
-I/usr/lib/ruby/1.6/i386-linux -rdynamic
|
646
|
+
-L/usr/lib/ruby/1.6/i386-linux \\")+
|
647
|
+
-lruby -lm -ldl
|
648
|
+
|
649
|
+
anm('Der einfachste Weg zum Kompilieren ist es aber
|
650
|
+
<b>extconf.rb</b> zu nutzen.
|
651
|
+
|
652
|
+
Typische Struktur bzw Commands dazu folgt wobei wir mit
|
653
|
+
extconf.rb anfangen:
|
654
|
+
|
655
|
+
vim $RSRC/C/extconf.rb
|
656
|
+
bl $RSRC/C/extconf.rb
|
657
|
+
|
658
|
+
<b>extconf.rb</b> erlaubt einige Besonderheiten,
|
659
|
+
wie zum Beispiel <b>dir_config("some_dir")</b>.
|
660
|
+
|
661
|
+
Soweit ich weiss, nutzt dies alle vorhandenen .c Dateien in
|
662
|
+
einem Verzeichnis, wird also besonders gerne angewandt bei
|
663
|
+
Verzeichnissen in <b>non-standard directories</b>.
|
664
|
+
|
665
|
+
Folgend sehen wir ein kompletteres Beispiel für
|
666
|
+
<b>extconf.rb</b>:
|
667
|
+
|
668
|
+
cmd2(" require('mkmf')")+
|
669
|
+
|
670
|
+
dir_config("genx4r")
|
671
|
+
|
672
|
+
abort "need stdio.h" unless have_header("stdio.h") # aborten geht auch
|
673
|
+
cmd2(" have_library('libraryName', 'libraryFunction')")+
|
674
|
+
|
675
|
+
dir_config hat übrigens 2 weitere Argumente - Nr 2 gibt
|
676
|
+
include Paths an, Nr 3 gibt Library Paths an.
|
677
|
+
|
678
|
+
ee('Eine weitere Methode ist <b>create_makefile</b>, Docu hierzu
|
679
|
+
sieht man
|
680
|
+
a('http://www.ruby-doc.org/core/files/lib/mkmf_rb.src/M000067.html',
|
681
|
+
content: 'hier', css_class: 'BO marl2em
|
682
|
+
|
683
|
+
|
684
|
+
create_makefile("my_test") # my_test is the name of
|
685
|
+
your c. file
|
686
|
+
|
687
|
+
Es gehen auch mehrere Argumente, wobei ich aber noch nicht
|
688
|
+
weiss, was die weiteren Argumente bewirken.
|
689
|
+
|
690
|
+
Beispiel:
|
691
|
+
|
692
|
+
create_makefile('inotify', 'ext')")+
|
693
|
+
|
694
|
+
// or this create_makefile("genx4r")
|
695
|
+
|
696
|
+
<b>dir_config</b> sagt Ruby, das man alle .c Dateien im aktuellen
|
697
|
+
Verzeichnis nutzen soll, um eine Extension namens genx4r zu
|
698
|
+
erstellen.
|
699
|
+
|
700
|
+
anm('Danach kann man ruby extconf.rb anwenden; dies erstellt
|
701
|
+
dann eine Makefile Datei.
|
702
|
+
|
703
|
+
Ob ein Computer System bestimmte <b>Headers</b> hat, kann
|
704
|
+
man so abfragen:
|
705
|
+
|
706
|
+
have_header('linux/inotify.h')")+
|
707
|
+
|
708
|
+
Dies würde zb so eine Zeile ausgeben:
|
709
|
+
|
710
|
+
checking for linux/inotify.h... no
|
711
|
+
|
712
|
+
Hier ein "chained" Beispiel dazu:
|
713
|
+
|
714
|
+
if have_header("readline/readline.h") and
|
715
|
+
have_header("readline/history.h") and have_library("readline", "readline")'
|
716
|
+
)+
|
717
|
+
Das ganze alleine bricht aber nicht ab, wenn man einen Abbruch
|
718
|
+
möchte, dann muss man ein <b>if</b> davor schalten.
|
719
|
+
|
720
|
+
Mehrere headers überprüfen kann man zb so:
|
721
|
+
|
722
|
+
if have_header('X11/Xlib.h') and find_library('X11', 'XOpenDisplay',
|
723
|
+
'/usr/X11R6/lib') and find_library('Xpm', 'XpmCreatePixmapFromData',
|
724
|
+
'/usr/X11R6/lib') and find_library('Xext', 'XShapeCombineMask',
|
725
|
+
'/usr/X11R6/lib')")+
|
726
|
+
cmd2(" create_makefile('dockapp')")+
|
727
|
+
end
|
728
|
+
br+
|
729
|
+
Das Übergeben einer bestimmten Bibliothek geht so:
|
730
|
+
|
731
|
+
have_library('foo') # -lfoo")+
|
732
|
+
have_library('m') # -lm")+
|
733
|
+
|
734
|
+
Will man hier gleich mehrer Libaries zugleich abfragen, geht
|
735
|
+
dies zum Beispiel so:
|
736
|
+
|
737
|
+
if have_library("ole32") and have_library("oleaut32")
|
738
|
+
|
739
|
+
Einen <b class="darkblue">speziellen Namen </b> kann man
|
740
|
+
seiner Extension auch geben (sehr zu empfehlen):
|
741
|
+
|
742
|
+
extension_name = 'mytest'")+
|
743
|
+
|
744
|
+
Ein Win-Makefile kann man so erstellen:
|
745
|
+
|
746
|
+
create_win32ole_makefile
|
747
|
+
# To create it, run:
|
748
|
+
ruby extconf.rb;make(
|
749
|
+
|
750
|
+
Nun kommt eine Meldung "<b>creating Makefile</b>", die sehr
|
751
|
+
schnell beendet sein sollte - ansonsten handelt es sich wohl
|
752
|
+
um einen Syntax Fehler.
|
753
|
+
|
754
|
+
Danach <b>make</b> aufrufen
|
755
|
+
|
756
|
+
Übrigens, nicht auf <b>Init_</b> vergessen!
|
757
|
+
|
758
|
+
Dies erstellt zb foobar.so (shared library), und kann dann so
|
759
|
+
genutzt werden (die <b>.so Extension</b> muss nicht angegeben
|
760
|
+
werden):
|
761
|
+
require('foobar'")+
|
762
|
+
require('global_variables'")+
|
763
|
+
|
764
|
+
Man kann übrigens nur require verwenden, load
|
765
|
+
funktioniert nur mit .rb Dateien.
|
766
|
+
|
767
|
+
Ok, folgend nun ein paar Code Beispiele für C:
|
768
|
+
|
769
|
+
VALUE callback(void)
|
770
|
+
{
|
771
|
+
printf("C callback\n"
|
772
|
+
return T_TRUE;
|
773
|
+
}
|
774
|
+
|
775
|
+
# ===================================================================== #
|
776
|
+
# === FIXNUMS UND RUBY (Fixnum tag, Fixnums tag.
|
777
|
+
# ===================================================================== #
|
778
|
+
## Fixnums und Ruby',HEADER_CSS,'ruby_fixnums',HEADER_BORDER)+
|
779
|
+
Fixnum, Symbol, true, false, und nil werden direkt in VALUE
|
780
|
+
gespeichert, und sind keine Pointers. Man nennt sie auch
|
781
|
+
<b>immediate values</b>.
|
782
|
+
|
783
|
+
Um zu überprüfen, ob es sich bei einem Wert um einen
|
784
|
+
<b>Fixnum</b> handelt, kann man zb dies hier tun:
|
785
|
+
|
786
|
+
FIXNUM_pvalue)
|
787
|
+
|
788
|
+
Dies gibt einen Wert von <b>nicht 0</b> zurück wenn es
|
789
|
+
sich um einen Fixnum Wert handelt. Ähnliches geht auch mit
|
790
|
+
SYMBOL_P für symbols, NIL_P für nil Werte, und RTEST für Werte
|
791
|
+
die weder nil noch false sind.
|
792
|
+
|
793
|
+
Im Anhang A gibts ein Listing, ansonsten folgen hier
|
794
|
+
noch einige Beispiele:
|
795
|
+
|
796
|
+
/* structure for ordinary objects */
|
797
|
+
|
798
|
+
struct RObject {
|
799
|
+
|
800
|
+
struct RBasic basic;
|
801
|
+
struct st_table *iv_tbl;
|
802
|
+
|
803
|
+
};
|
804
|
+
|
805
|
+
/* structure for strings (instance of String) */
|
806
|
+
|
807
|
+
struct RString {
|
808
|
+
struct RBasic basic;
|
809
|
+
long len;
|
810
|
+
char *ptr;
|
811
|
+
union {
|
812
|
+
long capa;
|
813
|
+
VALUE shared;
|
814
|
+
} aux;
|
815
|
+
}
|
816
|
+
|
817
|
+
/* structure for arrays (instance of Array) */
|
818
|
+
|
819
|
+
struct RArray {
|
820
|
+
struct RBasic basic;
|
821
|
+
long len;
|
822
|
+
union {
|
823
|
+
long capa;
|
824
|
+
VALUE shared;
|
825
|
+
} aux;
|
826
|
+
VALUE *ptr;
|
827
|
+
};
|
828
|
+
|
829
|
+
Jede Extension in Ruby definiert eine globale C Funktion, die
|
830
|
+
so aussieht:
|
831
|
+
|
832
|
+
Init_<i>name</i>
|
833
|
+
|
834
|
+
Wie oben beschrieben definiert man den Namen einer Klasse in
|
835
|
+
C-Ruby so:
|
836
|
+
|
837
|
+
VALUE der_klassen_pointer;
|
838
|
+
der_klassen_pointer = <b>rb_define_class</b>("MeineKlasse",
|
839
|
+
rb_cObject);
|
840
|
+
|
841
|
+
# ===================================================================== #
|
842
|
+
# === Class Method. define a c method or class method.
|
843
|
+
# ===================================================================== #
|
844
|
+
## Class Methods',HEADER_CSS,'ruby_class_methods',HEADER_BORDER)+
|
845
|
+
define_c_method
|
846
|
+
|
847
|
+
# ===================================================================== #
|
848
|
+
# === ruby modules tag mod tag module tag.
|
849
|
+
# ===================================================================== #
|
850
|
+
## Definieren von Ruby Modules', HEADER_CSS,'ruby_modules',HEADER_BORDER)+
|
851
|
+
|
852
|
+
Es ist anzuraten, ein kleines <b>m</b> voranzustellen, um
|
853
|
+
darauf hinzuweisen, das es sich um ein Modul handelt.
|
854
|
+
|
855
|
+
Dies ist eine gute Konvention in Ruby.
|
856
|
+
br +
|
857
|
+
VALUE mNcurses;
|
858
|
+
|
859
|
+
static VALUE mWtmp;
|
860
|
+
mWtmp = rb_define_module("Wtmp"); // the argument is the module name
|
861
|
+
VALUE module = rb_define_module("name");' )+
|
862
|
+
rb_mGenX = rb_define_module ("GenX");
|
863
|
+
|
864
|
+
anm('Anmerkung: Ein module in Ruby-C gibt <b>immer</b> ein VALUE
|
865
|
+
zurück.
|
866
|
+
|
867
|
+
rb_define_method_function(module, "name", c_function, argc);
|
868
|
+
rb_define_method_function
|
869
|
+
|
870
|
+
Noch ein Beispiel:
|
871
|
+
|
872
|
+
static VALUE rb_mHello, mShapes;
|
873
|
+
rb_mHello = rb_define_module("Hello");
|
874
|
+
mShapes = rb_define_module("Shape");
|
875
|
+
|
876
|
+
Module innerhalb anderer Module zu definieren geht so:
|
877
|
+
|
878
|
+
VALUE mRubygame;
|
879
|
+
|
880
|
+
mRubygame = rb_define_module("Rubygame");
|
881
|
+
|
882
|
+
Hier noch wie das Modul Enumerable definiert wurde:
|
883
|
+
|
884
|
+
VALUE rb_mEnumerable;
|
885
|
+
|
886
|
+
rb_mEnumerable = rb_define_module("Enumerable");
|
887
|
+
|
888
|
+
Um Module Functions zu definieren siehe
|
889
|
+
|
890
|
+
a('#ruby_module_functions', content: 'hier
|
891
|
+
|
892
|
+
# ===================================================================== #
|
893
|
+
# === rb_require tag
|
894
|
+
# ===================================================================== #
|
895
|
+
## Ruby Require',HEADER_CSS,'rb_require',HEADER_BORDER)+
|
896
|
+
rb_require("./embedding.rb"); // Ruby-Modul laden
|
897
|
+
|
898
|
+
# ===================================================================== #
|
899
|
+
# === rb_class_new_instance tag
|
900
|
+
# ===================================================================== #
|
901
|
+
## Ruby und rb_class_new_instance',HEADER_CSS, 'rb_class_new_instance',HEADER_BORDER)+
|
902
|
+
Beispiel:
|
903
|
+
|
904
|
+
VALUE entry = rb_class_new_instance (0, 0, cEntry);
|
905
|
+
|
906
|
+
Was macht rb_class_new_instance?
|
907
|
+
|
908
|
+
obj = rb_obj_alloc(klass);
|
909
|
+
rb_obj_call_init(obj, argc, argv);
|
910
|
+
|
911
|
+
Man findet es in object.c
|
912
|
+
|
913
|
+
# ===================================================================== #
|
914
|
+
# === Dynamic Libraries.
|
915
|
+
# ===================================================================== #
|
916
|
+
div('FS1em','dynamic_libraries'){
|
917
|
+
|
918
|
+
C libraries can usually be accessed via <b>dynamic linker</b>.
|
919
|
+
Die Ruby dl-Bibliothek vereinfacht dies ungemein:
|
920
|
+
|
921
|
+
require('dl'")+
|
922
|
+
require('dl/import'")+
|
923
|
+
|
924
|
+
module Libc")+
|
925
|
+
extend DL::Importable")+
|
926
|
+
dlload '/lib/libc.so.6'")+
|
927
|
+
extern 'char* ttyname(int)'")+
|
928
|
+
end
|
929
|
+
|
930
|
+
puts Libc.ttyname(0)")
|
931
|
+
|
932
|
+
# ===================================================================== #
|
933
|
+
# === Ruby Array Entry tag.
|
934
|
+
# ===================================================================== #
|
935
|
+
## Ruby Array Entry',HEADER_CSS,'rb_ary_entry',HEADER_BORDER)+
|
936
|
+
VALUE rb_ary_entry(VALUE ary, long offset)
|
937
|
+
[1,2,3][2]
|
938
|
+
[1,2,3].at(2)
|
939
|
+
|
940
|
+
Der C Code sieht so aus:
|
941
|
+
|
942
|
+
VALUE num;
|
943
|
+
num = rb_ary_entry(ary, offset);
|
944
|
+
printf("%d\n", FIX2INT(num));
|
945
|
+
VALUE num = RARRAY(ary)->ptr[offset]);
|
946
|
+
|
947
|
+
div {
|
948
|
+
static VALUE sendeGrussAnC(VALUE self, VALUE str)
|
949
|
+
{
|
950
|
+
printf("Ruby hat uns den Gruss gesendet: %s\n",
|
951
|
+
StringValuePtr(str)
|
952
|
+
}
|
953
|
+
|
954
|
+
int main (int argv[], int argc)
|
955
|
+
{
|
956
|
+
VALUE cModul;
|
957
|
+
VALUE gruss;')
|
958
|
+
|
959
|
+
|
960
|
+
printf("Ein Hallo von C\n");
|
961
|
+
ruby_init; // Dieser Aufruf ist zwingend
|
962
|
+
cModul = rb_define_module("CModul");
|
963
|
+
rb_define_module_function(cModul,
|
964
|
+
"sendeGrussAnC", sendeGrussAnC, 1);
|
965
|
+
|
966
|
+
# ===================================================================== #
|
967
|
+
# === C HASH DEFINIEREN in C. (hash tag, hashes tag). #Hashes
|
968
|
+
# ===================================================================== #
|
969
|
+
## Ruby Hash definieren in RUBY C',HEADER_CSS,'Hashes',HEADER_BORDER)+
|
970
|
+
cEntry = rb_define_class_under (mWtmp, "Entry", rb_cHash);
|
971
|
+
|
972
|
+
<b>hash = Hash.new</b> geht so:
|
973
|
+
|
974
|
+
VALUE hash; hash = rb_hash_new(); // Hash.new # Wir erstellen
|
975
|
+
einen neuen Hash
|
976
|
+
|
977
|
+
<b>.select</b> in Hash:
|
978
|
+
|
979
|
+
rb_hash_select
|
980
|
+
|
981
|
+
<b>.values_at</b> in Hash:
|
982
|
+
|
983
|
+
rb_hash_values_at
|
984
|
+
|
985
|
+
<b>.reject!</b> in Hash:
|
986
|
+
|
987
|
+
rb_hash_reject_bang
|
988
|
+
|
989
|
+
<b>.freeze</b> in Hash:
|
990
|
+
|
991
|
+
rb_hash_freeze
|
992
|
+
|
993
|
+
<b>.each</b> in Hash:
|
994
|
+
|
995
|
+
rb_hash_foreach # iterate over a hash
|
996
|
+
rb_define_alloc_func hash_alloc;
|
997
|
+
"[]", rb_hash_s_create, -1
|
998
|
+
"initialize", rb_hash_initialize, -1
|
999
|
+
"initialize_copy", rb_hash_replace, 1
|
1000
|
+
"rehash", rb_hash_rehash, 0
|
1001
|
+
"to_hash", rb_hash_to_hash, 0
|
1002
|
+
"to_a", rb_hash_to_a, 0
|
1003
|
+
"to_s", rb_hash_to_s, 0
|
1004
|
+
"inspect", rb_hash_inspect, 0
|
1005
|
+
"==", rb_hash_equal, 1
|
1006
|
+
|
1007
|
+
Um gespeicherte Einträge aus einem Hash zu <b>holen</b>,
|
1008
|
+
geht dies hier:
|
1009
|
+
in_ruby+
|
1010
|
+
hash = { :foo => 'blah' }")+
|
1011
|
+
|
1012
|
+
In Ruby-C:
|
1013
|
+
|
1014
|
+
hash = rb_hash_new();
|
1015
|
+
foo = rb_hash_aref(hash, ID2SYM(rb_intern("foo")));
|
1016
|
+
|
1017
|
+
bzw (etwas länger)
|
1018
|
+
|
1019
|
+
int age;
|
1020
|
+
hash = rb_hash_new();
|
1021
|
+
key = rb_str_new2("Oscar");
|
1022
|
+
value = rb_hash_aref(hash, key);
|
1023
|
+
age = NUM2INT(value); // Should return 6, Siehe oben bei
|
1024
|
+
INT2NUM
|
1025
|
+
|
1026
|
+
anm('NUM2INT und INT2FIX sind Möglichkeiten wie man Nummer in
|
1027
|
+
Ruby erstellt.
|
1028
|
+
|
1029
|
+
anm('rb_hash_aref gibt Qnil wieder wenn der angegebene
|
1030
|
+
Key nicht im Hash drinnen is. Argumente an rb_hash_aset
|
1031
|
+
und rb_hash_aref müssen vom type VALUE sein.
|
1032
|
+
|
1033
|
+
Das heisst auch, das ein Hash, der strings als Keys verwenden,
|
1034
|
+
diese zuerst in Ruby Strings konvertieren muss:
|
1035
|
+
|
1036
|
+
VALUE string_key, value;
|
1037
|
+
|
1038
|
+
string_key = rb_str_new2("Some key");
|
1039
|
+
value = rb_hash_aref(hash, string_key)
|
1040
|
+
in_ruby+
|
1041
|
+
h = { "a" => 100, "b" => 200 }; h.fetch("a")
|
1042
|
+
in_ruby_c+
|
1043
|
+
foo = rb_hash_fetch(hash, ID2SYM(rb_intern("foo"))
|
1044
|
+
|
1045
|
+
Um <b>neue</b> Einträge (key, value) in einen Hash
|
1046
|
+
reinzugeben verwendet man rb_hash_aset():
|
1047
|
+
|
1048
|
+
Beispiel:
|
1049
|
+
|
1050
|
+
in_ruby+
|
1051
|
+
hash << "foo"
|
1052
|
+
in_ruby_c+
|
1053
|
+
h = { "a" => 100, "b" => 200 }; h.fetch("a")
|
1054
|
+
hash = rb_hash_new();
|
1055
|
+
key = rb_str_new2("Oscar");
|
1056
|
+
value = INT2NUM(6);
|
1057
|
+
rb_hash_aset(hash, key, value));
|
1058
|
+
|
1059
|
+
Weiter geht es:
|
1060
|
+
|
1061
|
+
"store", rb_hash_aset, 2
|
1062
|
+
"default", rb_hash_default, -1
|
1063
|
+
"default=", rb_hash_set_default, 1
|
1064
|
+
"default_proc", rb_hash_default_proc, 0
|
1065
|
+
"index", rb_hash_index, 1
|
1066
|
+
"indexes", rb_hash_indexes, -1
|
1067
|
+
"indices", rb_hash_indexes, -1
|
1068
|
+
"size", rb_hash_size, 0
|
1069
|
+
"length", rb_hash_size, 0
|
1070
|
+
"empty?", rb_hash_empty_p, 0
|
1071
|
+
"each", rb_hash_each, 0
|
1072
|
+
"each_value", rb_hash_each_value, 0
|
1073
|
+
"each_key", rb_hash_each_key, 0
|
1074
|
+
"each_pair", rb_hash_each_pair, 0
|
1075
|
+
|
1076
|
+
Sortieren geht in Ruby so:
|
1077
|
+
in_ruby+
|
1078
|
+
h = { "c"=> 300, "a" => 100, "b" => 200 }; h.sort
|
1079
|
+
in_ruby_c+
|
1080
|
+
"sort", rb_hash_sort, 0
|
1081
|
+
"keys", rb_hash_keys, 0
|
1082
|
+
"values", rb_hash_values, 0
|
1083
|
+
"values_at", rb_hash_values_at, -1
|
1084
|
+
"shift", rb_hash_shift, 0
|
1085
|
+
"delete", rb_hash_delete, 1
|
1086
|
+
"delete_if", rb_hash_delete_if, 0
|
1087
|
+
"select", rb_hash_select, -1
|
1088
|
+
"reject", rb_hash_reject, 0
|
1089
|
+
"reject!", rb_hash_reject_bang, 0
|
1090
|
+
"clear", rb_hash_clear, 0
|
1091
|
+
"invert", rb_hash_invert, 0
|
1092
|
+
"update", rb_hash_update, 1
|
1093
|
+
"replace", rb_hash_replace, 1
|
1094
|
+
"merge!", rb_hash_update, 1
|
1095
|
+
"merge", rb_hash_merge, 1
|
1096
|
+
"include?", rb_hash_has_key, 1
|
1097
|
+
"member?", rb_hash_has_key, 1
|
1098
|
+
"has_key?", rb_hash_has_key, 1
|
1099
|
+
"has_value?", rb_hash_has_value, 1
|
1100
|
+
"key?", rb_hash_has_key, 1
|
1101
|
+
"value?", rb_hash_has_value, 1
|
1102
|
+
"[]", rb_f_getenv, 1
|
1103
|
+
"fetch", env_fetch, -1
|
1104
|
+
"[]=", env_aset, 2
|
1105
|
+
"store", env_aset, 2
|
1106
|
+
"each", env_each, 0
|
1107
|
+
"each_pair", env_each_pair, 0
|
1108
|
+
"each_key", env_each_key, 0
|
1109
|
+
"each_value", env_each_value, 0
|
1110
|
+
"delete", env_delete_m, 1
|
1111
|
+
"delete_if", env_delete_if, 0
|
1112
|
+
"clear", env_clear, 0
|
1113
|
+
"reject", env_reject, 0
|
1114
|
+
"reject!", env_reject_bang, 0
|
1115
|
+
"select", env_select, -1
|
1116
|
+
"shift", env_shift, 0
|
1117
|
+
"invert", env_invert, 0
|
1118
|
+
"replace", env_replace, 1
|
1119
|
+
"update", env_update, 1
|
1120
|
+
"inspect", env_inspect, 0
|
1121
|
+
"rehash", env_none, 0
|
1122
|
+
"to_a", env_to_a, 0
|
1123
|
+
"to_s", env_to_s, 0
|
1124
|
+
"index", env_index, 1
|
1125
|
+
"indexes", env_indexes, -1
|
1126
|
+
"indices", env_indexes, -1
|
1127
|
+
"size", env_size, 0
|
1128
|
+
"length", env_size, 0
|
1129
|
+
"empty?", env_empty_p, 0
|
1130
|
+
"keys", env_keys, 0
|
1131
|
+
"values", env_values, 0
|
1132
|
+
"values_at", env_values_at, -1
|
1133
|
+
"include?", env_has_key, 1
|
1134
|
+
"member?", env_has_key, 1
|
1135
|
+
"has_key?", env_has_key, 1
|
1136
|
+
"has_value?", env_has_value, 1
|
1137
|
+
"key?", env_has_key, 1
|
1138
|
+
"value?", env_has_value, 1
|
1139
|
+
"to_hash", env_to_hash, 0
|
1140
|
+
|
1141
|
+
# ======================================================================= #
|
1142
|
+
# === Arrays in C (ruby c)
|
1143
|
+
#
|
1144
|
+
# C ARRAY DEFINIEREN in C. array tag.
|
1145
|
+
#
|
1146
|
+
# rf embedded Array_definieren
|
1147
|
+
# ======================================================================= #
|
1148
|
+
h4('Ruby Array definieren in RUBY C',
|
1149
|
+
HEADER_CSS,'Array_definieren',HEADER_BORDER)+
|
1150
|
+
VALUE array; array = rb_ary_new();
|
1151
|
+
VALUE hardware_list; hardware_list = rb_ary_new();
|
1152
|
+
br+
|
1153
|
+
Intern ruft rb_ary_new übrigens rb_ary_new2 auf
|
1154
|
+
(ist in <i class="darkblue">
|
1155
|
+
<a href="http://www.ruby-doc.org/doxygen/1.8.4/array_8c.html">
|
1156
|
+
array.c </a></i> beschrieben):
|
1157
|
+
br+
|
1158
|
+
return rb_ary_new2(ARY_DEFAULT_SIZE
|
1159
|
+
br+
|
1160
|
+
Wie man sieht genügt die Deklaration <b>VALUE array_name</b>
|
1161
|
+
br+
|
1162
|
+
Weitere Manipulationen mit Arrays gehen so:
|
1163
|
+
br+
|
1164
|
+
rb_ary_push(VALUE ary, VALUE val); // <b>.push</b> fügt am
|
1165
|
+
Ende des Array ein neues Element hinzu
|
1166
|
+
br+
|
1167
|
+
rb_ary_push(hardware_list, rb_str_new2("\"HDD1\"=>\"/dev/hdc1\"")',
|
1168
|
+
'marl4em
|
1169
|
+
br+
|
1170
|
+
rb_ary_pop(VALUE ary); // <b>.pop</b> entfernt das letzte
|
1171
|
+
Element eines Array und gibt ihn wieder
|
1172
|
+
br+
|
1173
|
+
rb_ary_shift(VALUE ary) // Entfernt das erste Element
|
1174
|
+
eines Arrays und gibt es wieder
|
1175
|
+
br+
|
1176
|
+
rb_ary_unshift(VALUE ary, VALUE val) // das Gegenteil
|
1177
|
+
von shift - fügt den Eintrag vorne an
|
1178
|
+
br+
|
1179
|
+
Hier noch die wichtigsten Funktionen als <b>Übersicht</b>:
|
1180
|
+
br+
|
1181
|
+
table3('marl1em','','',
|
1182
|
+
'C Function','Equivalent Ruby Statement','Description',
|
1183
|
+
|
1184
|
+
'VALUE rb_ary_new()','anArray = [] (or anArray = Array.new())','Returns
|
1185
|
+
a new empty array. Internally, it will create an array
|
1186
|
+
with a default capacity, which is 16 elements.',
|
1187
|
+
'VALUE rb_ary_new2(long size)','anArray = Array.new(size)','Returns
|
1188
|
+
a new array with size elements; each element is initialized to
|
1189
|
+
Qnil, which is Rubys way of nil. The advantage is that
|
1190
|
+
this function is faster than rb_ary_new, however you must
|
1191
|
+
know how big your array will be.',
|
1192
|
+
|
1193
|
+
'VALUE rb_ary_new3(long size, VALUE arg1, VALUE arg2, ...)',
|
1194
|
+
'anArray = [arg1, arg2, ...]','Returns a new array with size
|
1195
|
+
elements; each element is initialized with the corresponding
|
1196
|
+
argument passed into rb_ary_new3()+',
|
1197
|
+
|
1198
|
+
'VALUE rb_ary_new4(long size, VALUE *values)','anArray = ["this",
|
1199
|
+
"that","other"]','Returns a new array with size elements; each
|
1200
|
+
element is initialized with the corresponding
|
1201
|
+
element in the values array.',
|
1202
|
+
|
1203
|
+
'VALUE rb_ary_aref (int argc,
|
1204
|
+
VALUE *argv, VALUE array)','value = array[index]<br>
|
1205
|
+
value = array[start, length]<br>
|
1206
|
+
value = Array[range]','This is the implementation of the
|
1207
|
+
Array class [] method and accepts three different forms of
|
1208
|
+
inputs; here, argv is a C array of the input argument
|
1209
|
+
values and argc is the number of arguments in that array.
|
1210
|
+
If there is only one input argument, it is evaluated
|
1211
|
+
as either a Fixnum index into the array or a
|
1212
|
+
Range of indices. If there are
|
1213
|
+
two arguments, they are evaluated
|
1214
|
+
as Fixnums indiciating the starting index and
|
1215
|
+
length of the subarray.',
|
1216
|
+
|
1217
|
+
'void rb_ary_store(VALUE array, long index, VALUE value)',
|
1218
|
+
'array[index] = value',
|
1219
|
+
'Stores value in the specified array slot (where index is zero-based)',
|
1220
|
+
|
1221
|
+
'VALUE rb_ary_entry(VALUE array, long index)','value = array[index]',
|
1222
|
+
'Dies gibt das Element am spezifizierten Index wieder',
|
1223
|
+
|
1224
|
+
'VALUE rb_ary_push(VALUE array, VALUE value)','array.push(value)',
|
1225
|
+
'pushes value onto the end of array and returns a reference to it.',
|
1226
|
+
|
1227
|
+
'VALUE rb_ary_popVALUE array)','value = array.pop','Pops value
|
1228
|
+
onto the end of array and returns a reference to it.',
|
1229
|
+
|
1230
|
+
'VALUE rb_ary_shift(VALUE array)','array.shift','Removes and
|
1231
|
+
returns the first element from array.',
|
1232
|
+
|
1233
|
+
'VALUE rb_ary_unshift(VALUE array, VALUE value)','array.unshift(value)',
|
1234
|
+
'Pushes value onto the front of array and returns a reference to
|
1235
|
+
value.',
|
1236
|
+
|
1237
|
+
'VALUE rb_ary_each(VALUE array)','array.each','Calls rb_yield() on each
|
1238
|
+
element of the array in turn and returns a reference to the array as
|
1239
|
+
its result',
|
1240
|
+
|
1241
|
+
'VALUE rb_ary_join(VALUE array, VALUE sep)','array.join(sep)','Returns
|
1242
|
+
a new string whose contents are formed by joining the array elements
|
1243
|
+
with the specified string separator',
|
1244
|
+
|
1245
|
+
'VALUE rb_ary_reverse(VALUE array)','array.reverse','Returns a
|
1246
|
+
reference to a new array whose elements are the same as those of
|
1247
|
+
array, in reverse order.',
|
1248
|
+
|
1249
|
+
'VALUE rb_ary_sort(VALUE array)','array.sort','Returns a reference
|
1250
|
+
to a new array whose elements are the same as those
|
1251
|
+
of array, in sorted order.',
|
1252
|
+
|
1253
|
+
'VALUE rb_ary_sort_bang(VALUE array)','array.sort!','
|
1254
|
+
performs an in-place sort of array and returns a reference to the
|
1255
|
+
array. Example: <br>
|
1256
|
+
<b>rb_funcall(ary, rb_intern("sort!"), 0</b>',
|
1257
|
+
|
1258
|
+
'VALUE rb_ary_delete(VALUE array, VALUE value)',
|
1259
|
+
'array.delete(value)','Deletes all occurrences of value
|
1260
|
+
from array and returns a reference to value.',
|
1261
|
+
|
1262
|
+
'VALUE rb_ary_delete_at(VALUE array, long index)','array.delete_at(index)','
|
1263
|
+
deletes the array element at the specified index.',
|
1264
|
+
|
1265
|
+
'VALUE rb_ary_clear(VALUE array)','array.clear','Removes
|
1266
|
+
all elements from the array and returns a reference to the array',
|
1267
|
+
|
1268
|
+
'VALUE rb_ary_plus(VALUE array, VALUE other)','array.concat(other)',
|
1269
|
+
'adds the contents of other onto the end of array and returns a
|
1270
|
+
reference to the array. Unlike rb_ary_plus(), this function
|
1271
|
+
does modify the first array',
|
1272
|
+
|
1273
|
+
'VALUE rb_ary_includes(VALUE array, VALUE value)','array.include?(value)','
|
1274
|
+
returns Qtrue or Qfalse, depending on whether value is found in array.',
|
1275
|
+
|
1276
|
+
'VALUE rb_ary_length(VALUE array)','array.length','Returns the legnth of
|
1277
|
+
the array as a Fixnum. An alternatvie method for determinign the
|
1278
|
+
length of an array is to use RARRAY(array)->len',
|
1279
|
+
|
1280
|
+
'VALUE rb_ary_empty_pVALUE array)','array.empty?','returns
|
1281
|
+
Qtrue if the array lenght is zero, Qfalse otherwise.
|
1282
|
+
An alternative is to check the array length directly
|
1283
|
+
with RARRAY(array)->len'
|
1284
|
+
)+
|
1285
|
+
# ===================================================================== #
|
1286
|
+
# === ruby und .dup
|
1287
|
+
# ===================================================================== #
|
1288
|
+
## Ruby und .dup',HEADER_CSS,'ruby_dup',HEADER_BORDER)+
|
1289
|
+
rb_str_dupstr
|
1290
|
+
|
1291
|
+
(Allerdings mag dies nicht mehr aktuell sein.)
|
1292
|
+
|
1293
|
+
# ===================================================================== #
|
1294
|
+
# === Globale Variables in Ruby
|
1295
|
+
# ===================================================================== #
|
1296
|
+
## Globale Variablen in Ruby',HEADER_CSS,'ruby_global_vars',HEADER_BORDER)+
|
1297
|
+
Anmerkung: Man sollte seine globalen Variablen mit dem $
|
1298
|
+
Prefix prependen.','s0_5em
|
1299
|
+
|
1300
|
+
Allgemein deklarieren wir eine Variable in C-Ruby so (mit
|
1301
|
+
Beispiel):
|
1302
|
+
|
1303
|
+
rb_define_variable();
|
1304
|
+
rb_define_variable("$gvars", &hardware_list);
|
1305
|
+
rb_define_variable("$String", &MyString);
|
1306
|
+
|
1307
|
+
Folgender BeispielCode zeigt an, wie man globale Variablen in
|
1308
|
+
Ruby-C definiert:
|
1309
|
+
|
1310
|
+
static VALUE hardware_list;
|
1311
|
+
static VALUE MyString;
|
1312
|
+
MyString = rb_str_new(
|
1313
|
+
static VALUE Init_SysInfo() {
|
1314
|
+
rb_define_class(....
|
1315
|
+
hardware_list = rb_ary_new();
|
1316
|
+
rb_define_variable("$hardware", &hardware_list
|
1317
|
+
rb_ary_push(hardware_list, rb_str_new2("DVD")
|
1318
|
+
rb_ary_push(hardware_list, rb_str_new2("CDPlayer1")
|
1319
|
+
rb_ary_push(hardware_list, rb_str_new2("CDPlayer2")
|
1320
|
+
}
|
1321
|
+
|
1322
|
+
# ====================================================================== #
|
1323
|
+
# === RUBY ERRORS TAG ERROR TAG
|
1324
|
+
#
|
1325
|
+
# rb_raise tag.
|
1326
|
+
# rf embedded ruby_errors
|
1327
|
+
# ===================================================================== #
|
1328
|
+
## Ruby Errors',HEADER_CSS,'ruby_errors',HEADER_BORDER)+
|
1329
|
+
Gezielte Errors erzielt man mittels <b>rb_raise</b> so:
|
1330
|
+
|
1331
|
+
rb_raise(rb_eRangeError, "0x%lx is recycled object", p0
|
1332
|
+
|
1333
|
+
Ein anderer Fehler zb so:
|
1334
|
+
|
1335
|
+
rb_raise(rb_eTypeError, "wrong argument type %s
|
1336
|
+
(expected %s)", etype, type->name);
|
1337
|
+
|
1338
|
+
rb_raise(rb_eTypeError, "operand is not valid type");
|
1339
|
+
|
1340
|
+
rb_raise(rb_eTypeError, "cannot convert
|
1341
|
+
%s into String", rb_obj_classname(arg1));
|
1342
|
+
|
1343
|
+
rb_raise(rb_eArgError, "no stream to tell");
|
1344
|
+
|
1345
|
+
rb_raise(rb_eNameError, "undefined method %s
|
1346
|
+
in super", rb_id2name(id));
|
1347
|
+
|
1348
|
+
rb_raise(rb_eTypeError, "type of arg must be Matrix");
|
1349
|
+
|
1350
|
+
Wie man übrigens sieht, werden Errors mit <b>rb_e</b>
|
1351
|
+
prepended.
|
1352
|
+
|
1353
|
+
# ===================================================================== #
|
1354
|
+
# === RUBY CLASS DEFINIEREN in C class tag
|
1355
|
+
# ===================================================================== #
|
1356
|
+
## Ruby Classes definieren in RUBY C',HEADER_CSS,'Class_definieren',HEADER_BORDER)+
|
1357
|
+
Eine Klasse in ruby-C definieren geht über <b>static VALUE</b>:
|
1358
|
+
|
1359
|
+
static VALUE rb_cGenX;
|
1360
|
+
static VALUE rb_cGenXWriter;
|
1361
|
+
static VALUE rb_cFstabAppender;
|
1362
|
+
static VALUE rb_cTest;
|
1363
|
+
|
1364
|
+
Hier nochmals letzteres Beispiel kombiniert, um zu demonstrieren
|
1365
|
+
wie wir eine Klasse in <b>Ruby-C</b> definieren:
|
1366
|
+
|
1367
|
+
static VALUE cTest; cTest = rb_define_class("Test",
|
1368
|
+
<b>rb_cObject</b>); // <b class="red">class Test</b>
|
1369
|
+
|
1370
|
+
rb_cFstabAppender = rb_define_class("FstabAppender",
|
1371
|
+
rb_cObject);
|
1372
|
+
|
1373
|
+
Das zweite Argument (also <b>rb_cObject</b>) zeigt an,
|
1374
|
+
das unsere Klasse eine <b>Subklasse von Object</b> ist.
|
1375
|
+
|
1376
|
+
Object wird durch rb_cObject dargestellt. Den Rest
|
1377
|
+
findet man in ruby.h, bzw in Anhang D.
|
1378
|
+
|
1379
|
+
Um eine Klasse innerhalb zb eines Modules zu definieren
|
1380
|
+
muss man folgendes verwenden:
|
1381
|
+
|
1382
|
+
cTest = rb_define_class_under("Test", rb_cObject);
|
1383
|
+
rb_cMyFile = rb_define_class_under(rb_mHello,"MyFile", rb_cObject);
|
1384
|
+
rb_cGenXWriter = rb_define_class_under (rb_mGenX,
|
1385
|
+
"Writer", rb_cObject);
|
1386
|
+
|
1387
|
+
Die Klasse kann man dann einfach benutzen nachdem man die
|
1388
|
+
.so-SharedLib geladen hat.
|
1389
|
+
|
1390
|
+
Verwendungs Beispiel:
|
1391
|
+
|
1392
|
+
x = Test.new
|
1393
|
+
x = Jukebox.new
|
1394
|
+
x = SimpleClass.new
|
1395
|
+
|
1396
|
+
# ===================================================================== #
|
1397
|
+
# === rb define alloc func
|
1398
|
+
# ===================================================================== #
|
1399
|
+
## Ruby Alloc',HEADER_CSS,'rb_define_alloc_func',HEADER_BORDER)+
|
1400
|
+
Noch keine Info dazu erhältlich.
|
1401
|
+
|
1402
|
+
rb_define_alloc_func();
|
1403
|
+
|
1404
|
+
# ===================================================================== #
|
1405
|
+
# rb iv set tag. #rb_iv_set
|
1406
|
+
# rf embedded rb_iv_set
|
1407
|
+
# ===================================================================== #
|
1408
|
+
## rb_iv_set',HEADER_CSS,'rb_iv_set',HEADER_BORDER)+
|
1409
|
+
Eine Instanz Variable kann man auch setzen, und zwar so:
|
1410
|
+
|
1411
|
+
VALUE rb_iv_set(VALUE obj, char *name, VALUE value)
|
1412
|
+
|
1413
|
+
Dies setzt den Wert der <b>InstanzVariablen</b> namens name,
|
1414
|
+
also <b>@name</b> in ruby code, im Objekt auf value,
|
1415
|
+
welcher auch zurückgeliefert wird.
|
1416
|
+
|
1417
|
+
Konkrete Beispiele:
|
1418
|
+
br+
|
1419
|
+
rb_iv_set(self, "@array", array);
|
1420
|
+
rb_iv_set(self, "@msg", rb_str_new2("Hello, World !") // String Beispiel
|
1421
|
+
br+
|
1422
|
+
# ===================================================================== #
|
1423
|
+
# === Ruby Symbols
|
1424
|
+
# ===================================================================== #
|
1425
|
+
## Ruby Symbols in RUBY C',HEADER_CSS,'Symbols_definieren',HEADER_BORDER)+
|
1426
|
+
Das Erstellen eines Symbols ist leicht:
|
1427
|
+
|
1428
|
+
ID2SYM( rb_intern("verbose") ); '+ruby('/* In Ruby :verbose */'))+
|
1429
|
+
ID2SYM( rb_intern("noop") ); '+ruby('/* In Ruby :noop */'))+
|
1430
|
+
|
1431
|
+
rb_intern() gibt einem eine ID, die lediglich eine C Nummer ist.
|
1432
|
+
Man muss diese Nummer in ein Ruby Symbol Objekt verändern mittels
|
1433
|
+
des <b>ID2SYM() macro</b>.
|
1434
|
+
|
1435
|
+
Hierzu nun ein kompletteres Beispiel:
|
1436
|
+
|
1437
|
+
ID2SYM(rb_intern("name"));
|
1438
|
+
node_name = ID2SYM(rb_intern("ICKY"));
|
1439
|
+
ID method = rb_intern("<<");
|
1440
|
+
|
1441
|
+
creates a symbol :name for the string name.
|
1442
|
+
|
1443
|
+
Hat man die ID kann man <b>rb_id2name</b> verwenden um
|
1444
|
+
den Namen zu rekonstruieren.
|
1445
|
+
|
1446
|
+
Diese Nummer verwandelt man in ein Ruby Symbol Object
|
1447
|
+
indem man das ID2SYM() macro verwendet.
|
1448
|
+
|
1449
|
+
Den ID Wert eines Strings innerhalb von C erhält man
|
1450
|
+
allgemein so:
|
1451
|
+
|
1452
|
+
rb_intern(const char *name);
|
1453
|
+
|
1454
|
+
header('class Thread
|
1455
|
+
VALUE rb_thread_create(VALUE *func, void *data)
|
1456
|
+
Dies erstellt ein neues Thread.
|
1457
|
+
|
1458
|
+
# ===================================================================== #
|
1459
|
+
# === rb_obj_is_instance_of
|
1460
|
+
# ===================================================================== #
|
1461
|
+
div(id: 'rb_obj_is_instance_of'){
|
1462
|
+
h2('rb_obj_is_instance_of
|
1463
|
+
rb_obj_is_instance_of
|
1464
|
+
br
|
1465
|
+
|
1466
|
+
# ===================================================================== #
|
1467
|
+
# === Ruby Nil tag
|
1468
|
+
# ===================================================================== #
|
1469
|
+
## Ruby Nil',HEADER_CSS,'nil',HEADER_BORDER)+
|
1470
|
+
Es scheint so zu sein, das man in Ruby Qnil als Ergebnis zu
|
1471
|
+
liefern hat, auch wenn die Methode an sich nix macht...
|
1472
|
+
|
1473
|
+
VALUE some_function(int argc, VALUE *argv, VALUE classmod)
|
1474
|
+
{
|
1475
|
+
return Qnil;
|
1476
|
+
}
|
1477
|
+
|
1478
|
+
# ===================================================================== #
|
1479
|
+
# === ruby_inline
|
1480
|
+
# ===================================================================== #
|
1481
|
+
div(id: 'ruby_inline'){
|
1482
|
+
Mittels ruby inline kann man C code in .rb Dateien einbetten.
|
1483
|
+
br +
|
1484
|
+
Dies kann oft zu schnellerem Code führen.
|
1485
|
+
|
1486
|
+
require('inline'")+
|
1487
|
+
class << self
|
1488
|
+
inline do |builder|
|
1489
|
+
cmd3(' builder.c "
|
1490
|
+
cmd4(' int dummy(int input) {
|
1491
|
+
cmd5(' int i = 1;
|
1492
|
+
cmd5(' while (input >= 1) { input--; i *= 2; }
|
1493
|
+
cmd5(' return i;
|
1494
|
+
cmd4(' }
|
1495
|
+
cmd3(' "
|
1496
|
+
end
|
1497
|
+
end
|
1498
|
+
|
1499
|
+
puts dummy(8)')
|
1500
|
+
|
1501
|
+
# ===================================================================== #
|
1502
|
+
# === String tag strings tag.
|
1503
|
+
#
|
1504
|
+
# rb_eval_string tag. rf embedded rb_eval_string
|
1505
|
+
#
|
1506
|
+
# ===================================================================== #
|
1507
|
+
div(id: 'rb_eval_string'){
|
1508
|
+
h2("rb_eval_string und weitere String Functions",'','strings
|
1509
|
+
Mittels rb eval kann man bequem Ruby Code testen:','','','Strings
|
1510
|
+
rb_eval_string("anObject.each{|x| x.clearFlag }"
|
1511
|
+
|
1512
|
+
Will man eine spezielle Methode aufrufen (sollte schneller gehen
|
1513
|
+
als eval), so ist folgendes zu empfehlen:
|
1514
|
+
|
1515
|
+
rb_funcall(receiver, method_id, argc, ...)
|
1516
|
+
|
1517
|
+
Hier noch die andere String Functions:
|
1518
|
+
|
1519
|
+
h2('String functions
|
1520
|
+
|
1521
|
+
rb_str_new(const char *ptr, long len);
|
1522
|
+
--Creates a new Ruby string.
|
1523
|
+
rb_str_new2(const char *ptr);
|
1524
|
+
-- Creates a new Ruby string from a C string.
|
1525
|
+
This is equivalent to rb_str_new(ptr, strlen(ptr))
|
1526
|
+
rb_tainted_str_new(const char *ptr, long len)
|
1527
|
+
-- Creates a new tainted Ruby string.
|
1528
|
+
Strings from external data sources should be tainted.
|
1529
|
+
|
1530
|
+
rb_tainted_str_new2(const char *ptr);
|
1531
|
+
-- Creates a new tainted Ruby string from a C string.
|
1532
|
+
|
1533
|
+
rb_str_cat(VALUE str, const char *ptr, long len);
|
1534
|
+
-- Appends len bytes of data from ptr to the Ruby string.
|
1535
|
+
|
1536
|
+
# =================================================================== #
|
1537
|
+
# === rb_define_module_function
|
1538
|
+
# =================================================================== #
|
1539
|
+
div(id: 'rb_define_module_function'){
|
1540
|
+
Dies nutzt man um module_function zu implementieren.
|
1541
|
+
|
1542
|
+
rb_define_module_function')
|
1543
|
+
|
1544
|
+
# =================================================================== #
|
1545
|
+
# === Strings in Ruby
|
1546
|
+
# =================================================================== #
|
1547
|
+
## Ruby Strings auf C Ebene', HEADER_CSS,'ruby_str_new',HEADER_BORDER)+
|
1548
|
+
Strings in Ruby werden so verwendet:
|
1549
|
+
|
1550
|
+
rb_str_new2
|
1551
|
+
|
1552
|
+
Dies is die typische Art von Ruby, wie man Strings nutzt
|
1553
|
+
|
1554
|
+
VALUE str = rb_str_new2(p);
|
1555
|
+
return str;
|
1556
|
+
result = xmlBufferCreate();
|
1557
|
+
ret = rb_str_new2(result->content);
|
1558
|
+
|
1559
|
+
Noch ein Beispiel:
|
1560
|
+
|
1561
|
+
VALUE roebe;
|
1562
|
+
roebe = rb_str_new2("Roebe war hier");
|
1563
|
+
printf("%s <--",roebe);
|
1564
|
+
|
1565
|
+
Noch ein Beispiel:
|
1566
|
+
|
1567
|
+
VALUE string;
|
1568
|
+
string = rb_str_new2("Dein String");
|
1569
|
+
Will man die Information von einem Ruby String als einen C
|
1570
|
+
String repräsentieren, verwendet man das STR2CSTR Makro.
|
1571
|
+
|
1572
|
+
VALUE stringObj;
|
1573
|
+
char *cstr;
|
1574
|
+
cstr = STR2CSTR(stringObj);
|
1575
|
+
|
1576
|
+
anm('Dieses Makro gibt einem einen Pointer zurück, der die
|
1577
|
+
aktuelle String Daten hat - es ist also keine Kopie, und man
|
1578
|
+
sollte genau schauen was man damit macht.
|
1579
|
+
|
1580
|
+
Will man die echte Länge eines Ruby String wissen, inklusive der
|
1581
|
+
NULL bytes und so weiter, kann man dies verwenden:
|
1582
|
+
|
1583
|
+
VALUE stringObj;
|
1584
|
+
char *cstr;
|
1585
|
+
int stringLength;
|
1586
|
+
cstr = rb_str2cstr(stringObj, &stringLength);
|
1587
|
+
|
1588
|
+
Statt diesem Weg gibt es einen noch schnelleren Weg:
|
1589
|
+
|
1590
|
+
VALUE stringObj;
|
1591
|
+
int stringLength;
|
1592
|
+
stringLength = RSTRING(stringObj)->len;
|
1593
|
+
p {
|
1594
|
+
Hier noch Funktionen um einen neuen String zu
|
1595
|
+
erstellen (String.new):
|
1596
|
+
|
1597
|
+
table2('','','',
|
1598
|
+
'VALUE rb_str_new(const char *str, long size)','Returns a
|
1599
|
+
new string whose contents are copied from the first size
|
1600
|
+
characters pointed to by str.',
|
1601
|
+
'VALUE rb_str_ne2 (const char *cstr)','Returns a new Ruby string
|
1602
|
+
whose contents are copied from the NULL-terminated C string cstr.'
|
1603
|
+
)+
|
1604
|
+
|
1605
|
+
Und hier Funktionen, mit denen wir mit Strings arbeiten:
|
1606
|
+
|
1607
|
+
table3('','','',
|
1608
|
+
'C Funktion','Äquivalentes Ruby Statement','Beschreibung',
|
1609
|
+
'VALUE rb_str_to_str(VALUE obj)','obj.to_str', 'Attempts to
|
1610
|
+
convert the original object to a string by calling its to_str method.',
|
1611
|
+
'VALUE rb_str_dup VALUE str)','String.new(str)','Returns a
|
1612
|
+
new string that is a duplicate of the original',
|
1613
|
+
'VALUE rb_str_plus(VALUE str1, VALUE str2)','str1+str2.to_str',
|
1614
|
+
'returns a new string formed by concatenating the contents of str1
|
1615
|
+
and str2; neither of the original strings is modified. Note
|
1616
|
+
that if str2 is not a string but is a string-like object
|
1617
|
+
that implements a to_str method, Ruby will first call that
|
1618
|
+
objects to_str method to get a string representation
|
1619
|
+
of str2',
|
1620
|
+
'VALUE rb_str_times(VALUE str, VALUE count)','str * count',
|
1621
|
+
'Returns a new string which is formed by repeating the
|
1622
|
+
original string count times.',
|
1623
|
+
'VALUE rb_str_substr(VALUE str, long start, long length)',
|
1624
|
+
'str[start, length]','Returns a new string which is the
|
1625
|
+
substring of str, beginning at position start and with
|
1626
|
+
specified length.',
|
1627
|
+
'VALUE rb_str_cat(VALUE str, const char *str, long size)',
|
1628
|
+
'str += "another string"','Modifies the original string
|
1629
|
+
by adding the first size characters pointed to by str to
|
1630
|
+
the end of this string. Returns a reference to
|
1631
|
+
the modified string.',
|
1632
|
+
'VALUE rb_str_cat2(VALUE str, const char *cstr)','','
|
1633
|
+
same as rb_str_cat(), but assumes that cstr is a
|
1634
|
+
NULL-terminated C string.',
|
1635
|
+
'VALUE rb_str_append(VALUE str1, VALUE str2)','str1 += str2.to_str',
|
1636
|
+
'Modifies str1 by appending str2 to it. Note that if str2 is not
|
1637
|
+
astring but is a string-like object that
|
1638
|
+
implements a to_str method, Ruby will first call that objects
|
1639
|
+
to_str method to get a string representation of str',
|
1640
|
+
'VALUE rb_str_concat(VALUE str1, VALUE str2)','str1 << str2',
|
1641
|
+
'Modifies str1 by concatenating it with str2. If str2 is a Fixnum,
|
1642
|
+
it is interpreted as an ASCII character code; otherwise, the
|
1643
|
+
same rules used for rb_str_append() apply.',
|
1644
|
+
'int rb_str_hash(VALUE str)','str.hash','returns the hash code for str',
|
1645
|
+
'int rb_str_cmpVALUE str1, VALUE str2)','str1 <=> str','Compares
|
1646
|
+
the contents of the two strings and returns -1 if str1 is lexicographically
|
1647
|
+
less than str2, 1 if str1 is greater than str2, or 0 if they are equial.',
|
1648
|
+
'VALUE rb_str_match(VALUE str, VALUE obj)','str =~ obj','Uses obj as a pattern
|
1649
|
+
to match against str. If obj is either a Regexp or String instance,
|
1650
|
+
rb_str_match() will return a Fixnum containing the match position or
|
1651
|
+
Qnil if no match is found. If obj is some other type that doesnt
|
1652
|
+
implement a =~ method, rb_str_match() will return QFalse',
|
1653
|
+
'VALUE rb_str_split(VALUE str, const char *pattern)','str.split(pattern)',
|
1654
|
+
'Returns a new array formed by splitting the input string at delimiters
|
1655
|
+
specified in the pattern string. If pattern is not a single
|
1656
|
+
character string (for example, a comma) it is evaluated as a
|
1657
|
+
regular expression.',
|
1658
|
+
'VALUE rb_str_length(VALUE str)','str.length','Returns the length of str.',
|
1659
|
+
'VALUE rb_str_empty(VALUE str)','str.empty?','Returns Qtrue if str
|
1660
|
+
is empty (its size = 0), otherwise it returns Qfalse'
|
1661
|
+
)
|
1662
|
+
}
|
1663
|
+
|
1664
|
+
# ===================================================================== #
|
1665
|
+
# === ANHANG TAG
|
1666
|
+
#
|
1667
|
+
# ANHANG A
|
1668
|
+
# ===================================================================== #
|
1669
|
+
div('mart3em s0_5em'){
|
1670
|
+
h1('Anhang zu Embedding and Extending Ruby','','','Anhang
|
1671
|
+
h2('Anhang A - bitte alfabetisch ordnen.
|
1672
|
+
h3('Structs:
|
1673
|
+
|
1674
|
+
table2('s2em','','anhang_a',
|
1675
|
+
'<b>struct RArray</b>','array',
|
1676
|
+
'<b>struct RBignum</b>','big integers (one of the three numeric types)',
|
1677
|
+
'<b>struct RClass</b>','class object, also has
|
1678
|
+
an m_tbl (a symbol table for storing methods)
|
1679
|
+
and a superclass (pointer to a superclass)',
|
1680
|
+
'<b>struct RData</b>','all the classes defined at C level,
|
1681
|
+
except the ones mentioned above',
|
1682
|
+
'<b>struct RFile</b>','IO, File, Socket, etc',
|
1683
|
+
'<b>struct RFloat</b>','small numbers',
|
1684
|
+
'<b>struct RHash</b>','hash table',
|
1685
|
+
'<b>struct RObject</b>','all things for which none of
|
1686
|
+
the following applies',
|
1687
|
+
'<b>struct RRegexp</b>','regular expression',
|
1688
|
+
'<b>struct RString</b>','string class',
|
1689
|
+
'<b>struct RStruct</b>',"Ruby's Struct class"
|
1690
|
+
)
|
1691
|
+
|
1692
|
+
# ===================================================================== #
|
1693
|
+
# === Anhang B - Makros und Methoden zum Konvertieren
|
1694
|
+
#
|
1695
|
+
# MAKROS TAG
|
1696
|
+
# rf rembedded anhang_b
|
1697
|
+
# ===================================================================== #
|
1698
|
+
h3('Anhang B - Makros und Methoden zum Konvertieren
|
1699
|
+
table2('s2em','','anhang_b',
|
1700
|
+
'<b>INT2FIX(long or int)</b>','Integer nach Fixnum
|
1701
|
+
Konvertierung (faster) [Beispiel: v_age = INT2FIX(25]',
|
1702
|
+
'<b>INT2NUM(int)</b>','Fixnum or Bignum',
|
1703
|
+
'<b>INT2NUM(long or int)</b>','Fixnum or Bignum',
|
1704
|
+
'<b>LL2NUM</b>','conversion for 64bit',
|
1705
|
+
'<b>LONG2FIX</b>','',
|
1706
|
+
'<b>rb_str_new2(char *)</b>','String',
|
1707
|
+
'<b>rb_float_new(double)</b>','Float, wird zum
|
1708
|
+
Beispiel so eingesetzt:
|
1709
|
+
<b>return rb_float_new(qp_get_frame_rate(movie_ctx)</b>'
|
1710
|
+
)+
|
1711
|
+
# ===================================================================== #
|
1712
|
+
# === Anhang C
|
1713
|
+
#
|
1714
|
+
# CHECKS TAG
|
1715
|
+
# ===================================================================== #
|
1716
|
+
h3('Anhang C - Checks (Pointer ist zum Beispiel
|
1717
|
+
<b>unsigned long ptr</b>, p0; p0 =
|
1718
|
+
ptr = NUM2ULONG(objid)
|
1719
|
+
table2('s2em','','anhang_c',
|
1720
|
+
'if (ptr == Qtrue)', 'return Qtrue;',
|
1721
|
+
'if (ptr == Qfalse)','return Qfalse;',
|
1722
|
+
'if (ptr == Qnil)', 'return Qnil;'
|
1723
|
+
)+
|
1724
|
+
# ===================================================================== #
|
1725
|
+
# === CLASS VARS TAG
|
1726
|
+
# ===================================================================== #
|
1727
|
+
h3('Anhang D - Vordefinierte Klassenvariablen, bitte <b>alphabetisch</b>
|
1728
|
+
ordnen.
|
1729
|
+
table2('s2em', '','anhang_d',
|
1730
|
+
'rb_cArray;', '',
|
1731
|
+
'rb_cBignum;', '',
|
1732
|
+
'rb_cClass;', '',
|
1733
|
+
'rb_cDir;', '',
|
1734
|
+
'rb_cData;','',
|
1735
|
+
'rb_cFalseClass;','',
|
1736
|
+
'rb_cFile;','',
|
1737
|
+
'rb_cFixnum;', '',
|
1738
|
+
'rb_cFloat;', '',
|
1739
|
+
'rb_cHash;','',
|
1740
|
+
'rb_cInteger;', 'oder <b>rb_int_new(</b><br>
|
1741
|
+
rb_define_const(iFP, "MAX_PATHLEN", rb_int_new(IFP_MAXPATHLEN)',
|
1742
|
+
'rb_cIO;', '',
|
1743
|
+
'rb_cModule;', '',
|
1744
|
+
'rb_cNilClass;', '',
|
1745
|
+
'rb_cNumeric;', '',
|
1746
|
+
'rb_cObject;', '',
|
1747
|
+
'rb_cproc;','',
|
1748
|
+
'rb_cRange;', '',
|
1749
|
+
'rb_cRegexp;', '',
|
1750
|
+
'rb_cString;', '',
|
1751
|
+
'rb_cStruct;', '',
|
1752
|
+
'rb_cSymbol;', '',
|
1753
|
+
'rb_cThread;', '',
|
1754
|
+
'rb_cTime;','',
|
1755
|
+
'rb_cTrueClass;', ''
|
1756
|
+
)+
|
1757
|
+
# ===================================================================== #
|
1758
|
+
# === Anhang E - Data Types für Ruby
|
1759
|
+
# ===================================================================== #
|
1760
|
+
h3('Anhang E - Data Types für Ruby (<b>alphabetisch</b> geordnet)
|
1761
|
+
table2('BO mars4px s2em','','anhang_e',
|
1762
|
+
'T_ARRAY', 'array',
|
1763
|
+
'T_BIGNUM', 'multi precision integer',
|
1764
|
+
'T_CLASS', 'class',
|
1765
|
+
'T_DATA', 'data',
|
1766
|
+
'T_FALSE', 'false',
|
1767
|
+
'T_FILE', 'IO',
|
1768
|
+
'T_FIXNUM', 'Fixnum(31bit integer)',
|
1769
|
+
'T_FLOAT', 'floating point number',
|
1770
|
+
'T_HASH', 'associative array',
|
1771
|
+
'T_MODULE', 'module',
|
1772
|
+
'T_NIL', 'nil',
|
1773
|
+
'T_OBJECT', 'ordinary object',
|
1774
|
+
'T_REGEXP', 'regular expression',
|
1775
|
+
'T_STRING', 'string',
|
1776
|
+
'T_STRUCT', '(Ruby) structure',
|
1777
|
+
'T_SYMBOL ','symbol',
|
1778
|
+
'T_TRUE', 'true'
|
1779
|
+
)+
|
1780
|
+
# ===================================================================== #
|
1781
|
+
# === Anhang F
|
1782
|
+
#
|
1783
|
+
# Functions for Working with Objects #anhang_f
|
1784
|
+
# ===================================================================== #
|
1785
|
+
h3('Anhang F - Funktionen zum Arbeiten mit Objekten
|
1786
|
+
(<b>alphabetisch</b> ordnen)
|
1787
|
+
table2('FW4 mars4px s2em','','anhang_f',
|
1788
|
+
'void rb_obj_call_init (<b>VALUE</b> obj, int argc, VALUE *argv)',
|
1789
|
+
'Calls the objects initialize method, passing the array
|
1790
|
+
of arguments, argv, with lengthc argc.array',
|
1791
|
+
|
1792
|
+
'<b>VALUE</b> rb_obj_is_instance_of(VALUE obj, VALUE klass)','Returns
|
1793
|
+
Qtrue (the C constant for rubys true) if obj is an instance of
|
1794
|
+
class klass.',
|
1795
|
+
|
1796
|
+
'<b>VALUE</b> rb_obj_is_kind_of (VALUE obj, VALUE klass)',
|
1797
|
+
'Returns Qtrue if obj is an instance of class klass or one
|
1798
|
+
of its subclasses',
|
1799
|
+
|
1800
|
+
'<b>VALUE</b> rb_obj_clone (VALUE obj)','Returns the result of
|
1801
|
+
calling the objects <b>.clone</b> method',
|
1802
|
+
|
1803
|
+
'<b>VALUE</b> rb_obj_dup (VALUE obj)','Returns the result of
|
1804
|
+
calling the objects <b>.dup</b> method.',
|
1805
|
+
|
1806
|
+
'<b>VALUE</b> rb_any_to_s (VALUE obj)','Returns a string containing
|
1807
|
+
information about the object, the default <b>.to_s</b> method
|
1808
|
+
from Rubys Kernel module',
|
1809
|
+
|
1810
|
+
'<b>VALUE</b> rb_obj_as_string (VALUE obj)','returns a string
|
1811
|
+
representation of obj by first calling the objects <b>.to_s</b>
|
1812
|
+
method or, if that fails, by calling rb_any_to_s() on obj',
|
1813
|
+
|
1814
|
+
'<b>VALUE</b> rb_inspect (VALUE obj)','returns the result of
|
1815
|
+
calling the objects <b>.inspect</b> method'
|
1816
|
+
)+
|
1817
|
+
# ===================================================================== #
|
1818
|
+
# === Anhang G
|
1819
|
+
#
|
1820
|
+
# Functions for Conversion from Ruby Numeric Types into C
|
1821
|
+
#
|
1822
|
+
# Numeric Types.
|
1823
|
+
# ===================================================================== #
|
1824
|
+
h3('Anhang G - Funktionen zum Konvertieren von Ruby Numeric Types in
|
1825
|
+
C Numeric Types (<b>alphabetisch</b> ordnen)
|
1826
|
+
table2('FW4 mars4px s2em','','anhang_g',
|
1827
|
+
'C Function/Macro','Beschreibung',
|
1828
|
+
'int NUM2INT (VALUE aNumeric)','Converts the input Numeric
|
1829
|
+
value to a C int. If you know that the input value is a
|
1830
|
+
Fixnum, use the faster FIX2INT macro.',
|
1831
|
+
|
1832
|
+
'int FIX2INT(VALUE aFixnum)','Converts the input
|
1833
|
+
Fixnum value to a C int.',
|
1834
|
+
|
1835
|
+
'unsigned int NUM2UINT(VALUE aNumeric)','Converts the
|
1836
|
+
input Numeric value to a C unsigned int. If you know that
|
1837
|
+
the input value is a Fixnum, use the faster FIX2UINT macro.',
|
1838
|
+
|
1839
|
+
'unsigned int FIX2UINT(VALUE aFixnum)','Converts the input
|
1840
|
+
Fixnum value to a C unsigned int.',
|
1841
|
+
|
1842
|
+
'long NUM2LONG (VALUE aNumeric)','Converts the input Numeric
|
1843
|
+
value to a C long. If you know that the input value is
|
1844
|
+
a Fixnum, use the faster FIX2LONG macro',
|
1845
|
+
|
1846
|
+
'long FIX2LONG (VALUE aFixnum)','Converts the input Fixnum
|
1847
|
+
value to a C long',
|
1848
|
+
|
1849
|
+
'unsigned long NUM2ULONG (VALUE aNumeric)','Converts
|
1850
|
+
the input Numeric value to a C unsigned long',
|
1851
|
+
|
1852
|
+
'char NUM2CHR (VALUE aNumeric)', 'converts the input
|
1853
|
+
Numeric value to a C char',
|
1854
|
+
|
1855
|
+
'double NUM2DBL (VALUE aNumeric)','Converts the input
|
1856
|
+
Numeric value to a C double',
|
1857
|
+
|
1858
|
+
'VALUE INT2NUM(int i) or VALUE INT2NUM(long l) ','converts
|
1859
|
+
the input int or long value into either a Fixnum or
|
1860
|
+
Bignum instance, depending on its size.',
|
1861
|
+
|
1862
|
+
'VALUE INT2FIX(int i) or VALUE INT2FIX(long l)',' converts
|
1863
|
+
the input int or long alue into a Fixnum. If you are sure
|
1864
|
+
that the input value will fit into a Fixnumm, this macro
|
1865
|
+
is a little faster than the INT2NUM macro.',
|
1866
|
+
|
1867
|
+
'VALUE CHR2FIX(char c)','converts the input char value
|
1868
|
+
into a fixnum.',
|
1869
|
+
|
1870
|
+
'VALUE rb_float_new(double f) ','converts the input
|
1871
|
+
double value into a Float'
|
1872
|
+
)+
|
1873
|
+
# ===================================================================== #
|
1874
|
+
# === Anhang H
|
1875
|
+
# ===================================================================== #
|
1876
|
+
h3('Anhang H
|
1877
|
+
div {
|
1878
|
+
h3('Ruby API Accessing Variables
|
1879
|
+
rb_iv_get
|
1880
|
+
rb_ivar_get
|
1881
|
+
rb_iv_set
|
1882
|
+
rb_ivar_set
|
1883
|
+
rb_gv_set
|
1884
|
+
rb_gv_get
|
1885
|
+
rb_cvar_set
|
1886
|
+
rb_cvar_get
|
1887
|
+
rb_cvar_defined
|
1888
|
+
rb_cv_set
|
1889
|
+
rb_cv_get')
|
1890
|
+
|
1891
|
+
# ========================================================================= #
|
1892
|
+
# === LINKS ZU EMBEDDED RUBY
|
1893
|
+
# ========================================================================= #
|
1894
|
+
div('marpad1em marl2_5em','','border:5px dotted grey'){
|
1895
|
+
h2('Links zu Embedded Ruby','mart2px
|
1896
|
+
p('marl1em ind0px'){
|
1897
|
+
a('http://www.onlamp.com/pub/a/onlamp/2004/11/18/extending_ruby.html',
|
1898
|
+
content: 'RubyOnLamp.com', css_class: 's1em'
|
1899
|
+
)+
|
1900
|
+
|
1901
|
+
a('http://rhg.rubyforge.org/chapter02.html',
|
1902
|
+
content: 'A GREAT Tutorial', css_class: 's1em'
|
1903
|
+
)+
|
1904
|
+
|
1905
|
+
a('http://www.ruby-doc.org/doxygen/1.8.4/classes.html',
|
1906
|
+
content: 'Die C Klassen von Ruby', css_class: 's1em'
|
1907
|
+
)+
|
1908
|
+
|
1909
|
+
a('http://www.oreillynet.com/ruby/blog/2006/02/ruby_values_and_object_ids.html',
|
1910
|
+
content: 'Ruby VALUEs und .object_id', css_class: 's1em'
|
1911
|
+
)+
|
1912
|
+
|
1913
|
+
a('http://eigenclass.org/hiki.rb?ruby+internals+guide',
|
1914
|
+
content: 'Ruby VALUEs und .object_id', css_class: 's1em'
|
1915
|
+
)+
|
1916
|
+
|
1917
|
+
a('http://phrogz.net/ProgrammingRuby/ext_ruby.html',
|
1918
|
+
content: 'Auch gute Erklärungen', css_class: 's1em'
|
1919
|
+
)+
|
1920
|
+
|
1921
|
+
a('http://www.oreillynet.com/ruby/blog/2007/04/c_extension_authors_use_rb_sca_1.html',
|
1922
|
+
content: 'Ruby-C Scan Arg Beispiel', css_class: 's1em'
|
1923
|
+
)+
|
1924
|
+
|
1925
|
+
a('http://www.jaredrichardson.net/blog/2006/03/25/#C-extenstions',
|
1926
|
+
content: 'Ruby-C', css_class: 's1em'
|
1927
|
+
)+
|
1928
|
+
|
1929
|
+
a('http://www.rubyist.net/~nobu/ruby/Ruby_Extension_Manual.html',
|
1930
|
+
content: 'Extending Ruby', css_class: 's1em'
|
1931
|
+
)+
|
1932
|
+
|
1933
|
+
a('http://fixnum.org/ruby_c.html',
|
1934
|
+
content: 'Von Ruby zu C', css_class: 's1em'
|
1935
|
+
)+
|
1936
|
+
|
1937
|
+
a('http://izumi.plan99.net/blog/index.php/2007/10/12/how-the-ruby-heap-is-implemented/',
|
1938
|
+
content: 'Ruby und Heap Management', css_class: 's1em'
|
1939
|
+
)+
|
1940
|
+
|
1941
|
+
a('http://www.ruby-forum.com/',
|
1942
|
+
content: 'Ruby Forum', css_class: 's1em'
|
1943
|
+
)+
|
1944
|
+
|
1945
|
+
a('http://blog.zenspider.com/archives/2006/08/writing_c_exten.html',
|
1946
|
+
content: 'Zenspider on Writing a C extension', css_class: 's1em'
|
1947
|
+
)+
|
1948
|
+
|
1949
|
+
a('http://banisterfiend.wordpress.com/2008/10/25/the-secret-life-of-singletons/',
|
1950
|
+
content: 'The Secret of Singletons', css_class: 's1em'
|
1951
|
+
)+
|
1952
|
+
|
1953
|
+
a('http://www.rubyfleebie.com/ruby-and-c-part-1/',
|
1954
|
+
content: 'Ruby and C', css_class: 's1em'
|
1955
|
+
)+
|
1956
|
+
|
1957
|
+
a('http://coaxialhost.com/tutorials/writing_ruby_extensions.html',
|
1958
|
+
content: 'Ruby and C', css_class: 's1em'
|
1959
|
+
)+
|
1960
|
+
|
1961
|
+
a('https://silverhammermba.github.io/emberb/c/',
|
1962
|
+
content: 'Ruby and C', css_class: 's1em'
|
1963
|
+
)+
|
1964
|
+
|
1965
|
+
a(:c_language, content: 'Lokale C Page', css_class: 's1em
|
1966
|
+
|
1967
|
+
a(:ruby_gtk, content: 'Lokale GTK Page', css_class: 's1em
|
1968
|
+
br
|
1969
|
+
|