[Pharo-project] Pharo 1.1/1.2 and class names in Chinese
emptist at googlegroups.com
Wed Jul 28 15:33:16 EDT 2010
In 1.1 and 1.2, without setting a language environment for Chinese, I am able
to use Chinese by setting fonts. It seems to work except for accepting a
class named in Chinese will end in a ClassBuilder error of 'Class names must
be capitalized'. Well is it a feature(requires language environment being
set correctly) or bug?
The code located being:
"Validate the new class name"
ifFalse: [ ^ false ].
aString first canBeGlobalVarInitial ifFalse:[
self error: 'Class names must be capitalized'.
environ at: aString ifPresent:[:old|
(old isKindOf: Behavior) ifFalse:[
self notify: aString asText allBold,
' already exists!\Proceed will store over it.' withCRs]].
and following the code the problemic method is #canBeGlobalVarInitial: which
is found in two classes:
in EncodedCharSet class side:
| leadingChar |
leadingChar := char leadingChar.
leadingChar = 0 ifTrue: [^ self isUppercase: char].
^ self isLetter: char.
and in LanguageEnvironment
^ Unicode canBeGlobalVarInitial: char.
I didn't set a Chinese environment and the exception is occured in in
EncodedCharSet class since leadingChar is 0 and a Chinese char seems thought
to be lowercased.
南無佛 南無法 南無僧
View this message in context: http://forum.world.st/Pharo-1-1-1-2-and-class-names-in-Chinese-tp2305496p2305496.html
Sent from the Pharo Smalltalk mailing list archive at Nabble.com.
More information about the Pharo-dev