The Inbox: ReleaseBuilder-fbs.77.mcz

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

The Inbox: ReleaseBuilder-fbs.77.mcz

commits-2
Frank Shearar uploaded a new version of ReleaseBuilder to project The Inbox:
http://source.squeak.org/inbox/ReleaseBuilder-fbs.77.mcz

==================== Summary ====================

Name: ReleaseBuilder-fbs.77
Author: fbs
Time: 4 December 2012, 10:32:43.045 am
UUID: fdbcec1f-a534-4070-b03f-1604faa4220a
Ancestors: ReleaseBuilder-cmm.76

Squeak 4.4 ReleaseBuilder.

This renames ReleaseBuilderTrunk as ReleaseBuilderFor4dot3, and pulls some useful bits up to ReleaseBuilder for the 4.4 builder to reuse.

=============== Diff against ReleaseBuilder-cmm.76 ===============

Item was added:
+ ----- Method: ReleaseBuilder class>>prepareNewBuild (in category 'scripts') -----
+ prepareNewBuild
+ "ReleaseBuilderTrunk prepareNewBuild"
+ "Prepare everything that should be done for a new image build"
+ TTCFont registerAll.
+ RealEstateAgent standardSize: 400@500.
+ SystemVersion setVersion.
+ SMLoaderPlus
+ setDefaultFilters: (OrderedCollection with: #filterSafelyAvailable).
+ self setDisplayExtent: 800 @ 600;
+ setPreferences;
+ switchToNewRepository;
+ openWelcomeWorkspaces.
+ "Make DependencyBrowser accessible on the open menu."
+ DependencyBrowser initialize.
+ Smalltalk cleanUp: true.
+ Undeclared removeUnreferencedKeys.
+ Smalltalk garbageCollect!

Item was added:
+ ----- Method: ReleaseBuilder class>>repositoryUrl (in category 'private') -----
+ repositoryUrl
+ ^ 'http://source.squeak.org'!

Item was added:
+ ----- Method: ReleaseBuilder class>>switchToNewRepository (in category 'private') -----
+ switchToNewRepository
+ self subclassResponsibility!

Item was added:
+ ----- Method: ReleaseBuilder class>>transferCurrentPackages (in category 'scripts') -----
+ transferCurrentPackages
+ "Copy the packages currently loaded in the image from the trunk repository to my releaseRepository."
+ | trunkRep releaseRep |
+ trunkRep := self trunkRepository.
+ releaseRep := self releaseRepository.
+ MCWorkingCopy allManagers do:
+ [ : eachWorkingCopy | eachWorkingCopy ancestors do:
+ [ : eachVersionInfo | (releaseRep includesVersionNamed: eachVersionInfo versionName) ifFalse:
+ [ (trunkRep versionWithInfo: eachVersionInfo)
+ ifNil: [ Warning signal: eachVersionInfo name , ' not found in ', trunkRep ]
+ ifNotNilDo: [ : ver | self storeVersion: ver ] ] ] ]!

Item was added:
+ ----- Method: ReleaseBuilder class>>trunkRepository (in category 'private') -----
+ trunkRepository
+ ^ MCHttpRepository
+ location: self repositoryUrl , '/trunk'
+ user: 'squeak'
+ password: 'squeak'!

Item was added:
+ ReleaseBuilder subclass: #ReleaseBuilderFor4dot3
+ instanceVariableNames: ''
+ classVariableNames: ''
+ poolDictionaries: ''
+ category: 'ReleaseBuilder'!
+
+ !ReleaseBuilderFor4dot3 commentStamp: 'fbs 12/3/2012 09:47' prior: 0!
+ This is the release builder for Squeak 4.3. It was formerly known as ReleaseBuilderTrunk.!

Item was added:
+ ----- Method: ReleaseBuilderFor4dot3 class>>openWelcomeWorkspaces (in category 'private') -----
+ openWelcomeWorkspaces
+ TheWorldMainDockingBar instance
+ showWelcomeText: #squeakUserInterface
+ label: 'Squeak User Interface'
+ in: (40 @ 40 extent: 500 @ 300).
+ TheWorldMainDockingBar instance
+ showWelcomeText: #workingWithSqueak
+ label: 'Working With Squeak'
+ in: (80 @ 80 extent: 500 @ 300).
+ TheWorldMainDockingBar instance
+ showWelcomeText: #licenseInformation
+ label: 'License Information'
+ in: (120 @ 120 extent: 500 @ 300).
+ TheWorldMainDockingBar instance
+ showWelcomeText: #welcomeFutureDirections
+ label: 'Future Directions'
+ in: (160 @ 160 extent: 500 @ 300).
+ TheWorldMainDockingBar instance
+ showWelcomeText: #welcomeToSqueak43
+ label: 'Welcome to Squeak 4.3'
+ in: (200 @ 200 extent: 500 @ 300)!

Item was added:
+ ----- Method: ReleaseBuilderFor4dot3 class>>releaseRepository (in category 'private') -----
+ releaseRepository
+ ^ MCHttpRepository
+ location: self repositoryUrl , '/squeak43'
+ user: 'squeak'
+ password: 'squeak'!

Item was added:
+ ----- Method: ReleaseBuilderFor4dot3 class>>setDisplayExtent: (in category 'private') -----
+ setDisplayExtent: extent
+ "Uncomment next line when the primitives become available in the Squeak VM."
+ " DisplayScreen hostWindowSize: extent."
+ Display extent = extent ifFalse: [ Warning signal: 'Display extent not set to ', extent ]!

Item was added:
+ ----- Method: ReleaseBuilderFor4dot3 class>>setPreferences (in category 'private') -----
+ setPreferences
+ Preferences
+ installBrightWindowColors ;
+ setPreference: #scrollBarsWithoutMenuButton toValue: true ;
+ setPreference: #swapMouseButtons toValue: true ;
+ setPreference: #annotationPanes toValue: true ;
+ setPreference: #showSplitterHandles toValue: false ;
+ setPreference: #showBoundsInHalo toValue: true ;
+ setPreference: #alternateHandlesLook toValue: false ;
+ setPreference: #roundedMenuCorners toValue: false ;
+ setPreference: #roundedWindowCorners toValue: false.
+ PluggableButtonMorph roundedButtonCorners: false.
+ FillInTheBlankMorph roundedDialogCorners: false.
+ Workspace shouldStyle: false!

Item was added:
+ ----- Method: ReleaseBuilderFor4dot3 class>>switchToNewRepository (in category 'private') -----
+ switchToNewRepository
+ | old42Repository |
+ MCMcmUpdater defaultUpdateURL: 'http://source.squeak.org/squeak43'.
+ old42Repository := MCRepositoryGroup default repositories
+ detect: [:each | each description includesSubString: 'squeak42'] ifNone: [nil].
+ old42Repository
+ ifNotNil: [MCRepositoryGroup default removeRepository: old42Repository].
+ MCRepositoryGroup default addRepository: self releaseRepository!

Item was added:
+ ReleaseBuilder subclass: #ReleaseBuilderFor4dot4
+ instanceVariableNames: ''
+ classVariableNames: ''
+ poolDictionaries: ''
+ category: 'ReleaseBuilder'!
+
+ !ReleaseBuilderFor4dot4 commentStamp: 'fbs 10/24/2012 09:20' prior: 0!
+ The release builder for Squeak 4.4!

Item was added:
+ ----- Method: ReleaseBuilderFor4dot4 class>>openWelcomeWorkspaces (in category 'private') -----
+ openWelcomeWorkspaces
+ TheWorldMainDockingBar instance
+ showWelcomeText: #squeakUserInterface
+ label: 'Squeak User Interface'
+ in: (40 @ 40 extent: 500 @ 300).
+ TheWorldMainDockingBar instance
+ showWelcomeText: #workingWithSqueak
+ label: 'Working With Squeak'
+ in: (80 @ 80 extent: 500 @ 300).
+ TheWorldMainDockingBar instance
+ showWelcomeText: #licenseInformation
+ label: 'License Information'
+ in: (120 @ 120 extent: 500 @ 300).
+ TheWorldMainDockingBar instance
+ showWelcomeText: #welcomeFutureDirections
+ label: 'Future Directions'
+ in: (160 @ 160 extent: 500 @ 300).
+ TheWorldMainDockingBar instance
+ showWelcomeText: #welcomeToSqueak44
+ label: 'Welcome to Squeak 4.4'
+ in: (200 @ 200 extent: 500 @ 300)!

Item was added:
+ ----- Method: ReleaseBuilderFor4dot4 class>>releaseRepository (in category 'private') -----
+ releaseRepository
+ ^ MCHttpRepository
+ location: 'http://source.squeak.org/squeak44'
+ user: 'squeak'
+ password: 'squeak'!

Item was added:
+ ----- Method: ReleaseBuilderFor4dot4 class>>setDisplayExtent: (in category 'private') -----
+ setDisplayExtent: extent
+ "Uncomment next line when the primitives become available in the Squeak VM."
+ " DisplayScreen hostWindowSize: extent."
+ Display extent = extent ifFalse: [ Warning signal: 'Display extent not set to ', extent ]!

Item was added:
+ ----- Method: ReleaseBuilderFor4dot4 class>>setPreferences (in category 'private') -----
+ setPreferences
+ Preferences
+ installBrightWindowColors ;
+ setPreference: #scrollBarsWithoutMenuButton toValue: true ;
+ setPreference: #swapMouseButtons toValue: true ;
+ setPreference: #annotationPanes toValue: true ;
+ setPreference: #showSplitterHandles toValue: false ;
+ setPreference: #showBoundsInHalo toValue: true ;
+ setPreference: #alternateHandlesLook toValue: false ;
+ setPreference: #roundedMenuCorners toValue: false ;
+ setPreference: #roundedWindowCorners toValue: false.
+ PluggableButtonMorph roundedButtonCorners: false.
+ FillInTheBlankMorph roundedDialogCorners: false.
+ Workspace shouldStyle: false!

Item was added:
+ ----- Method: ReleaseBuilderFor4dot4 class>>switchToNewRepository (in category 'private') -----
+ switchToNewRepository
+ | old43Repository |
+ MCMcmUpdater defaultUpdateURL: self releaseRepository location.
+ old43Repository := MCRepositoryGroup default repositories
+ detect: [:each | each description includesSubString: 'squeak43'] ifNone: [nil].
+ old43Repository
+ ifNotNil: [MCRepositoryGroup default removeRepository: old43Repository].
+ MCRepositoryGroup default addRepository: self releaseRepository!

Item was removed:
- ReleaseBuilder subclass: #ReleaseBuilderTrunk
- instanceVariableNames: ''
- classVariableNames: ''
- poolDictionaries: ''
- category: 'ReleaseBuilder'!

Item was removed:
- ----- Method: ReleaseBuilderTrunk class>>openWelcomeWorkspaces (in category 'private') -----
- openWelcomeWorkspaces
- TheWorldMainDockingBar instance
- showWelcomeText: #squeakUserInterface
- label: 'Squeak User Interface'
- in: (40 @ 40 extent: 500 @ 300).
- TheWorldMainDockingBar instance
- showWelcomeText: #workingWithSqueak
- label: 'Working With Squeak'
- in: (80 @ 80 extent: 500 @ 300).
- TheWorldMainDockingBar instance
- showWelcomeText: #licenseInformation
- label: 'License Information'
- in: (120 @ 120 extent: 500 @ 300).
- TheWorldMainDockingBar instance
- showWelcomeText: #welcomeFutureDirections
- label: 'Future Directions'
- in: (160 @ 160 extent: 500 @ 300).
- TheWorldMainDockingBar instance
- showWelcomeText: #welcomeToSqueak43
- label: 'Welcome to Squeak 4.3'
- in: (200 @ 200 extent: 500 @ 300)!

Item was removed:
- ----- Method: ReleaseBuilderTrunk class>>prepareNewBuild (in category 'scripts') -----
- prepareNewBuild
- "ReleaseBuilderTrunk prepareNewBuild"
- "Prepare everything that should be done for a new image build"
- TTCFont registerAll.
- RealEstateAgent standardSize: 400@500.
- SystemVersion setVersion.
- SMLoaderPlus
- setDefaultFilters: (OrderedCollection with: #filterSafelyAvailable).
- self setDisplayExtent: 800 @ 600;
- setPreferences;
- switchTo43Repository;
- openWelcomeWorkspaces.
- "Make DependencyBrowser accessible on the open menu."
- DependencyBrowser initialize.
- Smalltalk cleanUp: true.
- Undeclared removeUnreferencedKeys.
- Smalltalk garbageCollect!

Item was removed:
- ----- Method: ReleaseBuilderTrunk class>>releaseRepository (in category 'private') -----
- releaseRepository
- ^ MCHttpRepository
- location: self repositoryUrl , '/squeak43'
- user: 'squeak'
- password: 'squeak'!

Item was removed:
- ----- Method: ReleaseBuilderTrunk class>>repositoryUrl (in category 'private') -----
- repositoryUrl
- ^ 'http://source.squeak.org'!

Item was removed:
- ----- Method: ReleaseBuilderTrunk class>>setDisplayExtent: (in category 'private') -----
- setDisplayExtent: extent
- "Uncomment next line when the primitives become available in the Squeak VM."
- " DisplayScreen hostWindowSize: extent."
- Display extent = extent ifFalse: [ Warning signal: 'Display extent not set to ', extent ]!

Item was removed:
- ----- Method: ReleaseBuilderTrunk class>>setPreferences (in category 'private') -----
- setPreferences
- Preferences
- installBrightWindowColors ;
- setPreference: #scrollBarsWithoutMenuButton toValue: true ;
- setPreference: #swapMouseButtons toValue: true ;
- setPreference: #annotationPanes toValue: true ;
- setPreference: #showSplitterHandles toValue: false ;
- setPreference: #showBoundsInHalo toValue: true ;
- setPreference: #alternateHandlesLook toValue: false ;
- setPreference: #roundedMenuCorners toValue: false ;
- setPreference: #roundedWindowCorners toValue: false.
- PluggableButtonMorph roundedButtonCorners: false.
- FillInTheBlankMorph roundedDialogCorners: false.
- Workspace shouldStyle: false!

Item was removed:
- ----- Method: ReleaseBuilderTrunk class>>switchTo43Repository (in category 'private') -----
- switchTo43Repository
- | old42Repository |
- MCMcmUpdater defaultUpdateURL: 'http://source.squeak.org/squeak43'.
- old42Repository := MCRepositoryGroup default repositories
- detect: [:each | each description includesSubString: 'squeak42'] ifNone: [nil].
- old42Repository
- ifNotNil: [MCRepositoryGroup default removeRepository: old42Repository].
- MCRepositoryGroup default addRepository: self releaseRepository!

Item was removed:
- ----- Method: ReleaseBuilderTrunk class>>transferCurrentPackages (in category 'scripts') -----
- transferCurrentPackages
- "Copy the packages currently loaded in the image from the trunk repository to my releaseRepository."
- | trunkRep releaseRep |
- trunkRep := self trunkRepository.
- releaseRep := self releaseRepository.
- MCWorkingCopy allManagers do:
- [ : eachWorkingCopy | eachWorkingCopy ancestors do:
- [ : eachVersionInfo | (releaseRep includesVersionNamed: eachVersionInfo versionName) ifFalse:
- [ (trunkRep versionWithInfo: eachVersionInfo)
- ifNil: [ Warning signal: eachVersionInfo name , ' not found in ', trunkRep ]
- ifNotNilDo: [ : ver | self storeVersion: ver ] ] ] ]!

Item was removed:
- ----- Method: ReleaseBuilderTrunk class>>trunkRepository (in category 'private') -----
- trunkRepository
- ^ MCHttpRepository
- location: self repositoryUrl , '/trunk'
- user: 'squeak'
- password: 'squeak'!


Reply | Threaded
Open this post in threaded view
|

Re: The Inbox: ReleaseBuilder-fbs.77.mcz

Frank Shearar-3
On 4 December 2012 10:32,  <[hidden email]> wrote:

> Frank Shearar uploaded a new version of ReleaseBuilder to project The Inbox:
> http://source.squeak.org/inbox/ReleaseBuilder-fbs.77.mcz
>
> ==================== Summary ====================
>
> Name: ReleaseBuilder-fbs.77
> Author: fbs
> Time: 4 December 2012, 10:32:43.045 am
> UUID: fdbcec1f-a534-4070-b03f-1604faa4220a
> Ancestors: ReleaseBuilder-cmm.76
>
> Squeak 4.4 ReleaseBuilder.
>
> This renames ReleaseBuilderTrunk as ReleaseBuilderFor4dot3, and pulls some useful bits up to ReleaseBuilder for the 4.4 builder to reuse.
>
> =============== Diff against ReleaseBuilder-cmm.76 ===============

Note that the Welcome Workspace is completely unstyled. Chris has
given me a pointer on how to style it - use a Welcome Workspace - but
if there are any text-styling experts who can help us out, please do.
I can change the font of a piece of text easily enough in a Workspace
- right click and "set font" - but I see no way of making text bold
and underlined.

frank

Reply | Threaded
Open this post in threaded view
|

Re: The Inbox: ReleaseBuilder-fbs.77.mcz

Bob Arning-2

On 12/4/12 5:54 AM, Frank Shearar wrote:
> Note that the Welcome Workspace is completely unstyled. Chris has
> given me a pointer on how to style it - use a Welcome Workspace - but
> if there are any text-styling experts who can help us out, please do.
> I can change the font of a piece of text easily enough in a Workspace
> - right click and "set font" - but I see no way of making text bold
> and underlined.
Bring up halo on the TextMorphForEditView (innermost morph), select from
the rightmost of three FF halos at the bottom.

Cheers,
Bob

Reply | Threaded
Open this post in threaded view
|

Re: The Inbox: ReleaseBuilder-fbs.77.mcz

Bert Freudenberg
In reply to this post by Frank Shearar-3

On 2012-12-04, at 11:54, Frank Shearar <[hidden email]> wrote:

> On 4 December 2012 10:32,  <[hidden email]> wrote:
>> Frank Shearar uploaded a new version of ReleaseBuilder to project The Inbox:
>> http://source.squeak.org/inbox/ReleaseBuilder-fbs.77.mcz
>>
>> ==================== Summary ====================
>>
>> Name: ReleaseBuilder-fbs.77
>> Author: fbs
>> Time: 4 December 2012, 10:32:43.045 am
>> UUID: fdbcec1f-a534-4070-b03f-1604faa4220a
>> Ancestors: ReleaseBuilder-cmm.76
>>
>> Squeak 4.4 ReleaseBuilder.
>>
>> This renames ReleaseBuilderTrunk as ReleaseBuilderFor4dot3, and pulls some useful bits up to ReleaseBuilder for the 4.4 builder to reuse.
>>
>> =============== Diff against ReleaseBuilder-cmm.76 ===============
>
> Note that the Welcome Workspace is completely unstyled. Chris has
> given me a pointer on how to style it - use a Welcome Workspace - but
> if there are any text-styling experts who can help us out, please do.
> I can change the font of a piece of text easily enough in a Workspace
> - right click and "set font" - but I see no way of making text bold
> and underlined.
>
> frank


Help -- Command Key Help

Text Emphasis
        (not available on all platforms)
Cmd-1 type the first method argument
Cmd-2 type the second method argument
Cmd-3 type the third method argument
Cmd-4 type the fourth method argument
Cmd-5 for future use
Cmd-6 color, action-on-click, link to class comment, link to method, url
                Brings up a menu.  To remove these properties, select
                more than the active part and then use command-0.
Cmd-7 bold
Cmd-8 italic
Cmd-9 narrow (same as negative kern)
Cmd-0 plain text (resets all emphasis)
Cmd-- underlined (toggles it)
Cmd-= struck out (toggles it)

Shift-Cmd-- (aka :=) negative kern (letters 1 pixel closer)
Shift-Cmd-+ positive kern (letters 1 pixel larger spread)

- Bert -



Reply | Threaded
Open this post in threaded view
|

Re: The Inbox: ReleaseBuilder-fbs.77.mcz

Frank Shearar-3
On 4 December 2012 16:51, Bert Freudenberg <[hidden email]> wrote:

>
> On 2012-12-04, at 11:54, Frank Shearar <[hidden email]> wrote:
>
>> On 4 December 2012 10:32,  <[hidden email]> wrote:
>>> Frank Shearar uploaded a new version of ReleaseBuilder to project The Inbox:
>>> http://source.squeak.org/inbox/ReleaseBuilder-fbs.77.mcz
>>>
>>> ==================== Summary ====================
>>>
>>> Name: ReleaseBuilder-fbs.77
>>> Author: fbs
>>> Time: 4 December 2012, 10:32:43.045 am
>>> UUID: fdbcec1f-a534-4070-b03f-1604faa4220a
>>> Ancestors: ReleaseBuilder-cmm.76
>>>
>>> Squeak 4.4 ReleaseBuilder.
>>>
>>> This renames ReleaseBuilderTrunk as ReleaseBuilderFor4dot3, and pulls some useful bits up to ReleaseBuilder for the 4.4 builder to reuse.
>>>
>>> =============== Diff against ReleaseBuilder-cmm.76 ===============
>>
>> Note that the Welcome Workspace is completely unstyled. Chris has
>> given me a pointer on how to style it - use a Welcome Workspace - but
>> if there are any text-styling experts who can help us out, please do.
>> I can change the font of a piece of text easily enough in a Workspace
>> - right click and "set font" - but I see no way of making text bold
>> and underlined.
>>
>> frank
>
>
> Help -- Command Key Help
>
> Text Emphasis
>         (not available on all platforms)
> Cmd-1   type the first method argument
> Cmd-2   type the second method argument
> Cmd-3   type the third method argument
> Cmd-4   type the fourth method argument
> Cmd-5   for future use
> Cmd-6   color, action-on-click, link to class comment, link to method, url
>                 Brings up a menu.  To remove these properties, select
>                 more than the active part and then use command-0.
> Cmd-7   bold
> Cmd-8   italic
> Cmd-9   narrow (same as negative kern)
> Cmd-0   plain text (resets all emphasis)
> Cmd--   underlined (toggles it)
> Cmd-=   struck out (toggles it)
>
> Shift-Cmd--     (aka :=) negative kern (letters 1 pixel closer)
> Shift-Cmd-+     positive kern (letters 1 pixel larger spread)

Ah, handy! I notice that several of these - bold, italic at the least
- don't toggle. They should, unless there are good reasons not to?
(Especially given that underline toggles.)

frank

Reply | Threaded
Open this post in threaded view
|

Re: The Inbox: ReleaseBuilder-fbs.77.mcz

Karl Ramberg
Maybe:
* Old TextMorphEditor removed, ParagraphEditor now unloadable. New
stub TextMorphEditor added for legacy support (particularly
Connectors) which wraps TextEditor.

Karl


On Tue, Dec 4, 2012 at 6:14 PM, Frank Shearar <[hidden email]> wrote:
On 4 December 2012 16:51, Bert Freudenberg <[hidden email]> wrote:
>
> On 2012-12-04, at 11:54, Frank Shearar <[hidden email]> wrote:
>
>> On 4 December 2012 10:32,  <[hidden email]> wrote:
>>> Frank Shearar uploaded a new version of ReleaseBuilder to project The Inbox:
>>> http://source.squeak.org/inbox/ReleaseBuilder-fbs.77.mcz
>>>
>>> ==================== Summary ====================
>>>
>>> Name: ReleaseBuilder-fbs.77
>>> Author: fbs
>>> Time: 4 December 2012, 10:32:43.045 am
>>> UUID: fdbcec1f-a534-4070-b03f-1604faa4220a
>>> Ancestors: ReleaseBuilder-cmm.76
>>>
>>> Squeak 4.4 ReleaseBuilder.
>>>
>>> This renames ReleaseBuilderTrunk as ReleaseBuilderFor4dot3, and pulls some useful bits up to ReleaseBuilder for the 4.4 builder to reuse.
>>>
>>> =============== Diff against ReleaseBuilder-cmm.76 ===============
>>
>> Note that the Welcome Workspace is completely unstyled. Chris has
>> given me a pointer on how to style it - use a Welcome Workspace - but
>> if there are any text-styling experts who can help us out, please do.
>> I can change the font of a piece of text easily enough in a Workspace
>> - right click and "set font" - but I see no way of making text bold
>> and underlined.
>>
>> frank
>
>
> Help -- Command Key Help
>
> Text Emphasis
>         (not available on all platforms)
> Cmd-1   type the first method argument
> Cmd-2   type the second method argument
> Cmd-3   type the third method argument
> Cmd-4   type the fourth method argument
> Cmd-5   for future use
> Cmd-6   color, action-on-click, link to class comment, link to method, url
>                 Brings up a menu.  To remove these properties, select
>                 more than the active part and then use command-0.
> Cmd-7   bold
> Cmd-8   italic
> Cmd-9   narrow (same as negative kern)
> Cmd-0   plain text (resets all emphasis)
> Cmd--   underlined (toggles it)
> Cmd-=   struck out (toggles it)
>
> Shift-Cmd--     (aka :=) negative kern (letters 1 pixel closer)
> Shift-Cmd-+     positive kern (letters 1 pixel larger spread)

Ah, handy! I notice that several of these - bold, italic at the least
- don't toggle. They should, unless there are good reasons not to?
(Especially given that underline toggles.)

frank