Giter VIP home page Giter VIP logo

typofixer's Introduction

Typofixer

A [wip] PHP library to fix microtypography issues in html code.

Requirements

  • PHP ^7.1
  • mbstring extension

Usage

use Typofixer\Typofixer;

$input = '<p>"Hello"&nbsp;&nbsp;world...</p>';
$output = Typofixer::fix($input, ['language' => 'es']);

echo $ouput; //<p>«Hello» world…</p>

Available fixers:

Name Description
AddSpaceAfter Ensure there's a space after some characters like ,:;!?. Ex: hello,world is converted to hello, world.
CharsInside Move some characters inside the corresponding tags. Ex: <strong>hello</strong>, world is converted to <strong>hello,</strong> world
Dash Replace the simple - between numbers to ndash and -- to mdash.
Ellipsis Converts ... into
MergeTags Merge two consecutive tags. Ex: <b>hello</b> <b>world</b> is converted to <b>hello world</b>
Quotes Replace plain quotes by curly quotes. Ex: "hello word" is converted to “hello world”
RemoveEmptyTags Removes empty tags or tags containing only spaces. Ex: <strong> </strong>
RemoveInnerTags Removes some tags that cannot be inside other tags. Ex: <strong>hello <strong>world</strong></strong> is converted to <strong>hello world</strong>
RemoveSpaceBefore Removes the space before some characteres like ,:;!?. Ex: hello , world is converted to hello, world.
RemoveSpaceAfter Removes the space after some characteres like ¿¡(. Ex: hello ( world) is converted to hello (world).
Spaces Removes duplicated spaces and convert all unicode spaces (like &nbsp;) to simple spaces. Ex: Hello &nbsp; world is converted to Hello world.
SpaceTags Normalize spaces between tags. Ex: <strong>hello </strong>world is converted to <strong>hello</strong> world.

Available options

Name Description
language The ISO language code that is used by some fixers like Quotes

typofixer's People

Contributors

oscarotero avatar peter279k avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.