# Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
#
# SPDX-License-Identifier: curl

name: spell
on:
  push:
    branches:
      - master
    paths:
      - '**.md'
      - '**/spellcheck.yml'
      - '**/spellcheck.yaml'
      - '.github/scripts/*'
  pull_request:
    branches:
      - master
    paths:
      - '**.md'
      - '**/spellcheck.yml'
      - '**/spellcheck.yaml'
      - '.github/scripts/*'

permissions: {}

jobs:
  check:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4

      - name: trim all man page *.md files
        run: find docs -name "*.md" ! -name "_*" | xargs -n1 ./.github/scripts/cleancmd.pl

      - name: trim libcurl man page *.md files
        run: find docs/libcurl -name "curl_*.md" -o -name "libcurl*.md" | xargs -n1 ./.github/scripts/cleanspell.pl

      - name: trim libcurl option man page *.md files
        run: find docs/libcurl/opts -name "CURL*.md" | xargs -n1 ./.github/scripts/cleanspell.pl

      - name: trim cmdline docs markdown _*.md files
        run: find docs/cmdline-opts -name "_*.md" | xargs -n1 ./.github/scripts/cleancmd.pl --no-header

      - name: setup the custom wordlist
        run: grep -v '^#' .github/scripts/spellcheck.words >  wordlist.txt

      - name: Check Spelling
        uses: rojopolis/spellcheck-github-actions@dbd2f1da869c05ad874fffeb6fe1ed50cd1a6e98 # v0
        with:
          config_path: .github/scripts/spellcheck.yaml
