<?xml version="1.0" encoding="UTF-8"?>
<!-- 
  ~ Copyright (C) 2012 The Android Open Source Project
  ~
  ~ Licensed under the Apache License, Version 2.0 (the "License");
  ~ you may not use this file except in compliance with the License.
  ~ You may obtain a copy of the License at
  ~
  ~      http://www.apache.org/licenses/LICENSE-2.0
  ~
  ~ Unless required by applicable law or agreed to in writing, software
  ~ distributed under the License is distributed on an "AS IS" BASIS,
  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  ~ See the License for the specific language governing permissions and
  ~ limitations under the License
   -->

<resources xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
    <!-- no translation found for applicationLabel (8490255569343340580) -->
    <skip />
    <string name="launcherDialer" msgid="8636288196618486553">"Téléphone"</string>
    <string name="dialerIconLabel" msgid="6500826552823403796">"Tél."</string>
    <string name="recentCallsIconLabel" msgid="1419116422359067949">"Appels"</string>
    <string name="menu_sendTextMessage" msgid="6937343460284499306">"Envoyer un SMS"</string>
    <string name="recentCalls_callNumber" msgid="1756372533999226126">"Appeler <xliff:g id="NAME">%s</xliff:g>"</string>
    <string name="recentCalls_editNumberBeforeCall" msgid="7756171675833267857">"Modifier le numéro avant d\'effectuer l\'appel"</string>
    <string name="recentCalls_addToContact" msgid="1429899535546487008">"Ajouter aux contacts"</string>
    <string name="recentCalls_removeFromRecentList" msgid="401662244636511330">"Supprimer du journal d\'appels"</string>
    <string name="recentCalls_deleteAll" msgid="6352364392762163704">"Effacer tous les appels"</string>
    <string name="recentCalls_trashVoicemail" msgid="7604696960787435655">"Supprimer le message vocal"</string>
    <string name="recentCalls_shareVoicemail" msgid="1416112847592942840">"Partager le message vocal"</string>
    <string name="recentCalls_empty" msgid="247053222448663107">"Aucun appel."</string>
    <string name="clearCallLogConfirmation_title" msgid="6427524640461816332">"Effacer les appels ?"</string>
    <string name="clearCallLogConfirmation" msgid="5043563133171583152">"Votre journal d\'appels va être supprimé."</string>
    <string name="clearCallLogProgress_title" msgid="8365943000154295771">"Effacement des appels…"</string>
  <plurals name="notification_voicemail_title">
    <item quantity="one" msgid="1746619685488504230">"Messages vocaux"</item>
    <item quantity="other" msgid="5513481419205061254">"<xliff:g id="COUNT">%1$d</xliff:g> messages vocaux"</item>
  </plurals>
    <string name="notification_action_voicemail_play" msgid="6113133136977996863">"Lire"</string>
    <string name="notification_voicemail_callers_list" msgid="1153954809339404149">"<xliff:g id="NEWER_CALLERS">%1$s</xliff:g>, <xliff:g id="OLDER_CALLER">%2$s</xliff:g>"</string>
    <string name="notification_new_voicemail_ticker" msgid="895342132049452081">"Nouveau message vocal de <xliff:g id="CALLER">%1$s</xliff:g>"</string>
    <string name="voicemail_playback_error" msgid="1811242131549854624">"Impossible d\'écouter le message vocal."</string>
    <string name="voicemail_buffering" msgid="738287747618697097">"Mise en mémoire tampon..."</string>
    <string name="voicemail_fetching_content" msgid="877911315738258780">"Récupération des messages vocaux..."</string>
    <string name="voicemail_fetching_timout" msgid="6691792377574905201">"Impossible de récupérer messages vocaux."</string>
    <string name="call_log_new_header" msgid="846546437517724715">"Nouveau"</string>
    <string name="call_log_old_header" msgid="6262205894314263629">"Précédent"</string>
    <string name="call_log_voicemail_header" msgid="3945407886667089173">"Seulement les appels avec message vocal"</string>
    <string name="call_log_incoming_header" msgid="2787722299753674684">"Seulement les appels entrants"</string>
    <string name="call_log_outgoing_header" msgid="761009180766735769">"Seulement les appels sortants"</string>
    <string name="call_log_missed_header" msgid="8017148056610855956">"Seulement les appels manqués"</string>
    <string name="voicemail_status_voicemail_not_available" msgid="3021980206152528883">"Impossible de se connecter au serveur de messagerie vocale."</string>
    <string name="voicemail_status_messages_waiting" msgid="7113421459602803605">"Connexion messagerie vocale impossible. Messages en attente."</string>
    <string name="voicemail_status_configure_voicemail" msgid="3738537770636895689">"Configurez votre messagerie vocale."</string>
    <string name="voicemail_status_audio_not_available" msgid="3369618334553341626">"Contenu audio indisponible."</string>
    <string name="voicemail_status_action_configure" msgid="8671796489912239589">"Configuration"</string>
    <string name="voicemail_status_action_call_server" msgid="1824816252288551794">"Appeler mess. vocale"</string>
    <string name="voicemail_speed_slowest" msgid="1733460666177707312">"Vitesse minimale"</string>
    <string name="voicemail_speed_slower" msgid="1508601287347216244">"vitesse lente"</string>
    <string name="voicemail_speed_normal" msgid="9033988544627228892">"Vitesse normale"</string>
    <string name="voicemail_speed_faster" msgid="2019965121475935488">"Vitesse rapide"</string>
    <string name="voicemail_speed_fastest" msgid="5758712343491183292">"Vitesse maximale"</string>
    <string name="call_log_item_count_and_date" msgid="7641933305703520787">"(<xliff:g id="COUNT">%1$d</xliff:g>) <xliff:g id="DATE">%2$s</xliff:g>"</string>
    <string name="sms_disambig_title" msgid="5846266399240630846">"Sélectionner un numéro"</string>
    <string name="call_disambig_title" msgid="4392886850104795739">"Sélectionner un numéro"</string>
    <string name="make_primary" msgid="5829291915305113983">"Mémoriser ce choix"</string>
</resources>
