import hashlib
def dolabel(k,t):
    # faire une étiquette "unique" à partir de deux chaines de caratères k et t.
    s=(k+t).encode("UTF-8")
    return hashlib.sha1(s).hexdigest()
#
# Données pour treatline.
#
# attention, l'ordre est important !
tabler={"textsuperscript{e}":"ieme{}",
        "textsuperscript{ème}":"ieme{}",
        "textsuperscript{er}":"ier{}",
        "\\begin{quote}":"",
        "\\end{quote}":"",
        "subsection{":"subsection*{",
        "\\textquotesingle ":"'",
        "\\textquotesingle":"",
        "~":"",
        }
def treatline(l):
    # Les substitutions éventuelles à faire sur une ligne
    for x,y in tabler.items():
        l=l.replace(x,y)

    return l
def nocite_all(fich):
    # Créer un nocite{...} avec toutes les entrées du fichier fich
    # (un fichier .bib).
    with open(fich) as f:
        L=f.readlines()
    all=[]
    for x in L:
        if "@" in x:
            d=x.find("{")+1
            e=x.find(",")
            all.append(x[d:e])
    return f"\\nocite{{{','.join(all)}}}"
                       
