# How do we convert a raw listing into something testable by sage? We
# append/prepend triple quotes to make the whole thing into a doctest,
-# and then we replace any blank lines by "<BLANKLINE>".
+# strip all comment lines (only outside of a sage: prompt), and then
+# we replace any blank lines by "<BLANKLINE>".
sage_listings/%.py: sage_listings/%.listing
- echo '"""' > $@ && cat $< >> $@ && echo '"""' >> $@ && sed -i 's/^[[:space:]]*$$/<BLANKLINE>/' $@
+ echo '"""' > $@
+ cat $< >> $@
+ echo '"""' >> $@
+ sed -e '/^[[:space:]]*#/d' \
+ -e 's/^[[:space:]]*$$/<BLANKLINE>/' \
+ -i $@
# Ensure that there are no overfull or underfull boxes in the output
# document by parsing the log for said warnings.