diff --git a/Makefile b/Makefile index 366854f..4084c06 100644 --- a/Makefile +++ b/Makefile @@ -6,10 +6,27 @@ .DEFAULT_GOAL:=help SHELL:=/bin/bash +# Get the output of the pandoc command pandoc=$(shell command -v pandoc) +# Get the version of pandoc pandoc_version=$(shell pandoc --version | sed -e 's/.* // ; 1q') +# Get the output of the awk command awk=$(shell command -v awk) +# Get the datetime +now=$(shell date +%Y%m%d%H%M%S) +# Build the filename +filename=$(now).md + +# Export date and id as environment variable to replace the variables in the +# template file +export date:=$(shell date +%Y-%m-%dT%H:%M:%S%:z) +export id:=$(now) + +# Set the templates and notes directories +templates_directory=templates +notes_directory=notes + .PHONY: help deps help: ## Display this help @@ -18,12 +35,17 @@ help: ## Display this help deps: ## Check dependencies $(info Checking and getting dependencies) ifeq ($(strip ($pandoc)),) - @echo "pandoc is required" + @echo "pandoc is required and not installed" else @echo "pandoc" $(pandoc_version) "is installed" endif ifeq ($(strip ($awk)),) - @echo "awk is required" + @echo "awk is required and not installed" else @echo "awk is installed" endif + +new: ## Create a new file + $(info Creating a new file) + @ envsubst <$(templates_directory)/default.md >$(notes_directory)/$(filename) + $(info Your new file is $(notes_directory)/$(filename)) diff --git a/README.md b/README.md index 4c86d41..cdda79c 100644 --- a/README.md +++ b/README.md @@ -29,10 +29,16 @@ notamment pour pouvoir gérer les citations et les références avec ## Fonctionnalités -Pour l'instant [`make-pandoc`][mp] ne fait strictement rien. Mais dans un -avenir incertain il devrait être en mesure de générer une version `HTML` d'une -arborescence de fichiers Markdown, en offrant une navigation, la mise en forme -des citations et des références, des notes. +`make-pandoc` est en mesure : + +- D'afficher une aide (`make` ou `make help`). +- De vérifier si les dépendances sont bien installées (`make deps`). +- De créer un nouveau fichier dans le répertoire de notes (`make new`). + +Pour l'instant [`make-pandoc`][mp] ne fait pas grand chose de plus. Mais dans +un avenir incertain il devrait être en mesure de générer une version `HTML` +d'une arborescence de fichiers Markdown, en offrant une navigation, la mise en +forme des citations et des références, des notes. ## Requis @@ -68,6 +74,7 @@ Usage: Targets: help Display this help deps Check dependencies + new Create a new file ``` ## Feuille de route diff --git a/templates/default.md b/templates/default.md new file mode 100644 index 0000000..7240079 --- /dev/null +++ b/templates/default.md @@ -0,0 +1,6 @@ +--- +date: $date +id: $id +--- + +