soulcharmer / pubquiz_generator

Trivia quiz slide deck generator producing Reveal.js output
1 stars 0 forks source link

Make round topics optional #6

Open soulcharmer opened 5 years ago

soulcharmer commented 5 years ago

Right now, the prototype expects rounds to be part of the quiz.

But we also need support for quizes that are short and/or mono-thematic not to have explicitly titled rounds.

Thank you

zelial commented 5 years ago

How would such round-less quiz's input look like? Would all its question start with 1-1_ prefix?

soulcharmer commented 5 years ago

How about we just number questions in the source file in a single tier and let the generator do the rest?

That means if there are no rounds, question would be numbered 1,2,3,4 ...

If there are rounds, the generated quiz would use the recalculated numbering 1-1,1-2, etc.

And if it's mixed, we could use something like 1,2,3,1-4,1-5, 2-6, 2-7 - but only in the output as the source file would be a single line of numbers.

zelial commented 5 years ago

That makes sense, except for "but only in the output as the source file would be a single line of numbers." - that I don't get - cen you provide an example of an input and corresponding output?

soulcharmer commented 5 years ago

Oh, what I meant is that the source template could just list a single stream of questions (regardless of topics) and the generator would recalculate everything for question numbering in the final presentation.

Would that be okay?

zelial commented 4 years ago

Still don't get it. First you used an example of mixed input (both round and round-less questions), now you talk about round-less questions only. I repeat, please provide example input & corresponding output. Not only would that explain what you mean in an non-ambiguous way, it could also be used to verify the code itself.

soulcharmer commented 4 years ago

Well, right now, we have the template that is structured around rounds and numbered questions like this:


round_1-1: Topic title goes here

# all Reveal.js formatting should be accepted here

1-1_q1: | Question number 1 goes here
potentially multi-line We support unicode ščřžýáíé!

1-1_a1: | Answer 1 goes here potentially multi-line

1-1_q2: Question number 2 goes here potentially multi-line

What if we just flattened the input structure to the bare bones as a linear sequence of data and let the script calculate everything automatically?

For example, instead of saying "Round_1-1", there would be just "Topic: XY"

And instead of specifying "1-1_a1", there would be just something like "Q: " and the script would just parse everything linearly, expecting a Q followed by an A and after an A, a topic title could intervene.

So, for example:


Q: first question text A: first answer text

Q: 2nd question text A: 2nd answer text

Q: 3rd question text A: 3rd answer text

Q: 4th question text A: 4th answer text

Topic: first actual topic after a few topic-less questions, let's say "Elephants"

Q: first topic question text A: first topic answer text

Q: 2nd topic question text A: 2nd topic answer text

Q: 3rd topic question text A: 3rd topic answer text


For the above input, the script would see 7 questions in total and one topic. The topic would need a topic slide and the numbering would be :

1 , 2 , 3 , 4 , Elephants - 1, Elephants - 2, Elephants - 3

Does it make sense now ?

zelial commented 4 years ago

Yup, makes sense now. It'll be a major overhaul of how the script works and will impact everything. This should be worked on before anything else.