]> git.wincent.com - wikitext.git/commit
Fix non-indentation inside PRE blocks
authorWincent Colaiuta <win@wincent.com>
Sun, 23 Mar 2008 17:23:33 +0000 (18:23 +0100)
committerWincent Colaiuta <win@wincent.com>
Sun, 23 Mar 2008 17:23:33 +0000 (18:23 +0100)
commit191b75dac7f788481a8b9c2d3d7258f9eaed7d57
tree11f7ebbcae2d298b4d58b6a5aa89749dac09ae18
parentdb9432ae9ef7be820ca6a84b5cb62fff6db5897d
Fix non-indentation inside PRE blocks

If you try to indent material inside a PRE block you'll find that it
doesn't work. What's actually happening is that the inital spaces are
getting emitted on the previous line, _before_ the CRLF. The problem
therefore shows up as missing indentation, but the reality is that the
spaces _are_ being emitted, only in the wrong place.

This commit applies the minimal fix for the issue, but there is more to
come. I noticed the issue with spaces but it could happen with any
token. The only reason I hadn't noticed up until now is that the most
common case (the PRINTABLE token) is correctly handled because that rule
calls the "start_para_if_necessary" function, and that emits any pending
CRLFs that might be needed.

The next commit will generalize this fix to other token types and add
specs for them.

Signed-off-by: Wincent Colaiuta <win@wincent.com>
ext/parser.c
spec/regressions_spec.rb