make-pandoc/Makefile

40 lines
1.0 KiB
Makefile

# Sources of inspiration:
# https://makefiletutorial.com/
# https://code.larlet.fr/makefile/
# https://www.thapaliya.com/en/writings/well-documented-makefiles/
.DEFAULT_GOAL:=help
SHELL:=/bin/bash
pandoc=$(shell command -v pandoc)
pandoc_version=$(shell pandoc --version | sed -e 's/.* // ; 1q')
awk=$(shell command -v awk)
templates_directory="./templates"
notes_directory="./notes"
.PHONY: help deps
help: ## Display this help
@awk 'BEGIN {FS = ":.*##"; printf "\nUsage:\n make \033[36m<target>\033[0m\n\nTargets:\n"} /^[a-zA-Z_-]+:.*?##/ { printf " \033[36m%-10s\033[0m %s\n", $$1, $$2 }' $(MAKEFILE_LIST)
deps: ## Check dependencies
$(info Checking and getting dependencies)
ifeq ($(strip ($pandoc)),)
@echo "pandoc is required"
else
@echo "pandoc" $(pandoc_version) "is installed"
endif
ifeq ($(strip ($awk)),)
@echo "awk is required"
else
@echo "awk is installed"
endif
new: ## Create a new file
$(info Creating a new file)
date=$(shell date +%Y)
name=$(date).md
@echo $(name)
cp $(templates_directory)/default.md $(notes_directory)/$(name)