Spell check html files
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
dicts
docker
src
tests
.coveralls.yml
.gitignore
.travis.yml
LICENSE
README.md
composer.json
makefile
phpunit.xml.dist

README.md

php-spellchecker

Scrutinizer Code Quality Build Status Coverage Status SensioLabsInsight Dependency Status

Spell check html files

It's working with :

Install LanguageTool Server

Use Docker

Docker must be installed

make docker_build
make docker_run

Or use stand-alone

Java must be installed

Download and install LanguageTool stand-alone for desktop in a directory.

Enchant (Optionally for spell suggestions)

PECL Enchant can be used

sudo apt-get install php5.6-enchant

languages dictionnaries are in dicts dictionnary

Install php-spellchecker

This library can be found on Packagist.

The recommended way to install is through composer.

Edit your composer.json and add :

{
    "require": {
       "glicer/spell-checker": "dev-master"
    }
}

Install dependencies :

php composer.phar install

How to spell check html files ?

require 'vendor/autoload.php';

use GlSpellChecker\GlSpellChecker;
use Symfony\Component\Finder\Finder;

//language to check, define languagetool directory, and languagetool port used
$spellchecker  = new GlSpellChecker("fr", "fr_FR","C:\\Glicer\\LanguageTool\\",'localhost', 8081);
// or with docker $spellchecker = new GlSpellChecker("fr","fr_FR",null,'localhost',8010);

//construct list of local html files to check spell
$finder = new Finder();
$files  = $finder->files()->in('./public')->name("*.html");

//launch html checking
$filereport = $spellchecker->checkHtmlFiles(
                                    $files,
                                        function (SplFileInfo $file, $nbrsentences) {
                                            // called at beginning - $nbr sentences to check
                                        },
                                        function ($sentence) {
                                            // called each sentence to check
                                        },
                                        function () {
                                            // called at the end
                                        }
            );


//$filereport contain fullpath to html file report
print_r($filereport);

you can view $filereport with your browser

How to spell check yaml files ?

require 'vendor/autoload.php';

use GlSpellChecker\GlSpellChecker;
use Symfony\Component\Finder\Finder;

//define languagetool directory, language to check and languagetool port used
$spellchecker  = new GlSpellChecker("fr", "fr_FR","C:\\Glicer\\LanguageTool\\",'localhost',8081);
// or with docker $spellchecker = new GlSpellChecker("fr","fr_FR",null,'localhost',8010);

//construct list of local html files to check spell
$finder = new Finder();
$files  = $finder->files()->in('./public')->name("*.yml");

//launch html checking
$filereport = $spellchecker->checkYamlFiles(
                                    $files,
                                    ['test'], //list of fields to check
                                        function (SplFileInfo $file, $nbrsentences) {
                                            // called at beginning - $nbr sentences to check
                                        },
                                        function ($sentence) {
                                            // called each sentence to check
                                        },
                                        function () {
                                            // called at the end
                                        }
            );


//$filereport contain fullpath to html file report
print_r($filereport);

Running Tests

Change LanguageTool in phpunit.xml.dist :

  • ip/port if you use docker server
  • directory if you use local server

Launch from command line :

vendor\bin\phpunit

License MIT

Contact

Authors : Emmanuel ROECKER & Rym BOUCHAGOUR

Web Development Blog - http://dev.glicer.com