[squeak-dev] The Trunk: Multilingual-nice.248.mcz
Nicolas Cellier
nicolas.cellier.aka.nice at gmail.com
Mon Dec 9 14:14:41 UTC 2019
Le lun. 9 déc. 2019 à 15:07, <commits at source.squeak.org> a écrit :
> Nicolas Cellier uploaded a new version of Multilingual to project The
> Trunk:
> http://source.squeak.org/trunk/Multilingual-nice.248.mcz
>
> ==================== Summary ====================
>
> Name: Multilingual-nice.248
> Author: nice
> Time: 9 December 2019, 3:07:24.38758 pm
> UUID: e5023db8-378f-4141-bfb2-ae3f377da27c
> Ancestors: Multilingual-mt.247
>
> Fix input interpreter on Windows VM which was incorrectly set to
> MacRomanInputInterpreter in Latin1Environment...
>
> It should be UTF32InputInterpreter which is what Open Smalltalk VM did
> always used since birth.
>
> While at it, nuke unused Current class var.
>
> You can check current keyborad interpreter with:
>
> ActiveHand keyboardInterpreter.
>
> You can reset it with:
>
> LanguageEnvironment clearDefault.
> HandMorph clearInterpreters.
> ActiveHand keyboardInterpreter.
>
> If you don't do it manually, it should be reset at next image startup.
>
> Note:
> Since modern images only run on Open Smalltalk VM and since Open Smalltalk
> VM always use utf-32, we might better nuke win32VMUsesUnicode alltogether -
> it will always be true.
> But since it is feature freeze, and since I cannot test the other
> environments, I leave this change for post-release.
>
> =============== Diff against Multilingual-mt.247 ===============
>
> Item was changed:
> Object subclass: #LanguageEnvironment
> instanceVariableNames: 'id'
> + classVariableNames: 'ClipboardInterpreterClass
> FileNameConverterClass InputInterpreterClass KnownEnvironments
> SystemConverterClass'
> - classVariableNames: 'ClipboardInterpreterClass Current
> FileNameConverterClass InputInterpreterClass KnownEnvironments
> SystemConverterClass'
> poolDictionaries: ''
> category: 'Multilingual-Languages'!
>
> !LanguageEnvironment commentStamp: 'bf 8/16/2009 16:52' prior: 0!
> The name multilingualized Squeak suggests that you can use multiple
> language at one time. This is true, of course, but the system still how to
> manage the primary language; that provides the interpretation of data going
> out or coming in from outside world. It also provides how to render
> strings, as there rendering rule could be different in one language to
> another, even if the code points in a string is the same.
>
> Originally, LanguageEnvironment and its subclasses only has class side
> methods. After merged with Diego's Babel work, it now has instance side
> methods. Since this historical reason, the class side and instance side
> are not related well.
>
> When we talk about the interface with the ou t s i d e
> o f t h e S q u e a k w o r l d
> , t h e r e a r e t h r e e d
> i f f e r e n t " c h a n n e l s "
> ; t h e k e y b o a r d i n p u
> t , c l i p b o a r d o u t p u t
> a n d i n p u t , a n d f i l
> e n a m e . O n a n o t - t o
> - u n c o m m o n s y s t e m s u
> c h a s a U n i x s y s t e m
> l o c a l i z e d t o J a p a n
> , a l l o f t h e s e t h r e
> e c a n h a v e ( a n d d o e
> s h
> a v e ) d i f f e r e n t e n c
> o d i n g s . S o w e n e e d
> t o m a n a g e t h e m s e p
> a r a t e l y . N o t e t h a t
> t h e e n c o d i n g i n a
> f i l e c a n b e a n y t h i n
> g . W h i l e i t i s n i c
> e t o p r o v i d e a s u g g
> e s t e d g u e s s f o r t h i
> s ' d e f a u l t s y s t e m f
> i l e c o n t e n t e n c o d i n
> g ' , i t i s n o t c r i t i
> c a l .
>
> R e n d e r i n g s u p p o
> r t i s l i m i t e d b a s i c
> L - t o - R r e n d e r i n g s
> o f a r . B u t y o u c a n
> p r o v i d e d i f f e r e n t
> l i n e - w r a p r u l e , a t
> l e a s t .
> !
>
> I never noticed before how broken was the comment... It is a mixture of
ASCII and UTF32 re-interpreted as ByteString.
We will have to fix that too.
Item was changed:
> ----- Method: LanguageEnvironment class>>win32VMUsesUnicode (in category
> 'private') -----
> win32VMUsesUnicode
> | buildDate ind date vmHead |
> vmHead := Smalltalk vmVersion.
> vmHead ifNil: [^ false].
> + (vmHead beginsWith: 'Open Smalltalk')
> + ifTrue: [ ^ true ].
> buildDate := Smalltalk buildDate.
> buildDate ifNil: [^ false].
> ind := buildDate indexOfSubCollection: 'on'.
> date := Date readFromString: (buildDate copyFrom: ind+3 to:
> buildDate size).
> (vmHead beginsWith: 'Croquet') ifTrue: [
> ^ date >= (Date readFromString: '1 Feb 2007')
> ].
> (vmHead beginsWith: 'Squeak') ifTrue: [
> ^ date >= (Date readFromString: '5 June 2007')
> ].
> ^ false.
>
> "LanguageEnvironment win32VMUsesUnicode"!
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20191209/6dff414c/attachment.html>
More information about the Squeak-dev
mailing list
|