# XZ Utils French Translation
# This file is put in the public domain.
# Adrien Nader <camaradetux@gmail.com>, 2011.
#
msgid ""
msgstr ""
"Project-Id-Version: xz-utils\n"
"Report-Msgid-Bugs-To: lasse.collin@tukaani.org\n"
"POT-Creation-Date: 2012-07-04 20:51+0300\n"
"PO-Revision-Date: 2010-09-24 21;12+0200\n"
"Last-Translator: Adrien Nader <camaradetux@gmail.com>\n"
"Language-Team: None\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n==1) ? 0 : 1;\n"

#: src/xz/args.c:62
#, c-format
msgid "%s: Invalid argument to --block-list"
msgstr ""

#: src/xz/args.c:72
#, c-format
msgid "%s: Too many arguments to --block-list"
msgstr ""

#: src/xz/args.c:101
msgid "0 can only be used as the last element in --block-list"
msgstr ""

#: src/xz/args.c:401
#, c-format
msgid "%s: Unknown file format type"
msgstr "%s : Format de fichier inconnu"

#: src/xz/args.c:424 src/xz/args.c:432
#, c-format
msgid "%s: Unsupported integrity check type"
msgstr "%s : Type de vérification d'intégrité inconnu"

#: src/xz/args.c:464
msgid "Only one file can be specified with `--files' or `--files0'."
msgstr "Un seul fichier peut être spécifié avec `--files' ou `--files0'."

#: src/xz/args.c:527
#, c-format
msgid "The environment variable %s contains too many arguments"
msgstr "La variable d'environnement %s contient trop d'arguments"

#: src/xz/coder.c:106
msgid "Maximum number of filters is four"
msgstr "Le nombre maximal de filtres est quatre"

#: src/xz/coder.c:119
msgid "Memory usage limit is too low for the given filter setup."
msgstr "La limite d'utilisation mémoire est trop basse pour la configuration de filtres donnée."

#: src/xz/coder.c:149
msgid "Using a preset in raw mode is discouraged."
msgstr "Utiliser un préréglage en mode `raw' est déconseillé."

#: src/xz/coder.c:151
msgid "The exact options of the presets may vary between software versions."
msgstr "Le détail des préréglages peut varier entre différentes versions du logiciel."

#: src/xz/coder.c:177
msgid "The .lzma format supports only the LZMA1 filter"
msgstr "Le format .lzma ne prend en charge que le filtre LZMA1"

#: src/xz/coder.c:185
msgid "LZMA1 cannot be used with the .xz format"
msgstr "Le filtre LZMA1 ne peut être utilisé avec le format .xz"

#: src/xz/coder.c:204
#, c-format
msgid "Using up to %<PRIu32> threads."
msgstr "Jusqu'à %<PRIu32> threads seront utilisés."

#: src/xz/coder.c:217
msgid "Unsupported filter chain or filter options"
msgstr "Enchaînement ou options de filtres non pris en charge"

#: src/xz/coder.c:225
#, c-format
msgid "Decompression will need %s MiB of memory."
msgstr "La décompression nécessitera %s MiB de mémoire."

#: src/xz/coder.c:260
#, c-format
msgid "Adjusted the number of threads from %s to %s to not exceed the memory usage limit of %s MiB"
msgstr "Nombre de threads réduit de %s à %s pour ne pas dépasser la limite d'utilisation mémoire de %s MiB"

#: src/xz/coder.c:314
#, c-format
msgid "Adjusted LZMA%c dictionary size from %s MiB to %s MiB to not exceed the memory usage limit of %s MiB"
msgstr "Taille du dictionnaire LZMA%c réduite de %s MiB à %s MiB pour ne pas dépasser la limite d'utilisation mémoire de %s MiB"

#. TRANSLATORS: When compression or decompression finishes,
#. and xz is going to remove the source file, xz first checks
#. if the source file still exists, and if it does, does its
#. device and inode numbers match what xz saw when it opened
#. the source file. If these checks fail, this message is
#. shown, %s being the filename, and the file is not deleted.
#. The check for device and inode numbers is there, because
#. it is possible that the user has put a new file in place
#. of the original file, and in that case it obviously
#. shouldn't be removed.
#: src/xz/file_io.c:136
#, c-format
msgid "%s: File seems to have been moved, not removing"
msgstr "%s : Le fichier a apparemment été déplacé, suppression annulée"

#: src/xz/file_io.c:143 src/xz/file_io.c:635
#, c-format
msgid "%s: Cannot remove: %s"
msgstr "%s : Impossible de supprimer : %s"

