akh / typograf
Типография текста
Installs: 16 558
Dependents: 1
Suggesters: 0
Security: 0
Stars: 17
Watchers: 3
Forks: 2
Open Issues: 0
Requires
- php: >=7.4
- ext-json: *
- ext-mbstring: *
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.4
- phpstan/phpstan: ^2.0
- phpunit/php-code-coverage: ^9.2
- phpunit/phpunit: ^9.0
README
Типографирование текста на php, помогает расставить неразрывные пробелы, правильные кавычки и исправить мелкие опечатки.
Содержание
Установка
composer require akh/typograf
Использование
$t = new \Akh\Typograf\Typograf(); $typoText = $t->apply('"Привет, мир!"'); echo $typoText; //«Привет, мир!»
Включение и выключение правил
$t = new \Akh\Typograf\Typograf(); // Включить правило $t->enableRule('Nbsp\ReplaceNbsp'); // Включить все правила в группе $t->enableRule('Nbsp\*'); // Включить все правила $t->enableRule('*'); // Отключить правило $t->disableRule('Nbsp\ReplaceNbsp'); // Отключить все правила в группе $t->disableRule('Nbsp\*'); // Отключить все правила $t->disableRule('*');
Частичное отключение
Чтобы отключить типографирование для участка текста, его нужно оберунть в
<span class="no-typo">"Привет"</span>
Добавление своего правила
$typo = new \Akh\Typograf\Typograf(); $simpleRule = new class extends \Akh\Typograf\Rule\AbstractRule { public $name = 'Замена названия сайта'; protected $sort = 1000; public function handler(string $text): string { return str_replace('old.ru', 'new.ru', $text); } }; $typo->addRule($simpleRule); $typo->apply('old.ru'); //new.ru