Chris@0: addFilter(new Twig_SimpleFilter('plural', function ($string) { Chris@0: switch (substr($string, -1)) { Chris@0: case 'y': Chris@0: return substr($string, 0, -1) . 'ies'; Chris@0: Chris@0: case 's': Chris@0: return $string . 'es'; Chris@0: Chris@0: default: Chris@0: return $string . 's'; Chris@0: } Chris@0: })); Chris@0: Chris@0: $this->addFilter(new Twig_SimpleFilter('article', function ($string) { Chris@0: $article = in_array(strtolower($string[0]), ['a', 'e', 'i', 'o', 'u']) ? 'an' : 'a'; Chris@0: return $article . ' ' . $string; Chris@0: })); Chris@0: Chris@0: $this->addFilter(new Twig_SimpleFilter('underscore2hyphen', function ($string) { Chris@0: // @codeCoverageIgnoreStart Chris@0: return str_replace('_', '-', $string); Chris@0: // @codeCoverageIgnoreEnd Chris@0: }, ['deprecated' => TRUE])); Chris@0: Chris@0: $this->addFilter(new Twig_SimpleFilter('hyphen2underscore', function ($string) { Chris@0: // @codeCoverageIgnoreStart Chris@0: return str_replace('-', '_', $string); Chris@0: // @codeCoverageIgnoreEnd Chris@0: }, ['deprecated' => TRUE])); Chris@0: Chris@0: $this->addFilter(new Twig_SimpleFilter('u2h', function ($string) { Chris@0: return str_replace('_', '-', $string); Chris@0: })); Chris@0: Chris@0: $this->addFilter(new Twig_SimpleFilter('h2u', function ($string) { Chris@0: return str_replace('-', '_', $string); Chris@0: })); Chris@0: Chris@0: $this->addFilter(new Twig_SimpleFilter('camelize', function ($string, $upper_mode = TRUE) { Chris@0: return Utils::camelize($string, $upper_mode); Chris@0: })); Chris@0: Chris@0: $this->addTokenParser(new TwigSortTokenParser()); Chris@0: } Chris@0: Chris@0: }