#: src/xz/file_io.c:168
#, c-format
msgid "%s: Cannot set the file owner: %s"
msgstr "%s : Impossible de modifier le propriétaire du fichier : %s"

#: src/xz/file_io.c:174
#, c-format
msgid "%s: Cannot set the file group: %s"
msgstr "%s : Impossible de modifier le groupe propriétaire du fichier : %s"

#: src/xz/file_io.c:193
#, c-format
msgid "%s: Cannot set the file permissions: %s"
msgstr "%s : Impossible de modifier les permissions du fichier : %s"

#: src/xz/file_io.c:340 src/xz/file_io.c:423
#, c-format
msgid "%s: Is a symbolic link, skipping"
msgstr "%s est un lien symbolique : ignoré"

#: src/xz/file_io.c:468
#, c-format
msgid "%s: Is a directory, skipping"
msgstr "%s est un répertoire : ignoré"

#: src/xz/file_io.c:474
#, c-format
msgid "%s: Not a regular file, skipping"
msgstr "%s n'est pas un fichier régulier : ignoré"

#: src/xz/file_io.c:491
#, c-format
msgid "%s: File has setuid or setgid bit set, skipping"
msgstr "%s : Le fichier possède les bits `setuid' ou `setgid' : ignoré"

#: src/xz/file_io.c:498
#, c-format
msgid "%s: File has sticky bit set, skipping"
msgstr "%s : Le fichier possède le bit `sticky' : ignoré"

#: src/xz/file_io.c:505
#, c-format
msgid "%s: Input file has more than one hard link, skipping"
msgstr "%s : Le fichier d'entrée a plus d'un lien matériel : ignoré"

#: src/xz/file_io.c:761
#, c-format
msgid "Error restoring the O_APPEND flag to standard output: %s"
msgstr "Impossible de rétablir le drapeau O_APPEND sur la sortie standard : %s"

#: src/xz/file_io.c:773
#, c-format
msgid "%s: Closing the file failed: %s"
msgstr "%s : Impossible de fermer le fichier : %s"

#: src/xz/file_io.c:809 src/xz/file_io.c:1008
#, c-format
msgid "%s: Seeking failed when trying to create a sparse file: %s"
msgstr "%s : Impossible de se déplacer dans le fichier pour créer un 'sparse file' : %s"

#: src/xz/file_io.c:883
#, c-format
msgid "%s: Read error: %s"
msgstr "%s : Erreur d'écriture : %s"

#: src/xz/file_io.c:906
#, c-format
msgid "%s: Error seeking the file: %s"
msgstr "%s : Impossible de se déplacer dans le fichier : %s"

#: src/xz/file_io.c:916
#, c-format
msgid "%s: Unexpected end of file"
msgstr "%s : Fin de fichier inattendue"

#: src/xz/file_io.c:966
#, c-format
msgid "%s: Write error: %s"
msgstr "%s : Erreur d'écriture : %s"

#: src/xz/hardware.c:101
msgid "Disabled"
msgstr "Désactivé"

#. TRANSLATORS: Test with "xz --info-memory" to see if
#. the alignment looks nice.
#: src/xz/hardware.c:120
msgid "Total amount of physical memory (RAM): "
msgstr "Quantité totale de mémoire physique (RAM) :  "

#: src/xz/hardware.c:122
msgid "Memory usage limit for compression:    "
msgstr "Limite d'utilisation pour la compression :   "

#: src/xz/hardware.c:124
msgid "Memory usage limit for decompression:  "
msgstr "Limite d'utilisation pour la décompression : "

#. TRANSLATORS: Indicates that there is no integrity check.
#. This string is used in tables, so the width must not
#. exceed ten columns with a fixed-width font.
#: src/xz/list.c:65
msgid "None"
msgstr "Aucune"

#. TRANSLATORS: Indicates that integrity check name is not known,
#. but the Check ID is known (here 2). This and other "Unknown-N"
#. strings are used in tables, so the width must not exceed ten
#. columns with a fixed-width font. It's OK to omit the dash if
#. you need space for one extra letter, but don't use spaces.
#: src/xz/list.c:72
msgid "Unknown-2"
msgstr "Inconnue-2"

#: src/xz/list.c:73
msgid "Unknown-3"
msgstr "Inconnue-3"

#: src/xz/list.c:75
msgid "Unknown-5"
msgstr "Inconnue-5"

