# 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@692973e3d937129bcbf40652eb9f2f61becf3332 # 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@d354a4dc525c8067555c7481b60416cedb0060ff # v0
        with:
          config_path: .github/scripts/spellcheck.yaml
