[Cuis-dev] Diacritical marks in Smalltalk code

Boris Shingarov shingarov at labware.com
Tue Dec 20 09:55:49 PST 2022


Yes!! Everything works now!!!

On 12/20/22 12:32, Juan Vuletich wrote:
> Hi Boris, Folks,
>
> I just pushed a change to keyboard input. Now the full range of Unicode
> keyboard input as supplied by the OS should work.
>
> I tried it with the on screen keyboards provided by MacOS, and code
> points not in the Latin charset (but included in the font set in the
> Cuis text editor) seem to work well.
>
> Boris, please try with this, and tell how it works for you
>
> Thanks!
>
> On 12/20/2022 1:01 PM, Juan Vuletich via Cuis-dev wrote:
> > Hi Boris,
> >
> > A quick follow up on this.
> >
> > In #fetchMoreEventsDiscardingMouseEvents:, following the call to
> > #primGetNextEvent:, add `eventBuffer first = 2 ifTrue: [eventBuffer
> > print].`. This will show the raw data we get from the VM for every
> > keyboard event.
> >
> > In #generateKeyboardEvent: you have the full complexity of processing
> > those buffers in Cuis. This hasn't been updated since before Unicode
> > in Cuis, so calls to #iso8859s15CodeForUnicodeCodePoint: and
> > #macRomanToLatin1: are probably a bad idea today. We need to just take
> > the CodePoint in the sixth position in the Array. Will work a bit on
> > this and keep you posted.
> >
> > Thanks,
> >
> > On 12/20/2022 11:09 AM, Juan Vuletich via Cuis-dev wrote:
> >> Hi Boris,
> >>
> >> On 12/20/2022 9:42 AM, Boris Shingarov via Cuis-dev wrote:
> >>> What is the preferred way to debug what happens when a keyboard key
> >>> is pressed? I am observing some strange non-orthogonality in the
> >>> latest Cuis: some Greek letters appear to be "more equal" than others.
> >>
> >> Try `Sensor kbdTest` and `Sensor test`. Have the Transcript visible.
> >> Both end with [x]. Hack them as needed.
> >>
> >>>
> >>> Let me explain.
> >>>
> >>> I use Unicode for mathematical notation heavily in various systems
> >>> which all differ how this Unicode is keyed in. They all revolve
> >>> around the same idea of LaTeX-like conventions, but from
> >>> LiquidHaskell to ProofGeneral to Coqtail to
> >>> whatever-I-tried-in-Smalltalk there is enough difference in the
> >>> details to ruin the muscle-memory experience. So I gave up on all
> >>> application-specific schemes and have set up an xkbd layout which,
> >>> while again being similar to all of the above, behaves consistently
> >>> because it's an OS-level "input method". (It's an ".XCompose"
> >>> script for X11).
> >>
> >> Cool.
> >>
> >>> So for Greek letters it just sends Unicode Greek to Cuis. This
> >>> works well with *almost* all Greek letters, but *some*, such as θ,
> >>> seem to somehow not result in any input.
> >>
> >> The above could be of help.
> >>
> >>> I remember Juan was showing me some magic where some codepoints were
> >>> translated into a "special Cuis codepage", is this something that
> >>> still happens?
> >>
> >> That was in the old days. Now Cuis is fully Unicode capable, and
> >> strings are actually instances of UnicodeString that holds UTF-8 bytes.
> >>
> >>> the transition to full Unicode would remove all that complexity,
> >>> right? what's the best way to step through what happens to a key
> >>> event in the Debugger in Cuis?
> >>>
> >>
> >> There still be some problem, though. Cuis is fully Unicode capable,
> >> but the keyboard input is taken from whatever the VM delivers to us.
> >> `Sensor test` will show what the VM is delivering us. Most likely
> >> we'll need to understand how that relates to the input you're sending
> >> with your XCompose script, and how to make sense of it.
> >>
> >> HTH,
> >>
> >
> >
>
>
> -- 
> Juan Vuletich
> cuis.st
> github.com/jvuletich 
> <https://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fprotect-us.mimecast.com%2Fs%2FKfzOCM8VDQHyqPBtGD7k-%3Fdomain%3Dgithub.com&data=05%7C01%7Cshingarov%40labware.com%7C035a7df984ef40d2d41408dae2b020aa%7Cb5db03221aa04c0a859cad0f96966f4c%7C0%7C0%7C638071543361208786%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=jbsypiHlLAbgCc%2Fty3rkLfRLOresCqUaXVi9BnpPZJo%3D&reserved=0>
> researchgate.net/profile/Juan-Vuletich 
> <https://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fprotect-us.mimecast.com%2Fs%2FS4V_CNk6D9Uq0LktV7plk%3Fdomain%3Dresearchgate.net&data=05%7C01%7Cshingarov%40labware.com%7C035a7df984ef40d2d41408dae2b020aa%7Cb5db03221aa04c0a859cad0f96966f4c%7C0%7C0%7C638071543361208786%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=9HoYX7jd2WVM0DLjZN1M0FJ%2FdVGB%2Byw%2B0pKOntSLEoE%3D&reserved=0>
> independent.academia.edu/JuanVuletich 
> <https://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fprotect-us.mimecast.com%2Fs%2FwQ1BCOY0lyuLpY1iWCZUi%3Fdomain%3Dindependent.academia.edu&data=05%7C01%7Cshingarov%40labware.com%7C035a7df984ef40d2d41408dae2b020aa%7Cb5db03221aa04c0a859cad0f96966f4c%7C0%7C0%7C638071543361208786%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=JU9awFLKmyq90%2FsgBm4WSfGwJyjq9jkX6aFuPGgkI2Y%3D&reserved=0>
> patents.justia.com/inventor/juan-manuel-vuletich 
> <https://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fprotect-us.mimecast.com%2Fs%2Fbsb6CPNVmZH1KgzHWk0dW%3Fdomain%3Dpatents.justia.com&data=05%7C01%7Cshingarov%40labware.com%7C035a7df984ef40d2d41408dae2b020aa%7Cb5db03221aa04c0a859cad0f96966f4c%7C0%7C0%7C638071543361208786%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=%2BGW32L4%2BBw5WC1lVTC14V%2BjGP9fOH2UBSCkZbuH66a0%3D&reserved=0>
> linkedin.com/in/juan-vuletich-75611b3 
> <https://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fprotect-us.mimecast.com%2Fs%2FIBFUCQW8J0u1kVvHvq66e%3Fdomain%3Dlinkedin.com&data=05%7C01%7Cshingarov%40labware.com%7C035a7df984ef40d2d41408dae2b020aa%7Cb5db03221aa04c0a859cad0f96966f4c%7C0%7C0%7C638071543361521274%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=ej2ivmQ6FSXavJiZBpqJf3RNccUVT3%2FVjiDQzVCclpQ%3D&reserved=0>
> twitter.com/JuanVuletich 
> <https://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fprotect-us.mimecast.com%2Fs%2FioHmCR6VYoSDvY4HvRE1V%3Fdomain%3Dtwitter.com&data=05%7C01%7Cshingarov%40labware.com%7C035a7df984ef40d2d41408dae2b020aa%7Cb5db03221aa04c0a859cad0f96966f4c%7C0%7C0%7C638071543361521274%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=pUaSQ3mlfF0AbHmHJmAqYhJ4RAbx6Po7OoYUmP4ehu4%3D&reserved=0>



More information about the Cuis-dev mailing list