Created
September 18, 2017 20:43
-
-
Save nickcernis/2d258f3fefa7360d6547f99785212966 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
include config/theme-info.make | |
include src/make/theme-info-original.make | |
include src/make/show-help-from-comments.make | |
.PHONY: help sass build watch bump gitinit rename undo-rename dist clean b r ur gi ts | |
help: show-help-from-comments | |
## Watch and build Sass files only. Compiles all Sass to style.css, unminified. | |
sass: | |
@sass --watch assets/sass/style.scss:./style.css | |
## Build minified assets for distribution and save to ./dist/$current_version/. Bump your version first. | |
dist: | |
$(eval current_version := $(shell grep "\tVersion: .*" ./assets/sass/style.scss | cut -d':' -f2)) | |
@mkdir -p ./dist/$(current_version) | |
@sass --update ./assets/sass/style.scss:./dist/$(current_version)/style.css --force --style compressed --no-cache | |
## Remove the ./dist/$current_version/ and ./.sass-cache/ folders. | |
clean: | |
$(eval current_version := $(shell grep "\tVersion: .*" ./assets/sass/style.scss | cut -d':' -f2)) | |
rm -rf ./.sass-cache | |
rm -rf ./dist/$(current_version)/ | |
## Watch and build unminified Sass files. | |
watch: sass | |
## Change theme version to the specified value: `make bump v=1.0.1`. Does not git tag. | |
bump: | |
ifdef v | |
@echo Changing version to $(v). | |
@find . -type f -name style.css -exec sed -i '' -e "s| Version: .*| Version: $(v)|" {} + | |
@echo Done! | |
else | |
@echo 'error: version must be provided' | |
@echo 'usage: make bump v=1.0.1' | |
@false | |
endif | |
m = Initial commit # Default commit message. | |
## Destroy current git repo, init afresh, and commit all with message, 'Initial commit'. | |
## To set your own message: `make gitinit m='Your message'`. | |
gitinit: | |
@rm -rf .git | |
@echo Removed existing Git repository | |
@git init | |
@git add . | |
git commit -am '$(m)' | |
@echo Done! | |
## Update theme name and developer credits in all files. Edit config/theme-info.make first. | |
rename: | |
@echo Changing… | |
@echo - Theme name to $(THEME_NAME) | |
@find . -type f \( -name \*.css -o -name \*.php \) -exec sed -i '' -e "s|$(DEFAULT_THEME_NAME)|$(THEME_NAME)|g" {} + | |
@echo - Theme URL to $(THEME_URL) | |
@find . -type f \( -name \*.css -o -name \*.php \) -exec sed -i '' -e "s|$(DEFAULT_THEME_URL)|$(THEME_URL)|g" {} + | |
@echo - Description to $(DESCRIPTION) | |
@find . -type f -name "*.css" -exec sed -i '' -e "s|$(DEFAULT_DESCRIPTION)|$(DESCRIPTION)|g" {} + | |
@echo - Author name to $(AUTHOR_NAME) | |
@find . -type f \( -name \*.css -o -name \*.php \) -exec sed -i '' -e "s|$(DEFAULT_AUTHOR_NAME)|$(AUTHOR_NAME)|g" {} + | |
@echo - Author URL to $(AUTHOR_URL) | |
@find . -type f -name "*.css" -exec sed -i '' -e "s|$(DEFAULT_AUTHOR_URL)|$(AUTHOR_URL)|g" {} + | |
@echo - Theme version to $(INITIAL_VERSION) | |
@find . -type f \( -name \*.css -o -name \*.php \) -exec sed -i '' -e "s|$(DEFAULT_INITIAL_VERSION)|$(INITIAL_VERSION)|g" {} + | |
@sed -i '' -e "s|$(DEFAULT_INITIAL_VERSION)|$(INITIAL_VERSION)|g" CHANGELOG.md | |
sed -i '' -e "s|YEAR-MONTH-DAY|`date +%Y-%m-%d`|g" CHANGELOG.md | |
@echo - Genesis version to $(MIN_GENESIS_VERSION) | |
@find . -type f -name "*.css" -exec sed -i '' -e "s|$(DEFAULT_MIN_GENESIS_VERSION)|$(MIN_GENESIS_VERSION)|g" {} + | |
@echo - Text domain to $(TEXT_DOMAIN) | |
@find . -type f \( -name \*.css -o -name \*.php \) -exec sed -i '' -e "s|$(DEFAULT_TEXT_DOMAIN)|$(TEXT_DOMAIN)|g" {} + | |
@echo - Root namespace to $(ROOT_NAMESPACE) | |
@find . -type f -name "*.php" -exec sed -i '' -e "s|$(DEFAULT_ROOT_NAMESPACE)|$(ROOT_NAMESPACE)|g" {} + | |
@echo Done! | |
## Reset theme name and credits to the default. Use before running `make rename` a second time. Does not undo version number changes. | |
undo-rename: | |
@echo Resetting… | |
@echo - Theme name | |
@find . -type f \( -name \*.css -o -name \*.php \) -exec sed -i '' -e "s|$(THEME_NAME)|$(DEFAULT_THEME_NAME)|g" {} + | |
@echo - Theme URL | |
@find . -type f \( -name \*.css -o -name \*.php \) -exec sed -i '' -e "s|$(THEME_URL)|$(DEFAULT_THEME_URL)|g" {} + | |
@echo - Description | |
@find . -type f -name "*.css" -exec sed -i '' -e "s|$(DESCRIPTION)|$(DEFAULT_DESCRIPTION)|g" {} + | |
@echo - Author name | |
@find . -type f \( -name \*.css -o -name \*.php \) -exec sed -i '' -e "s|$(AUTHOR_NAME)|$(DEFAULT_AUTHOR_NAME)|g" {} + | |
@echo - Author URL | |
@find . -type f -name "*.css" -exec sed -i '' -e "s|$(AUTHOR_URL)|$(DEFAULT_AUTHOR_URL)|g" {} + | |
@echo - Text domain | |
@find . -type f \( -name \*.css -o -name \*.php \) -exec sed -i '' -e "s|$(TEXT_DOMAIN)|$(DEFAULT_TEXT_DOMAIN)|g" {} + | |
@echo - Root namespace | |
@find . -type f -name "*.php" -exec sed -i '' -e "s|$(ROOT_NAMESPACE)|$(DEFAULT_ROOT_NAMESPACE)|g" {} + | |
@echo Done! | |
# Check for dependencies. | |
#setup: | |
#@command -v fswatch --version >/dev/null 2>&1 || { printf >&2 "fswatch is not installed, please run: brew install fswatch\n"; exit 1; } | |
#@command -v go-bindata >/dev/null 2>&1 || { printf >&2 "go-bindata is not installed, please run: go get github.com/jteeuwen/go-bindata/...\n"; exit 1; } | |
# Aliases. | |
b: bump | |
rel: release | |
r: rename | |
ur: undo-rename | |
gi: gitinit | |
ts: typescript |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment