After the bug 196670, we can move the caret by word granularity but we'd incorrectly identify a blank line as a word boundary.
<rdar://problem/49666652>
This really boils down to findNextWordFromIndex in https://trac.webkit.org/browser/webkit/trunk/Source/WebCore/platform/text/mac/TextBoundaries.mm I wonder if we should just always use NSAttributedString's nextWordFromIndex to find a word boundary. Does anyone remember / know why we're calling into ICU directly? Maybe NSAttributedString wasn't available in iOS at the time?
(In reply to Ryosuke Niwa from comment #2) > Maybe NSAttributedString wasn't available in iOS at the time? NSAttributedString was available, but -nextWordFromIndex:forward: wasn’t, because it was implemented in AppKit at the time.