Monthly Archives: July 2018

Unicode normalisation in Pharo

https://medium.com/concerning-pharo/an-implementation-of-unicode-normalization-7c6719068f43

Advertisements

Google API

I created a new repo at https://github.com/seandenigris/St-Google-API since the original repo is self-hosted, I don’t know what the contribution policy is, and I need the fix to continue my work. I’ll keep the MC meta info so that my changes can be merged back if desired.

Fun fact. I was able to send a multipart text & html email after a few gotchas. Here is the script in case someone wants to do the same:
| api message raw |
api := GoogleGmailApiUsersMessages new.
api authenticate.
message := MailMessage
from: ‘”Mr. Sender” <me@myurl.com>’
to: { ‘”Mrs. Receiver” <me@anotherurl.com>’. }
about: ‘Thank you!’
asFollows: ”.
message
addAlternativePart: self plainTextString contentType: ‘text/plain’;
addAlternativePart: self htmlString
contentType: ‘text/html’.
raw := message asSendableText base64Encoded.
“Web-safe base64 from https://stackoverflow.com/questions/26663529/invalid-value-for-bytestring-error-when-calling-gmail-send-api-with-base64-encod
raw := raw copyReplaceAll: ‘+’ with: ‘-‘.
raw := raw copyReplaceAll: ‘/’ with: ‘_’.
api send: ‘me@myurl.com’ api options: (Dictionary with: ‘raw’ -> raw)

where #send:options: is just the generated #send: with an argument passed through (instead of nil) as the last argument to:

^ self makeRequestTo: path usingMethod: action with: optionsDict.

[ANN] New Academic Partner: University of Yaoundé 1

The Pharo Consortium is very happy to announce that University of Yaoundé 1 has joined as a Academic Partner.

About
- University of Yaoundé 1: http://www.uy1.uninet.cm
- Pharo Consortium: http://consortium.pharo.org

The goal of the Pharo Consortium is to allow companies and institutions to
support the ongoing development and future of Pharo.

Individuals can support Pharo via the Pharo Association:

http://association.pharo.org

[ANN] New Academic Partner: SQLab

The Pharo Consortium is very happy to announce that SQLab has joined as a Academic Partner.

About
- Software Quality Laboratory, Part of University of Novi Sad: https://sqlab.pmf.uns.ac.rs
- Pharo Consortium: http://consortium.pharo.org

The goal of the Pharo Consortium is to allow companies and institutions to
support the ongoing development and future of Pharo.

Individuals can support Pharo via the Pharo Association:

 http://association.pharo.org

[ANN] New Academic Partner: ENIT

The Pharo Consortium is very happy to announce that ENIT has joined as a Academic Partner.

About
- ENIT Ecole Nationale d'ingénieurs de Tarbes: http://www.enit.fr
- Pharo Consortium: http://consortium.pharo.org

The goal of the Pharo Consortium is to allow companies and institutions to
support the ongoing development and future of Pharo.

Individuals can support Pharo via the Pharo Association:

 http://association.pharo.org

Tiling shortcuts

Hello,

the latest Pharo 7 includes new window tiling shortcuts that should help
you to manage windows position and size without the need of using a mouse.

In this description, the key ⌘ has equivalent in Ctrl on Linux and Windows.
I need to notice that some nicer key combinations would be chosen if the VM
support of key modifiers would be proper on all platforms but that is a
different story…

Windows tiling
————————

⌘+Shift+W, A – move the window to the left half of the screen.
⌘+Shift+W, D – right half
⌘+Shift+W, W – top half
⌘+Shift+W, X – bottom half

⌘+Shift+W, Q – move the window to the top left quadrant of the screen
⌘+Shift+W E – top right quadrant
⌘+Shift+W, Z – bottom left quadrant
⌘+Shift+W, C – bottom right quadrant

⌘+Shift+W, S – maximize the window
⌘+Shift+W, Shift+S – minimize the window

⌘+Shift+W, R – centre the window on the screen with a default extent

Windows moving
————————

⌘+Shift+W, ← – move the window left by half of its width
⌘+Shift+W, → – move the window right by half of its width
⌘+Shift+W, ↑ – move the window up by half of its height
⌘+Shift+W, ↓ – move the window down by half of its height

Windows resizing
————————

⌘+Shift+W, hold ⌘+Shift and press:
A, A – move left window edge left (by half of the window size)
A, S – move left window edge right (by half of the window size)
W, W – move top edge up
W, S – move top edge down
D, D – move right edge right
D, S – move right edge left
X, X – move bottom edge down
X, S – move bottom edge up

Cheers,

— Pavel