From: Kazutoshi S. <k_s...@f2...> - 2012-03-02 01:09:43
|
Jarek Czekalski wrote: > I have only one more thing. Naming convention. As you're the first to > introduce user characters, you are in the same time setting the > convention. Do I read properly that you suggest to use the word > "character" for user characters and "char" for java characters? I would > feel calmer if we had more explicit distinction. Otherwise in all > discussions we will never be sure which "character" one has in mind. If > you would like to take one of my earlier suggestions it would be UChar > or UserChar. In short: I'll take another check for naming through the patch. However, I think we can accept some mixture at this time, and can fix them later and incrementally. Then I won't hold the patch because of naming about "character". The detailed thoughts are shown bellow. Are you OK with the above decision? If you found any specific unacceptable naming in the patch, please let me know. Detailed thoughts: I didn't think about naming so much at the time of working on the patch. It can be said that I unconsciously inherited the convention in existing Java/jEdit APIs which means the mixture. After a thought of setting the convention, I think I can hardly set such convention over the current mixture. Some points I found in the thoughts: - We shouldn't change the name of goToNextCharacter() and goToPrevCharacter() in a reflection of the change of the behavior. Thus "character" here means a grapheme cluster (aka user-perceived character). - We can't change Java API such as java.lang.Character, java.lang.CharSequence, java.text.CharacterIterator, BreakIterator.getCharacterInstance(), etc. - Then the mixture remains anyway. - Being aware of user-perceived characters, treating a single Java char as a character can be wrong in many places. I say that the ideal way to go is ... - to review and possibly replace existing operation for "character"s to be aware of user-perceived character. (A rough list of use of "character" to review is attached.) - to call single Java char as "code unit" where possible, for example, in comments or documentation. ... which seems to hard to follow for the majority of developers. I think it's enough to fix these mixture incrementally for each place after a real problem is identified. -- k_satoda |