#: src/xz/list.c:76
msgid "Unknown-6"
msgstr "Inconnue-6"

#: src/xz/list.c:77
msgid "Unknown-7"
msgstr "Inconnue-7"

#: src/xz/list.c:78
msgid "Unknown-8"
msgstr "Inconnue-8"

#: src/xz/list.c:79
msgid "Unknown-9"
msgstr "Inconnue-9"

#: src/xz/list.c:81
msgid "Unknown-11"
msgstr "Inconnue-11"

#: src/xz/list.c:82
msgid "Unknown-12"
msgstr "Inconnue-12"

#: src/xz/list.c:83
msgid "Unknown-13"
msgstr "Inconnue-13"

#: src/xz/list.c:84
msgid "Unknown-14"
msgstr "Inconnue-14"

#: src/xz/list.c:85
msgid "Unknown-15"
msgstr "Inconnue-15"

#: src/xz/list.c:153
#, c-format
msgid "%s: File is empty"
msgstr "%s : Le fichier est vide"

#: src/xz/list.c:158
#, c-format
msgid "%s: Too small to be a valid .xz file"
msgstr "%s : Trop petit pour être un fichier xz valide."

#. TRANSLATORS: These are column headings. From Strms (Streams)
#. to Ratio, the columns are right aligned. Check and Filename
#. are left aligned. If you need longer words, it's OK to
#. use two lines here. Test with "xz -l foo.xz".
#: src/xz/list.c:645
msgid "Strms  Blocks   Compressed Uncompressed  Ratio  Check   Filename"
msgstr "Flux    Blocs    Compressé  Décompressé  Ratio  Vérif   Nom de fichier"

#: src/xz/list.c:685
#, c-format
msgid "  Streams:            %s\n"
msgstr "  Flux :                            %s\n"

#: src/xz/list.c:687
#, c-format
msgid "  Blocks:             %s\n"
msgstr "  Blocs :                           %s\n"

#: src/xz/list.c:689
#, c-format
msgid "  Compressed size:    %s\n"
msgstr "  Taille compressé :                %s\n"

#: src/xz/list.c:692
#, c-format
msgid "  Uncompressed size:  %s\n"
msgstr "  Taille décompressé :              %s\n"

#: src/xz/list.c:695
#, c-format
msgid "  Ratio:              %s\n"
msgstr "  Ratio :                           %s\n"

#: src/xz/list.c:697
#, c-format
msgid "  Check:              %s\n"
msgstr "  Vérification :                    %s\n"

#: src/xz/list.c:698
#, c-format
msgid "  Stream padding:     %s\n"
msgstr "  Octets de rembourrage du flux :   %s\n"

#. TRANSLATORS: The second line is column headings. All except
#. Check are right aligned; Check is left aligned. Test with
#. "xz -lv foo.xz".
#: src/xz/list.c:726
msgid ""
"  Streams:\n"
"    Stream    Blocks      CompOffset    UncompOffset        CompSize      UncompSize  Ratio  Check      Padding"
msgstr ""
"  Flux :\n"
"      Flux     Blocs    PositionComp  PositionDécomp      TailleComp    TailleDécomp  Ratio  Vérif.    Bourrage"

#. TRANSLATORS: The second line is column headings. All
#. except Check are right aligned; Check is left aligned.
#: src/xz/list.c:781
#, c-format
msgid ""
"  Blocks:\n"
"    Stream     Block      CompOffset    UncompOffset       TotalSize      UncompSize  Ratio  Check"
msgstr ""
"  Blocs :\n"
"      Flux      Bloc    PositionComp  PositionDécomp       TailleTot    TailleDécomp  Ratio  Vérif."

#. TRANSLATORS: These are additional column headings
#. for the most verbose listing mode. CheckVal
#. (Check value), Flags, and Filters are left aligned.
#. Header (Block Header Size), CompSize, and MemUsage
#. are right aligned. %*s is replaced with 0-120
#. spaces to make the CheckVal column wide enough.
#. Test with "xz -lvv foo.xz".
#: src/xz/list.c:793
#, c-format
msgid "      CheckVal %*s Header  Flags        CompSize    MemUsage  Filters"
msgstr "     ValVérif %*sEn-tête  Drapeaux   TailleComp     UtilMém  Filtres"

#: src/xz/list.c:871 src/xz/list.c:1046
#, c-format
msgid "  Memory needed:      %s MiB\n"
msgstr "  Mémoire nécessaire :              %s MiB\n"

