diff --git a/.github/workflows/pr-validate.yml b/.github/workflows/pr-validate.yml index d2aa2b2..c4e8592 100644 --- a/.github/workflows/pr-validate.yml +++ b/.github/workflows/pr-validate.yml @@ -31,3 +31,16 @@ jobs: with: name: oscal.io-content path: _site + spellcheck: + name: Check spelling + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v3 + with: + submodules: 'recursive' + - name: Spell check + uses: rojopolis/spellcheck-github-actions@0.30.0 + - name: Check wordlist.txt is sorted + run: | + sort -fu .wordlist.txt | diff -Nau .wordlist.txt - diff --git a/.spellcheck.yml b/.spellcheck.yml new file mode 100644 index 0000000..4c4c365 --- /dev/null +++ b/.spellcheck.yml @@ -0,0 +1,29 @@ +matrix: + - name: Markdown + aspell: + ignore-case: true + lang: en + dictionary: + wordlists: + - .wordlist.txt + encoding: utf-8 + pipeline: + - pyspelling.filters.context: + context_visible_first: true + escapes: '\\[\\`~]' + delimiters: + # Ignore multiline content between fences (fences can have 3 or more back ticks) + # ``` + # content + # ``` + - open: '(?s)^(?P *-{3,})$' + close: '^(?P=open)$' + - pyspelling.filters.markdown: + - pyspelling.filters.html: + comments: false + ignores: + - code + - pre + sources: + - '_tools/*.md' + - '_events/*.md' diff --git a/.wordlist.txt b/.wordlist.txt new file mode 100644 index 0000000..c680cc1 --- /dev/null +++ b/.wordlist.txt @@ -0,0 +1,10 @@ +ATO +FedRAMP +Javan +NIST +OSCAL +Pirooz +SSPs +https +liboscal +usnistgov