§12 Skeleton Language lists, as an element of a skeleton input list,
skeleton
Subskeletons are inserted recursively, not once, but as often as the user enters something at the subskeletons interactor. Thus there must be a `str` in the subskeleton. They can also be used non-interactively, when prompt is a lisp-expression that returns successive list-elements.
As seems to be common in the skeleton documentation, the terminology is obscure and self-contradictory. I've tried various ways to realise the structure described, but none of my attempts have worked. Here is one of them:
(define-skeleton _skel
"Test skeleton"
nil
('("Seventeen" "Nineteen") "Should be two values, 17 and 19:" str \n))
Invoking _skell
results in "Should be two values, 17 and 19:
" appearing in the buffer, and an error of setq: Wrong type argument: stringp, ("Seventeen" "Nineteen")
appearing in the message buffer.
What am I missing to make this use of subskeletons non-interactively, with either static values or a dynamic lisp-expression returning the values?
Thanks!