[squeak-dev] The Trunk: Multilingual-ul.151.mcz
commits at source.squeak.org
commits at source.squeak.org
Sun May 22 20:32:19 UTC 2011
Levente Uzonyi uploaded a new version of Multilingual to project The Trunk:
http://source.squeak.org/trunk/Multilingual-ul.151.mcz
==================== Summary ====================
Name: Multilingual-ul.151
Author: ul
Time: 22 May 2011, 10:12:27.443 pm
UUID: e47408e2-bdb2-ab44-83f0-82ba2d25b64d
Ancestors: Multilingual-ul.150
All TextConverters pass the line end conversion test.
=============== Diff against Multilingual-ul.150 ===============
Item was changed:
----- Method: CompoundTextConverter>>nextPut:toStream: (in category 'conversion') -----
nextPut: aCharacter toStream: aStream
+ | charCode leadingChar class |
- | ascii leadingChar class |
aStream isBinary ifTrue: [^aCharacter storeBinaryOn: aStream].
aCharacter isTraditionalDomestic ifFalse: [
class := (EncodedCharSet charsetAt: aCharacter leadingChar) traditionalCharsetClass.
+ charCode := (class charFromUnicode: aCharacter asUnicode) charCode.
- ascii := (class charFromUnicode: aCharacter asUnicode) charCode.
leadingChar := class leadingChar.
] ifTrue: [
+ charCode := aCharacter charCode.
- ascii := aCharacter charCode.
leadingChar := aCharacter leadingChar.
].
+ charCode < 256 ifTrue: [
+ (latin1Encodings at: charCode + 1)
+ ifNil: [ aStream basicNextPut: aCharacter ]
+ ifNotNil: [ :encodedString | aStream basicNextPutAll: encodedString ].
+ ^aCharacter ].
+ self
+ nextPutValue: charCode
+ toStream: aStream
+ withShiftSequenceIfNeededForLeadingChar: leadingChar.
-
- self nextPutValue: ascii toStream: aStream withShiftSequenceIfNeededForLeadingChar: leadingChar.
^aCharacter
!
Item was changed:
----- Method: EUCTextConverter>>nextPut:toStream: (in category 'conversion') -----
nextPut: aCharacter toStream: aStream
+ | charCode leadingChar nonUnicodeChar |
- | value leadingChar nonUnicodeChar value1 value2 |
aStream isBinary ifTrue: [^aCharacter storeBinaryOn: aStream].
+ charCode := aCharacter charCode.
- value := aCharacter charCode.
leadingChar := aCharacter leadingChar.
+ (leadingChar = 0 and: [ charCode < 256 ]) ifTrue: [
+ (latin1Encodings at: charCode + 1)
+ ifNil: [ aStream basicNextPut: aCharacter ]
+ ifNotNil: [ :encodedString | aStream basicNextPutAll: encodedString ].
+ ^aCharacter ].
+ aCharacter isTraditionalDomestic
+ ifFalse: [ nonUnicodeChar := self nonUnicodeClass charFromUnicode: charCode ]
+ ifTrue: [ nonUnicodeChar := Character value: charCode ].
- (leadingChar = 0 and: [value < 128]) ifTrue: [
- ^aStream basicNextPut: (Character value: value).
- ].
-
- (128 <= value and: [value < 256]) ifTrue: [^ aStream].
- aCharacter isTraditionalDomestic ifFalse: [
- nonUnicodeChar := self nonUnicodeClass charFromUnicode: value.
- ] ifTrue: [
- nonUnicodeChar :=(Character value: value)
- ].
nonUnicodeChar ifNotNil: [
+ charCode := nonUnicodeChar charCode.
+ aStream
+ basicNextPut: (Character value: charCode // 94 + 161);
+ basicNextPut: (Character value: charCode \\ 94 + 161) ].
- value := nonUnicodeChar charCode.
- value1 := value // 94 + 161.
- value2 := value \\ 94 + 161.
- aStream basicNextPut: (Character value: value1).
- aStream basicNextPut: (Character value: value2).
- ].
^aCharacter
!
Item was changed:
----- Method: ShiftJISTextConverter>>nextPut:toStream: (in category 'conversion') -----
+ nextPut: aCharacter toStream: aStream
+
+ | charCode leadingChar aChar |
- nextPut: aCharacter toStream: aStream
- | value leadingChar aChar |
aStream isBinary ifTrue: [^aCharacter storeBinaryOn: aStream].
+ aChar := aCharacter.
+ charCode := aCharacter charCode.
+ aChar isTraditionalDomestic ifFalse: [
+ (16rFF61 <= charCode and: [charCode <= 16rFF9F]) ifTrue: [
+ ^aStream basicNextPut: (self sjisKatakanaFor: charCode) ].
+ aChar := (JISX0208 charFromUnicode: charCode) ifNil: [
+ ^aCharacter "an error or nil may be better" ].
+ charCode := aChar charCode ].
+ (leadingChar := aChar leadingChar) = 0 ifTrue: [
+ charCode < 256 ifTrue: [
+ (latin1Encodings at: charCode + 1)
+ ifNil: [ aStream basicNextPut: aChar ]
+ ifNotNil: [ :encodedString | aStream basicNextPutAll: encodedString ].
+ ^aChar ].
+ ^aStream basicNextPut: aChar ].
+ leadingChar = self leadingChar ifTrue: [
- aCharacter isTraditionalDomestic ifTrue: [
- aChar := aCharacter.
- value := aCharacter charCode.
- ] ifFalse: [
- value := aCharacter charCode.
- (16rFF61 <= value and: [value <= 16rFF9F]) ifTrue: [
- ^aStream basicNextPut: (self sjisKatakanaFor: value).
- ].
- aChar := JISX0208 charFromUnicode: value.
- aChar ifNil: [^ aStream].
- value := aChar charCode.
- ].
- leadingChar := aChar leadingChar.
- leadingChar = 0 ifTrue: [
- ^aStream basicNextPut: (Character value: value).
- ].
- leadingChar == self leadingChar ifTrue: [
| upper lower |
+ upper := charCode // 94 + 33.
+ lower := charCode \\ 94 + 33.
- upper := value // 94 + 33.
- lower := value \\ 94 + 33.
upper \\ 2 = 1 ifTrue: [
upper := upper + 1 / 2 + 112.
lower := lower + 31
] ifFalse: [
upper := upper / 2 + 112.
lower := lower + 125
].
upper >= 160 ifTrue: [upper := upper + 64].
lower >= 127 ifTrue: [lower := lower + 1].
+ aStream
+ basicNextPut: (Character value: upper);
+ basicNextPut: (Character value: lower) ].
+ ^aChar
- aStream basicNextPut: (Character value: upper).
- aStream basicNextPut: (Character value: lower).
- ].
- ^aCharacter
!
More information about the Squeak-dev
mailing list
|