diff --git a/.githooks/pre-commit b/.githooks/pre-commit index 7a5bd8d..d665180 100755 --- a/.githooks/pre-commit +++ b/.githooks/pre-commit @@ -2,9 +2,13 @@ # Contents of .git/hooks/pre-commit # Replace `last_modified_at` timestamp with current time # https://mademistakes.com/notes/adding-last-modified-timestamps-with-git/ +# enhanced the script to either update the YAML or TOML frontmatter (as i used both O_o) git diff --cached --name-status | egrep -i "^(A|M).*\.(md)$" | while read a b; do - cat $b | sed "/---.*/,/---.*/s/^lastmod:.*$/lastmod: $(date -u "+%Y-%m-%dT%H:%M:%S%z")/" > tmp + # YAML or TOML frontmatter? + (egrep "^---$" $b > /dev/null) && (cat $b | sed "/---.*/,/---.*/s/^lastmod:.*$/lastmod: $(date -u "+%Y-%m-%dT%H:%M:%S%z")/" > tmp) + (egrep "^\+\+\+$" $b > /dev/null) && (cat $b | sed "/+++.*/,/+++.*/s/^lastmod.*$/lastmod = '$(date -u "+%Y-%m-%dT%H:%M:%S%z")'/" > tmp) mv tmp $b git add $b done +