Problem with one-by-one clozes in tables

Hello all!

In order to help myself differentiate between related concepts, I have been making notes with one-by-ones inside of a table:

Current functionality:
When one-by-one clozes are placed within a table, the “next” cloze to be answered is always the next cloze to the right in the same row. If there are no more clozes to the right, it goes one row down to the cloze furthest to the left. It continues like this until all clozes have been answered.

I was wondering if there is a way to manually assign the order in which the one-by-one progresses, and if this functionality could be added if not. This would be incredibly useful. I have had to make tables with very un-standard “flipped” x- and y- axes so that I can answer the clozes in the right order.

Is it possible to make one-by-one clozes proceed vertically instead of horizontally in a table? In this way, the next cloze to be answered would be one row down in the same column; if the bottom of the current column has been reached, the next cloze would be the top row of the adjacent column (to the right).

Thank you so much!

@phyn Is that possible in any way?

Not easily. The core issue at hand is that tables in HTML are written left to right, then top to bottom. Although nothing is impossible, it is wayyyyyyy easier to just transpose the table, although that might feel weird.

Basically, it’s this:


looks like the following in HTML:


The one-by-one cloze script then goes through the underlying HTML of the card in the direction of reading when building the array of cloze items. Jumping around within the HTML to do so, is quite complicated to properly ensure from a technical standpoint with robust regexes, but also quite finicky as in “this breaks easily” (e.g. if some table styling is applied, some cells span multiple columns / rows etc.).

I have some theoretical ideas how something like this might (with a big maybe) work, however, I definitely do not have the time in the near future to take a stab at this…

1 Like

Wonderful, thank you so much for explaining that to me!