• # Une bidouille

    Posté par . En réponse au message "Suivi au jour le jour" .... Évalué à 1.

    Pour ma part, j'utilise une bidouille "maison" : un script qui s'appelle "calepin.sh" et qui construit un fichier xml par mois contenant des entrées du genre :
    -----------------------------------------------------------------------------------------
    <day date="2005年04月05日">
    <entry time="17:57">
    Blah blah il fait beau blah blah
    Blah blah c'est la fete blah blah
    </entry>
    <entry time="23:59">
    Blah blah demain est un autre jour blah blah
    </entry>
    </day>

    <day date="2005年04月06日">
    ....
    -----------------------------------------------------------------------------------------

    C'est très basique mais ca permet de garder une trace. Le script "calepin.sh" :
    -----------------------------------------------------------------------------------------
    #! /bin/sh

    ENTRYEDIT=vi
    [ x"$EDITOR" != x ] && ENTRYEDIT="$EDITOR"
    [ x"$VISUAL" != x ] && ENTRYEDIT="$VISUAL"

    CALEPIN=$HOME/perso/calepin-`date +"%Y-%m%B"`.xml
    NOTE=/tmp/nototo-$USER-$$.txt
    HEADDATE=`date +"%F"`

    $ENTRYEDIT $NOTE
    if [ ! -f $NOTE ] ; then
    echo "Pas de message. Abandon."
    exit 1
    fi
    if [ x"`wc -w $NOTE`" = x"0 $NOTE" ] ; then
    echo "Pas de contenu. Abandon."
    exit 1
    fi
    recode latin1..XML-standalone $NOTE

    if [ -f $CALEPIN ] ; then
    cp -f $CALEPIN ${CALEPIN}~
    fi

    HEADER="<day date=\"$HEADDATE\">"
    if grep -q "$HEADER" $CALEPIN ; then
    sed '$s%</day>$%%' < $CALEPIN > $CALEPIN.new
    mv -f $CALEPIN.new $CALEPIN
    else
    echo >> $CALEPIN
    echo $HEADER >> $CALEPIN
    fi
    echo " <entry time=\""`date +"%R"`"\">" >> $CALEPIN
    cat $NOTE >> $CALEPIN
    echo " </entry>" >> $CALEPIN
    echo "</day>" >> $CALEPIN

    rm -f $NOTE
    echo -e "\e[34mCalepin mis a jour\e[m"
    -----------------------------------------------------------------------------------------