diff --git a/slides/gen_index.sh b/slides/gen_index.sh
index 507d3f8f21405d2b295cacd80bd1170aeda8a0b9..5c72edf6c43ccbb286b6af2401b7c0e789f0a267 100755
--- a/slides/gen_index.sh
+++ b/slides/gen_index.sh
@@ -1,5 +1,26 @@
 #!/bin/bash
 
+set -e
+
+function get_info() {
+    local field=$(echo "$fullName" | sed "$2q;d" $1);
+    IFS=$3;
+    local field=($field); 
+    if [ "${field}" != $5 ]; then
+        return 1
+    fi
+    local field=${field[1]};
+    IFS=$4;
+    local field=($field);
+    local field=${field[1]};
+    echo "$field"
+}
+
+function fail() {
+    printf '%s\n' "$1" >&2 ## Send message to stderr.
+    exit "${2-1}" ## Return a code specified by $2, or 1 by default.
+}
+
 OIFS=$IFS
 NUM_LINE=2
 PREFIX=""
@@ -8,36 +29,27 @@ PREFIX=""
 classes=()
 for i in *.md; do
     [ -f "$i" ] || break
-    comp=$(echo "$fullName" | sed "${NUM_LINE}q;d" $i)
-    date=$(echo "$fullName" | sed "3q;d" $i)
-    IFS=':' 
-    comp=($comp); 
-    comp=${comp[1]}
-    date=($date); 
-    date=${date[1]}
-    # echo $comp
-    IFS='"'
-    comp=($comp)
-    comp=${comp[1]}
-    date=($date); 
-    date=${date[1]}
-    # echo $comp | awk '{ print substr( $0, 1, length($0)-1 ) }'
-    # echo $comp
-    # date=sed "${NUM_LINE}q;d" $i
+    date="$(get_info $i 3 ":" '"' "date")"
+    if [ "$date" == 1 ]; then
+        fail "Error date field not found"
+    fi
+    comp="$(get_info $i 2 ":" '"' "title")"
+    if [ "$comp" == 1 ]; then
+        fail "Error title field not found"
+    fi
     i="${i%.*}"
     class="[${date} ${comp}](${PREFIX}${i}.pdf)"
-    classes+=($class)
-    # echo "[${date} ${comp}](${PREFIX}${i}.pdf)" >> index.md
+    classes+=("$class")
 done
 IFS=$'\n'
 classes=($(sort <<<"${classes[*]}"))
 date=$(date '+%Y-%m-%d')
 echo "---" >> index.md
-echo "title: Slides du cours d'Algorithmique" >> index.md
-echo "date: ${date}" >> index.md
+echo "title: \"Slides du cours d'algorithmique\"" >> index.md
+echo "date: \"${date}\"" >> index.md
 echo "---" >> index.md
 echo "" >> index.md
-echo "# Tous les slides du cours d'Algorithmique" >> index.md
+echo "# Tous les slides du cours d'algorithmique" >> index.md
 echo "" >> index.md
 for i in ${classes[*]}; do
     echo "* $i" >> index.md