Skip to content

emmanuelroecker/php-spellchecker

Repository files navigation

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

About

Spell check html files

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published