#: src/xz/list.c:873 src/xz/list.c:1048
#, c-format
msgid "  Sizes in headers:   %s\n"
msgstr "  Tailles stockées dans l'en-tête : %s\n"

#: src/xz/list.c:874 src/xz/list.c:1049
msgid "Yes"
msgstr "Oui"

#: src/xz/list.c:874 src/xz/list.c:1049
msgid "No"
msgstr "Non"

#: src/xz/list.c:875 src/xz/list.c:1050
#, c-format
msgid "  Minimum XZ Utils version: %s\n"
msgstr "  Version minimale de XZ Utils : %s\n"

#. TRANSLATORS: %s is an integer. Only the plural form of this
#. message is used (e.g. "2 files"). Test with "xz -l foo.xz bar.xz".
#: src/xz/list.c:1025
#, c-format
msgid "%s file\n"
msgid_plural "%s files\n"
msgstr[0] "%s fichier\n"
msgstr[1] "%s fichiers\n"

#: src/xz/list.c:1038
msgid "Totals:"
msgstr "Totaux :"

#: src/xz/list.c:1039
#, c-format
msgid "  Number of files:    %s\n"
msgstr "  Nombre de fichiers : %s\n"

#: src/xz/list.c:1114
msgid "--list works only on .xz files (--format=xz or --format=auto)"
msgstr "--list ne marche que sur les fichiers .xz (--format=xz ou --format=auto)"

#: src/xz/list.c:1120
msgid "--list does not support reading from standard input"
msgstr "--list est incompatible avec la lecture sur l'entrée standard"

#: src/xz/main.c:89
#, c-format
msgid "%s: Error reading filenames: %s"
msgstr "%s : Erreur lors de la lecture des noms de fichiers : %s"

#: src/xz/main.c:96
#, c-format
msgid "%s: Unexpected end of input when reading filenames"
msgstr "%s : Fin des données inattendue lors de la lecture des noms de fichiers"

#: src/xz/main.c:120
#, c-format
msgid "%s: Null character found when reading filenames; maybe you meant to use `--files0' instead of `--files'?"
msgstr "%s : Caractère NULL détecté lors de la lecture des noms de fichiers ; peut-être pensiez-vous à `--files0' plutot qu'a `--files' ?"

#: src/xz/main.c:174
msgid "Compression and decompression with --robot are not supported yet."
msgstr "La compression et la décompression ne marchent pas encore avec --robot."

#: src/xz/main.c:231
msgid "Cannot read data from standard input when reading filenames from standard input"
msgstr "Impossible de lire à la fois les données et les noms de fichiers depuis l'entrée standard"

#. TRANSLATORS: This is the program name in the beginning
#. of the line in messages. Usually it becomes "xz: ".
#. This is a translatable string because French needs
#. a space before a colon.
#: src/xz/message.c:733
#, c-format
msgid "%s: "
msgstr "%s : "

#: src/xz/message.c:796 src/xz/message.c:846
msgid "Internal error (bug)"
msgstr "Erreur interne (bug)"

#: src/xz/message.c:803
msgid "Cannot establish signal handlers"
msgstr "Impossible d'installer le gestionnaire de signaux"

#: src/xz/message.c:812
msgid "No integrity check; not verifying file integrity"
msgstr "Pas de données de vérification d'intégrité ; vérification non effectuée"

#: src/xz/message.c:815
msgid "Unsupported type of integrity check; not verifying file integrity"
msgstr "Méthode de vérification d'intégrité non prise en charge ; vérification non effectuée"

#: src/xz/message.c:822
msgid "Memory usage limit reached"
msgstr "Limite d'utilisation mémoire atteinte"

#: src/xz/message.c:825
msgid "File format not recognized"
msgstr "Format de fichier inconnu"

#: src/xz/message.c:828
msgid "Unsupported options"
msgstr "Options non prises en charge"

#: src/xz/message.c:831
msgid "Compressed data is corrupt"
msgstr "Les données compressées sont corrompues"

#: src/xz/message.c:834
msgid "Unexpected end of input"
msgstr "Fin des données inattendue "

#: src/xz/message.c:867
#, c-format
msgid "%s MiB of memory is required. The limiter is disabled."
msgstr "%s MiB de mémoire sont nécessaires. La limite est désactivée."

#: src/xz/message.c:895
#, c-format
msgid "%s MiB of memory is required. The limit is %s."
msgstr "%s MiB de mémoire sont nécessaires, la limite étant %s."

