Arrow Key oddity

I was testing a font to see if it had all of the characters I was interested in. I entered the following:
Abcdefghijklmnopqrstuvwxyz 1234567890
‘‌?​‌’​‌“​‌!​‌”​‌(​‌%​‌)​‌[​‌#​‌]​‌{​‌@​‌}​‌/​‌&​‌.,:​‌;§¶–…—¿¡«»‹›​‌​‌ ®​‌©™​‌ $​‌€​‌£​‌¥​‌¢
<​‌-​‌+​‌÷​‌/×​‌=​‌≈>​‌°∞±≤≥∂∑∏∫√ΜΩ∆ƒß№☞•·←↑→↓↔ (Math)
àáâãäå çć​‌č​‌ đ èéêëē ìíï ñ òóôõöø š ùúûü ýþÿ ​‌ž æ œ

While I was checking to see that I had all of the characters, moving using the left and right arrow keys, I discovered that sometimes it takes two keystrokes to move on space. It happens in the lines with special characters. It also seems to happen on this screen while editing.
Is it normal for two-byte characters to take two arrows keystrokes to move over one character? Is this a Scrivener bug or Mac bug or Normal.
Regardless it sure makes counting characters interesting.

You might check this behavior in TextEdit, too.

Yes, it is a Mac behavior. At this level, Scrivener is just handing things off to the OS X text engine.


If you find a spot where the cursor holds up and then Shift-Arrow back over it to select it, then copy & paste it into the Mac’s character viewer palette, you can look up what it is. It’s not two-byte characters, it’s that you have two bytes in some places, where there are control characters. Here is what your text looks like when pasted into MacVim:

It is displaying control characters in brackets with the Unicode address: 200C is the zero-width non-joiner, 200B is a zero-width space.

So that’s why the cursor gets hung up—there is a character there like the letter A or the colon mark—it just doesn’t take up any width so the effect is to look “stuck”.

You are exactly right. Between some of the characters is one that is invisible and has not width. I carefully arrowed my way thru the text deleting these invisible characters. There was no visible change, but I could then move thru the text using arrows.