emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [O] Extending the Org syntax by a custom exporter - how to do it?


From: Marcin Borkowski
Subject: Re: [O] Extending the Org syntax by a custom exporter - how to do it?
Date: Sat, 15 Mar 2014 22:22:44 +0100

Dnia 2014-03-15, o godz. 11:10:59
Marcin Borkowski <address@hidden> napisaƂ(a):

> Hi list,
> 
> I'd like to extend the LaTeX exporter to be able to prepare tests with
> Org-mode.  Four basic kinds of tests I'm thinking about are: single
> choice test, multiple choice test, cloze test and an "open" question
> (where the expected answer is, say, at most 5 lines of text).  It
> would enable the user to typeset both the test for students and an
> answer sheet for the teacher to facilitate grading. (If - and when - I
> succeed in doing this, next logical step is preparing HTML/Javascript
> tests from the same Org-mode source.)  I have a few questions, though.
> 
> 1. Is it possible to employ syntax like ____{noon|midday} to denote a
> cloze with two possible answers?  It might get translated to LaTeX as
> e.g. \cloze{{noon},{midday}} or similar, and a LaTeX package would
> take care to typeset this correctly.  Is there any similar thing
> (i.e., an exporter built on some existing one) so that I can look at
> an example of code doing such thing?
> 
> 2. What would you suggest as the input format on the Org side of
> things?  My suggestion for the cloze syntax is shown above (let us
> assume that at least two or three underscores are needed to
> distinguish this from subscript, and some form of escaping the pipe
> symbol and braces might be necessary.  Alternatively, it might be
> configurable to use e.g. ____[noon/midday] (or other characters).
> 
> What about SCTs/MCTs?  My idea would be to employ plain lists with
> checkboxes - they seem to be pretty useless outside Org-mode anyway,
> and I imagine that it could be something like this:
> 
> #+<SOME MAGICAL LINE MEANING: THIS IS A MULTIPLE CHOICE TEST>
> - [ ] wrong answer
> - [X] good answer
> - [X] another good answer
> - [ ] a completely stupid answer
> 
> As for "open" questions, I have no good idea.  Maybe something like
> 
> #+LINES: 5
> 
> but what about example answers (for the teacher grading the test)?
> Maybe it would be better to say:
> #+BEGIN_ANSWER
> (Here goes the right answer.)
> #+END_ANSWER,
> 
> but is it possible to pass a parameter (number of lines) to
> #+BEGIN_ANSWER?
> 
> 3. Bonus question: would there be any demand (apart from myself) for
> such an exporter?
> 
> What do you think?

OK, so I did some research, and I found out that "special blocks" are
probably the best idea.  So, items with checkboxes whose :parent is a
special block like "MCT" or "SCT" could behave accordingly.  Still, I
can't see in the docs any mentions about possible properties of special
blocks.  Is it possible to make an exporter so that I could say

#+BEGIN_ANSWER :lines 2
This is an answer.
#+END_ANSWER

so that I could use the property :lines in org-special-block?  I don't
want to utilize #+ATTR_LATEX, since I'm aiming at extensions to both
LaTeX and HTML exporters recognizing this thing.

Best,

-- 
Marcin Borkowski
http://octd.wmi.amu.edu.pl/en/Marcin_Borkowski
Adam Mickiewicz University



reply via email to

[Prev in Thread] Current Thread [Next in Thread]