category : Pharo

Tabular Debugging View in Bloc

Imagine the following situation: I am trying to parse a simple csv line with a parser that seems to be failing. The inspector kindly tells me every match that was found within the string. But can I u

Switch to metadata-less gitfiletree

tl;dr: add "Metadata" : "false" to project root’s .filetree commit the change in every image with the repo: open Monticello Browser, right click on the repository and select Flush

Nautilus Shortcuts Cheatsheet

Nautilus has a lot of different keyboard shortcuts; you can see some by right clicking on some things (classes, methods, …), and you can see more by clicking on the small v triangle in top-right corn

How to use git and GitHub with Pharo

Update 2017: This guide remains here for historical reasons. I no longer recommend using GitFileTree, you should jump straight into using Iceberg. As far as I can tell (at the time of the writing any

Deploying Pharo builds from Travis over ssh

Some time ago I wrote how you can Test Pharo projects with Travis; but what if you wanted to deploy the created image? That’s what this post is about… or rather one of the ways. Travis offers native s

Wizard builder Merlin

Moose has this nice library for building wizards called Merlin. Unfortunately there’s really no documentation apart from couple of examples. Because I need to use this library (I’m sick of creating f

Changing source code from tests

Right now I work a lot with code generation and reflectivity and often I need to change source code of a class to test some behavior. But if I change it, then I also need to change it back, which is a

Custom method icons

In Nautilus (System Browser) you can have a wide range of icons accompanying the methods, such as: go the the parent (children) method execute test / example / script method is abstract / contains h

Small rewrites

I am certainly guilty of doing way too much work manually instead of writing short scripts to automate it. Of course if I am not familiar with the available tools it may be faster to do it by hand as

Changing class prefixes

The standard approach to handling class name clashes (as Pharo has no namespaces) is to use short prefixes, typically the initials of the project: OP for OpenPonk, PP for PetitParser, etc. But what i