PRCustomLink

This class provides the ability to make custom external links with a small amount of Smalltalk. The class stores an collection of blocks which test if the link reference matches a pattern to convert into a URL, if it doesn't match, then the block returns nil and the remaining blocks are tested.

For example, to add links like Google: PRCustomLink, one would have:

PRCustomLink addConversion: [ :aString | 
	('google: *' match: aString)
		ifTrue:
			[ 'https://www.google.com/?q='
				, ((aString copyFrom: 9 to: aString size) collect: [ :c | c isSeparator ifTrue: [ $+ ] ifFalse: [ c ] ]) ] ]