nl_tokens: Checks if there is any contents to the left / right side of caret returns the noneditable element or any editable element if it finds one inside
pl_tokens: function hasSideContent ( element , left ) { var container , offset , walker , node , len ; container = rng . startContainer ; offset = rng . startOffset ; // If endpoint is in middle of text node then expand to beginning/end of element
   if ( container . nodeType == 3 ) { len = container . nodeValue . length ; if ( ( offset > 0 && offset < len ) || ( left ? offset == len : offset == 0 ) ) { return ; } } else { // Can we resolve the node by index
   if ( offset < container . childNodes . length ) { // Browser represents caret position as the offset at the start of an element. When moving right
   // this is the element we are moving into so we consider our container to be child node at offset-1
   var pos = ! left && offset > 0 ? offset - 1 : offset ; container = container . childNodes [ pos ] ; if ( container . hasChildNodes ( ) ) { container = container . firstChild ; } } else { // If not then the caret is at the last position in it's container and the caret container should be inserted after the noneditable element
   return ! left ? element : null ; } } // Walk left/right to look for contents
   walker = new TreeWalker ( container , element ) ; while ( node = walker [ left ? 'prev' : 'next' ] ( ) ) { if ( node . nodeType === 3 && <mask> . nodeValue . length > 0 ) { return ; } else if ( getContentEditable ( node ) === "true" ) { // Found contentEditable=true element return this one to we can move the caret inside it
   return node ; } } return element ; }