silverstripe/spellcheck

Improves spellcheck support for SilverStripe CMS, including an implementation for HunSpell.

Installs: 160 354

Dependents: 1

Suggesters: 0

Security: 0

Stars: 5

Watchers: 5

Forks: 9

Open Issues: 0

Type:silverstripe-vendormodule

2.5.2 2024-07-11 22:21 UTC

README

NOTE: This module is no longer commercially supported in Silverstripe CMS 5 and it does not provide a CMS5-compatible version.

CI

Improves spellcheck support for Silverstripe CMS, including an implementation for HunSpell.

Installation

Ensure that your server is setup with hunspell, and the necessary dictionaries for each language you wish to use.

Install the spellcheck module with composer, using composer require silverstripe/spellcheck ^2.0, or downloading the module and extracting to the 'spellcheck' directory under your project root.

Requirements

  • Silverstripe 4.0.2 or above
  • Hunspell

Note: this version is compatible with Silverstripe 4. For Silverstripe 3, please see the 1.x release line.

Configuration

Setup the locales you wish to check for using yaml. If you do not specify any, it will default to the current i18n default locale, and may not be appropriate if you have not configured dictionaries for some locales.

mysite/_config/config.yml

SilverStripe\SpellCheck\Handling\SpellController:
  locales:
    - en_NZ
    - fr_FR
    - de_DE

By default only users with the CMS_ACCESS_CMSMain permission may perform spellchecking. This permisson code can be altered (or at your own risk, removed) by configuring the SilverStripe\SpellCheck\Handling\SpellController.required_permission config.

SilverStripe\SpellCheck\Handling\SpellController:
  # Restrict to admin only
  required_permission: 'ADMIN'

Extending

Additional spell check services can be added by implementing the SilverStripe\SpellCheck\Providers\SpellProvider interface and setting this as the default provider using yaml.

mysite/_config/config.yml

---
Name: myspellcheckprovider
After: '#spellcheckprovider'
---
# Set the default provider to HunSpell
SilverStripe\Core\Injector\Injector:
  SilverStripe\SpellCheck\Data\SpellProvider
    class: MySpellProvider