Starting with Windows Vista, the name of the language was corrected, becoming "Persian" instead of "Farsi". But no one upgraded to Vista, so most people found out about this change later in Windows 7. And in a few more years, with Windows 8, came the "Persian (Standard)" keyboard layout, which was based on the Iranian national standard, ISIRI 9147, but—wait for it—this new layout was not in compliance with the standard! One of the best parts of the standard keyboard layout was missing: being able to type ZWNJ character using Shift+Space. Result: not so helpful for the user.
At the 2013 Unicode conference, I brought up the issue with Microsoft's Michael Kaplan, let him know that we have been providing alternate solutions for years, using their own MSKLC, and suggested him to think about enhancing the old Microsoft layout with the same feature, as I did back in 2011.
Michael responded to my request on his blog: (archived)
Well, I can always look at loosening up the definition of what is legal for the space character.
To be honest, we always have good reasons for wanting to keep the rules tight, but every time we change anything the definition gets loosened more.
And ZWNJ is a worthy one to consider.
I will look into it for the future....
Thanks for the great suggestion!!Today, I’m glad to inform you that the “Persian (Standard)” keyboard layout on Windows 8 (and 8.1, with their latest updates) does have ZWNJ mapped on Shift+Space key and allows easily writing Persian correctly.
And, it doesn’t end there! You also get the real Persian numbers with this “Persian (Standard)” layout. Therefore, the updated layout does meet all the requirements of the ISIRI standard and even a little more! Don't forget to thank Michael, if you like these outcomes.