mirror of
				https://github.com/zulip/zulip.git
				synced 2025-11-04 05:53:43 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			36 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			36 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
#!/usr/bin/env bash
 | 
						|
 | 
						|
# Fix common misspellings in text files (config: .codespellignore)
 | 
						|
# Based on
 | 
						|
# https://github.com/bitcoin/bitcoin/blob/master/test/lint/lint-spelling.sh
 | 
						|
#
 | 
						|
# We plan to replace this script with the `tools/lint` system as soon as we can.
 | 
						|
 | 
						|
IGNORE_WORDS_FILE=.codespellignore
 | 
						|
if [ "$#" -eq 0 ]; then
 | 
						|
    echo "No argument specified. Checking on the entire repo..."
 | 
						|
    FILES_TO_BE_CHECKED="$(
 | 
						|
        git ls-files -- \
 | 
						|
            ':!*.asc' \
 | 
						|
            ':!*.svg' \
 | 
						|
            ':!*/fixtures/*' \
 | 
						|
            ':!docs/THIRDPARTY' \
 | 
						|
            ':!docs/translating' \
 | 
						|
            ':!locale' \
 | 
						|
            ':!postgresql.conf.template.erb' \
 | 
						|
            ':!tools/setup/emoji/emoji_map.json' \
 | 
						|
            ':!tools/setup/emoji/emoji_names.py' \
 | 
						|
            ':!pnpm-lock.yaml' \
 | 
						|
            ':!zerver/management/data/unified_reactions.json'
 | 
						|
    )"
 | 
						|
    mapfile -t FILES_TO_BE_CHECKED <<<"$FILES_TO_BE_CHECKED"
 | 
						|
else
 | 
						|
    FILES_TO_BE_CHECKED=("$@")
 | 
						|
    echo "Checking ${FILES_TO_BE_CHECKED[*]@Q}"
 | 
						|
fi
 | 
						|
 | 
						|
if ! codespell --ignore-words="$IGNORE_WORDS_FILE" -- "${FILES_TO_BE_CHECKED[@]}"; then
 | 
						|
    echo "You may check the files for typo again using ./tools/run-codespell <file 1> <file 2> ... <file n>"
 | 
						|
    exit 1
 | 
						|
fi
 |