]> git.nbdom.net Git - nb.git/commitdiff
etc/git/hooks/pre-commit
authorNicolas Boisselier <nicolas.boisselier@gmail.com>
Tue, 12 Mar 2019 06:02:45 +0000 (06:02 +0000)
committerNicolas Boisselier <nicolas.boisselier@gmail.com>
Tue, 12 Mar 2019 06:02:45 +0000 (06:02 +0000)
etc/git/hooks/pre-commit
etc/profile.d/functions
www/dbq/html/default.css

index cd223d4cac85c5b23cdee5dfb6fc81b135f17812..be83a5118443bbb384ba7711b8145940fb65e9e2 100755 (executable)
@@ -1,10 +1,44 @@
 #!/bin/bash -l
 
-echo DEBUG: pre-commit $* 1>&2
+# NB 12.03.19 echo DEBUG: pre-commit $* 1>&2
+# NB 12.03.19 [ -d www/dbq/ ] && (cd www/dbq/ && minify_dir) | while read -r f; do
+# NB 12.03.19  echo "Minify $f"
+# NB 12.03.19  git add "$f"
+# NB 12.03.19 done
 
-[ -d www/dbq/ ] && (cd www/dbq/ && minify_dir) | while read -r f; do
-       echo "Minify $f"
-       git add "$f"
-done
+echo "Run $0"
+
+if which minify > /dev/null; then
+       MINIFY=""
+       [ -z "$MINIFY" ] && minify --help | grep -q '\-\-css' && MINIFY="ext"
+       [ -z "$MINIFY" ] && minify --help | grep -q '\-\-output' && MINIFY="out"
+       [ -z "$MINIFY" ] || git status --porcelain | sed 's/^ . //' | while read file; do
+               ext=""
+               case "$file" in
+                       *.min.*) continue ;;
+                       *.css) ext=css ;;
+                       *.js) ext=js ;;
+                       *) continue;
+               esac
+               min="$(echo "$file" | sed -E 's/\.([^\.]+)$/.min.\1/')"
+               [ -w "$min" ] || continue
+
+               if [ "$MINIFY" = "ext" ]; then
+                       #echo "minify --$ext < "$file" > "$min.tmp""
+                       minify --$ext < "$file" > "$min.tmp"
+               elif [ "$MINIFY" = "out" ]; then
+                       #echo "minify "$file" --output "$min.tmp""
+                       minify "$file" --output "$min.tmp" > /dev/null
+               fi
+
+               if [ "$?" = "0" ]; then
+                       #echo "cat "$min.tmp" > "$min""
+                       cat "$min.tmp" > "$min"
+               fi
+
+               rm "$min.tmp"
+
+       done
+fi
 
 true
index eb29ea7810f3597f45e62c6ef2f52ee9e792fa5a..b372c21ef6e5c88e8b945c2def6e2a5e001fc58f 100755 (executable)
@@ -766,12 +766,18 @@ space2tab() {
 }
 
 minify_dir() {
-       local usage='minify_dir find and minify js and css files into current directory.'
+       local usage='minify_dir [DIR]. find and minify js and css files into current directory.'
+       local dir="${1:-$PWD}"
        local tmp="/tmp/minify_dir.$$"
+       #local minify_version="$(minify --version|sed 's/[^0-9]//g; s/^0*//')"
        local minify="nb-read.php minify_"
-       which minify &> /dev/null && minify="minify --"
+       ! which minify >/dev/null && return 1 #echo "minify is missing, pealse install it !" 1>&2 && return 1
+       ! minify --help | grep '\-\-css' -q && return 1 #echo "Wrong version of minify, options --[js,css] are missing !" 1>&2 && return 1
+       minify="minify --"
+# NB 12.03.19  which minify &> /dev/null && minify="minify --"
 
-       for f in $(find `pwd` -type f \( -name '*.css' -o -name '*.js' \) -a -not -name '*.min.*'); do
+       local f
+       for f in $(find "$dir/" -type f \( -name '*.css' -o -name '*.js' \) -a -not -name '*.min.*'); do
                min=$(echo "$f" | sed 's/\./.min./')
                ext="${f##*.}"
 
index e0f2fcc7b478d3e8686dd80cf0f7fb93c8425f8c..2170eda06a7224b84db45b98590c2004ce451d0e 100644 (file)
@@ -23,13 +23,6 @@ body.loader {
        display: none !important;
 }
 
-/*
-body {
-       font-size: 0.9rem;
-       line-height: 1.2;
-}
-*/
-
 h1 {
        margin: 0 0 0.2em 0;
        font-size: 140%;