#: src/xz/message.c:1062
#, c-format
msgid "%s: Filter chain: %s\n"
msgstr "%s : Enchaînement de filtres : %s\n"

#: src/xz/message.c:1072
#, c-format
msgid "Try `%s --help' for more information."
msgstr "Utilisez `%s --help' pour plus d'informations."

#: src/xz/message.c:1098
#, c-format
msgid ""
"Usage: %s [OPTION]... [FILE]...\n"
"Compress or decompress FILEs in the .xz format.\n"
"\n"
msgstr ""
"Utilisation : %s [OPTION]... [FICHIER]...\n"
"Compresse ou decompresse FICHIER(s) au format .xz.\n"
"\n"

#: src/xz/message.c:1105
msgid "Mandatory arguments to long options are mandatory for short options too.\n"
msgstr ""
"Les arguments obligatoires pour les options longues le sont aussi pour les\n"
"options courtes.\n"

#: src/xz/message.c:1109
msgid " Operation mode:\n"
msgstr " Mode d'opération :\n"

#: src/xz/message.c:1112
msgid ""
"  -z, --compress      force compression\n"
"  -d, --decompress    force decompression\n"
"  -t, --test          test compressed file integrity\n"
"  -l, --list          list information about .xz files"
msgstr ""
"  -z, --compress      forcer la compression\n"
"  -d, --decompress    forcer la décompression\n"
"  -t, --test          tester l'intégrité du fichier compressé\n"
"  -l, --list          lister les informations à propos des fichiers .xz"

#: src/xz/message.c:1118
msgid ""
"\n"
" Operation modifiers:\n"
msgstr ""
"\n"
" Modifictauers :\n"

#: src/xz/message.c:1121
msgid ""
"  -k, --keep          keep (don't delete) input files\n"
"  -f, --force         force overwrite of output file and (de)compress links\n"
"  -c, --stdout        write to standard output and don't delete input files"
msgstr ""
"  -k, --keep          ne pas supprimer les fichiers d'entrée (\"keep\")\n"
"  -f, --force         forcer l'écrasement du fichier de sortie et\n"
"                      (dé)compresser les liens\n"
"  -c, --stdout        écrire sur la sortie standard et ne pas supprimer les\n"
"                      fichiers d'entrée"

#: src/xz/message.c:1127
msgid ""
"      --single-stream decompress only the first stream, and silently\n"
"                      ignore possible remaining input data"
msgstr ""
"      --single-stream décompresser uniquement le premier flux et ignorer\n"
"                      silenciseusement les données éventuellement restantes"

#: src/xz/message.c:1130
msgid ""
"      --no-sparse     do not create sparse files when decompressing\n"
"  -S, --suffix=.SUF   use the suffix `.SUF' on compressed files\n"
"      --files[=FILE]  read filenames to process from FILE; if FILE is\n"
"                      omitted, filenames are read from the standard input;\n"
"                      filenames must be terminated with the newline character\n"
"      --files0[=FILE] like --files but use the null character as terminator"
msgstr ""
"      --no-sparse     ne pas créer de 'sparse file' lors de la décompression\n"
"  -S, --suffix=.SUF   utiliser le suffixe `.SUF' pour les fichiers compressés\n"
"      --files[=FILE]  lire les fichiers sur lesquels opérer depuis FILE ; si\n"
"                      FILE est omis, ceux-ci sont lus depuis l'entrée standard\n"
"                      et doivent être suivis d'un caractère de retour à la ligne\n"
"      --files0[=FILE] comme --files mais avec un caractère null comme séparateur"

#: src/xz/message.c:1139
msgid ""
"\n"
" Basic file format and compression options:\n"
msgstr ""
"\n"
" Options basiques de format de fichier et de compression :\n"

#: src/xz/message.c:1141
msgid ""
"  -F, --format=FMT    file format to encode or decode; possible values are\n"
"                      `auto' (default), `xz', `lzma', and `raw'\n"
"  -C, --check=CHECK   integrity check type: `none' (use with caution),\n"
"                      `crc32', `crc64' (default), or `sha256'"
msgstr ""
"  -F, --format=FMT    format de fichier à encoder ou décoder ; les possibilités\n"
"                      sont : `auto' (par défaut), `xz', `lzma' et `raw'\n"
"  -C, --check=CHECK   type de vérification d'intégrité : `none' (à utiliser avec\n"
"                      précaution), `crc32', `crc64' (par défaut) ou `sha256'"

