Patrick Rein uploaded a new version of Multilingual to project The Trunk: http://source.squeak.org/trunk/Multilingual-pre.287.mcz
==================== Summary ====================
Name: Multilingual-pre.287 Author: pre Time: 9 December 2022, 1:49:23.701273 pm UUID: 52810dd8-26fa-fe4a-a84e-693b3f019364 Ancestors: Multilingual-mt.286
Categorizes some previously uncategorized methods.
=============== Diff against Multilingual-mt.286 ===============
Item was changed: + ----- Method: CP1253ClipboardInterpreter>>fromSystemClipboard: (in category 'conversion-clipboard') ----- - ----- Method: CP1253ClipboardInterpreter>>fromSystemClipboard: (in category 'as yet unclassified') ----- fromSystemClipboard: aString
| result converter | result := WriteStream on: (String new: aString size). converter := CP1253TextConverter new. aString do: [:each | result nextPut: (converter toSqueak: each macToSqueak) asCharacter. ]. ^ result contents. !
Item was changed: + ----- Method: CP1253ClipboardInterpreter>>toSystemClipboard: (in category 'conversion-clipboard') ----- - ----- Method: CP1253ClipboardInterpreter>>toSystemClipboard: (in category 'as yet unclassified') ----- toSystemClipboard: aString
| result converter r | aString isAsciiString ifTrue: [^ aString asOctetString]. "optimization"
result := WriteStream on: (String new: aString size). converter := CP1253TextConverter new. aString do: [:each | r := converter fromSqueak: each. r charCode < 255 ifTrue: [ result nextPut: r squeakToMac]]. ^ result contents. !
Item was changed: + ----- Method: CP1253InputInterpreter>>initialize (in category 'initialize-release') ----- - ----- Method: CP1253InputInterpreter>>initialize (in category 'as yet unclassified') ----- initialize
converter := CP1253TextConverter new. !
Item was changed: + ----- Method: CP1253InputInterpreter>>nextCharFrom:firstEvt: (in category 'keyboard') ----- - ----- Method: CP1253InputInterpreter>>nextCharFrom:firstEvt: (in category 'as yet unclassified') ----- nextCharFrom: sensor firstEvt: evtBuf
| keyValue | keyValue := evtBuf third. ^ converter toSqueak: keyValue asCharacter. !
Item was changed: + ----- Method: ISO88597ClipboardInterpreter>>fromSystemClipboard: (in category 'conversion-clipboard') ----- - ----- Method: ISO88597ClipboardInterpreter>>fromSystemClipboard: (in category 'as yet unclassified') ----- fromSystemClipboard: aString
^ aString convertFromWithConverter: ISO88597TextConverter new. !
Item was changed: + ----- Method: ISO88597ClipboardInterpreter>>toSystemClipboard: (in category 'conversion-clipboard') ----- - ----- Method: ISO88597ClipboardInterpreter>>toSystemClipboard: (in category 'as yet unclassified') ----- toSystemClipboard: aString
| result converter |
aString isAsciiString ifTrue: [^ aString asOctetString]. "optimization"
result := WriteStream on: (String new: aString size). converter := ISO88597TextConverter new. aString do: [:each | result nextPut: (converter fromSqueak: each).]. ^ result contents. !
Item was changed: + ----- Method: ISO88597InputInterpreter>>initialize (in category 'initialize-release') ----- - ----- Method: ISO88597InputInterpreter>>initialize (in category 'as yet unclassified') ----- initialize
converter := ISO88597TextConverter new. !
Item was changed: + ----- Method: ISO88597InputInterpreter>>nextCharFrom:firstEvt: (in category 'keyboard') ----- - ----- Method: ISO88597InputInterpreter>>nextCharFrom:firstEvt: (in category 'as yet unclassified') ----- nextCharFrom: sensor firstEvt: evtBuf
| keyValue | keyValue := evtBuf third. ^ converter toSqueak: keyValue asCharacter. !
Item was changed: + ----- Method: M17nInputInterpreter>>initialize (in category 'initialize-release') ----- - ----- Method: M17nInputInterpreter>>initialize (in category 'as yet unclassified') ----- initialize
converter := UTF8TextConverter new.!
Item was changed: + ----- Method: M17nInputInterpreter>>nextCharFrom:firstEvt: (in category 'keyboard') ----- - ----- Method: M17nInputInterpreter>>nextCharFrom:firstEvt: (in category 'as yet unclassified') ----- nextCharFrom: sensor firstEvt: evtBuf | keyValue | keyValue := evtBuf at: 6. 0 = keyValue ifTrue: [ ^self nextUtf8Char: sensor firstEvt: evtBuf ]. 256 > keyValue ifTrue: [ ^keyValue asCharacter ]. ^ Character leadingChar: Locale currentPlatform leadingChar code: keyValue!
Item was changed: + ----- Method: M17nInputInterpreter>>nextUtf8Char:firstEvt: (in category 'private') ----- - ----- Method: M17nInputInterpreter>>nextUtf8Char:firstEvt: (in category 'as yet unclassified') ----- nextUtf8Char: sensor firstEvt: evtBuf "this code should really go into InputSensor>>fullKey" | aCollection bytes peekEvent keyValue type stream multiChar evt | self flag: #fixthis. keyValue := evtBuf third. evtBuf fourth = EventKeyChar ifTrue: [type := #keystroke]. peekEvent := sensor peekEvent. (peekEvent notNil and: [peekEvent fourth = EventKeyDown]) ifTrue: [ sensor nextEvent. peekEvent := sensor peekEvent].
(type == #keystroke and: [peekEvent notNil and: [peekEvent first = EventTypeKeyboard and: [peekEvent fourth = EventKeyChar]]]) ifTrue: [ aCollection := OrderedCollection with: keyValue asCharacter. bytes := (keyValue <= 127) ifTrue: [ 0 ] ifFalse: [ (keyValue bitAnd: 16rE0) = 192 ifTrue: [ 1 ] ifFalse: [ (keyValue bitAnd: 16rF0) = 224 ifTrue: [ 2 ] ifFalse: [ 3 ] ] ]. [bytes > 0] whileTrue: [ (evt := sensor nextEvent) fourth = EventKeyChar ifTrue: [ bytes := bytes - 1. aCollection add: (Character value: evt third)]]. "aCollection do: [ :each | Transcript show: (each asciiValue hex , ' ')]. Transcript show: Character cr." stream := ReadStream on: (String withAll: aCollection). multiChar := converter nextFromStream: stream. multiChar isOctetCharacter ifFalse: [ sensor nextEvent ]. ^ multiChar].
^ keyValue asCharacter!
Item was changed: + ----- Method: MacUTF8ClipboardInterpreter>>fromSystemClipboard: (in category 'conversion-clipboard') ----- - ----- Method: MacUTF8ClipboardInterpreter>>fromSystemClipboard: (in category 'as yet unclassified') ----- fromSystemClipboard: aString ^ aString convertFromWithConverter: UTF8TextConverter new!
Item was changed: + ----- Method: MacUTF8ClipboardInterpreter>>toSystemClipboard: (in category 'conversion-clipboard') ----- - ----- Method: MacUTF8ClipboardInterpreter>>toSystemClipboard: (in category 'as yet unclassified') ----- toSystemClipboard: text
| string | string := text asString. string isAsciiString ifTrue: [^ string asOctetString]. string isOctetString ifTrue: [^ string ]. ^ string convertToWithConverter: UTF8TextConverter new . !
Item was changed: + ----- Method: UTF32CNInputInterpreter>>nextCharFrom:firstEvt: (in category 'keyboard') ----- - ----- Method: UTF32CNInputInterpreter>>nextCharFrom:firstEvt: (in category 'as yet unclassified') ----- nextCharFrom: sensor firstEvt: evtBuf | keyValue | keyValue := evtBuf at: 6. keyValue = 0 ifTrue: [keyValue := evtBuf at: 3]. keyValue < 256 ifTrue: [^Character value: keyValue]. ^ Character leadingChar: SimplifiedChineseEnvironment leadingChar code: keyValue!
Item was changed: + ----- Method: UTF32GreekInputInterpreter>>nextCharFrom:firstEvt: (in category 'keyboard') ----- - ----- Method: UTF32GreekInputInterpreter>>nextCharFrom:firstEvt: (in category 'as yet unclassified') ----- nextCharFrom: sensor firstEvt: evtBuf | keyValue | keyValue := evtBuf at: 6. keyValue = 0 ifTrue: [keyValue := evtBuf at: 3]. keyValue < 256 ifTrue: [^Character value: keyValue]. ^ Character leadingChar: GreekEnvironment leadingChar code: keyValue!
Item was changed: + ----- Method: UTF32JPInputInterpreter>>japaneseSpecialMark: (in category 'private') ----- - ----- Method: UTF32JPInputInterpreter>>japaneseSpecialMark: (in category 'as yet unclassified') ----- japaneseSpecialMark: anInteger "For japanese special marks. This method converts 'YEN SIGN' (16rA5) to 'REVERSE SOLIDUS' (16r5C) and use Japanese leading characters instead of Unicode for below characters. 'CENT SIGN' (16rA2) 'POUND SIGN' (16rA3) 'SECTION SIGN' (16rA7) 'DIAERESIS' (16rA8) 'NOT SIGN' (16rAC) 'DEGREE SIGN' (16rB0) 'PLUS-MINUS SIGN (16rB1) 'ACUTE ACCENT' (16rB4) 'PILCROW SIGN' (16rB6) 'MULTIPLICATION SIGN' (16rD7) 'DIVISION SIGN' (16rF7) " Project current localeID = (LocaleID isoLanguage: 'ja') ifTrue: [anInteger = 16rA5 ifTrue: [^ Character value: 16r5C]. (#(16rA2 16rA3 16rA7 16rA8 16rAC 16rB0 16rB1 16rB4 16rB6 16rD7 16rF7) includes: anInteger) ifTrue: [^ Character leadingChar: JapaneseEnvironment leadingChar code: anInteger]]. ^ nil!
Item was changed: + ----- Method: UTF32NPInputInterpreter>>nextCharFrom:firstEvt: (in category 'keyboard') ----- - ----- Method: UTF32NPInputInterpreter>>nextCharFrom:firstEvt: (in category 'all') ----- nextCharFrom: sensor firstEvt: evtBuf | keyValue | keyValue := evtBuf at: 6. keyValue = 0 ifTrue: [keyValue := evtBuf at: 3]. keyValue < 256 ifTrue: [^Character value: keyValue]. ^ Character leadingChar: NepaleseEnvironment leadingChar code: keyValue!
Item was changed: + ----- Method: UTF8CNClipboardInterpreter>>fromSystemClipboard: (in category 'conversion-clipboard') ----- - ----- Method: UTF8CNClipboardInterpreter>>fromSystemClipboard: (in category 'as yet unclassified') ----- fromSystemClipboard: aString ^aString convertFromWithConverter: UTF8TextConverter new.!
Item was changed: + ----- Method: UTF8GreekClipboardInterpreter>>fromSystemClipboard: (in category 'conversion-clipboard') ----- - ----- Method: UTF8GreekClipboardInterpreter>>fromSystemClipboard: (in category 'as yet unclassified') ----- fromSystemClipboard: aString | str | str := aString convertFromWithConverter: UTF8TextConverter new. ^ str collect: [:c | (#( 16r20AC 16rFFFD 16r201A 16r0192 16r201E 16r2026 16r2020 16r2021 16rFFFD 16r2030 16rFFFD 16r2039 16rFFFD 16rFFFD 16rFFFD 16rFFFD 16rFFFD 16r2018 16r2019 16r201C 16r201D 16r2022 16r2013 16r2014 16rFFFD 16r2122 16rFFFD 16r203A 16rFFFD 16rFFFD 16rFFFD 16rFFFD 16r00A0 16r0385 16r0386 16r00A3 16r00A4 16r00A5 16r00A6 16r00A7 16r00A8 16r00A9 16rFFFD 16r00AB 16r00AC 16r00AD 16r00AE 16r2015 16r00B0 16r00B1 16r00B2 16r00B3 16r0384 16r00B5 16r00B6 16r00B7 16r0388 16r0389 16r038A 16r00BB 16r038C 16r00BD 16r038E 16r038F 16r0390 16r0391 16r0392 16r0393 16r0394 16r0395 16r0396 16r0397 16r0398 16r0399 16r039A 16r039B 16r039C 16r039D 16r039E 16r039F 16r03A0 16r03A1 16rFFFD 16r03A3 16r03A4 16r03A5 16r03A6 16r03A7 16r03A8 16r03A9 16r03AA 16r03AB 16r03AC 16r03AD 16r03AE 16r03AF 16r03B0 16r03B1 16r03B2 16r03B3 16r03B4 16r03B5 16r03B6 16r03B7 16r03B8 16r03B9 16r03BA 16r03BB 16r03BC 16r03BD 16r03BE 16r03BF 16r03C0 16r03C1 16r03C2 16r03C3 16r03C4 16r03C5 16r03C6 16r03C7 16r03C8 16r03C9 16r03CA 16r03CB 16r03CC 16r03CD 16r03CE 16rFFFD ) includes: c charCode) ifTrue: [Character leadingChar: GreekEnvironment leadingChar code: c charCode] ifFalse: [c]]. !
Item was changed: + ----- Method: UTF8JPClipboardInterpreter>>fromSystemClipboard: (in category 'conversion-clipboard') ----- - ----- Method: UTF8JPClipboardInterpreter>>fromSystemClipboard: (in category 'as yet unclassified') ----- fromSystemClipboard: aString ^aString convertFromWithConverter: UTF8TextConverter new. !
Item was changed: + ----- Method: UnixEUCKRInputInterpreter>>initialize (in category 'initialize-release') ----- - ----- Method: UnixEUCKRInputInterpreter>>initialize (in category 'as yet unclassified') ----- initialize
converter := EUCKRTextConverter new. !
Item was changed: + ----- Method: UnixEUCKRInputInterpreter>>nextCharFrom:firstEvt: (in category 'keyboard') ----- - ----- Method: UnixEUCKRInputInterpreter>>nextCharFrom:firstEvt: (in category 'as yet unclassified') ----- nextCharFrom: sensor firstEvt: evtBuf
| firstChar secondChar peekEvent keyValue type stream multiChar | keyValue := evtBuf third. evtBuf fourth = EventKeyChar ifTrue: [type := #keystroke]. peekEvent := sensor peekEvent. (peekEvent notNil and: [peekEvent fourth = EventKeyDown]) ifTrue: [ sensor nextEvent. peekEvent := sensor peekEvent].
(type == #keystroke and: [peekEvent notNil and: [peekEvent first = EventTypeKeyboard and: [peekEvent fourth = EventKeyChar]]]) ifTrue: [ firstChar := keyValue asCharacter. secondChar := (peekEvent third) asCharacter. stream := ReadStream on: (String with: firstChar with: secondChar). multiChar := converter nextFromStream: stream. multiChar isOctetCharacter ifFalse: [sensor nextEvent]. ^ multiChar].
^ keyValue asCharacter!
squeak-dev@lists.squeakfoundation.org