AnonSec Shell
Server IP : 213.186.33.4  /  Your IP : 216.73.216.193
Web Server : Apache
System : Linux webm006.cluster103.gra.hosting.ovh.net 5.15.206-ovh-vps-grsec-zfs-classid #1 SMP Fri May 15 02:41:25 UTC 2026 x86_64
User : awebpaca ( 35430)
PHP Version : 8.5.0
Disable Function : _dyuweyrj4,_dyuweyrj4r,dl
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /home/a/w/e/awebpaca/Dolibarr/dev/tools/codespell/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ HOME ]     

Current File : /home/a/w/e/awebpaca/Dolibarr/dev/tools/codespell/addCodespellIgnores.sh
#!/bin/bash
# Copyright (C) 2024		MDW							<mdeweerd@users.noreply.github.com>

#
# Script to add codespell exceptions to the ignores lines file.
#
# The file is named '...-lines-ignore' to make TAB expansion on the cli easier.
#
# The line in the ignore file must match the line in the source
# exactly.
#
# To clean up or create the ignored lines file, just do
#   ```shell
#   echo > dev/tools/codespell/codespell-lines-ignore.txt
#   ```
# and then execute this script.
#
# author: https://github.com/mdeweerd

#
# :warning:
#
# This script only works properly if codespell is installed for your CLI.
# As the configuration is in pyproject.toml, you also need tomli.
#
# ```shell
# python -m pip install codespell tomli
# # or
# pip install codespell tomli
# ```

codespell_ignore_file=dev/tools/codespell/codespell-lines-ignore.txt
if [ -z "${0##*.sh}" ] ; then
	# Suppose running from inside script
	# Get real path
	script=$(realpath "$(test -L "$0" && readlink "$0" || echo "$0")")
	PROJECT_ROOT=$(realpath "${script}")

	while [ "${PROJECT_ROOT}" != "/" ] ; do
		[ -r "${PROJECT_ROOT}/${codespell_ignore_file}" ] && break
		PROJECT_ROOT=$(dirname "${PROJECT_ROOT}")
	done
	if [ "${PROJECT_ROOT}" == "/" ] ; then
		echo "Project root not found from '${script}'"
		exit 1
	fi
	codespell_ignore_file=${PROJECT_ROOT}/${codespell_ignore_file}
fi


# Make sure we are at the root of the project
[ -r "${codespell_ignore_file}" ] || { echo "${codespell_ignore_file} not found" ; exit 1 ; }
# Then:
#   - Run codespell;
#   - Identify files that have fixes;
#   - Limit to files under git control;
#   - Run codespell on selected files;
#   - For each line, create a grep command to find the lines;
#   - Execute that command by evaluation
codespell . \
	| sed -n -E 's@^([^:]+):.*@\1@p' \
	| xargs -r git ls-files -- \
	| xargs -r codespell -- \
	| sed -n -E 's@^([^:]+):[[:digit:]]+:[[:space:]](\S+)[[:space:]].*@grep -P '\''\\b\2\\b'\'' -- "\1" >> '"${codespell_ignore_file}"'@p' \
	| while read -r line ; do eval "$line" ; done

# Finally, sort and remove duplicates to make merges easier.
sort -u -o "${codespell_ignore_file}"{,}

Anon7 - 2022
AnonSec Team