#: src/xz/message.c:1148
msgid ""
"  -0 ... -9           compression preset; default is 6; take compressor *and*\n"
"                      decompressor memory usage into account before using 7-9!"
msgstr ""
"  -0 ... -9           préréglage de compression ; 6 par défaut ; pensez à\n"
"                      l'utilisation mémoire du compresseur *et* du décompresseur\n"
"                      avant d'utiliser 7, 8 ou 9 !"

#: src/xz/message.c:1152
msgid ""
"  -e, --extreme       try to improve compression ratio by using more CPU time;\n"
"                      does not affect decompressor memory requirements"
msgstr ""
"  -e, --extreme       essayer d'améliorer la compression en utilisant davantage\n"
"                      de temps processeur sans affecter les besoins mémoire du\n"
"                      décompresseur"

#: src/xz/message.c:1158
msgid ""
"      --block-size=SIZE\n"
"                      when compressing to the .xz format, start a new block\n"
"                      after every SIZE bytes of input; 0=disabled (default)"
msgstr ""
"      --block-size=SIZE\n"
"                      pour une compression au format .xz, entamer un nouveau\n"
"                      bloc après SIZE octets d'entrée ; 0=désactivé (par défaut)"

#: src/xz/message.c:1163
#, fuzzy
msgid ""
"      --block-list=SIZES\n"
"                      when compressing to the .xz format, start a new block\n"
"                      after the given intervals of uncompressed data"
msgstr ""
"      --block-size=SIZE\n"
"                      pour une compression au format .xz, entamer un nouveau\n"
"                      bloc après SIZE octets d'entrée ; 0=désactivé (par défaut)"

#: src/xz/message.c:1167
#, no-c-format
msgid ""
"      --memlimit-compress=LIMIT\n"
"      --memlimit-decompress=LIMIT\n"
"  -M, --memlimit=LIMIT\n"
"                      set memory usage limit for compression, decompression,\n"
"                      or both; LIMIT is in bytes, % of RAM, or 0 for defaults"
msgstr ""
"      --memlimit-compress=LIMIT\n"
"      --memlimit-decompress=LIMIT\n"
"  -M, --memlimit=LIMIT\n"
"                      règle la limite d'utilisation mémoire pour la compression,\n"
"                      décompression ou les deux ; LIMIT est en octets, % de\n"
"                      RAM, ou 0 pour les valeurs par défaut"

#: src/xz/message.c:1174
msgid ""
"      --no-adjust     if compression settings exceed the memory usage limit,\n"
"                      give an error instead of adjusting the settings downwards"
msgstr ""
"      --no-adjust     si les réglages de compression dépassent la limite\n"
"                      d'utilisation mémoire, renvoyer une erreur plutôt que de\n"
"                      diminuer les réglages"

#: src/xz/message.c:1180
msgid ""
"\n"
" Custom filter chain for compression (alternative for using presets):"
msgstr ""
"\n"
" Enchaînement de filtres de compression personnalisé (au lieu des préréglages) :"

#: src/xz/message.c:1189
msgid ""
"\n"
"  --lzma1[=OPTS]      LZMA1 or LZMA2; OPTS is a comma-separated list of zero or\n"
"  --lzma2[=OPTS]      more of the following options (valid values; default):\n"
"                        preset=PRE reset options to a preset (0-9[e])\n"
"                        dict=NUM   dictionary size (4KiB - 1536MiB; 8MiB)\n"
"                        lc=NUM     number of literal context bits (0-4; 3)\n"
"                        lp=NUM     number of literal position bits (0-4; 0)\n"
"                        pb=NUM     number of position bits (0-4; 2)\n"
"                        mode=MODE  compression mode (fast, normal; normal)\n"
"                        nice=NUM   nice length of a match (2-273; 64)\n"
"                        mf=NAME    match finder (hc3, hc4, bt2, bt3, bt4; bt4)\n"
"                        depth=NUM  maximum search depth; 0=automatic (default)"
msgstr ""
"\n"
"  --lzma1[=OPTS]      LZMA1 ou LZMA2 ; OPTS est une liste de zéro ou plusieurs\n"
"  --lzma2[=OPTS]      options parmi les suivantes (vals. valides ; par défaut) :\n"
"                        preset=PRE remettre les options à un préréglage (0-9[e])\n"
"                        dict=NUM   taille dictionnaire (4KiB - 1536MiB ; 8MiB)\n"
"                        lc=NUM     nombre de 'literal context bits' (0-4 ; 3)\n"
"                        lp=NUM     nombre de 'literal position bits' (0-4 ; 0)\n"
"                        pb=NUM     nombre de 'position bits' (0-4 ; 2)\n"
"                        mode=MODE  mode de compression (fast, normal ; normal)\n"
"                        nice=NUM   nice length of a match (2-273; 64)\n"
"                        mf=NAME    'match finder' (hc3, hc4, bt2, bt3, bt4; bt4)\n"
"                        depth=NUM  profondeur de recherche maximale ;\n"
"                                      0=automatique (par défaut)"

