Browse Source

Ancre dans README.md + meilleur comportement de pre-commit :
n'agit que si plugins.vim a été modifié et commit le nouveau README.md

Thibaut Marty 9 years ago
parent
commit
f509ba3ea1
2 changed files with 57 additions and 50 deletions
  1. 1 1
      README.md
  2. 56 49
      hooks/pre-commit

+ 1 - 1
README.md

@@ -19,7 +19,7 @@ wget --no-check-certificate https://raw.githubusercontent.com/ThibautMarty/non-u
 
 * ou en exécutant les commandes dans le fichier [install](install).
 
-Puis installez tous les plugins avec les commandes de la partie **Mise à jour**.
+Puis installez tous les plugins avec les commandes de la partie [Mise à jour](#user-content-mise-à-jour).
 
 ## Mise à jour
 

+ 56 - 49
hooks/pre-commit

@@ -7,52 +7,59 @@ trap "rm -f $tmp" EXIT
 
 cd ~/.vim
 
-while read rline
-do
-  if [ "$rline" = "## Liste des plugins" ] ; then
-    mode=1
-
-    echo "$rline"
-    echo ""
-
-    while read vline
-    do
-      case $vline in
-        "Plugin 'gmarik/Vundle.vim'")
-          ;;
-        Plugin*)
-          plugin=$(echo $vline | cut -d\' -f2)
-          bn=$(basename $plugin)
-
-          if
-            (echo $plugin | grep -v /) > /dev/null
-          then
-            echo "* [$bn](https://github.com/vim-scripts/$plugin)"
-          else
-            case $plugin in
-              "git://"*)
-                echo "* [$bn]($plugin)"
-                ;;
-              "file://"*)
-                echo "* $bn"
-                ;;
-              **)
-                echo "* [$bn](https://github.com/$plugin)"
-                ;;
-            esac
-          fi
-          ;;
-      esac
-    done < plugins.vim
-
-    echo ""
-  fi
-  if [ $mode -eq 0 ] ; then
-    echo "$rline"
-  elif [ "$rline" = "## Licence" ] ; then
-    echo "$rline"
-    mode=0
-  fi
-done < README.md > $tmp
-
-mv $tmp README.md
+if
+  git diff --cached --name-status | grep plugins.vim > /dev/null 2>&1
+then
+  while read rline
+  do
+    if [ "$rline" = "## Liste des plugins" ] ; then
+      mode=1
+
+      echo "$rline"
+      echo ""
+
+      while read vline
+      do
+        case $vline in
+          "Plugin 'gmarik/Vundle.vim'")
+            ;;
+          Plugin*)
+            plugin=$(echo $vline | cut -d\' -f2)
+            bn=$(basename $plugin)
+
+            if
+              (echo $plugin | grep -v /) > /dev/null
+            then
+              echo "* [$bn](https://github.com/vim-scripts/$plugin)"
+            else
+              case $plugin in
+                "git://"*)
+                  echo "* [$bn]($plugin)"
+                  ;;
+                "file://"*)
+                  echo "* $bn"
+                  ;;
+                **)
+                  echo "* [$bn](https://github.com/$plugin)"
+                  ;;
+              esac
+            fi
+            ;;
+        esac
+      done < plugins.vim
+
+      echo ""
+    fi
+    if [ $mode -eq 0 ] ; then
+      echo "$rline"
+    elif [ "$rline" = "## Licence" ] ; then
+      echo "$rline"
+      mode=0
+    fi
+  done < README.md > $tmp
+
+  mv $tmp README.md
+
+  git add README.md
+  git commit --amend
+fi