public function __construct()
{
// get locale
$this->locale = Config::get('letterpress.locale');
// defaults
if (Config::get('letterpress.microtypography.useDefaults')) {
$this->fixers = Config::get('jolitypo.defaults');
// locale additions
$localeKey = sprintf('jolitypo.%s', $this->locale);
if (Config::has($localeKey)) {
$this->fixers = array_merge($this->fixers, Config::get($localeKey));
}
}
// hyphenation
if (Config::get('letterpress.microtypography.enableHyphenation')) {
$this->fixers[] = 'Hyphen';
}
// user additions
$this->fixers = array_merge($this->fixers, Config::get('letterpress.microtypography.additionalFixers'));
if (count($this->fixers) === 0) {
throw new LetterpressException('Typography fixing requires setting up fixers.');
}
$this->fixer = new Fixer($this->fixers);
$this->fixer->setLocale($this->locale);
}