Squeak 3.8 What has happened to "smart tabs" - possible solution

Andreas Gerdes squeakdev at skalarsoft.com
Tue Aug 2 15:09:04 UTC 2005


Marcus Denker schrieb:

>
> Am 31.07.2005 um 20:09 schrieb Andreas Gerdes:
>
>> Hi all,
>>
>> Automatic indentation in Workspace and Browser seemed to be normal  
>> behaviour in 3.7,
>> in 3.8 it does not seem to work at all (not even in shout and not  
>> even with key combinations).
>> Have I missed sth?
>>
>
> Best would be to file a bug report about this (bugs.impara.de).
>
>     Marcus

I reported it to Mantis - my first time, I chose a false Severity 
"feature", sorry.

Meanwhile, I found the following:
In 3.7
ParagraphEditor>dispatchOnCharacter:with:
    [...]
    char asciiValue = 13 ifTrue: [
        ^ sensor controlKeyPressed
            ifTrue: [self normalCharacter: typeAheadStream]
            ifFalse: [self crWithIndent: typeAheadStream]].
    [...]

obviously someone has changed the logic here: if no controlKey pressed, 
behave, as if it was pressed!
This results in automatic indenting.

In 3.8 it has been "corrected":

    char asciiValue = 13 ifTrue: [
        ^ sensor controlKeyPressed
            ifTrue: [self crWithIndent: typeAheadStream]
            ifFalse: [self normalCharacter: typeAheadStream]].

This results in "indentation only with key combination"
But alt/cmd + cr  does not work (at least under windows...)

So anyone who wants automatic indenting again, just has to change two 
lines of code, but: could this be called a fix?
(How to proceed on Mantis?)

Andreas






More information about the Squeak-dev mailing list