#: src/xz/message.c:1204
msgid ""
"\n"
"  --x86[=OPTS]        x86 BCJ filter (32-bit and 64-bit)\n"
"  --powerpc[=OPTS]    PowerPC BCJ filter (big endian only)\n"
"  --ia64[=OPTS]       IA-64 (Itanium) BCJ filter\n"
"  --arm[=OPTS]        ARM BCJ filter (little endian only)\n"
"  --armthumb[=OPTS]   ARM-Thumb BCJ filter (little endian only)\n"
"  --sparc[=OPTS]      SPARC BCJ filter\n"
"                      Valid OPTS for all BCJ filters:\n"
"                        start=NUM  start offset for conversions (default=0)"
msgstr ""
"\n"
"  --x86[=OPTS]        filtre BCJ x86 (32-bit et 64-bit)\n"
"  --powerpc[=OPTS]    filtre BCJ PowerPC ('big endian' uniquement)\n"
"  --ia64[=OPTS]       filtre BCJ IA-64 (Itanium)\n"
"  --arm[=OPTS]        filtre BCJ ARM ('little endian' uniquement)\n"
"  --armthumb[=OPTS]   filtre BCJ ARM-Thumb ('little endian' uniquement)\n"
"  --sparc[=OPTS]      filtre BCJ SPARC\n"
"                      OPTS valides pour tous les filtres BCJ :\n"
"                        start=NUM  start offset for conversions (default=0)"

#: src/xz/message.c:1216
msgid ""
"\n"
"  --delta[=OPTS]      Delta filter; valid OPTS (valid values; default):\n"
"                        dist=NUM   distance between bytes being subtracted\n"
"                                   from each other (1-256; 1)"
msgstr ""
"\n"
"  --delta[=OPTS]      Filtre delta ; OPTS valides (vals. valides ; par défaut) :\n"
"                        dist=NUM   distance entre les octets soustraits\n"
"                                   les uns aux autres (1-256 ; 1)"

#: src/xz/message.c:1224
msgid ""
"\n"
" Other options:\n"
msgstr ""
"\n"
" Autres options :\n"

#: src/xz/message.c:1227
msgid ""
"  -q, --quiet         suppress warnings; specify twice to suppress errors too\n"
"  -v, --verbose       be verbose; specify twice for even more verbose"
msgstr ""
"  -q, --quiet         supprimer les avertissemnts ; spécifier deux fois pour\n"
"                      aussi supprimer les erreur\n"
"  -v, --verbose       être bavard ; spécifier deux fois pour l'être davantage"

#: src/xz/message.c:1232
msgid "  -Q, --no-warn       make warnings not affect the exit status"
msgstr "  -Q, --no-warn       les avertissements ne modifient pas le code de sortie"

#: src/xz/message.c:1234
msgid "      --robot         use machine-parsable messages (useful for scripts)"
msgstr ""
"      --robot         utiliser des messages lisibles par un programme\n"
"                      (utile pour les scripts)"

#: src/xz/message.c:1237
msgid ""
"      --info-memory   display the total amount of RAM and the currently active\n"
"                      memory usage limits, and exit"
msgstr ""
"      --info-memory   affiche la quantité totale de RAM et la limite actuelle\n"
"                      en mémoire puis quitte"

#: src/xz/message.c:1240
msgid ""
"  -h, --help          display the short help (lists only the basic options)\n"
"  -H, --long-help     display this long help and exit"
msgstr ""
"  -h, --help          affiche l'aide courte (ne liste que les options de base)\n"
"  -H, --long-help     affiche l'aide longue (ceci) puis quitte"

#: src/xz/message.c:1244
msgid ""
"  -h, --help          display this short help and exit\n"
"  -H, --long-help     display the long help (lists also the advanced options)"
msgstr ""
"  -h, --help          affiche l'aide courte (ceci) puis quitte\n"
"  -H, --long-help     affiche l'aide longue (liste aussi les options avancées)"

