Skip to content

Nightblade/pob-dict

Repository files navigation

pob-dict

Dictionaries and Code Spell Checker (CSpell) config files for Path Of Building Community (PoB) code development.

Components

All *-dict.txt contain a single word-per-line, and are plain-text, UTF-8, LF-EOL, sorted ascending case insensitive.

Filename Description
cspell.json CSpell settings.
poe-dict.txt Words specific to Path of Exile.
pob-dict.txt Words specific to PoB development and associated files.
ignore-dict.txt Words to be ignored by CSpell.
extra-en-dict.txt Extra English words that are not in CSpell's dictionaries.
contribs-dict.txt GitHub contributor's login names. Auto-generated, do not edit manually.
spellcheck.yml Example GitHub workflow using cspell-action.

Installation

PoB repo

  • Copy docs/spellcheck.yml to .github/workflows/ of the PoB repo.

This workflow is designed to be run from the PoB repo, collecting files from this repo as needed, and thus avoids cluttering the PoB repo. By default, the workflow automatically only checks changes made in pull-requests against the dev branch.
It can also be triggered manually to perform a full check of a specific branch/tag/SHA.

VSCode (optional)

  • Install Code Spell Checker.
  • Checkout (or download & unzip) this repo to a directory that shares its parent dir with your PoB fork.
  • Add the following lines to .vscode/settings.json in your PoB fork:
{
  "CSpell.import": [ "../../pob-dict/cspell.json" ],
  "CSpell.language": "en,en-GB"
}

Command-line (optional)

To run a full scan of a local PoB fork with some helpful options enabled:

PS C:\PathOfBuilding> cspell --config "..\pob-dict\cspell.json" --relative --show-context --no-progress "**"

Dictionary additions

Which dictionary do I add this unrecognised word to?

  • If it's spelled correctly within the context of:
    • the game (Path of Exile) -> poe-dict.txt.
    • the PoB source code / git repository -> pob-dict.txt.
    • English, but not in CSpell's dictionaries -> extra-en-dict.txt
  • If it's spelled incorrectly or doesn't fit anywhere else, and/or you want to suppress the warning -> ignore-dict.txt. To reduce false negatives, please try to make this type of addition as specific as possible (see CritsDontAlways example below).

If unsure, open a new issue.

Examples

Word Dictionary Reasoning
Atziri poe-dict.txt Correct spelling, PoE NPC.
REGENPERCENT pob-dict.txt Correct spelling, combination of two words, used in PoB source code.
pregenerated extra-en-dict.txt Correct spelling, English word, not in CSpell's
dictionaries.
CritsDontAlways ignore-dict.txt Incorrect spelling/punctuation, legacy GGG error found in PoE game data.
Add the whole thing so that "Dont" is still flagged elsewhere.

Flowchart

flowchart TD
  correct{Correct\nSpelling?}
  correct -- Yes --> english
  correct -- No  --> ignore-dict.txt

  english{Standard\nEnglish?}
  english -- Yes --> extra-en-dict.txt
  english -- No  -->

  poe{PoE-Specific?}
  poe -- Yes --> poe-dict.txt
  poe -- No  -->

  pob{PoB-Specific?}
  pob -- Yes --> pob-dict.txt
  pob -- No  --> 

  user_error[ask Nighty]

License

MIT

About

Dictionaries and CSpell config files for Path Of Building Community code development.

Topics

Resources

License

Stars

Watchers

Forks