[squeak-dev] [Ann] Cuis 4.0 is released!

Juan Vuletich (mail lists) juanlists at jvuletich.org
Sat Apr 28 14:56:39 UTC 2012

Hi Hannes,

Quoting "H. Hirzel" <hannes.hirzel at gmail.com>:

> Hello again
> I realized that instead of
> Character cr
> there is
> Character newLineCharacter
> and instead of
> Transcript show: 'abc'; cr.
> there is
> Transcript show: 'abc'; newLine.

Yes. Cuis 4 uses LF line separator. Having the #cr selector is now  
ambiguous. Should it mean 'cr' (ascii 13) or 'newLine' (whatever the  
convention is)? I removed #cr so senders will be aware of this, and be  
explicit on what they want (usually #newLine).

> Here my question: What do the paragraph signs with the boxes around
> them mean? (see screen shot)
> --Hannes

It means that that code use cr (Ascii 13) as the newLine character.  
This is the convention used by Smalltalk-80, Squeak, Pharo and older  
versions of Cuis.

An easy way to fix it is to do 'select all' (cmd-a), 'fix newLine'  
(cmd-shift-u) and 'accept' or 'save' (cmd-s). You can do this in the  
browser, or on changeset files in the File List.

> On 4/27/12, karl ramberg <karlramberg at gmail.com> wrote:
>> Looks nice indeed.
>> The rewrite of TextEditor looks quite impressive.
>> I tested a bit but Cuis has a quite limited font selection ;-)
>> How do I import more fonts to Cuis ?
>> A couple of bugs:
>> Found that when a menu is pinned down its sub-menus disappear quite fast.
>> Try to pin down New Morph menu and access sub-menus for example.
>> Also
>> There is a MNU when you select WorldMenu/Windows/Move Windows Onscreen and
>> a Transcript is open.
>> Cheers,
>> Karl
>> On Sat, Apr 21, 2012 at 8:14 PM, <juanlists at jvuletich.org> wrote:
>>> Hi Folks,
>>> Cuis 4.0 is available at
>>> http://www.jvuletich.org/Cuis/**Index.html<http://www.jvuletich.org/Cuis/Index.html>.
>>> This is a very important release. It's been over 10 months since Cuis
>>> 3.3, but all this time means that there are a lot of big news now.
>>> The biggest one is the public release of the Styled Text Editor, by
>>> Bernhard Pieber. Bernhard will do the announcement of this project
>>> himself,
>>> all I want to say is that Styled Text Editor is the driving force behind
>>> most of the new stuff in this release. I also want to add that I'm
>>> delighted to be able to work with Bernhard on his project, and that I'm
>>> more than happy with the wonderful effect this is having on Cuis itself.
>>> Check
>>> http://www.jvuletich.org/Cuis/**CuisReleaseNotes.html<http://www.jvuletich.org/Cuis/CuisReleaseNotes.html>.
>>> So, the main new features of this release of Cuis are the required
>>> support
>>> for External Packages. This is a very lightweight implementation of
>>> Packages, based on PackageInfo, but not on Monticello. Versioning is done
>>> with GitHub. Take a look at http://www.jvuletich.org/Cuis/**
>>> CodeManagementInCuis4.html<http://www.jvuletich.org/Cuis/CodeManagementInCuis4.html>and
>>> http://www.jvuletich.org/Cuis/**CuisAndGitHub.html<http://www.jvuletich.org/Cuis/CuisAndGitHub.html>.
>>> Full list of features (from the release notes):
>>> ------------------------------**-----------------------
>>>    - Package Support. Cuis 4.0 has a package implementation based on
>>> PackageInfo. Can be used with a Git repository (like GitHub) for package
>>> versioning. More info at "CodeManagementInCuis4" and "CuisAndGitHub".
>>> This
>>> infrastructure and process is used for the StyledTextEditor project,
>>> developed by Bernhard Pieber and Software Generation.
>>>    - New handling of ChangeSets. The idea is to have only one "live"
>>> change set that automatically captures all changes done to the Cuis Core
>>> image. Changes to Packages go to separate ChangeSets.
>>>    - UCompletion. A new implementation of Autocompletion for Smalltalk
>>> code. Activates with ctrl-space. Usually gives the selector desired as
>>> the
>>> first option. Some features are:
>>>        = Sorts by last definition of selector (Methods recently saved go
>>> first),
>>>        = Sorts appropriately all selectors matching entered prefix (no
>>> hardcoded limits, like 40 selectors matching 2 letters).
>>>        = Restricts suggestions if receiver is Global, a Constant or a
>>> pseudo-variable.
>>>        = Doesn't have an "expanded mode". Always shows relevant
>>> suggestions.
>>>        = Not restricted to a set of previously selected packages. All the
>>> methods in the system are accounted for.
>>>        = Very fast, thanks to an optimized Trie implementation.
>>>        = Compact code. Relies on services by Trie (for storing and
>>> querying selectors) and Shout (for parsing incomplete methods).
>>>        = Helps make Shout faster, by providing super fast queries of
>>> selector prefixes.
>>>        = Can be used for other applications besides Smalltalk code.
>>> Currently used for an English glossary for StyledTextEditor.
>>>    - Trie. Cuis 4.- includes a very optimized implementation of a Trie.
>>> Tries are dictionaries where keys are Strings. Lookups are extremely
>>> fast.
>>> Search for entries matching a prefix are extremely fast (O(1) regardless
>>> of
>>> the size of the collection). Addition and removals are quite fast too.
>>> Used
>>> for UCompletion, holding 11,000 selectors. Also used for an English spell
>>> checker (in the StyledTextEditor project) holding 166,000 words. In both
>>> cases use of memory is quite reasonable (3 and 5.4 bytes per character in
>>> average) and query speed is extremely fast.
>>>    - Multiple level undo / redo in all text and code editors.
>>>    - ClickNHalf+Drag to select words. TripleClick or
>>> DoubleClickNHalf+Drag
>>> to select paragraphs. Like most modern text editors and wordprocessors
>>> do.
>>>    - Multiple text selection (with control+mouse). Like most modern text
>>> editors and wordprocessors do.
>>>    - Lf. The newline character is no longer Character cr (ASCII code 13),
>>> but Character lf (ASCII code 10). This is the standard in Mac and Unix
>>> platforms, and the required convention for GitHub. All the code in the
>>> image has been converted.
>>>    - cmd-w closes window below mouse pointer. cmd-< y cmd-> cycle through
>>> windows.
>>>    - New "PostIt" like HoverHelp morphs.
>>>    - Simplification / Redesign: Scrolling in Morphic (TransformMorph
>>> gone,
>>> etc).
>>>    - Deep cleanup in Paragraph and paragraph display services in Canvas
>>> and DisplayScanner (now MorphicScanner).
>>>    - MouseClickState refactor, to ease new gestures (ClickNHalf+Drag,
>>> DoubleClickNHalf+Drag, TripleClick).
>>>    - Killed AbstractEvent hierarchy. Unified event subscribing,
>>> triggering
>>> and handling everywhere in Cuis.
>>>    - More TextMorph cleanup.
>>>    - Numeric enhancements done by nice and jmv, both on Squeak and Cuis.
>>>    - Many minor enhancements, cleanups and bugfixes.
>>>    - Updates to Squeak: Numerics, Network, and many others.
>>> I hope you enjoy this release of Cuis as much as Bernhard and I enjoyed
>>> working on it. As usual, comments, discussion, bug reports, kudos and
>>> donations are all
>>> welcome!
>>> Cheers,
>>> Juan Vuletich

Juan Vuletich

More information about the Squeak-dev mailing list