#: src/xz/message.c:1249
msgid "  -V, --version       display the version number and exit"
msgstr "  -V, --version       affiche le numéro de version puis quitte"

#: src/xz/message.c:1251
msgid ""
"\n"
"With no FILE, or when FILE is -, read standard input.\n"
msgstr ""
"\n"
"Sans FILE ou quand FILE est -, lire l'entrée standard.\n"

#. TRANSLATORS: This message indicates the bug reporting address
#. for this package. Please add _another line_ saying
#. "Report translation bugs to <...>\n" with the email or WWW
#. address for translation bugs. Thanks.
#: src/xz/message.c:1257
#, c-format
msgid "Report bugs to <%s> (in English or Finnish).\n"
msgstr ""
"Signaler les bogues à <%s> (en anglais ou en finlandais).\n"
"Signaler les bogues de traduction à <camaradetux@gmail.com>.\n"

#: src/xz/message.c:1259
#, c-format
msgid "%s home page: <%s>\n"
msgstr "%s page du projet : <%s>\n"

#: src/xz/options.c:86
#, c-format
msgid "%s: Options must be `name=value' pairs separated with commas"
msgstr "%s: Les options doivent être des paires `nom=valeur' séparées par des virgules"

#: src/xz/options.c:93
#, c-format
msgid "%s: Invalid option name"
msgstr "%s : Nom d'option invalide"

#: src/xz/options.c:113
#, c-format
msgid "%s: Invalid option value"
msgstr "%s : Valeur d'option invalide"

#: src/xz/options.c:247
#, c-format
msgid "Unsupported LZMA1/LZMA2 preset: %s"
msgstr "Préréglage LZMA1/LZMA2 non pris en charge : %s"

#: src/xz/options.c:355
msgid "The sum of lc and lp must not exceed 4"
msgstr "La somme de lc et lp ne doit pas dépasser 4"

#: src/xz/options.c:359
#, c-format
msgid "The selected match finder requires at least nice=%<PRIu32>"
msgstr "Le `match finder' choisi nécessite au moins nice=%<PRIu32>"

#: src/xz/suffix.c:133 src/xz/suffix.c:258
#, c-format
msgid "%s: With --format=raw, --suffix=.SUF is required unless writing to stdout"
msgstr "%s : Avec --format=raw, --suffix=.SUF est nécessaire sauf lors de l'écriture vers stdout"

#: src/xz/suffix.c:164
#, c-format
msgid "%s: Filename has an unknown suffix, skipping"
msgstr "%s : Le fichier a un suffixe inconnu, ignoré"

#: src/xz/suffix.c:185
#, c-format
msgid "%s: File already has `%s' suffix, skipping"
msgstr "%s : Le fichier a déjà le suffixe '%s', ignoré"

#: src/xz/suffix.c:393
#, c-format
msgid "%s: Invalid filename suffix"
msgstr "%s: Suffixe de nom de fichier invalide"

#: src/xz/util.c:61
#, c-format
msgid "%s: Value is not a non-negative decimal integer"
msgstr "%s : La valeur n'est pas un entier décimal non négatif"

#: src/xz/util.c:103
#, c-format
msgid "%s: Invalid multiplier suffix"
msgstr "%s : Suffixe multiplicateur invalide"

#: src/xz/util.c:105
msgid "Valid suffixes are `KiB' (2^10), `MiB' (2^20), and `GiB' (2^30)."
msgstr "Les suffixes valides sont 'KiB' (2^10), 'MiB' (2^20) et 'GiB' (2^30)."

#: src/xz/util.c:122
#, c-format
msgid "Value of the option `%s' must be in the range [%<PRIu64>, %<PRIu64>]"
msgstr "La valeur de l'option '%s' doit être inclue entre %<PRIu64> et %<PRIu64>"

#: src/xz/util.c:247
msgid "Empty filename, skipping"
msgstr "Nom de fichier vide, ignoré"

#: src/xz/util.c:261
msgid "Compressed data cannot be read from a terminal"
msgstr "Les données compressées ne peuvent pas être lues depuis un terminal"

#: src/xz/util.c:274
msgid "Compressed data cannot be written to a terminal"
msgstr "Les données compressées ne peuvent pas être écrites dans un terminal"

#: src/common/tuklib_exit.c:39
msgid "Writing to standard output failed"
msgstr "Impossible d'écrire vers la sortie standard"

#: src/common/tuklib_exit.c:42
msgid "Unknown error"
msgstr "Erreur inconnue"
