timequiz 0.1.5 → 0.1.6
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +152 -0
- data/doc/license.txt +9 -670
- data/lib/adder.rb +25 -34
- data/lib/argparser.rb +7 -17
- data/lib/basic_logging.rb +167 -0
- data/lib/busy_indicator.rb +12 -19
- data/lib/color_output.rb +12 -19
- data/lib/console.rb +4 -12
- data/lib/constants.rb +6 -15
- data/lib/event.rb +12 -19
- data/lib/events.rb +12 -19
- data/lib/extstring.rb +12 -19
- data/lib/file_checking.rb +4 -10
- data/lib/timequiz.rb +28 -40
- data/lib/user_input.rb +4 -10
- data/lib/version.rb +16 -21
- data/timequiz.gemspec +2 -2
- metadata +9 -9
- data/lib/log.conf +0 -55
- data/lib/logging.rb +0 -204
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 01de17688388db08128ddd38dacc61dd7449eb48d5f53a0a1fc3df0ebbb24228
|
4
|
+
data.tar.gz: ce6c125b384ba2b18b25ae397790a33941b583cf729b6525bc9f41b96a2889ce
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 06a037d0587cd1b0a143dfef9c50f5634854c15edddb9c7b6bbb79ad16657e8a0d88396c56bd4e81fba1ad6a1882315f8b0bc7e1d6ad86f777a0ff1abb1908ab
|
7
|
+
data.tar.gz: 8216f31fe5ca95eb3b3e5221258503938b1a009f66380fa0f230ffd99647e9605ea3e76709328dabda1c3a1d29b5bbf9340be7694df629b12f1520cb1010857e
|
data/README.md
ADDED
@@ -0,0 +1,152 @@
|
|
1
|
+
# TIMEQUIZ
|
2
|
+
|
3
|
+
play a history quiz game
|
4
|
+
|
5
|
+
## SYNOPSIS
|
6
|
+
|
7
|
+
**timequiz [options]**
|
8
|
+
|
9
|
+
Called without any option, the game is started with the events that are included
|
10
|
+
in the installed program package. There are not many.
|
11
|
+
|
12
|
+
## DESCRIPTION
|
13
|
+
|
14
|
+
The general idea is to put historical events in the right order. In the
|
15
|
+
beginning, a limited number of events (3 at the time of this writing) is
|
16
|
+
presented and you have to indicate the right order of these events. All the
|
17
|
+
following rounds will confront you with just 1 additional event and you must
|
18
|
+
find for the new event the right spot in the previously ordered list, i.e.
|
19
|
+
after one of the listed events or earlier than any of the known events. After
|
20
|
+
each round, the first one inclusive, your performance is evaluated. You can
|
21
|
+
then choose to continue with a new event or, if you like, read a short
|
22
|
+
description of any of the events, already in the list.
|
23
|
+
|
24
|
+
The game continues in this way until you push the 'q' button to quit or until
|
25
|
+
all the events that are known to the game, are listed.
|
26
|
+
|
27
|
+
### You do not need to know it all
|
28
|
+
|
29
|
+
Beware that to win a round, it is oftentimes not necessary to really know the
|
30
|
+
date of an event. Pure logic and reasonable guesses may be sufficient to find
|
31
|
+
the right spot within a historical context or to exclude events as too far in
|
32
|
+
the past or future of the currently handled event. Reading the descriptive
|
33
|
+
comments to an event may later help you get different events into context.
|
34
|
+
|
35
|
+
## OPTIONS
|
36
|
+
|
37
|
+
**-a, --add** Add a new event
|
38
|
+
|
39
|
+
**-e, --event** [EVENT] Name of the new event
|
40
|
+
|
41
|
+
**-y, --year** [YEAR] Year of the new event
|
42
|
+
|
43
|
+
**-b, --background** [INFO] Background information for the new event
|
44
|
+
|
45
|
+
**-f, --file** [FILE] The file, where events are read from or written to
|
46
|
+
|
47
|
+
**-d, --debug** Be verbose
|
48
|
+
|
49
|
+
**-v, --version** Show program version
|
50
|
+
|
51
|
+
**-h, --help** Show a help text
|
52
|
+
|
53
|
+
The Options in detail:
|
54
|
+
----------------------
|
55
|
+
**-a --add**
|
56
|
+
This option imposes that -e, -y, and -f be given, too. In consequence, it
|
57
|
+
will be considered superfluous and removed in future versions of the program.
|
58
|
+
|
59
|
+
**-e --event**
|
60
|
+
Name the event to add to the events-file. For this option to take effect, -a,
|
61
|
+
-y and -f are needed, too. Beware to enclose the value with quotes, like in, e.g.
|
62
|
+
--event "Some guy was born and something broke"
|
63
|
+
|
64
|
+
**-y --year**
|
65
|
+
Is followed by a year, like -y 1244
|
66
|
+
|
67
|
+
**-b --background**
|
68
|
+
Should be used to provide background-information to an event. While this
|
69
|
+
option is ... optional, the information will help solving quizzes and may be
|
70
|
+
educative to the player... do not abuse, though.
|
71
|
+
Example: -b "The phenomenon was bearing no significance whatsoever"
|
72
|
+
|
73
|
+
**-f --file**
|
74
|
+
Name the “events-file” which will be used for either creating the quizzes
|
75
|
+
randomly or adding events to an existing list of events. The file must be
|
76
|
+
readable to serve for a quiz and writable to accept new events. If it does
|
77
|
+
not exist, it is created and some exemplary events are included on top.
|
78
|
+
Example: --file ~/my_history_quiz
|
79
|
+
|
80
|
+
**-d --debug**
|
81
|
+
Be verbose. This switches on the output of debug-messages that have been left
|
82
|
+
in the program code. Probably useless.
|
83
|
+
|
84
|
+
**-v --version**
|
85
|
+
Shows the program version
|
86
|
+
|
87
|
+
**-h --help**
|
88
|
+
Shows the option-summary.
|
89
|
+
|
90
|
+
|
91
|
+
## GAME EXAMPLE
|
92
|
+
|
93
|
+
Calling timequiz without arguments on the command-line, you are confronted with
|
94
|
+
three arbitrary, historical events, like in the following example:
|
95
|
+
|
96
|
+
|
97
|
+
>Put the following events into the right chronological order (e.g.: 2 3 1).
|
98
|
+
>
|
99
|
+
>1) The Roman emperor Diocletian devides the empire in two
|
100
|
+
>2) End of the "War of the mercenaries"
|
101
|
+
>3) Destruction of Nimrod and Ninive by the Medians and Neo-Babylonians
|
102
|
+
>
|
103
|
+
>Available: 1, 2, 3)
|
104
|
+
|
105
|
+
|
106
|
+
You type in the three numbers in the order that you consider chronologically
|
107
|
+
correct, like "321" (you do not have to push return after each number). The
|
108
|
+
game will respond by showing you the correct order of events with the
|
109
|
+
corresponding years and an evaluation of your input. You are also prompted to
|
110
|
+
decide if you want to play with a new arbitrary event or first be shown some
|
111
|
+
information about the listed events:
|
112
|
+
|
113
|
+
>Enter number for more information about an event, 'a' to play with one new,
|
114
|
+
>random event, 'q' to quit.
|
115
|
+
|
116
|
+
If you push 'a', a new event is shown:
|
117
|
+
|
118
|
+
>Indicate the event from the previous list, which precedes the following, or '0'
|
119
|
+
> (zero) to put it in front:
|
120
|
+
>
|
121
|
+
>
|
122
|
+
>The Italian painter Lorenzo Lotto dies.
|
123
|
+
|
124
|
+
You can now decide, which of the three previous events precedes the death of
|
125
|
+
the Italian painter and either put in the (current) number of that previous
|
126
|
+
event or the number 0 (zero) if you consider that Lorenzo Lotto died well
|
127
|
+
before any of the other events (which would, of course, be false in the
|
128
|
+
example). You have to push the return-button after your input, as it can
|
129
|
+
contain an arbitrary number of ciphers, later in the game.
|
130
|
+
|
131
|
+
## Other Information
|
132
|
+
|
133
|
+
**Development and source code**
|
134
|
+
Timequiz has been written in Ruby. As Ruby is an interpreted programming
|
135
|
+
language, the executable file and all those that it may refer to at one point
|
136
|
+
in time, are themselves the source-files of the current program-version. You
|
137
|
+
can open them in any text-editor to scrutinize the source-code. If you have
|
138
|
+
received the program as a Ruby-gem, you can also decompress a copy of the
|
139
|
+
gem-file with *tar -x*, then *tar -xzf*.
|
140
|
+
|
141
|
+
**Bugs**
|
142
|
+
At one time during the game, the list of already known events is incorrectly
|
143
|
+
wrapped and continues to be.
|
144
|
+
|
145
|
+
**License**
|
146
|
+
timequiz is distributed under the conditions of the WTF 2.0 or later version
|
147
|
+
of the license. See http://www.wtfpl.net/about/ for details.
|
148
|
+
|
149
|
+
**Author**
|
150
|
+
timequiz has been developed by
|
151
|
+
Michael Uplawski <michael.uplawski@uplawski.eu>
|
152
|
+
|