jBBCode
jBBCode copied to clipboard
Allow TextNodes to be split
This could possibly address #4 and help with #9:
There is currently no good way to cleanly split the content of a TextNode into serveral nodes after parsing. Doing so is vital when dealing with smileys and/or standalone links as they are likely to clash when it comes to processing them through dedicated filters. and masking them later through the HTMLSafeVisitor. A rather pain-free approach would be to allow TextNodes themselves have children, which would involve:
- moving the appropriate logic out of
ElementNodeintoNode; - allow
TextNodes to be split at arbitrary positions through a public method (e.g.:TextNode.insertNodeAt(int $position, Node $node[, int $length=1])
A welcome side-effect were that DocumentNode could extend either TextNode or even Node directly instead of being a descendant of ElementNode.