mirror of
https://github.com/twbs/bootstrap.git
synced 2022-11-09 12:25:43 -05:00
Add bash script to lint our variables
This commit is contained in:
parent
337ead4b27
commit
c90cef019a
1 changed files with 28 additions and 0 deletions
28
build/lint-vars.sh
Executable file
28
build/lint-vars.sh
Executable file
|
@ -0,0 +1,28 @@
|
|||
#!/usr/bin/env bash
|
||||
#
|
||||
# Approach:
|
||||
# 1. Find variable declaration in the form of "$my-var: anyvalue"
|
||||
# 2. Loop through found variables and find occurrences of each variable in all sass files
|
||||
# 3. Filter out vars that occurred only once
|
||||
#
|
||||
# Run from command line with `build/lint-vars.sh scss`.
|
||||
#
|
||||
# Source: https://gist.github.com/badsyntax/6193491
|
||||
|
||||
if [ -z "$1" ]; then
|
||||
echo "Please specify a directory as the first argument."
|
||||
exit 1
|
||||
fi
|
||||
if [ ! -d "$1" ]; then
|
||||
echo "Not a valid directory."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "Finding unused variables. This might take some time..."
|
||||
|
||||
vars=$(find "$1" -type f -name "*.scss" -exec grep --color=never -h '^$[a-zA-Z0-9_-][^:]*' {} \; | sed 's/$\([a-zA-Z0-9_-][^:]*\).*/\1/')
|
||||
|
||||
for var in $vars; do
|
||||
echo -n "Occurrences of \"\$$var\":"
|
||||
find "$1" -type f -name "*.scss" -exec grep --color=never -h "$var" "{}" \; | wc -l
|
||||
done | grep ' 1$'
|
Loading…
Reference in a new issue