studium 0.9.383

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of studium might be problematic. Click here for more details.

Files changed (894) hide show
  1. checksums.yaml +7 -0
  2. data/README.md +1651 -0
  3. data/bin/ask_question +7 -0
  4. data/bin/check_description_of_these_lectures +7 -0
  5. data/bin/curriculum_module_displayer +7 -0
  6. data/bin/d10 +7 -0
  7. data/bin/d100 +7 -0
  8. data/bin/d15 +7 -0
  9. data/bin/d20 +7 -0
  10. data/bin/d25 +7 -0
  11. data/bin/d3 +7 -0
  12. data/bin/d30 +7 -0
  13. data/bin/d5 +7 -0
  14. data/bin/determine_curricula +7 -0
  15. data/bin/exam_registration_at +7 -0
  16. data/bin/exam_statistics +7 -0
  17. data/bin/exams_per_month +9 -0
  18. data/bin/finished_exams_at_this_university +7 -0
  19. data/bin/flashcards +7 -0
  20. data/bin/mandatory_continuous_assessment +7 -0
  21. data/bin/mandatory_upcoming_courses +7 -0
  22. data/bin/n_exam_questions_already_answered +17 -0
  23. data/bin/nquestions +7 -0
  24. data/bin/nsolved +7 -0
  25. data/bin/open_last_exam_question_asked_file +7 -0
  26. data/bin/passed_pr/303/274fungsimmanente_courses +7 -0
  27. data/bin/return_n_ects_from_this_file +7 -0
  28. data/bin/show_lectures_on_the_commandline +7 -0
  29. data/bin/show_themes +7 -0
  30. data/bin/solved +9 -0
  31. data/bin/studienkennzahl +7 -0
  32. data/bin/studium +7 -0
  33. data/bin/studium_skeleton +7 -0
  34. data/bin/ufind +7 -0
  35. data/bin/upcoming_exams +7 -0
  36. data/doc/ECTS_CONSIDERATIONS.md +54 -0
  37. data/doc/HOW_TO_ADAPT_THIS_PROJECT.md +40 -0
  38. data/doc/HOW_TO_DETERMINE_WHICH_PART_IS_THE_QUESTION_AND_WHICH_PART_IS_THE_ANSWER.md +39 -0
  39. data/doc/README.gen +1634 -0
  40. data/doc/TODO_FOR_STUDIUM_GEM.md +119 -0
  41. data/doc/deprecated.md +18 -0
  42. data/doc/documentation_for_the_file_lecture_information.md +259 -0
  43. data/doc/elegant_colours.md +20 -0
  44. data/img/STUDIES.png +0 -0
  45. data/lib/studium.rb +5 -0
  46. data/lib/studium/autoinclude.rb +7 -0
  47. data/lib/studium/base/base.rb +108 -0
  48. data/lib/studium/base/cliner.rb +58 -0
  49. data/lib/studium/base/colours.rb +349 -0
  50. data/lib/studium/base/commandline_arguments.rb +46 -0
  51. data/lib/studium/base/constants.rb +32 -0
  52. data/lib/studium/base/curriculum.rb +304 -0
  53. data/lib/studium/base/directory_to_the_exam_topics.rb +23 -0
  54. data/lib/studium/base/editor.rb +20 -0
  55. data/lib/studium/base/encoding.rb +35 -0
  56. data/lib/studium/base/esystem.rb +24 -0
  57. data/lib/studium/base/minimal_prototype.rb +33 -0
  58. data/lib/studium/base/misc.rb +819 -0
  59. data/lib/studium/base/mode.rb +89 -0
  60. data/lib/studium/base/obtain.rb +144 -0
  61. data/lib/studium/base/opnn.rb +46 -0
  62. data/lib/studium/base/prototype.rb +102 -0
  63. data/lib/studium/base/readlines.rb +53 -0
  64. data/lib/studium/base/replace.rb +108 -0
  65. data/lib/studium/base/reset.rb +49 -0
  66. data/lib/studium/base/run.rb +17 -0
  67. data/lib/studium/base/src_dir_at_home.rb +20 -0
  68. data/lib/studium/base/time.rb +599 -0
  69. data/lib/studium/base/unicode.rb +92 -0
  70. data/lib/studium/base/word_wrap.rb +55 -0
  71. data/lib/studium/boku/README.md +4 -0
  72. data/lib/studium/boku/boku_/303/266ffnungszeiten.rb +29 -0
  73. data/lib/studium/boku/show_three_pillars_of_these_lectures.rb +107 -0
  74. data/lib/studium/boku/three_pillars.rb +245 -0
  75. data/lib/studium/check/README.md +7 -0
  76. data/lib/studium/check/check_curriculum_for_correct_separation_of_bachelor_and_master.rb +149 -0
  77. data/lib/studium/check/check_for_all_exam_topics_being_registered.rb +82 -0
  78. data/lib/studium/check/check_for_existing_description_of_this_lecture.rb +194 -0
  79. data/lib/studium/check/check_the_lecture_information_file.rb +168 -0
  80. data/lib/studium/colours/colours.rb +596 -0
  81. data/lib/studium/colours/sfancy.rb +38 -0
  82. data/lib/studium/colours/sfile.rb +35 -0
  83. data/lib/studium/colours/simp.rb +38 -0
  84. data/lib/studium/commandline/commandline.rb +121 -0
  85. data/lib/studium/commandline/fast_commandline_options.rb +994 -0
  86. data/lib/studium/commandline/help.rb +147 -0
  87. data/lib/studium/commandline/menu.rb +366 -0
  88. data/lib/studium/commandline/misc.rb +11 -0
  89. data/lib/studium/constants/boku_wien.rb +52 -0
  90. data/lib/studium/constants/constants.rb +30 -0
  91. data/lib/studium/constants/delay.rb +21 -0
  92. data/lib/studium/constants/editor.rb +25 -0
  93. data/lib/studium/constants/exam_topics.rb +161 -0
  94. data/lib/studium/constants/file_constants.rb +826 -0
  95. data/lib/studium/constants/image_constants.rb +217 -0
  96. data/lib/studium/constants/last_question_asked.rb +32 -0
  97. data/lib/studium/constants/lecture_types_that_are_mandatory_continuous_assessment.rb +47 -0
  98. data/lib/studium/constants/log_dir.rb +174 -0
  99. data/lib/studium/constants/misc.rb +200 -0
  100. data/lib/studium/constants/namespace.rb +14 -0
  101. data/lib/studium/constants/regexes.rb +32 -0
  102. data/lib/studium/constants/return_file_for_this_curriculum.rb +407 -0
  103. data/lib/studium/constants/roebe.rb +151 -0
  104. data/lib/studium/constants/time.rb +49 -0
  105. data/lib/studium/constants/tu_wien.rb +39 -0
  106. data/lib/studium/constants/uni_wien.rb +24 -0
  107. data/lib/studium/constants/unicode.rb +27 -0
  108. data/lib/studium/constants/week.rb +137 -0
  109. data/lib/studium/constants/www_constants.rb +23 -0
  110. data/lib/studium/curricula/curriculum.rb +187 -0
  111. data/lib/studium/curricula/curriculum_as_string.rb +279 -0
  112. data/lib/studium/curricula/curriculum_module_displayer/constants.rb +38 -0
  113. data/lib/studium/curricula/curriculum_module_displayer/curriculum_module_displayer.rb +421 -0
  114. data/lib/studium/curricula/curriculum_module_displayer/initialize.rb +25 -0
  115. data/lib/studium/curricula/curriculum_module_displayer/menu.rb +45 -0
  116. data/lib/studium/curricula/curriculum_module_displayer/reset.rb +77 -0
  117. data/lib/studium/curricula/curriculum_module_displayer/run.rb +20 -0
  118. data/lib/studium/curricula/curriculum_module_displayer/set_use_this_curriculum.rb +90 -0
  119. data/lib/studium/curricula/curriculum_module_displayer/show_and_report.rb +190 -0
  120. data/lib/studium/curricula/determine_curricula/constants.rb +16 -0
  121. data/lib/studium/curricula/determine_curricula/determine_curricula.rb +36 -0
  122. data/lib/studium/curricula/determine_curricula/help.rb +39 -0
  123. data/lib/studium/curricula/determine_curricula/initialize.rb +48 -0
  124. data/lib/studium/curricula/determine_curricula/menu.rb +138 -0
  125. data/lib/studium/curricula/determine_curricula/misc.rb +402 -0
  126. data/lib/studium/curricula/determine_curricula/report.rb +130 -0
  127. data/lib/studium/curricula/determine_curricula/reset.rb +62 -0
  128. data/lib/studium/curricula/determine_curricula/run.rb +19 -0
  129. data/lib/studium/curricula/determine_elective_courses_in_this_curriculum.rb +131 -0
  130. data/lib/studium/curricula/display_bachelor_curricula.rb +104 -0
  131. data/lib/studium/curricula/mitteilungsbl/303/244tter.rb +336 -0
  132. data/lib/studium/curricula/modules/display_on_the_commandline.rb +339 -0
  133. data/lib/studium/curricula/modules/return_n_ects_in_this_module.rb +72 -0
  134. data/lib/studium/curricula/n_percent_solved_in_this_curriculum.rb +72 -0
  135. data/lib/studium/curricula/show_lectures_of_this_curriculum.rb +112 -0
  136. data/lib/studium/curricula/show_lectures_of_this_curriculum_id/constants.rb +16 -0
  137. data/lib/studium/curricula/show_lectures_of_this_curriculum_id/misc.rb +277 -0
  138. data/lib/studium/curricula/show_lectures_of_this_curriculum_id/report.rb +140 -0
  139. data/lib/studium/curricula/show_lectures_of_this_curriculum_id/reset.rb +65 -0
  140. data/lib/studium/curricula/show_lectures_of_this_curriculum_id/show_lectures_of_this_curriculum_id.rb +37 -0
  141. data/lib/studium/curricula/show_solved_percentage_among_the_registered_curricula.rb +99 -0
  142. data/lib/studium/ects/boku_ects_splitter.rb +121 -0
  143. data/lib/studium/ects/ects_parser.rb +174 -0
  144. data/lib/studium/ects/ects_per_university.rb +137 -0
  145. data/lib/studium/ects/ects_scanner.rb +136 -0
  146. data/lib/studium/ects/ects_to_university_parser.rb +144 -0
  147. data/lib/studium/ects/erledigt.rb +129 -0
  148. data/lib/studium/ects/last_entry_is_curriculum.rb +144 -0
  149. data/lib/studium/ects/n_ects_in_these_lectures.rb +176 -0
  150. data/lib/studium/ects/n_ects_points_in_mandatory_presence_courses.rb +50 -0
  151. data/lib/studium/ects/noch_zu_absolvieren.rb +170 -0
  152. data/lib/studium/ects/return_n_ects_from_this_file.rb +58 -0
  153. data/lib/studium/ects/return_n_ects_from_this_url.rb +197 -0
  154. data/lib/studium/ects/search_for_n_ects.rb +535 -0
  155. data/lib/studium/ects/show_completed_ects_in_all_curricula.rb +208 -0
  156. data/lib/studium/ects/show_passed_credits_per_curriculum.rb +241 -0
  157. data/lib/studium/ects/simple_total_ects_points.rb +143 -0
  158. data/lib/studium/ects/solved_ects/constants.rb +24 -0
  159. data/lib/studium/ects/solved_ects/solved_ects.rb +340 -0
  160. data/lib/studium/ects/solved_ects_per_university/solved_ects_per_university.rb +116 -0
  161. data/lib/studium/ects/still_missing.rb +125 -0
  162. data/lib/studium/ects/sum_of_ects.rb +147 -0
  163. data/lib/studium/encoding/encoding.rb +141 -0
  164. data/lib/studium/exam_topics/RNAi_siRNA_and_miRNA +79 -0
  165. data/lib/studium/exam_topics/abfall_als_ressource +86 -0
  166. data/lib/studium/exam_topics/advanced_biochemistry +762 -0
  167. data/lib/studium/exam_topics/advanced_biotechnology +192 -0
  168. data/lib/studium/exam_topics/advanced_cellbiology +24 -0
  169. data/lib/studium/exam_topics/advanced_chemistry +453 -0
  170. data/lib/studium/exam_topics/advanced_microbiology +44 -0
  171. data/lib/studium/exam_topics/advanced_topics_in_plant_sciences +46 -0
  172. data/lib/studium/exam_topics/advanced_virology +52 -0
  173. data/lib/studium/exam_topics/ageing +101 -0
  174. data/lib/studium/exam_topics/agrar_ecology +61 -0
  175. data/lib/studium/exam_topics/agrarmarkt +71 -0
  176. data/lib/studium/exam_topics/agrarphysik +35 -0
  177. data/lib/studium/exam_topics/alcohols +29 -0
  178. data/lib/studium/exam_topics/algorithms +49 -0
  179. data/lib/studium/exam_topics/allergie +73 -0
  180. data/lib/studium/exam_topics/allgemeine_genetik +1006 -0
  181. data/lib/studium/exam_topics/allgemeine_mikrobiologie +855 -0
  182. data/lib/studium/exam_topics/aminoacids +417 -0
  183. data/lib/studium/exam_topics/analytische_chemie_1 +130 -0
  184. data/lib/studium/exam_topics/analytische_chemie_2 +31 -0
  185. data/lib/studium/exam_topics/anatomie +248 -0
  186. data/lib/studium/exam_topics/anorganische_chemie +289 -0
  187. data/lib/studium/exam_topics/anthropologie +115 -0
  188. data/lib/studium/exam_topics/antibodies_and_antigens +747 -0
  189. data/lib/studium/exam_topics/apoptosis +35 -0
  190. data/lib/studium/exam_topics/archaea +41 -0
  191. data/lib/studium/exam_topics/architecture +8 -0
  192. data/lib/studium/exam_topics/artificial_intelligence +81 -0
  193. data/lib/studium/exam_topics/audio +10 -0
  194. data/lib/studium/exam_topics/bacteriophages +224 -0
  195. data/lib/studium/exam_topics/basic_biochemistry +1008 -0
  196. data/lib/studium/exam_topics/basic_biotechnology +1011 -0
  197. data/lib/studium/exam_topics/basic_chemistry +1007 -0
  198. data/lib/studium/exam_topics/basic_virology +949 -0
  199. data/lib/studium/exam_topics/bauwesen +6 -0
  200. data/lib/studium/exam_topics/betriebssysteme +125 -0
  201. data/lib/studium/exam_topics/betriebswirtschaftslehre +29 -0
  202. data/lib/studium/exam_topics/bioanalytik_und_biosensoren +381 -0
  203. data/lib/studium/exam_topics/biochips +78 -0
  204. data/lib/studium/exam_topics/bioelektrochemie +56 -0
  205. data/lib/studium/exam_topics/biofilms +22 -0
  206. data/lib/studium/exam_topics/bioinformatics +475 -0
  207. data/lib/studium/exam_topics/biological_therapeutics +152 -0
  208. data/lib/studium/exam_topics/biologie +134 -0
  209. data/lib/studium/exam_topics/biomarkers +106 -0
  210. data/lib/studium/exam_topics/biomaterials +46 -0
  211. data/lib/studium/exam_topics/biomembranes +6 -0
  212. data/lib/studium/exam_topics/bionik +65 -0
  213. data/lib/studium/exam_topics/biophysik +34 -0
  214. data/lib/studium/exam_topics/biopolymers +10 -0
  215. data/lib/studium/exam_topics/bioprozesstechnik +139 -0
  216. data/lib/studium/exam_topics/bioressourcenmanagement +78 -0
  217. data/lib/studium/exam_topics/bodenkunde +345 -0
  218. data/lib/studium/exam_topics/bodenmikrobiologie +40 -0
  219. data/lib/studium/exam_topics/cancerbiology +441 -0
  220. data/lib/studium/exam_topics/cell_cultures +154 -0
  221. data/lib/studium/exam_topics/cellbiology +962 -0
  222. data/lib/studium/exam_topics/cellular_transport_and_protein_secretion +27 -0
  223. data/lib/studium/exam_topics/chemische_technologie_anorganischer_stoffe +208 -0
  224. data/lib/studium/exam_topics/chemisches_labor +59 -0
  225. data/lib/studium/exam_topics/chemotaxis_and_motility_in_prokaryotes +74 -0
  226. data/lib/studium/exam_topics/citric_acid_cycle +70 -0
  227. data/lib/studium/exam_topics/clinical_microbiology +486 -0
  228. data/lib/studium/exam_topics/computer_graphics +5 -0
  229. data/lib/studium/exam_topics/computer_science +269 -0
  230. data/lib/studium/exam_topics/crispr +25 -0
  231. data/lib/studium/exam_topics/cyanobacteria +37 -0
  232. data/lib/studium/exam_topics/cytogenetics_and_chromosome_biology +506 -0
  233. data/lib/studium/exam_topics/databases_and_sql +105 -0
  234. data/lib/studium/exam_topics/dna_mutation_and_dna_repair +33 -0
  235. data/lib/studium/exam_topics/dna_replication +53 -0
  236. data/lib/studium/exam_topics/ecogenetics +27 -0
  237. data/lib/studium/exam_topics/ecological_agriculture +12 -0
  238. data/lib/studium/exam_topics/ecology +313 -0
  239. data/lib/studium/exam_topics/economy +210 -0
  240. data/lib/studium/exam_topics/elektronenmikroskopie +353 -0
  241. data/lib/studium/exam_topics/elektrophorese +88 -0
  242. data/lib/studium/exam_topics/elektrotechnik +8 -0
  243. data/lib/studium/exam_topics/elisa +54 -0
  244. data/lib/studium/exam_topics/embryologie_und_entwicklung +541 -0
  245. data/lib/studium/exam_topics/endospores_and_spores +92 -0
  246. data/lib/studium/exam_topics/enzymes_and_cofactors +327 -0
  247. data/lib/studium/exam_topics/epigenetik +177 -0
  248. data/lib/studium/exam_topics/ethik +125 -0
  249. data/lib/studium/exam_topics/evolution_and_evolutionary_genetics +323 -0
  250. data/lib/studium/exam_topics/excel +7 -0
  251. data/lib/studium/exam_topics/fish +19 -0
  252. data/lib/studium/exam_topics/fluorescence_microscopy +7 -0
  253. data/lib/studium/exam_topics/food_microbiology_and_food_biotechnology +17 -0
  254. data/lib/studium/exam_topics/forensik +11 -0
  255. data/lib/studium/exam_topics/forstwirtschaft +52 -0
  256. data/lib/studium/exam_topics/fortgeschrittene_genetik +427 -0
  257. data/lib/studium/exam_topics/fortgeschrittene_gentechnik +189 -0
  258. data/lib/studium/exam_topics/fortgeschrittene_physik +6 -0
  259. data/lib/studium/exam_topics/fungi +78 -0
  260. data/lib/studium/exam_topics/genetische_krankheiten +150 -0
  261. data/lib/studium/exam_topics/genexpression +1008 -0
  262. data/lib/studium/exam_topics/genomics_and_metagenomics +205 -0
  263. data/lib/studium/exam_topics/gentechnik_und_praktische_biochemie +863 -0
  264. data/lib/studium/exam_topics/geochemistry +66 -0
  265. data/lib/studium/exam_topics/geography +5 -0
  266. data/lib/studium/exam_topics/geologie_und_mineralogie +610 -0
  267. data/lib/studium/exam_topics/geschichte +94 -0
  268. data/lib/studium/exam_topics/gluconeogenesis +34 -0
  269. data/lib/studium/exam_topics/glycolysis +94 -0
  270. data/lib/studium/exam_topics/glykomik +42 -0
  271. data/lib/studium/exam_topics/glyoxylatzyklus +23 -0
  272. data/lib/studium/exam_topics/grassland_cultivation +32 -0
  273. data/lib/studium/exam_topics/hormone +122 -0
  274. data/lib/studium/exam_topics/html +7 -0
  275. data/lib/studium/exam_topics/human_ecology +8 -0
  276. data/lib/studium/exam_topics/hygiene +191 -0
  277. data/lib/studium/exam_topics/imaging_and_microscopy +224 -0
  278. data/lib/studium/exam_topics/immunanalytik +88 -0
  279. data/lib/studium/exam_topics/immunologie +888 -0
  280. data/lib/studium/exam_topics/informatik +95 -0
  281. data/lib/studium/exam_topics/innate_immunity +20 -0
  282. data/lib/studium/exam_topics/insekten +30 -0
  283. data/lib/studium/exam_topics/insulin_and_diabetes +55 -0
  284. data/lib/studium/exam_topics/java +439 -0
  285. data/lib/studium/exam_topics/javascript +10 -0
  286. data/lib/studium/exam_topics/klima +6 -0
  287. data/lib/studium/exam_topics/landtechnik +27 -0
  288. data/lib/studium/exam_topics/lebensmittel +206 -0
  289. data/lib/studium/exam_topics/lebensmitteltechnologie +16 -0
  290. data/lib/studium/exam_topics/linux +5 -0
  291. data/lib/studium/exam_topics/lipids +95 -0
  292. data/lib/studium/exam_topics/macroeconomics +39 -0
  293. data/lib/studium/exam_topics/mathematics +173 -0
  294. data/lib/studium/exam_topics/medizin_und_biomedizinische_technik +250 -0
  295. data/lib/studium/exam_topics/medizinische_chemie_und_pharmazie +397 -0
  296. data/lib/studium/exam_topics/messtechnik_und_regeltechnik +104 -0
  297. data/lib/studium/exam_topics/metabolismus +431 -0
  298. data/lib/studium/exam_topics/microbial_ecology +35 -0
  299. data/lib/studium/exam_topics/mikrobielle_lebensgemeinschaften +34 -0
  300. data/lib/studium/exam_topics/mikrobielle_physiologie +147 -0
  301. data/lib/studium/exam_topics/mixed +289 -0
  302. data/lib/studium/exam_topics/molecular_biology_of_plants +234 -0
  303. data/lib/studium/exam_topics/molekulare_medizin +129 -0
  304. data/lib/studium/exam_topics/nanotechnologie +302 -0
  305. data/lib/studium/exam_topics/nature_conservation_and_biodiversity +165 -0
  306. data/lib/studium/exam_topics/naturstoffe +9 -0
  307. data/lib/studium/exam_topics/netzwerke +32 -0
  308. data/lib/studium/exam_topics/neurobiology +266 -0
  309. data/lib/studium/exam_topics/nucleotide_sequencing +30 -0
  310. data/lib/studium/exam_topics/object_oriented_modeling +14 -0
  311. data/lib/studium/exam_topics/obstbau +234 -0
  312. data/lib/studium/exam_topics/organische_chemie +1007 -0
  313. data/lib/studium/exam_topics/organische_chemie_2 +72 -0
  314. data/lib/studium/exam_topics/paleobiology +33 -0
  315. data/lib/studium/exam_topics/parasitic_diseases_and_molecular_infection_biology +335 -0
  316. data/lib/studium/exam_topics/patent_law +55 -0
  317. data/lib/studium/exam_topics/pathologie +713 -0
  318. data/lib/studium/exam_topics/pcr +133 -0
  319. data/lib/studium/exam_topics/peroxisomes_glycosomes_and_lysosomes +54 -0
  320. data/lib/studium/exam_topics/pflanzenanatomie +239 -0
  321. data/lib/studium/exam_topics/pflanzenbau +24 -0
  322. data/lib/studium/exam_topics/pflanzenschutz +35 -0
  323. data/lib/studium/exam_topics/pflanzenwissenschaften +1010 -0
  324. data/lib/studium/exam_topics/pharmaceutical_biotechnology +250 -0
  325. data/lib/studium/exam_topics/physik +326 -0
  326. data/lib/studium/exam_topics/physikalische_chemie +85 -0
  327. data/lib/studium/exam_topics/physiology_and_histology +485 -0
  328. data/lib/studium/exam_topics/phytochemie +33 -0
  329. data/lib/studium/exam_topics/plant_biotechnology +127 -0
  330. data/lib/studium/exam_topics/plant_breeding +64 -0
  331. data/lib/studium/exam_topics/plant_development +50 -0
  332. data/lib/studium/exam_topics/populationsgenetik +136 -0
  333. data/lib/studium/exam_topics/posttranslationale_modifikation_von_proteinen +186 -0
  334. data/lib/studium/exam_topics/projektmanagement +218 -0
  335. data/lib/studium/exam_topics/prokaryote_genetics +470 -0
  336. data/lib/studium/exam_topics/proteomik +38 -0
  337. data/lib/studium/exam_topics/prozesstechnik +95 -0
  338. data/lib/studium/exam_topics/psychologie +9 -0
  339. data/lib/studium/exam_topics/python +350 -0
  340. data/lib/studium/exam_topics/quality_management +241 -0
  341. data/lib/studium/exam_topics/rechtsgrundlagen +114 -0
  342. data/lib/studium/exam_topics/research_topics_in_immunobiology +42 -0
  343. data/lib/studium/exam_topics/rna_and_dna +360 -0
  344. data/lib/studium/exam_topics/rna_seq +11 -0
  345. data/lib/studium/exam_topics/ruby +126 -0
  346. data/lib/studium/exam_topics/ruby_on_rails +62 -0
  347. data/lib/studium/exam_topics/scientific_writing_and_publishing +38 -0
  348. data/lib/studium/exam_topics/semisynthese_von_proteinen_und_nukleotiden +120 -0
  349. data/lib/studium/exam_topics/sexualbiologie +59 -0
  350. data/lib/studium/exam_topics/signal_transduction_and_laser_systems +126 -0
  351. data/lib/studium/exam_topics/splicing_exons_and_introns +57 -0
  352. data/lib/studium/exam_topics/statistik +202 -0
  353. data/lib/studium/exam_topics/stemcells +87 -0
  354. data/lib/studium/exam_topics/structural_bioinformatics +54 -0
  355. data/lib/studium/exam_topics/strukturbiologie +319 -0
  356. data/lib/studium/exam_topics/system_biology_and_synthetic_biology +87 -0
  357. data/lib/studium/exam_topics/systematische_zoologie +430 -0
  358. data/lib/studium/exam_topics/technical_ecology +144 -0
  359. data/lib/studium/exam_topics/technische_chemie +193 -0
  360. data/lib/studium/exam_topics/technische_grundlagen_der_informatik +22 -0
  361. data/lib/studium/exam_topics/technische_mikrobiologie +403 -0
  362. data/lib/studium/exam_topics/technisches_zeichnen +5 -0
  363. data/lib/studium/exam_topics/the_bacterial_cell_wall +86 -0
  364. data/lib/studium/exam_topics/the_c_plus_plus_programming_language +488 -0
  365. data/lib/studium/exam_topics/the_c_programming_language +128 -0
  366. data/lib/studium/exam_topics/the_cellcycle +65 -0
  367. data/lib/studium/exam_topics/the_european_union +119 -0
  368. data/lib/studium/exam_topics/the_interferon_system +32 -0
  369. data/lib/studium/exam_topics/the_microbiome +163 -0
  370. data/lib/studium/exam_topics/the_universe +6 -0
  371. data/lib/studium/exam_topics/theoretische_chemie +5 -0
  372. data/lib/studium/exam_topics/theoretische_informatik +157 -0
  373. data/lib/studium/exam_topics/tierzucht +94 -0
  374. data/lib/studium/exam_topics/toxikologie +403 -0
  375. data/lib/studium/exam_topics/transcription +25 -0
  376. data/lib/studium/exam_topics/translation_ribosomes_and_translational_control +138 -0
  377. data/lib/studium/exam_topics/umweltbiotechnologie +58 -0
  378. data/lib/studium/exam_topics/umweltchemie +232 -0
  379. data/lib/studium/exam_topics/urbanism_and_traffic +19 -0
  380. data/lib/studium/exam_topics/vaccines_and_vaccination +234 -0
  381. data/lib/studium/exam_topics/vectors_and_gene_therapy +237 -0
  382. data/lib/studium/exam_topics/verfahrenstechnik +32 -0
  383. data/lib/studium/exam_topics/veterinary_medicine +10 -0
  384. data/lib/studium/exam_topics/vitamine +19 -0
  385. data/lib/studium/exam_topics/wasserkunde +141 -0
  386. data/lib/studium/exam_topics/weinbau +59 -0
  387. data/lib/studium/exam_topics/wissenschaft +17 -0
  388. data/lib/studium/exam_topics/yeast +97 -0
  389. data/lib/studium/exam_topics/zoologie +329 -0
  390. data/lib/studium/exams/afterburn.rb +259 -0
  391. data/lib/studium/exams/ask_exam_from_the_upcoming_exams_pool.rb +166 -0
  392. data/lib/studium/exams/ask_exam_question/answer.rb +103 -0
  393. data/lib/studium/exams/ask_exam_question/ask_exam_question.rb +127 -0
  394. data/lib/studium/exams/ask_exam_question/class_methods.rb +32 -0
  395. data/lib/studium/exams/ask_exam_question/constants.rb +94 -0
  396. data/lib/studium/exams/ask_exam_question/help.rb +55 -0
  397. data/lib/studium/exams/ask_exam_question/initialize.rb +61 -0
  398. data/lib/studium/exams/ask_exam_question/menu.rb +306 -0
  399. data/lib/studium/exams/ask_exam_question/misc.rb +846 -0
  400. data/lib/studium/exams/ask_exam_question/question.rb +66 -0
  401. data/lib/studium/exams/ask_exam_question/reset.rb +69 -0
  402. data/lib/studium/exams/ask_exam_question/run.rb +37 -0
  403. data/lib/studium/exams/ask_exam_question/show.rb +257 -0
  404. data/lib/studium/exams/ask_exam_topic_question.rb +120 -0
  405. data/lib/studium/exams/ask_question_from_alias.rb +138 -0
  406. data/lib/studium/exams/ask_question_from_any_of_the_still_missing_lectures.rb +142 -0
  407. data/lib/studium/exams/ask_question_from_grouped_themes.rb +141 -0
  408. data/lib/studium/exams/ask_question_from_last_topic.rb +108 -0
  409. data/lib/studium/exams/autoinclude.rb +7 -0
  410. data/lib/studium/exams/best_months.rb +79 -0
  411. data/lib/studium/exams/class.rb +125 -0
  412. data/lib/studium/exams/csv/create_csv_passed_exams_file.rb +219 -0
  413. data/lib/studium/exams/cycle.rb +289 -0
  414. data/lib/studium/exams/dataset.rb +88 -0
  415. data/lib/studium/exams/exam_registration_at/constants.rb +49 -0
  416. data/lib/studium/exams/exam_registration_at/exam_registration_at.rb +247 -0
  417. data/lib/studium/exams/exam_registration_at/help.rb +46 -0
  418. data/lib/studium/exams/exam_registration_at/menu.rb +82 -0
  419. data/lib/studium/exams/exam_registration_at/report.rb +108 -0
  420. data/lib/studium/exams/exam_registration_at/reset.rb +49 -0
  421. data/lib/studium/exams/exam_statistics_from_this_file/exam_statistics_from_this_file.rb +137 -0
  422. data/lib/studium/exams/exam_topics.rb +205 -0
  423. data/lib/studium/exams/exams.rb +18 -0
  424. data/lib/studium/exams/exams_this_week.rb +177 -0
  425. data/lib/studium/exams/fix_exam_dates.rb +144 -0
  426. data/lib/studium/exams/last_exams.rb +369 -0
  427. data/lib/studium/exams/lectures_without_exam_entry.rb +164 -0
  428. data/lib/studium/exams/mandatory_continuous_assessment/compare.rb +144 -0
  429. data/lib/studium/exams/mandatory_continuous_assessment/constants.rb +18 -0
  430. data/lib/studium/exams/mandatory_continuous_assessment/help.rb +92 -0
  431. data/lib/studium/exams/mandatory_continuous_assessment/initialize.rb +46 -0
  432. data/lib/studium/exams/mandatory_continuous_assessment/mandatory_continuous_assessment.rb +1098 -0
  433. data/lib/studium/exams/mandatory_continuous_assessment/menu.rb +132 -0
  434. data/lib/studium/exams/mandatory_continuous_assessment/misc.rb +61 -0
  435. data/lib/studium/exams/mandatory_continuous_assessment/reset.rb +60 -0
  436. data/lib/studium/exams/mandatory_continuous_assessment/run.rb +33 -0
  437. data/lib/studium/exams/mandatory_continuous_assessment/set_title_of_the_curriculum.rb +180 -0
  438. data/lib/studium/exams/mandatory_continuous_assessment/show_and_report.rb +139 -0
  439. data/lib/studium/exams/move_the_last_exam_question_to_the_top_of_the_file/move_the_last_exam_question_to_the_top_of_the_file.rb +119 -0
  440. data/lib/studium/exams/n_exams_in_these_topics.rb +409 -0
  441. data/lib/studium/exams/new_questions_per_year.rb +136 -0
  442. data/lib/studium/exams/next_exam.rb +117 -0
  443. data/lib/studium/exams/next_exams.rb +375 -0
  444. data/lib/studium/exams/open_exam_associated_url.rb +149 -0
  445. data/lib/studium/exams/open_last_exam_question_asked_file/initialize.rb +29 -0
  446. data/lib/studium/exams/open_last_exam_question_asked_file/open_last_exam_question_asked_file.rb +120 -0
  447. data/lib/studium/exams/parse_question_answer.rb +315 -0
  448. data/lib/studium/exams/passed_exams.rb +46 -0
  449. data/lib/studium/exams/pruefung.rb +288 -0
  450. data/lib/studium/exams/push_solved_questions_on_top.rb +203 -0
  451. data/lib/studium/exams/question_answer/constants.rb +46 -0
  452. data/lib/studium/exams/question_answer/question_answer.rb +587 -0
  453. data/lib/studium/exams/questions_solved_from_day_to_day.rb +355 -0
  454. data/lib/studium/exams/repeat_last_question.rb +77 -0
  455. data/lib/studium/exams/show_all_passed_exams_of_this_university.rb +248 -0
  456. data/lib/studium/exams/show_backlog_of_exams.rb +140 -0
  457. data/lib/studium/exams/show_next_exams_for.rb +140 -0
  458. data/lib/studium/exams/show_themes/constants.rb +33 -0
  459. data/lib/studium/exams/show_themes/menu.rb +55 -0
  460. data/lib/studium/exams/show_themes/reset.rb +60 -0
  461. data/lib/studium/exams/show_themes/show_themes.rb +527 -0
  462. data/lib/studium/exams/show_upcoming_exams/consider_autogenerating_exam_aliases.rb +170 -0
  463. data/lib/studium/exams/show_upcoming_exams/constants.rb +82 -0
  464. data/lib/studium/exams/show_upcoming_exams/help.rb +33 -0
  465. data/lib/studium/exams/show_upcoming_exams/initialize.rb +71 -0
  466. data/lib/studium/exams/show_upcoming_exams/menu.rb +53 -0
  467. data/lib/studium/exams/show_upcoming_exams/report.rb +195 -0
  468. data/lib/studium/exams/show_upcoming_exams/reset.rb +38 -0
  469. data/lib/studium/exams/show_upcoming_exams/run.rb +20 -0
  470. data/lib/studium/exams/show_upcoming_exams/show_upcoming_exams.rb +488 -0
  471. data/lib/studium/exams/solve_all_questions_from_this_topic.rb +123 -0
  472. data/lib/studium/exams/solved/constants.rb +37 -0
  473. data/lib/studium/exams/solved/help.rb +23 -0
  474. data/lib/studium/exams/solved/menu.rb +36 -0
  475. data/lib/studium/exams/solved/solved.rb +316 -0
  476. data/lib/studium/exams/steop.rb +91 -0
  477. data/lib/studium/exams/unsolve_all_questions_from_this_topic.rb +181 -0
  478. data/lib/studium/exams/upcoming_exams/constants.rb +20 -0
  479. data/lib/studium/exams/upcoming_exams/help.rb +38 -0
  480. data/lib/studium/exams/upcoming_exams/initialize.rb +27 -0
  481. data/lib/studium/exams/upcoming_exams/menu.rb +79 -0
  482. data/lib/studium/exams/upcoming_exams/misc.rb +364 -0
  483. data/lib/studium/exams/upcoming_exams/reset.rb +37 -0
  484. data/lib/studium/exams/upcoming_exams/run.rb +25 -0
  485. data/lib/studium/exams/upcoming_exams/upcoming_exams.rb +32 -0
  486. data/lib/studium/exams/upcoming_exams_at_the_boku/constants.rb +20 -0
  487. data/lib/studium/exams/upcoming_exams_at_the_boku/html.rb +66 -0
  488. data/lib/studium/exams/upcoming_exams_at_the_boku/upcoming_exams_at_the_boku.rb +186 -0
  489. data/lib/studium/exams/upcoming_exams_dataset.rb +243 -0
  490. data/lib/studium/exams/upload_exam_topics.rb +349 -0
  491. data/lib/studium/exams_per_month/colours.rb +81 -0
  492. data/lib/studium/exams_per_month/constants.rb +69 -0
  493. data/lib/studium/exams_per_month/dataset.rb +64 -0
  494. data/lib/studium/exams_per_month/exams_per_month.rb +303 -0
  495. data/lib/studium/exams_per_month/help.rb +72 -0
  496. data/lib/studium/exams_per_month/initialize.rb +39 -0
  497. data/lib/studium/exams_per_month/menu.rb +254 -0
  498. data/lib/studium/exams_per_month/open.rb +134 -0
  499. data/lib/studium/exams_per_month/requires.rb +13 -0
  500. data/lib/studium/exams_per_month/reset.rb +64 -0
  501. data/lib/studium/exams_per_month/run.rb +18 -0
  502. data/lib/studium/exams_per_month/sanitize.rb +129 -0
  503. data/lib/studium/exams_per_month/show_and_report.rb +1278 -0
  504. data/lib/studium/flashcards/flashcards.rb +95 -0
  505. data/lib/studium/graphviz/README.md +4 -0
  506. data/lib/studium/graphviz/bachelor_vector_based_strategies.dot +160 -0
  507. data/lib/studium/graphviz/master_vector_based_strategies.dot +46 -0
  508. data/lib/studium/gui/gtk2/constants.rb +52 -0
  509. data/lib/studium/gui/gtk2/exam_card.rb +199 -0
  510. data/lib/studium/gui/gtk2/flip_card.rb +8 -0
  511. data/lib/studium/gui/gtk2/frame.rb +314 -0
  512. data/lib/studium/gui/gtk2/main_box.rb +187 -0
  513. data/lib/studium/gui/gtk2/module_methods.rb +58 -0
  514. data/lib/studium/gui/gtk2/require_gtk_files.rb +25 -0
  515. data/lib/studium/gui/gtk2/run.rb +49 -0
  516. data/lib/studium/gui/gtk2/show_curriculum_entries.rb +187 -0
  517. data/lib/studium/gui/gtk2/simple_widget_question_answer.rb +186 -0
  518. data/lib/studium/gui/gtk2/vbox.rb +748 -0
  519. data/lib/studium/gui/gtk3/README.md +1 -0
  520. data/lib/studium/gui/gtk3/studium_panel.rb +54 -0
  521. data/lib/studium/lectures/show_lectures_on_the_commandline/constants.rb +22 -0
  522. data/lib/studium/lectures/show_lectures_on_the_commandline/determine.rb +630 -0
  523. data/lib/studium/lectures/show_lectures_on_the_commandline/help.rb +44 -0
  524. data/lib/studium/lectures/show_lectures_on_the_commandline/html.rb +599 -0
  525. data/lib/studium/lectures/show_lectures_on_the_commandline/initialize.rb +53 -0
  526. data/lib/studium/lectures/show_lectures_on_the_commandline/konsole.rb +32 -0
  527. data/lib/studium/lectures/show_lectures_on_the_commandline/menu.rb +466 -0
  528. data/lib/studium/lectures/show_lectures_on_the_commandline/misc.rb +599 -0
  529. data/lib/studium/lectures/show_lectures_on_the_commandline/reset.rb +120 -0
  530. data/lib/studium/lectures/show_lectures_on_the_commandline/run.rb +44 -0
  531. data/lib/studium/lectures/show_lectures_on_the_commandline/show.rb +106 -0
  532. data/lib/studium/lectures/show_lectures_on_the_commandline/show_lectures_on_the_commandline.rb +490 -0
  533. data/lib/studium/lectures/show_lectures_on_the_commandline/sorted_individual_curricula.rb +117 -0
  534. data/lib/studium/log/README.md +2 -0
  535. data/lib/studium/log/store_last_question_asked_into_file.rb +152 -0
  536. data/lib/studium/misc/return_remote_homepage_of_this_lecture.rb +8643 -0
  537. data/lib/studium/misc/return_remote_moodle_link_of_this_lecture.rb +1308 -0
  538. data/lib/studium/parsers/README.md +2 -0
  539. data/lib/studium/parsers/custom_exam_results_parser.rb +205 -0
  540. data/lib/studium/parsers/parse_lva_dates.rb +200 -0
  541. data/lib/studium/pdf/README.md +2 -0
  542. data/lib/studium/pdf/create_pdf_file_for_this_exam_topic.rb +258 -0
  543. data/lib/studium/project/project.rb +82 -0
  544. data/lib/studium/requires/base_class_and_common_popular_requires.rb +8 -0
  545. data/lib/studium/requires/common_external_requires.rb +10 -0
  546. data/lib/studium/requires/common_popular_requires.rb +43 -0
  547. data/lib/studium/requires/require_class_exams_solved.rb +7 -0
  548. data/lib/studium/requires/require_ects_scripts.rb +22 -0
  549. data/lib/studium/requires/require_encoding.rb +7 -0
  550. data/lib/studium/requires/require_exam_scripts.rb +32 -0
  551. data/lib/studium/requires/require_the_proper_yaml_engine.rb +7 -0
  552. data/lib/studium/requires/require_the_whole_studium_project.rb +53 -0
  553. data/lib/studium/requires/require_toplevel_methods.rb +25 -0
  554. data/lib/studium/requires/require_upcoming_exams.rb +7 -0
  555. data/lib/studium/requires/require_utility_scripts.rb +23 -0
  556. data/lib/studium/requires/with_GUI.rb +11 -0
  557. data/lib/studium/requires/www_mode.rb +17 -0
  558. data/lib/studium/sanitize/README.md +7 -0
  559. data/lib/studium/sanitize/sanitize_this_string_containing_the_lva_dates.rb +79 -0
  560. data/lib/studium/sinatra/app.rb +257 -0
  561. data/lib/studium/sinatra/misc.rb +40 -0
  562. data/lib/studium/statistics/README.md +4 -0
  563. data/lib/studium/statistics/curriculum_comparer.rb +344 -0
  564. data/lib/studium/statistics/determine_exam_statistics_from_this_file.rb +152 -0
  565. data/lib/studium/statistics/max_stats.rb +167 -0
  566. data/lib/studium/statistics/report_how_many_ects_points_per_curriculum_were_completed.rb +166 -0
  567. data/lib/studium/statistics/report_how_many_exam_questions_were_answered.rb +476 -0
  568. data/lib/studium/statistics/top_stats.rb +144 -0
  569. data/lib/studium/steop/README.md +4 -0
  570. data/lib/studium/steop/show_all_steop_lectures.rb +100 -0
  571. data/lib/studium/steop/steop_lectures_in_this_curriculum.rb +297 -0
  572. data/lib/studium/steop/steop_lva_dates.rb +116 -0
  573. data/lib/studium/toplevel_methods/all_passed_exams.rb +33 -0
  574. data/lib/studium/toplevel_methods/already_solved_this_lecture.rb +94 -0
  575. data/lib/studium/toplevel_methods/already_solved_this_lva_number.rb +226 -0
  576. data/lib/studium/toplevel_methods/available_curricula.rb +71 -0
  577. data/lib/studium/toplevel_methods/available_topics.rb +146 -0
  578. data/lib/studium/toplevel_methods/average_grade.rb +130 -0
  579. data/lib/studium/toplevel_methods/backup_this_exam_file.rb +35 -0
  580. data/lib/studium/toplevel_methods/calculate_pr/303/274fungsimmanente_lectures_from_this_file.rb +55 -0
  581. data/lib/studium/toplevel_methods/cd.rb +25 -0
  582. data/lib/studium/toplevel_methods/cd_stud.rb +133 -0
  583. data/lib/studium/toplevel_methods/copy_file.rb +22 -0
  584. data/lib/studium/toplevel_methods/copy_lecture_information_file_to_default_location.rb +52 -0
  585. data/lib/studium/toplevel_methods/create_file.rb +22 -0
  586. data/lib/studium/toplevel_methods/current_exams.rb +20 -0
  587. data/lib/studium/toplevel_methods/datum.rb +16 -0
  588. data/lib/studium/toplevel_methods/determine_local_directory_of_this_lecture.rb +72 -0
  589. data/lib/studium/toplevel_methods/does_this_course_require_mandatory_presence.rb +45 -0
  590. data/lib/studium/toplevel_methods/download_exam_dataset.rb +108 -0
  591. data/lib/studium/toplevel_methods/download_exam_topics.rb +62 -0
  592. data/lib/studium/toplevel_methods/e.rb +16 -0
  593. data/lib/studium/toplevel_methods/ects_from_lectures.rb +249 -0
  594. data/lib/studium/toplevel_methods/editor.rb +64 -0
  595. data/lib/studium/toplevel_methods/esystem.rb +20 -0
  596. data/lib/studium/toplevel_methods/exams_dataset.rb +45 -0
  597. data/lib/studium/toplevel_methods/file_cd_aliases.rb +26 -0
  598. data/lib/studium/toplevel_methods/file_read_with_proper_encoding.rb +28 -0
  599. data/lib/studium/toplevel_methods/filter_away_invalid_questions.rb +77 -0
  600. data/lib/studium/toplevel_methods/find_corresponding_exam_title.rb +707 -0
  601. data/lib/studium/toplevel_methods/find_corresponding_exam_topic.rb +1834 -0
  602. data/lib/studium/toplevel_methods/from_curriculum_id_to_university.rb +47 -0
  603. data/lib/studium/toplevel_methods/frozen.rb +32 -0
  604. data/lib/studium/toplevel_methods/handle_archive_of_the_exam_questions.rb +136 -0
  605. data/lib/studium/toplevel_methods/has_a_bachelor_curriculum.rb +24 -0
  606. data/lib/studium/toplevel_methods/has_a_master_curriculum.rb +69 -0
  607. data/lib/studium/toplevel_methods/has_this_lecture_been_already_passed_but_the_id_was_changed_lateron.rb +39 -0
  608. data/lib/studium/toplevel_methods/has_this_module_been_completed.rb +206 -0
  609. data/lib/studium/toplevel_methods/html_log_dir.rb +2 -0
  610. data/lib/studium/toplevel_methods/install_the_project_on_the_given_hostsystem.rb +33 -0
  611. data/lib/studium/toplevel_methods/is_on_roebe.rb +19 -0
  612. data/lib/studium/toplevel_methods/is_this_exam_topic_included.rb +37 -0
  613. data/lib/studium/toplevel_methods/is_this_homepage_registered.rb +31 -0
  614. data/lib/studium/toplevel_methods/is_this_lecture_a_practical_course.rb +100 -0
  615. data/lib/studium/toplevel_methods/is_this_lecture_part_of_the_vector_curriculum.rb +110 -0
  616. data/lib/studium/toplevel_methods/is_this_lecture_registered_in_upcoming_exams.rb +43 -0
  617. data/lib/studium/toplevel_methods/ja_oder_nein.rb +21 -0
  618. data/lib/studium/toplevel_methods/last_saved_into_which_file.rb +29 -0
  619. data/lib/studium/toplevel_methods/lecture_information.rb +22 -0
  620. data/lib/studium/toplevel_methods/lectures_without_attribution_to_any_curriculum.rb +40 -0
  621. data/lib/studium/toplevel_methods/main_dataset.rb +52 -0
  622. data/lib/studium/toplevel_methods/map_curriculum_number_to_curriculum_name.rb +96 -0
  623. data/lib/studium/toplevel_methods/map_meta_exam_theme_to_corresponding_exam_themes.rb +162 -0
  624. data/lib/studium/toplevel_methods/misc.rb +187 -0
  625. data/lib/studium/toplevel_methods/missing_priority_entry.rb +42 -0
  626. data/lib/studium/toplevel_methods/mkdir.rb +21 -0
  627. data/lib/studium/toplevel_methods/module_methods.rb +23 -0
  628. data/lib/studium/toplevel_methods/n_questions_available.rb +124 -0
  629. data/lib/studium/toplevel_methods/n_topics_available.rb +63 -0
  630. data/lib/studium/toplevel_methods/name_of_this_curriculum.rb +38 -0
  631. data/lib/studium/toplevel_methods/names_of_all_solved_exams.rb +71 -0
  632. data/lib/studium/toplevel_methods/no_file_exists_at.rb +19 -0
  633. data/lib/studium/toplevel_methods/note_down_the_start_time_and_how_many_exams_have_been_already_solved.rb +70 -0
  634. data/lib/studium/toplevel_methods/opnn.rb +22 -0
  635. data/lib/studium/toplevel_methods/passed_this_exam_on.rb +104 -0
  636. data/lib/studium/toplevel_methods/pristine.rb +59 -0
  637. data/lib/studium/toplevel_methods/read_dataset_from_a_curriculum_file.rb +133 -0
  638. data/lib/studium/toplevel_methods/read_delay_between_questions_from_file.rb +33 -0
  639. data/lib/studium/toplevel_methods/read_this_file_through_default_encoding.rb +26 -0
  640. data/lib/studium/toplevel_methods/regex_for_pwd_stud.rb +18 -0
  641. data/lib/studium/toplevel_methods/registered_for_this_exam.rb +62 -0
  642. data/lib/studium/toplevel_methods/remote_url.rb +57 -0
  643. data/lib/studium/toplevel_methods/remove_comments.rb +26 -0
  644. data/lib/studium/toplevel_methods/remove_exam_topics_that_were_already_answered.rb +27 -0
  645. data/lib/studium/toplevel_methods/remove_tags.rb +17 -0
  646. data/lib/studium/toplevel_methods/remove_weekday_names.rb +75 -0
  647. data/lib/studium/toplevel_methods/report_all_lectures_matching_this_lecture_type.rb +44 -0
  648. data/lib/studium/toplevel_methods/report_attributed_lectures_to_universities.rb +30 -0
  649. data/lib/studium/toplevel_methods/report_how_many_exam_questions_were_already_solved.rb +137 -0
  650. data/lib/studium/toplevel_methods/report_n_ects_per_university.rb +63 -0
  651. data/lib/studium/toplevel_methods/report_n_entries_in_the_file_lecture_information.rb +35 -0
  652. data/lib/studium/toplevel_methods/report_nquestions_of.rb +96 -0
  653. data/lib/studium/toplevel_methods/report_solved_topics.rb +55 -0
  654. data/lib/studium/toplevel_methods/return_all_exams_on_this_day.rb +66 -0
  655. data/lib/studium/toplevel_methods/return_curriculum_of_this_lva_number.rb +79 -0
  656. data/lib/studium/toplevel_methods/return_dataset_for_this_exam_topic.rb +41 -0
  657. data/lib/studium/toplevel_methods/return_dataset_from_this_curriculum_file.rb +150 -0
  658. data/lib/studium/toplevel_methods/return_directory_for.rb +66 -0
  659. data/lib/studium/toplevel_methods/return_div_timetable_of_upcoming_exams.rb +489 -0
  660. data/lib/studium/toplevel_methods/return_ects_from_this_lecture_stored_in_the_file_lecture_information.rb +194 -0
  661. data/lib/studium/toplevel_methods/return_hash_of_already_solved_lectures.rb +38 -0
  662. data/lib/studium/toplevel_methods/return_local_path_of_this_pwdstud.rb +61 -0
  663. data/lib/studium/toplevel_methods/return_location_to_this_exam_topic.rb +28 -0
  664. data/lib/studium/toplevel_methods/return_lva_number_of_this_curriculum.rb +74 -0
  665. data/lib/studium/toplevel_methods/return_lva_number_of_this_lecture.rb +486 -0
  666. data/lib/studium/toplevel_methods/return_lva_number_of_this_lecture_based_on_file_lecture_information.rb +58 -0
  667. data/lib/studium/toplevel_methods/return_n_percent_solved_from_this_topic.rb +75 -0
  668. data/lib/studium/toplevel_methods/return_n_questions_were_answered_for_this_topic.rb +37 -0
  669. data/lib/studium/toplevel_methods/return_proper_university_image.rb +79 -0
  670. data/lib/studium/toplevel_methods/return_question_answer_string_from_this_topic.rb +51 -0
  671. data/lib/studium/toplevel_methods/return_sanitized_dataset_from_the_file_lecture_information.rb +124 -0
  672. data/lib/studium/toplevel_methods/return_theme_of_the_next_upcoming_exam.rb +36 -0
  673. data/lib/studium/toplevel_methods/return_this_curriculum_as_a_string.rb +26 -0
  674. data/lib/studium/toplevel_methods/return_title_from_this_curriculum_file.rb +86 -0
  675. data/lib/studium/toplevel_methods/rinstall2.rb +30 -0
  676. data/lib/studium/toplevel_methods/rti_conflict.rb +29 -0
  677. data/lib/studium/toplevel_methods/runmode.rb +81 -0
  678. data/lib/studium/toplevel_methods/sanitize_this_theme_topic.rb +120 -0
  679. data/lib/studium/toplevel_methods/sanitized_dataset_from_file_passed_exams_per_month.rb +44 -0
  680. data/lib/studium/toplevel_methods/save_all_registered_upcoming_exams.rb +60 -0
  681. data/lib/studium/toplevel_methods/save_file.rb +54 -0
  682. data/lib/studium/toplevel_methods/save_this_delay_between_questions_and_answers.rb +43 -0
  683. data/lib/studium/toplevel_methods/set_last_file_for_exam_questions.rb +64 -0
  684. data/lib/studium/toplevel_methods/set_this_cd_alias_to.rb +83 -0
  685. data/lib/studium/toplevel_methods/show_exam_statistics.rb +60 -0
  686. data/lib/studium/toplevel_methods/show_important_files.rb +34 -0
  687. data/lib/studium/toplevel_methods/show_passed_ects_in_the_individual_bachelor_and_master_curricula.rb +81 -0
  688. data/lib/studium/toplevel_methods/show_passed_exams_having_this_grade.rb +28 -0
  689. data/lib/studium/toplevel_methods/spacer.rb +16 -0
  690. data/lib/studium/toplevel_methods/time.rb +123 -0
  691. data/lib/studium/toplevel_methods/total_ects_points_passed.rb +72 -0
  692. data/lib/studium/toplevel_methods/try_to_guess_the_most_likely_lva_id.rb +57 -0
  693. data/lib/studium/toplevel_methods/try_to_report_exams_that_match_to_this_regexp.rb +82 -0
  694. data/lib/studium/toplevel_methods/try_to_return_the_expanded_name_of_this_lecture.rb +62 -0
  695. data/lib/studium/toplevel_methods/unfinished.rb +50 -0
  696. data/lib/studium/toplevel_methods/url.rb +54 -0
  697. data/lib/studium/toplevel_methods/verbose_truth.rb +18 -0
  698. data/lib/studium/toplevel_methods/when_was_this_lecture_passed.rb +51 -0
  699. data/lib/studium/tu_vienna/README.md +6 -0
  700. data/lib/studium/tu_vienna/tu_ferien.rb +34 -0
  701. data/lib/studium/tu_vienna/tu_/303/266ffnungszeiten.rb +29 -0
  702. data/lib/studium/utility_scripts/ask_random_question.rb +202 -0
  703. data/lib/studium/utility_scripts/attribute_lecture_to_curriculum/attribute_boku_lecture_to_curriculum.rb +390 -0
  704. data/lib/studium/utility_scripts/attribute_lecture_to_curriculum/attribute_lecture_to_curriculum.rb +232 -0
  705. data/lib/studium/utility_scripts/attribute_lectures_to_university/attribute_lectures_to_university.rb +380 -0
  706. data/lib/studium/utility_scripts/audio_stats.rb +176 -0
  707. data/lib/studium/utility_scripts/auto_stud/auto_stud.rb +248 -0
  708. data/lib/studium/utility_scripts/auto_stud/constants.rb +20 -0
  709. data/lib/studium/utility_scripts/auto_stud/initialize.rb +20 -0
  710. data/lib/studium/utility_scripts/auto_stud/misc.rb +25 -0
  711. data/lib/studium/utility_scripts/autopurge_this_lecture_date.rb +116 -0
  712. data/lib/studium/utility_scripts/boku_biotechnology_all_master_lectures.rb +140 -0
  713. data/lib/studium/utility_scripts/calendar/README.md +2 -0
  714. data/lib/studium/utility_scripts/calendar/calendar.rb +240 -0
  715. data/lib/studium/utility_scripts/check_description_of_these_lectures.rb +223 -0
  716. data/lib/studium/utility_scripts/clean_up_lecture_date.rb +149 -0
  717. data/lib/studium/utility_scripts/current_lectures_belonging_to_both_bachelor_and_master_curriculum.rb +102 -0
  718. data/lib/studium/utility_scripts/currently_participating_in_these_lectures.rb +95 -0
  719. data/lib/studium/utility_scripts/display_lecture_url.rb +115 -0
  720. data/lib/studium/utility_scripts/expand_time_range.rb +400 -0
  721. data/lib/studium/utility_scripts/find_duplicate_lectures.rb +113 -0
  722. data/lib/studium/utility_scripts/finished_exams_at_this_university.rb +81 -0
  723. data/lib/studium/utility_scripts/foreign_language_percentage/constants.rb +28 -0
  724. data/lib/studium/utility_scripts/foreign_language_percentage/foreign_language_percentage.rb +156 -0
  725. data/lib/studium/utility_scripts/foreign_language_percentage/initialize.rb +25 -0
  726. data/lib/studium/utility_scripts/foreign_language_percentage/menu.rb +113 -0
  727. data/lib/studium/utility_scripts/foreign_language_percentage/report.rb +62 -0
  728. data/lib/studium/utility_scripts/foreign_language_percentage/reset.rb +57 -0
  729. data/lib/studium/utility_scripts/foreign_language_percentage/run.rb +19 -0
  730. data/lib/studium/utility_scripts/generate_regex.rb +296 -0
  731. data/lib/studium/utility_scripts/generate_regexes_for_the_available_moodle_links/generate_regexes_for_the_available_moodle_links.rb +54 -0
  732. data/lib/studium/utility_scripts/generate_regexes_for_the_registered_lectures/generate_regexes_for_the_registered_lectures.rb +48 -0
  733. data/lib/studium/utility_scripts/generate_spreadsheet.rb +370 -0
  734. data/lib/studium/utility_scripts/holidays.rb +135 -0
  735. data/lib/studium/utility_scripts/lecture_downloader.rb +114 -0
  736. data/lib/studium/utility_scripts/lectures_attributed_to_universities.rb +345 -0
  737. data/lib/studium/utility_scripts/mandatory_lectures_in_this_month.rb +310 -0
  738. data/lib/studium/utility_scripts/name_of_this_lva_id.rb +117 -0
  739. data/lib/studium/utility_scripts/new_stud.rb +320 -0
  740. data/lib/studium/utility_scripts/next_week.rb +111 -0
  741. data/lib/studium/utility_scripts/passed_ects_per_year.rb +172 -0
  742. data/lib/studium/utility_scripts/passed_pr/303/274fungsimmanente_courses/passed_pr/303/274fungsimmanente_courses.rb +172 -0
  743. data/lib/studium/utility_scripts/prepare_individual_curriculum.rb +179 -0
  744. data/lib/studium/utility_scripts/priority.rb +118 -0
  745. data/lib/studium/utility_scripts/priority_points.rb +263 -0
  746. data/lib/studium/utility_scripts/publish_my_exams.rb +185 -0
  747. data/lib/studium/utility_scripts/random_curriculum_creator.rb +173 -0
  748. data/lib/studium/utility_scripts/report_outdated_timetable_entries.rb +145 -0
  749. data/lib/studium/utility_scripts/report_total_amount_of_questions_and_answers_for.rb +114 -0
  750. data/lib/studium/utility_scripts/report_whether_this_lecture_is_registered_in_the_file_lecture_information.rb +120 -0
  751. data/lib/studium/utility_scripts/resolve_practical_courses_date_conflicts/individual_resolve_practical_courses_date_conflicts.rb +255 -0
  752. data/lib/studium/utility_scripts/resolve_practical_courses_date_conflicts/resolve_practical_courses_date_conflicts.rb +278 -0
  753. data/lib/studium/utility_scripts/scrape_remote_university_url.rb +137 -0
  754. data/lib/studium/utility_scripts/semester_schedule_creator/semester_container.rb +155 -0
  755. data/lib/studium/utility_scripts/semester_schedule_creator/semester_schedule_creator.rb +399 -0
  756. data/lib/studium/utility_scripts/semesterplaner.rb +275 -0
  757. data/lib/studium/utility_scripts/show_all_lectures.rb +407 -0
  758. data/lib/studium/utility_scripts/show_all_passed_master_lectures.rb +141 -0
  759. data/lib/studium/utility_scripts/show_conflicting_lva_lectures/constants.rb +56 -0
  760. data/lib/studium/utility_scripts/show_conflicting_lva_lectures/do_report_the_upcoming_exams.rb +60 -0
  761. data/lib/studium/utility_scripts/show_conflicting_lva_lectures/help.rb +48 -0
  762. data/lib/studium/utility_scripts/show_conflicting_lva_lectures/initialize.rb +28 -0
  763. data/lib/studium/utility_scripts/show_conflicting_lva_lectures/menu.rb +54 -0
  764. data/lib/studium/utility_scripts/show_conflicting_lva_lectures/misc.rb +214 -0
  765. data/lib/studium/utility_scripts/show_conflicting_lva_lectures/report.rb +115 -0
  766. data/lib/studium/utility_scripts/show_conflicting_lva_lectures/reset.rb +80 -0
  767. data/lib/studium/utility_scripts/show_conflicting_lva_lectures/run.rb +22 -0
  768. data/lib/studium/utility_scripts/show_conflicting_lva_lectures/show_conflicting_lva_lectures.rb +641 -0
  769. data/lib/studium/utility_scripts/show_descriptions_of_lectures_belonging_to_this_module/constants.rb +28 -0
  770. data/lib/studium/utility_scripts/show_descriptions_of_lectures_belonging_to_this_module/menu.rb +62 -0
  771. data/lib/studium/utility_scripts/show_descriptions_of_lectures_belonging_to_this_module/reset.rb +36 -0
  772. data/lib/studium/utility_scripts/show_descriptions_of_lectures_belonging_to_this_module/run.rb +35 -0
  773. data/lib/studium/utility_scripts/show_descriptions_of_lectures_belonging_to_this_module/show_descriptions_of_lectures_belonging_to_this_module.rb +145 -0
  774. data/lib/studium/utility_scripts/show_lecturers/show_lecturers.rb +164 -0
  775. data/lib/studium/utility_scripts/show_lectures/constants.rb +16 -0
  776. data/lib/studium/utility_scripts/show_lectures/help.rb +34 -0
  777. data/lib/studium/utility_scripts/show_lectures/initialize.rb +23 -0
  778. data/lib/studium/utility_scripts/show_lectures/menu.rb +106 -0
  779. data/lib/studium/utility_scripts/show_lectures/misc.rb +573 -0
  780. data/lib/studium/utility_scripts/show_lectures/reset.rb +92 -0
  781. data/lib/studium/utility_scripts/show_lectures/run.rb +27 -0
  782. data/lib/studium/utility_scripts/show_lectures/show_lectures.rb +48 -0
  783. data/lib/studium/utility_scripts/show_lectures_fitting_to_this_language.rb +129 -0
  784. data/lib/studium/utility_scripts/show_lectures_fitting_to_this_theme.rb +122 -0
  785. data/lib/studium/utility_scripts/show_lectures_of_this_curriculum_as_table/commandline.rb +43 -0
  786. data/lib/studium/utility_scripts/show_lectures_of_this_curriculum_as_table/constants.rb +26 -0
  787. data/lib/studium/utility_scripts/show_lectures_of_this_curriculum_as_table/help.rb +39 -0
  788. data/lib/studium/utility_scripts/show_lectures_of_this_curriculum_as_table/html.rb +95 -0
  789. data/lib/studium/utility_scripts/show_lectures_of_this_curriculum_as_table/initialize.rb +36 -0
  790. data/lib/studium/utility_scripts/show_lectures_of_this_curriculum_as_table/menu.rb +92 -0
  791. data/lib/studium/utility_scripts/show_lectures_of_this_curriculum_as_table/reset.rb +28 -0
  792. data/lib/studium/utility_scripts/show_lectures_of_this_curriculum_as_table/run.rb +21 -0
  793. data/lib/studium/utility_scripts/show_lectures_of_this_curriculum_as_table/show_lectures_of_this_curriculum_as_table.rb +205 -0
  794. data/lib/studium/utility_scripts/show_lectures_on_this_day.rb +152 -0
  795. data/lib/studium/utility_scripts/show_lva_dates_of_this_lecture.rb +175 -0
  796. data/lib/studium/utility_scripts/show_outdated_lva_dates.rb +218 -0
  797. data/lib/studium/utility_scripts/show_solved_english_lectures.rb +139 -0
  798. data/lib/studium/utility_scripts/show_the_associated_lectures_for_the_individual_curriculum.rb +286 -0
  799. data/lib/studium/utility_scripts/studienkennzahl.rb +104 -0
  800. data/lib/studium/utility_scripts/studium_skeleton.rb +221 -0
  801. data/lib/studium/utility_scripts/stundenplan.rb +605 -0
  802. data/lib/studium/utility_scripts/sync_studium_relevant_entries_one_level_downwards.rb +224 -0
  803. data/lib/studium/utility_scripts/ufind.rb +118 -0
  804. data/lib/studium/utility_scripts/upcoming_mandatory_presence_courses/constants.rb +28 -0
  805. data/lib/studium/utility_scripts/upcoming_mandatory_presence_courses/upcoming_mandatory_presence_courses.rb +182 -0
  806. data/lib/studium/utility_scripts/vorbesprechungen.rb +295 -0
  807. data/lib/studium/utility_scripts/week_parser/constants.rb +30 -0
  808. data/lib/studium/utility_scripts/week_parser/help.rb +30 -0
  809. data/lib/studium/utility_scripts/week_parser/menu.rb +56 -0
  810. data/lib/studium/utility_scripts/week_parser/misc.rb +73 -0
  811. data/lib/studium/utility_scripts/week_parser/reset.rb +39 -0
  812. data/lib/studium/utility_scripts/week_parser/run.rb +18 -0
  813. data/lib/studium/utility_scripts/week_parser/show.rb +240 -0
  814. data/lib/studium/utility_scripts/week_parser/week_parser.rb +359 -0
  815. data/lib/studium/utility_scripts/weekday_parser.rb +157 -0
  816. data/lib/studium/utility_scripts/weekly_schedule.rb +217 -0
  817. data/lib/studium/utility_scripts/wochenplanung.rb +275 -0
  818. data/lib/studium/version/version.rb +46 -0
  819. data/lib/studium/www/curricula_displayer.cgi +172 -0
  820. data/lib/studium/www/curriculum_displayer.rb +162 -0
  821. data/lib/studium/www/exams.cgi +50 -0
  822. data/lib/studium/www/statistics.cgi +53 -0
  823. data/lib/studium/yaml/allowed_themes_for_exams.yml +244 -0
  824. data/lib/studium/yaml/array_allowed_entries_for_the_file_lecture_information.yml +64 -0
  825. data/lib/studium/yaml/backlog_of_exams.yml +35 -0
  826. data/lib/studium/yaml/current_exams.yml +19 -0
  827. data/lib/studium/yaml/curricula.yml +530 -0
  828. data/lib/studium/yaml/curricula/README.md +3 -0
  829. data/lib/studium/yaml/curricula/bachelor_agrarwissenschaften_033255.yml +130 -0
  830. data/lib/studium/yaml/curricula/bachelor_biologie_basisblock_033630.yml +65 -0
  831. data/lib/studium/yaml/curricula/bachelor_biologie_botanik_033630.yml +84 -0
  832. data/lib/studium/yaml/curricula/bachelor_biologie_ecology_033630.yml +74 -0
  833. data/lib/studium/yaml/curricula/bachelor_biologie_mikrobiologie_und_genetik_033630.yml +120 -0
  834. data/lib/studium/yaml/curricula/bachelor_biologie_molekulare_biologie_033630.yml +104 -0
  835. data/lib/studium/yaml/curricula/bachelor_biologie_zoologie_033630.yml +87 -0
  836. data/lib/studium/yaml/curricula/bachelor_chemie_033662.yml +164 -0
  837. data/lib/studium/yaml/curricula/bachelor_dummy_curriculum.yml +135 -0
  838. data/lib/studium/yaml/curricula/bachelor_elektrotechnik_und_informationstechnik_033235.yml +13 -0
  839. data/lib/studium/yaml/curricula/bachelor_forstwirtschaft_033225.yml +105 -0
  840. data/lib/studium/yaml/curricula/bachelor_informatik_033521.yml +130 -0
  841. data/lib/studium/yaml/curricula/bachelor_informatik_und_molekulare_biologie.yml +1144 -0
  842. data/lib/studium/yaml/curricula/bachelor_ktww_033231.yml +84 -0
  843. data/lib/studium/yaml/curricula/bachelor_lmbt_033217.yml +108 -0
  844. data/lib/studium/yaml/curricula/bachelor_medizinische_informatik_033533.yml +200 -0
  845. data/lib/studium/yaml/curricula/bachelor_molekularbiologie_033665.yml +93 -0
  846. data/lib/studium/yaml/curricula/bachelor_nutrition_science_033638.yml +117 -0
  847. data/lib/studium/yaml/curricula/bachelor_pharmazie_033305.yml +170 -0
  848. data/lib/studium/yaml/curricula/bachelor_technische_chemie_033290.yml +129 -0
  849. data/lib/studium/yaml/curricula/bachelor_technische_informatik_033535.yml +23 -0
  850. data/lib/studium/yaml/curricula/bachelor_ubrm_033227.yml +140 -0
  851. data/lib/studium/yaml/curricula/bachelor_vector_based_strategies_in_life_sciences_molecular_medicine_and_biotechnology.yml +1157 -0
  852. data/lib/studium/yaml/curricula/bachelor_verfahrenstechnik_033273.yml +167 -0
  853. data/lib/studium/yaml/curricula/bachelor_wirtschaftsinformatik_033526.yml +29 -0
  854. data/lib/studium/yaml/curricula/master_bioinformatics_and_molecular_biotechnology_including_aspects_from_molecular_medicine.yml +438 -0
  855. data/lib/studium/yaml/curricula/master_bioinformatik_066875.yml +76 -0
  856. data/lib/studium/yaml/curricula/master_biologie_molekulare_mikrobiologie_mikrobielle_oekologie_und_immunbiologie_066830.yml +78 -0
  857. data/lib/studium/yaml/curricula/master_biologische_chemie_066863.yml +61 -0
  858. data/lib/studium/yaml/curricula/master_dummy_curriculum.yml +137 -0
  859. data/lib/studium/yaml/curricula/master_food_science_and_plant_biotechnology.yml +30 -0
  860. data/lib/studium/yaml/curricula/master_genetik_und_entwicklungsbiologie_066877.yml +90 -0
  861. data/lib/studium/yaml/curricula/master_lmbt_066418.yml +65 -0
  862. data/lib/studium/yaml/curricula/master_molekulare_biologie_066834.yml +142 -0
  863. data/lib/studium/yaml/curricula/master_pharmazie_066605.yml +170 -0
  864. data/lib/studium/yaml/curricula/master_technische_chemie_066490.yml +123 -0
  865. data/lib/studium/yaml/curricula/master_vector_based_strategies_in_life_sciences_molecular_medicine_and_biotechnology.yml +740 -0
  866. data/lib/studium/yaml/custom_colours.yml +17 -0
  867. data/lib/studium/yaml/daily_questions_solved.yml +909 -0
  868. data/lib/studium/yaml/default_delay.yml +4 -0
  869. data/lib/studium/yaml/default_encoding.yml +1 -0
  870. data/lib/studium/yaml/directory_to_the_exam_topics.yml +0 -0
  871. data/lib/studium/yaml/editor.yml +1 -0
  872. data/lib/studium/yaml/file_for_exam_questions.yml +1 -0
  873. data/lib/studium/yaml/german/README.md +2 -0
  874. data/lib/studium/yaml/german/german_to_english_month_names.yml +12 -0
  875. data/lib/studium/yaml/grouped_themes.yml +187 -0
  876. data/lib/studium/yaml/holidays.yml +177 -0
  877. data/lib/studium/yaml/important_exams.yml +192 -0
  878. data/lib/studium/yaml/inscription_dates_of_universities.yml +56 -0
  879. data/lib/studium/yaml/lecture_aliases.yml +108 -0
  880. data/lib/studium/yaml/lecture_information.yml +47796 -0
  881. data/lib/studium/yaml/log_dir.yml +1 -0
  882. data/lib/studium/yaml/main_topic.yml +11 -0
  883. data/lib/studium/yaml/max_stats.yml +227 -0
  884. data/lib/studium/yaml/mitteilungsbl/303/244tter.yml +315 -0
  885. data/lib/studium/yaml/n_total_questions.yml +1 -0
  886. data/lib/studium/yaml/participating_in_these_courses.yml +44 -0
  887. data/lib/studium/yaml/rename_konsole_tab.yml +1 -0
  888. data/lib/studium/yaml/show_topic.yml +1 -0
  889. data/lib/studium/yaml/statistics.yml +57 -0
  890. data/lib/studium/yaml/use_colours.yml +1 -0
  891. data/studium.gemspec +93 -0
  892. data/test/testing_studium.rb +243 -0
  893. data/test/testing_time_component.rb +29 -0
  894. metadata +1131 -0
@@ -0,0 +1,44 @@
1
+ # =========================================================================== #
2
+ # === participating_in_these_courses.yml
3
+ #
4
+ # This file can be used to denote in which courses you participate
5
+ # in, at the least for the current semester.
6
+ #
7
+ # The format is simple, but strict: ONE lecture per line, and that
8
+ # line must be EXACTLY as the name is specified in the file called
9
+ # "lecture_information.yml". The reason why this is strict here is
10
+ # so that we can write simpler code at a later point, so it is a
11
+ # good idea to be strict early on. The class that reads the dataset
12
+ # will be more flexible anyway; just the dataset must be kept
13
+ # under strict control.
14
+ #
15
+ # Note that for these specified entries, it is assumed that additional
16
+ # information is available in the file called "lecture_information.yml",
17
+ # in particular the "lva_dates:" entries, which tell us when the next
18
+ # unit is scheduled. That way we can write a "calendar"-like
19
+ # application.
20
+ #
21
+ # It is recommended to keep this in '' Strings, to avoid unwanted
22
+ # Hash-creations.
23
+ # =========================================================================== #
24
+
25
+ # =========================================================================== #
26
+ # At the BOKU:
27
+ # =========================================================================== #
28
+ - '790389 Modern bioinformatics (in Eng.)'
29
+ - '802300 Biological nanosciences and nanotechnology (in Eng.)'
30
+ - '773113 Organische Chemie für Lebensmittel- und Biotechnologen'
31
+ - '940301 Structure and analysis of genomes (in Eng.)'
32
+ - '790037 Characterisation of blood stem cells as starting cells for biotechnology (in Eng.)'
33
+ - '790044 Sicherheit am Arbeitsplatz'
34
+ - '790045 Interactions of the (innate) immune system and viruses (in Eng.)'
35
+ - '790383 Bioinformatics: Selected aspects (in Eng.)'
36
+ - '790390 Molecular evolution and phylogenetics (in Eng.)'
37
+ - '790391 Efficient microarray data analysis using R and FSPMA (in Eng.)'
38
+ - '790397 Protein engineering (in Eng.)'
39
+ - '752339 Protein engineering (in Eng.)'
40
+
41
+ # =========================================================================== #
42
+ # At the TU Vienna:
43
+ # =========================================================================== #
44
+ - '183.579 Technische Grundlagen der Informatik'
@@ -0,0 +1 @@
1
+ false
@@ -0,0 +1,57 @@
1
+ # =========================================================================== #
2
+ # Diese Datei sammelt Daten über die Zahl der Prüfungsfragen und wieviele
3
+ # davon bereits beantwortet wurden. Dies ist für die meisten anderen
4
+ # Anwender relativ irrelevant, daher wird dies auch in der deutschen
5
+ # Sprache festgehalten.
6
+ # =========================================================================== #
7
+ # Am 25.01.2017 wurde erstmals die 500.0 ECTS Punkte Marke gekratzt.
8
+ # =========================================================================== #
9
+
10
+ # =========================================================================== #
11
+ # Am 01.02.2012 waren es 3.200 Fragen.
12
+ #
13
+ # Am 22.01.2013 waren es 5.989 Fragen, also fast doppelt so viele wie 2012.
14
+ # Am 01.08.2013 waren es 8.504 Fragen.
15
+ # Am 16.10.2013 waren es 9.440 Fragen.
16
+ # Am 30.11.2013 waren es 10.123 Fragen.
17
+ # Am 14.12.2013 waren es 10.445 Fragen - davon waren 2746 beantwortet (26.29%) [128.5 ECTS]
18
+ #
19
+ # Am 09.02.2014 waren es 11.105 Fragen - davon waren 2899 beantwortet (26.11%)
20
+ # Am 18.03.2014 waren es 11.807 Fragen - davon waren 3288 beantwortet (27.85%)
21
+ # Am 26.04.2014 waren es 12.017 Fragen - davon waren 3671 beantwortet (30.55%)
22
+ #
23
+ # Am 31.05.2014 waren es 12.552 Fragen - davon waren 3695 beantwortet (29.44%)
24
+ # Am 30.08.2014 waren es 13.634 Fragen - davon waren 4051 beantwortet (29.71%)
25
+ # Am 27.11.2014 waren es 14.877 Fragen - davon waren 4431 beantwortet (29.78%)
26
+ # Am 31.12.2014 waren es 15.484 Fragen - davon waren 4846 beantwortet (31.30%) [229.5 ECTS]
27
+ #
28
+ # Am 24.09.2015 waren es 17.507 Fragen - davon waren 5087 beantwortet (29.06%)
29
+ # Am 31.10.2015 waren es 18.214 Fragen - davon waren 5250 beantwortet (28.82%)
30
+ # Am 29.12.2015 waren es 18.903 Fragen - davon waren 5500 beantwortet (29.10%) [351.0 ECTS]
31
+ #
32
+ # Am 08.04.2016 waren es 19.569 Fragen - davon waren 5750 beantwortet (29.38%)
33
+ # Am 25.04.2016 waren es 19.695 Fragen - davon waren 6000 beantwortet (30.46%)
34
+ # Am 31.05.2016 waren es 20.000 Fragen - davon waren 6250 beantwortet (31.20%)
35
+ # Am 13.07.2016 waren es 20.480 Fragen - davon waren 6500 beantwortet (31.74%)
36
+ # Am 19.08.2016 waren es 20.882 Fragen - davon waren 7000 beantwortet (33.52%)
37
+ # Am 20.10.2016 waren es 21.673 Fragen - davon waren 7250 beantwortet (33.45%)
38
+ # Am 22.11.2016 waren es 22.054 Fragen - davon waren 7500 beantwortet (34.01%)
39
+ # Am 01.12.2016 waren es 22.150 Fragen - davon waren 7750 beantwortet (34.99%)
40
+ # Am 25.12.2016 waren es 22.572 Fragen - davon waren 8000 beantwortet (35.44%) [472.5 ECTS]
41
+ #
42
+ # Am 30.01.2017 waren es 23.054 Fragen - davon waren 8250 beantwortet (35.79%)
43
+ # Am 12.02.2017 waren es 23.259 Fragen - davon waren 8500 beantwortet (36.54%)
44
+ # Am 18.03.2017 waren es 23.628 Fragen - davon waren 8750 beantwortet (37.03%)
45
+ # Am 21.09.2017 waren es 25.079 Fragen - davon waren 9000 beantwortet (35.89%) [566.0 ECTS]
46
+ #
47
+ # Am 04.09.2018 waren es 28.692 Fragen - davon waren 9250 beantwortet (32.24%)
48
+ # Am 21.09.2018 waren es 28.975 Fragen - davon waren 8683 beantwortet (29.97%)
49
+ # Am 11.12.2018 waren es 30.517 Fragen - davon waren 9500 beantwortet (31.13%) [677.5 ECTS]
50
+ #
51
+ # Am 07.04.2019 waren es 33.305 Fragen - davon waren 9750 beantwortet (29.27%)
52
+ # Am 16.04.2019 waren es 33.607 Fragen - davon waren 10000 beantwortet (29.76%)
53
+ # Am 16.07.2019 waren es 35.004 Fragen - davon waren 10218 beantwortet (29.19%)
54
+ #
55
+ # Am 02.02.2020 waren es 38.345 Fragen - davon waren 10750 beantwortet (28.03%) [778.5 ECTS]
56
+ # Am 28.06.2020 waren es 40.052 Fragen - davon waren 5000 beantwortet (12.48%) [807.0 ECTS]
57
+ # =========================================================================== #
@@ -0,0 +1 @@
1
+ true
@@ -0,0 +1,93 @@
1
+ # =========================================================================== #
2
+ # Gemspec for Project Studium.
3
+ # =========================================================================== #
4
+ require 'studium/version/version.rb'
5
+ require 'studium/toplevel_methods/n_questions_available.rb'
6
+
7
+ Gem::Specification.new { |s|
8
+
9
+ s.name = 'studium'
10
+ s.version = Studium::VERSION
11
+ s.date = Time.now.strftime('%Y-%m-%d')
12
+
13
+ DESCRIPTION = <<-EOF
14
+
15
+ This project is called "studium", which is german for "studies".
16
+
17
+ The project attempts to be of help in study-related and
18
+ exam-related aspects, in particular for universities in
19
+ central europe - although with a focus on the german areas,
20
+ primarily; courses in english are available as well, but
21
+ the focus is still on central europe at best, not elsewhere,
22
+ out of necessity alone.
23
+
24
+ One major use case for this project is, thus, to be of help
25
+ when one has to prepare for exams in general, even outside
26
+ of universities.
27
+
28
+ The project contains helper classes that may be relevant here -
29
+ which exams are upcoming, what may be the weekly schedules,
30
+ forward-planning of time that is to be invested for exams and
31
+ courses, score points and ECTS points / ECTS credits, in
32
+ order to assess how efficient the time spent was.
33
+
34
+ The project has been created primarily for my use case back
35
+ when I used to study myself. The code is still actively
36
+ maintained, but the project is not quite as active as it
37
+ was several years ago.
38
+
39
+ The studium-project presently contains
40
+ #{Studium.n_questions_in_total?} question-answer entries.
41
+
42
+ For more documentation, please either look at the doc/
43
+ subdirectory of this gem or click on the link called
44
+ Documentation, on the bottom right area of the very homepage of
45
+ this gem (the direct URL is: https://www.rubydoc.info/gems/studium/).
46
+
47
+ EOF
48
+
49
+ s.summary = DESCRIPTION
50
+ s.description = DESCRIPTION
51
+
52
+ # ========================================================================= #
53
+ # Show this message when a user installs this project.
54
+ # ========================================================================= #
55
+ s.post_install_message = <<-EOF
56
+
57
+ For a more complete documentation, look at the following URL:
58
+
59
+ #{Studium::URL_TO_THE_DOCUMENTATION}
60
+
61
+ Thank you and may ruby be to your benefit.
62
+
63
+ EOF
64
+
65
+ s.extra_rdoc_files = %w()
66
+
67
+ s.authors = ['Robert A. Heiler']
68
+ s.email = 'shevegen@gmail.com'
69
+ s.files = Dir['**/*']
70
+ # s.files << 'README.md'
71
+ # s.files << 'USAGE.md'
72
+ s.license = 'GPL-2.0'
73
+ s.executables = Dir['bin/*'].map { |f| File.basename(f) }
74
+ s.homepage = 'http://www.rubydoc.info/gems/studium/'
75
+
76
+ s.required_ruby_version = '>= '+RUBY_VERSION
77
+ s.required_rubygems_version = '>= '+Gem::VERSION
78
+ s.rubygems_version = '>= '+Gem::VERSION
79
+
80
+ # ========================================================================= #
81
+ # External dependencies for the project:
82
+ # ========================================================================= #
83
+ s.add_dependency 'cliner'
84
+ s.add_dependency 'colours'
85
+ s.add_dependency 'find_line_in_file'
86
+ s.add_dependency 'html_tags'
87
+ s.add_dependency 'opn'
88
+ s.add_dependency 'percentage'
89
+ s.add_dependency 'prawn'
90
+ s.add_dependency 'xorg_buffer'
91
+ s.add_dependency 'verbose_truth'
92
+
93
+ }
@@ -0,0 +1,243 @@
1
+ #!/usr/bin/ruby -w
2
+ # Encoding: UTF-8
3
+ # frozen_string_literal: true
4
+ # =========================================================================== #
5
+ require 'cliner'
6
+ require 'colours/colours_e_autoinclude.rb'
7
+ require 'verbose_truth/autoinclude'
8
+ require 'studium' # Do "include Studium" automatically.
9
+
10
+ # =========================================================================== #
11
+ # === crimson
12
+ # =========================================================================== #
13
+ def crimson(i)
14
+ ::Colours.crimson(i)
15
+ end
16
+
17
+ e 'Welcome to the Studium project.'
18
+ e
19
+ e 'Next, we will run some tests to ensure that the desired functionality'
20
+ e 'is working.'
21
+ e
22
+ e 'We will start with two important constants:'
23
+ e
24
+ e orange(' Studium::PROJECT_BASE_DIRECTORY')
25
+ e
26
+ e 'The value for Studium::PROJECT_BASE_DIRECTORY is:'
27
+ e
28
+ e ' '+sfancy(Studium::PROJECT_BASE_DIRECTORY)
29
+ e
30
+ e orange('Studium::Exams::PROJECT_BASE_DIRECTORY')
31
+ e
32
+ e 'The value for Studium::Exams::PROJECT_BASE_DIRECTORY is:'
33
+ e
34
+ e ' '+sfancy(Studium::Exams::PROJECT_BASE_DIRECTORY)
35
+ e
36
+ cliner
37
+ e
38
+ e 'Next, we will test the value of '+sfancy('Studium::PROJECT_YAML_DIRECTORY')+':'
39
+ e
40
+ e orange(' '+Studium::PROJECT_YAML_DIRECTORY)
41
+ e
42
+ cliner
43
+ e 'So far, so good!'
44
+ e
45
+ e 'Does the Studium project try to make use of colours?'
46
+ e
47
+ e sfancy(" #{VerboseTruth[Studium.use_colours?]}")
48
+ e
49
+ cliner
50
+ e 'Next, we will test some module-methods on the '+
51
+ slateblue('Studium namespace')+'.'
52
+ e
53
+ cliner
54
+ e 'The log directory is this one here:'+
55
+ sdir(' '+Studium.determine_log_directory)
56
+ e
57
+ cliner
58
+ e 'How many ECTS points were passed? We can answer this with '\
59
+ 'the method called '+orange('Studium.total_ects_points_passed')
60
+ e
61
+ e ' '+sfancy(Studium.total_ects_points_passed.to_s)+' ECTS points were passed so far.'
62
+ cliner
63
+ e 'The next component that will be tested is the "available exam topics".'
64
+ e 'As this may output a very long list, we will show only 6 exam '\
65
+ 'topics rather than many more.'
66
+ # =========================================================================== #
67
+ # Display the available topics.
68
+ # =========================================================================== #
69
+ cliner {
70
+ e ::Colours.royalblue('The available exam-topics are '\
71
+ '(showing only 6):')
72
+ Studium.display_available_topics(6)
73
+ }
74
+ e
75
+ e 'We also have completed some exams. We will next display the 3 most'
76
+ e 'recent exams that were passed.'
77
+ e
78
+ Studium.names_of_all_solved_exams(3).each {|exam| e ' '+sfancy(exam) }
79
+ e
80
+ e 'Alright! Next we will test the functionality of '+
81
+ orange('Studium.is_this_exam_topic_included?')+'.'
82
+ e
83
+ e 'Is the exam topic `amg` included? '+sfancy(
84
+ VerboseTruth[Studium.is_this_exam_topic_included?('amg')]
85
+ )
86
+ e
87
+ e 'How many exam topics are available in total? '+
88
+ sfancy(Studium.n_exam_topics_available?.to_s)
89
+ e
90
+ e 'And how many questions are available? '+
91
+ sancy(Studium::Exams::Dataset[].size.to_s)
92
+ e
93
+ e 'The version of Studium is:'
94
+ e ' '+crimson(Studium::VERSION.to_s)
95
+ e
96
+ e 'Next, we will test the functionality of `'+
97
+ orange('Studium.already_solved_this_lva_number?')+'` (LV-ID: 300211).'
98
+ e
99
+ e Studium.already_solved_this_lva_number? '300211'
100
+ e
101
+ e 'Next we will test the method '+orange('Studium.report_how_many_exam_questions_were_already_solved')+'.'
102
+ e
103
+ Studium.report_how_many_exam_questions_were_already_solved
104
+ e
105
+ # =========================================================================== #
106
+ # Next querying how many exam questions were already solved.
107
+ # =========================================================================== #
108
+ cliner {
109
+ e 'Next querying how many exam questions were already solved:'
110
+ Studium::Exams.report_how_many_exam_questions_were_already_solved(
111
+ :default, :gui
112
+ )
113
+ }
114
+ e
115
+
116
+ # =========================================================================== #
117
+ # First, instantiate the main dataset.
118
+ # =========================================================================== #
119
+ dataset = Studium::Exams::Dataset[]
120
+
121
+ # =========================================================================== #
122
+ # Text question-answer parsing so that we can detect bugs more rapidly.
123
+ # =========================================================================== #
124
+ e 'Next testing question-answer parsing:'
125
+ _ = '- Give an extreme example of introns in eukaryotic genes. A: The "pro-alpha-2 collagen" gene; it contains 50 introns. URL: http://www.ncbi.nlm.nih.gov/UniGene/clust.cgi?UGID=704301&TAXID=9606&SEARCH=pro-alpha-2%20collagen'
126
+ pp Exams.question_answer(_)
127
+
128
+ _ = '- F-Faktor hat n states? Beschreibe sie?. A: Der F-Fakter hat zwei states: den \"Plasmid state\" und den "Integrated state".'
129
+ pp Exams.question_answer(_)
130
+
131
+ _ = '- In genetics, what do we mean with "5-BrU"? 5-Bromouracil. URL: http://en.wikipedia.org/wiki/5-Bromouracil'
132
+ pp Exams.question_answer(_)
133
+
134
+ _ = '- Nenne 3 bekannte Vertreter der S��gr�ser (Poaceae). A: Alle Getreide wie "Weizen", "Gerste" und "Reis" z�hlen zu dieser Pflanzengruppe.'
135
+ pp Exams.question_answer(_)
136
+
137
+ _ = '- Def. Opine! A: Dies sind Kondensationsprodukte aus einer "Aminos�ure" und einer "Ketos�ure", oder einer "Aminos�ure" und einem "Zucker". Mit anderen Worten, die Aminos�ure ist immer ein Bestandteil eines Opin; der andere Bestandteil ist entweder eine Ketos�ure oder ein Zucker.'
138
+ pp Exams.question_answer(_)
139
+
140
+ #exit # Debug-exiting here for now.
141
+ cliner
142
+ pp dataset.class
143
+ pp dataset
144
+
145
+ p Exams.clinicalmicrobiology
146
+ e crimson('This Array has '+Exams.clinicalmicrobiology.size.to_s+' entries.')
147
+ p Exams.technische_chemie
148
+ e crimson('This Array has '+Exams.technische_chemie.size.to_s+' entries.')
149
+ e
150
+ e 'We will next find out the encoding of the first element there:'
151
+ e ' '+crimson(Exams.clinicalmicrobiology.first.encoding.to_s)
152
+ e
153
+ e 'Self-Encoding is:'
154
+ e ' '+crimson(__ENCODING__.to_s)
155
+ e
156
+ # =========================================================================== #
157
+ # Testing the runmodes:
158
+ # =========================================================================== #
159
+ cliner {
160
+ e ::Colours.slateblue('Testing Exams.runmode?'); e
161
+ e ' '+crimson(Exams.runmode?)
162
+ Exams.set_runmode :www
163
+ e ' '+crimson(Exams.runmode?)
164
+ }; e
165
+ # =========================================================================== #
166
+ # Testing the current exams next:
167
+ # =========================================================================== #
168
+ cliner {
169
+ e ::Colours.slateblue('The current exams are:'); e
170
+ pp Exams.current_exams
171
+ }; e
172
+ cliner {
173
+ e 'Next showing all available topics:'
174
+ pp Exams.all_topics
175
+ e 'The encoding of entry [3] is: '+crimson(Exams.all_topics[3].encoding.to_s)
176
+ }
177
+ # =========================================================================== #
178
+ # Testing Studium::Exams::SanitizeTopics next:
179
+ # =========================================================================== #
180
+ cliner {
181
+ e ::Colours.slateblue('We will next test Exams::SanitizeTopics:'); e
182
+ pp Studium::Exams::SanitizeTopics['amg1'] # The first entry will be the title, the second one the dataset.
183
+ e Studium::Exams::SanitizeTopics.sanitize_topic('amg2').first # Grab the title here.
184
+ e 'We also test whether SanitizeTopics can output something directly via SanitizeTopics.e'
185
+ Studium::Exams::SanitizeTopics.e 'Hello World!'
186
+ }; e
187
+ # =========================================================================== #
188
+ # Testing whether we include several topics:
189
+ # =========================================================================== #
190
+ cliner {
191
+ e ::Colours.slateblue('We will next test whether we have '+
192
+ 'several topics, via Exams.include_topic?'); e
193
+ e 'amg1 included? '+vt(Studium::Exams.include_topic? 'amg1')
194
+ e 'cell included? '+vt(Studium::Exams.include_topic? 'cell')
195
+ e 'amg2 included? '+vt(Studium::Exams.include_topic? 'amg2')
196
+ e 'bech2 included? '+vt(Studium::Exams.include_topic? 'bech2')
197
+ }; e
198
+ pp SanitizedDataset.new 'invalid'
199
+ pp SanitizedDataset.new 'amg1'
200
+ pp SanitizedDataset.new('amg2').debug
201
+ sanitized_dataset = SanitizedDataset.new('agrar�kologie')
202
+ pp sanitized_dataset.n_questions?
203
+ # We don't test AskExamQuestion here for now.
204
+ # ask_question = Exams::AskExamQuestion.new 'agrar�ko'
205
+ # pp ask_question
206
+ # =========================================================================== #
207
+ # We next test ExamQuestionsLine.
208
+ # =========================================================================== #
209
+ cliner {
210
+ e ::Colours.slateblue('Next testing Exams::ExamQuestionsLine'); e
211
+ _ = Exams::ExamQuestionsLine.new(:dont_run_yet)
212
+ _.run
213
+ _.report
214
+ e
215
+ e 'The last question asked was: '+crimson(_.last_question_asked)
216
+ e
217
+ }; e
218
+ # =========================================================================== #
219
+ # Next testing Exams.include_topic?
220
+ # =========================================================================== #
221
+ cliner {
222
+ e 'Next testing '+::Colours.royalblue('.include_topic?')+' functionality:'
223
+ e 'Include `amg`? '+crimson(vt(Studium::Exams.include_topic? :amg)) # Must give us back: "true"
224
+ e 'Include `test`? '+crimson(vt(Studium::Exams.include_topic? :test)) # Must give us back: "false"
225
+ e 'Include `genex`? '+crimson(vt(Studium::Exams.include_topic? :genex)) # Must give us back: "true"
226
+ }; e
227
+ # Next testing whether the disabling of colours works.
228
+ Studium::Exams::AskExamQuestion.new
229
+ cliner {
230
+ e 'Next, we will test whether disabling of colours actually works or not.'
231
+ Studium.disable_colours
232
+ }; e
233
+ Studium::Exams::AskExamQuestion.new
234
+
235
+ dataset = Studium::Exams::Dataset[]
236
+ pp dataset
237
+ p Studium::Exams.clinicalmicrobiology # CLINICAL_MICROBIOLOGY
238
+ p Studium::Exams.test_question_answer '- Name a way to deal with complex pedigrees in population genetics. A: By making use of the "tabular method".'
239
+ cliner
240
+ e 'The directory to the exam topics is at:'
241
+ e
242
+ e " #{sfancy(Studium.exam_topics?)}"
243
+ e