summaryrefslogtreecommitdiffstats
path: root/po/fr/man3/getsubopt.3.po
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-15 19:43:11 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-15 19:43:11 +0000
commitfc22b3d6507c6745911b9dfcc68f1e665ae13dbc (patch)
treece1e3bce06471410239a6f41282e328770aa404a /po/fr/man3/getsubopt.3.po
parentInitial commit. (diff)
downloadmanpages-l10n-fc22b3d6507c6745911b9dfcc68f1e665ae13dbc.tar.xz
manpages-l10n-fc22b3d6507c6745911b9dfcc68f1e665ae13dbc.zip
Adding upstream version 4.22.0.upstream/4.22.0
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'po/fr/man3/getsubopt.3.po')
-rw-r--r--po/fr/man3/getsubopt.3.po847
1 files changed, 847 insertions, 0 deletions
diff --git a/po/fr/man3/getsubopt.3.po b/po/fr/man3/getsubopt.3.po
new file mode 100644
index 00000000..e1bc29e4
--- /dev/null
+++ b/po/fr/man3/getsubopt.3.po
@@ -0,0 +1,847 @@
+# French translation of manpages
+# This file is distributed under the same license as the manpages-l10n package.
+# Copyright © of this file:
+# Christophe Blaess <https://www.blaess.fr/christophe/>, 1996-2003.
+# Stéphan Rafin <stephan.rafin@laposte.net>, 2002.
+# Thierry Vignaud <tvignaud@mandriva.com>, 1999, 2002.
+# François Micaux, 2002.
+# Alain Portal <aportal@univ-montp2.fr>, 2003-2008.
+# Jean-Philippe Guérard <fevrier@tigreraye.org>, 2005-2006.
+# Jean-Luc Coulon (f5ibh) <jean-luc.coulon@wanadoo.fr>, 2006-2007.
+# Julien Cristau <jcristau@debian.org>, 2006-2007.
+# Thomas Huriaux <thomas.huriaux@gmail.com>, 2006-2008.
+# Nicolas François <nicolas.francois@centraliens.net>, 2006-2008.
+# Florentin Duneau <fduneau@gmail.com>, 2006-2010.
+# Simon Paillard <simon.paillard@resel.enst-bretagne.fr>, 2006, 2013.
+# Denis Barbier <barbier@debian.org>, 2006, 2010.
+# David Prévot <david@tilapin.org>, 2010, 2012-2014.
+# Jean-Pierre Giraud <jean-pierregiraud@neuf.fr>, 2024.
+msgid ""
+msgstr ""
+"Project-Id-Version: manpages-l10n 4.21.0\n"
+"POT-Creation-Date: 2024-03-01 16:57+0100\n"
+"PO-Revision-Date: 2024-03-14 16:42+0100\n"
+"Last-Translator: Jean-Pierre Giraud <jean-pierregiraud@neuf.fr>\n"
+"Language-Team: French <debian-l10n-french@lists.debian.org>\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;\n"
+"X-Generator: Lokalize 22.12.3\n"
+
+#. type: TH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "getsubopt"
+msgstr "getsubopt"
+
+#. type: TH
+#: archlinux fedora-40 fedora-rawhide mageia-cauldron
+#, no-wrap
+msgid "2023-10-31"
+msgstr "31 octobre 2023"
+
+#. type: TH
+#: archlinux fedora-40 fedora-rawhide mageia-cauldron
+#, no-wrap
+msgid "Linux man-pages 6.06"
+msgstr "Pages du manuel de Linux 6.06"
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "NAME"
+msgstr "NOM"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "getsubopt - parse suboption arguments from a string"
+msgstr "getsubopt – Parcourir les arguments des sous-options depuis une chaîne"
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "LIBRARY"
+msgstr "BIBLIOTHÈQUE"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "Standard C library (I<libc>, I<-lc>)"
+msgstr "Bibliothèque C standard (I<libc>, I<-lc>)"
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "SYNOPSIS"
+msgstr "SYNOPSIS"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<#include E<lt>stdlib.hE<gt>>\n"
+msgstr "B<#include E<lt>stdlib.hE<gt>>\n"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid ""
+"B<int getsubopt(char **restrict >I<optionp>B<, char *const *restrict >I<tokens>B<,>\n"
+"B< char **restrict >I<valuep>B<);>\n"
+msgstr ""
+"B<int getsubopt(char **restrict >I<optionp>B<, char *const *restrict >I<tokens>B<,>\n"
+"B< char **restrict >I<valuep>B<);>\n"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Feature Test Macro Requirements for glibc (see B<feature_test_macros>(7)):"
+msgstr ""
+"Exigences de macros de test de fonctionnalités pour la glibc (consulter "
+"B<feature_test_macros>(7)) :"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "B<getsubopt>():"
+msgstr "B<getsubopt>() :"
+
+#. || _XOPEN_SOURCE && _XOPEN_SOURCE_EXTENDED
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid ""
+" _XOPEN_SOURCE E<gt>= 500\n"
+" || /* Since glibc 2.12: */ _POSIX_C_SOURCE E<gt>= 200809L\n"
+msgstr ""
+" _XOPEN_SOURCE E<gt>= 500\n"
+" || /* Depuis la glibc 2.12 : */ _POSIX_C_SOURCE E<gt>= 200809L\n"
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "DESCRIPTION"
+msgstr "DESCRIPTION"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"B<getsubopt>() parses the list of comma-separated suboptions provided in "
+"I<optionp>. (Such a suboption list is typically produced when B<getopt>(3) "
+"is used to parse a command line; see for example the I<-o> option of "
+"B<mount>(8).) Each suboption may include an associated value, which is "
+"separated from the suboption name by an equal sign. The following is an "
+"example of the kind of string that might be passed in I<optionp>:"
+msgstr ""
+"B<getsubopt>() parcourt la liste des sous-options séparées par des virgules "
+"fournie dans I<optionp> (une liste de sous-options est typiquement créée "
+"lorsque B<getopt>(3) est utilisée pour parcourir une ligne de commande\\ ; "
+"consultez par exemple l'option I<-o> de B<mount>(8)). Chaque sous-option "
+"peut être associée à une valeur qui est séparée de son nom par un signe "
+"égal. La suite est un exemple de ce type de chaîne qui peut être passé à "
+"I<optionp>\\ :"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<ro,name=xyz>\n"
+msgstr "B<ro,name=xyz>\n"
+
+# NOTE: doivent être des chaînes distinctes, terminées par un caractère nul,
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The I<tokens> argument is a pointer to a NULL-terminated array of pointers "
+"to the tokens that B<getsubopt>() will look for in I<optionp>. The tokens "
+"should be distinct, null-terminated strings containing at least one "
+"character, with no embedded equal signs or commas."
+msgstr ""
+"L'argument I<tokens> est un pointeur vers un tableau de pointeurs (terminé "
+"par NULL) vers les marqueurs que B<getsubopt>() recherche dans I<optionp>. "
+"Les marqueurs doivent être distincts, contenant des chaînes terminées par un "
+"caractère nul d'au moins un caractère, sans signe égal ou virgule."
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Each call to B<getsubopt>() returns information about the next unprocessed "
+"suboption in I<optionp>. The first equal sign in a suboption (if any) is "
+"interpreted as a separator between the name and the value of that "
+"suboption. The value extends to the next comma, or (for the last suboption) "
+"to the end of the string. If the name of the suboption matches a known name "
+"from I<tokens>, and a value string was found, B<getsubopt>() sets "
+"I<*valuep> to the address of that string. The first comma in I<optionp> is "
+"overwritten with a null byte, so I<*valuep> is precisely the \"value "
+"string\" for that suboption."
+msgstr ""
+"Chaque appel à B<getsubopt>() renvoie une information sur la prochaine sous-"
+"option contenue dans I<optionp> qui n'a pas été traitée. Le premier signal "
+"égal (s'il existe) est interprété comme un séparateur entre un nom et une "
+"valeur de sous-option. La valeur se termine à la prochaine virgule ou (pour "
+"la dernière sous-option) à la fin de la chaîne. Si le nom d'une sous-option "
+"correspond à un nom de I<tokens> et qu'une chaîne de valeur est trouvée, "
+"B<getsubopt>() définit I<*valuep> à l'adresse de cette chaîne. La première "
+"virgule in I<optionp> est surpassée par un octet nul, ainsi I<*valuep> est "
+"exactement «\\ la chaîne de valeur\\ » de cette sous-option."
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"If the suboption is recognized, but no value string was found, I<*valuep> is "
+"set to NULL."
+msgstr ""
+"Si la sous-option est reconnue, mais qu'aucune chaîne de valeur n'existe, "
+"I<*valuep> est défini à NULL."
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"When B<getsubopt>() returns, I<optionp> points to the next suboption, or to "
+"the null byte (\\[aq]\\e0\\[aq]) at the end of the string if the last "
+"suboption was just processed."
+msgstr ""
+"Lorsque B<getsubopt>() renvoie, I<optionp> pointe vers la prochaine sous-"
+"option, ou vers l'octet nul (« \\e0 ») en fin de chaîne, si la dernière sous-"
+"option vient juste d'être traitée."
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "RETURN VALUE"
+msgstr "VALEUR RENVOYÉE"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"If the first suboption in I<optionp> is recognized, B<getsubopt>() returns "
+"the index of the matching suboption element in I<tokens>. Otherwise, -1 is "
+"returned and I<*valuep> is the entire I<name>B<[=>I<value>B<]> string."
+msgstr ""
+"Si la première sous-option de I<optionp> est reconnue, B<getsubopt>() "
+"renvoie l'index de l'élément de I<tokens> correspondant à la sous-option. "
+"Sinon, -1 est renvoyé et I<*valuep> correspond à la chaîne "
+"I<nom>B<[=>I<valeur>B<]>."
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Since I<*optionp> is changed, the first suboption before the call to "
+"B<getsubopt>() is not (necessarily) the same as the first suboption after "
+"B<getsubopt>()."
+msgstr ""
+"Puisque I<*optionp> est modifié, la première sous-option avant l'appel à "
+"B<getsubopt>() n'est pas nécessairement la même qu'après."
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "ATTRIBUTES"
+msgstr "ATTRIBUTS"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"For an explanation of the terms used in this section, see B<attributes>(7)."
+msgstr ""
+"Pour une explication des termes utilisés dans cette section, consulter "
+"B<attributes>(7)."
+
+#. type: tbl table
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "Interface"
+msgstr "Interface"
+
+#. type: tbl table
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "Attribute"
+msgstr "Attribut"
+
+#. type: tbl table
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "Value"
+msgstr "Valeur"
+
+#. type: tbl table
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
+#, no-wrap
+msgid ".na\n"
+msgstr ".na\n"
+
+#. type: tbl table
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
+#, no-wrap
+msgid ".nh\n"
+msgstr ".nh\n"
+
+#. type: tbl table
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<getsubopt>()"
+msgstr "B<getsubopt>()"
+
+#. type: tbl table
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "Thread safety"
+msgstr "Sécurité des threads"
+
+#. type: tbl table
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "MT-Safe"
+msgstr "MT-Safe"
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "STANDARDS"
+msgstr "STANDARDS"
+
+#. type: Plain text
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-leap-15-6 opensuse-tumbleweed
+msgid "POSIX.1-2008."
+msgstr "POSIX.1-2008."
+
+#. type: SH
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "HISTORY"
+msgstr "HISTORIQUE"
+
+#. type: Plain text
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-leap-15-6 opensuse-tumbleweed
+msgid "POSIX.1-2001."
+msgstr "POSIX.1-2001."
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "NOTES"
+msgstr "NOTES"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Since B<getsubopt>() overwrites any commas it finds in the string "
+"I<*optionp>, that string must be writable; it cannot be a string constant."
+msgstr ""
+"Puisque B<getsubopt>() réécrit toutes les virgules trouvées dans la chaîne "
+"I<*optionp>, cette chaîne doit être accessible en écriture, elle ne peut pas "
+"être une chaîne constante."
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "EXAMPLES"
+msgstr "EXEMPLES"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "The following program expects suboptions following a \"-o\" option."
+msgstr ""
+"Le programme suivant attend des sous-options après l'option «\\ -o\\ »."
+
+#. type: Plain text
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
+#, no-wrap
+msgid ""
+"#define _XOPEN_SOURCE 500\n"
+"#include E<lt>stdio.hE<gt>\n"
+"#include E<lt>stdlib.hE<gt>\n"
+"\\&\n"
+"#include E<lt>assert.hE<gt>\n"
+"\\&\n"
+"int\n"
+"main(int argc, char *argv[])\n"
+"{\n"
+" enum {\n"
+" RO_OPT = 0,\n"
+" RW_OPT,\n"
+" NAME_OPT\n"
+" };\n"
+" char *const token[] = {\n"
+" [RO_OPT] = \"ro\",\n"
+" [RW_OPT] = \"rw\",\n"
+" [NAME_OPT] = \"name\",\n"
+" NULL\n"
+" };\n"
+" char *subopts;\n"
+" char *value;\n"
+" int opt;\n"
+"\\&\n"
+" int readonly = 0;\n"
+" int readwrite = 0;\n"
+" char *name = NULL;\n"
+" int errfnd = 0;\n"
+"\\&\n"
+" while ((opt = getopt(argc, argv, \"o:\")) != -1) {\n"
+" switch (opt) {\n"
+" case \\[aq]o\\[aq]:\n"
+" subopts = optarg;\n"
+" while (*subopts != \\[aq]\\e0\\[aq] && !errfnd) {\n"
+"\\&\n"
+" switch (getsubopt(&subopts, token, &value)) {\n"
+" case RO_OPT:\n"
+" readonly = 1;\n"
+" break;\n"
+"\\&\n"
+" case RW_OPT:\n"
+" readwrite = 1;\n"
+" break;\n"
+"\\&\n"
+" case NAME_OPT:\n"
+" if (value == NULL) {\n"
+" fprintf(stderr,\n"
+" \"Missing value for suboption \\[aq]%s\\[aq]\\en\",\n"
+" token[NAME_OPT]);\n"
+" errfnd = 1;\n"
+" continue;\n"
+" }\n"
+"\\&\n"
+" name = value;\n"
+" break;\n"
+"\\&\n"
+" default:\n"
+" fprintf(stderr,\n"
+" \"No match found for token: /%s/\\en\", value);\n"
+" errfnd = 1;\n"
+" break;\n"
+" }\n"
+" }\n"
+" if (readwrite && readonly) {\n"
+" fprintf(stderr,\n"
+" \"Only one of \\[aq]%s\\[aq] and \\[aq]%s\\[aq] can be specified\\en\",\n"
+" token[RO_OPT], token[RW_OPT]);\n"
+" errfnd = 1;\n"
+" }\n"
+" break;\n"
+"\\&\n"
+" default:\n"
+" errfnd = 1;\n"
+" }\n"
+" }\n"
+"\\&\n"
+" if (errfnd || argc == 1) {\n"
+" fprintf(stderr, \"\\enUsage: %s -o E<lt>suboptstringE<gt>\\en\", argv[0]);\n"
+" fprintf(stderr,\n"
+" \"suboptions are \\[aq]ro\\[aq], \\[aq]rw\\[aq], and \\[aq]name=E<lt>valueE<gt>\\[aq]\\en\");\n"
+" exit(EXIT_FAILURE);\n"
+" }\n"
+"\\&\n"
+" /* Remainder of program... */\n"
+"\\&\n"
+" exit(EXIT_SUCCESS);\n"
+"}\n"
+msgstr ""
+"#define _XOPEN_SOURCE 500\n"
+"#include E<lt>stdio.hE<gt>\n"
+"#include E<lt>stdlib.hE<gt>\n"
+"\\&\n"
+"#include E<lt>assert.hE<gt>\n"
+"\\&\n"
+"int\n"
+"main(int argc, char *argv[])\n"
+"{\n"
+" enum {\n"
+" RO_OPT = 0,\n"
+" RW_OPT,\n"
+" NAME_OPT\n"
+" };\n"
+" char *const token[] = {\n"
+" [RO_OPT] = \"ro\",\n"
+" [RW_OPT] = \"rw\",\n"
+" [NAME_OPT] = \"name\",\n"
+" NULL\n"
+" };\n"
+" char *subopts;\n"
+" char *value;\n"
+" int opt;\n"
+"\\&\n"
+" int readonly = 0;\n"
+" int readwrite = 0;\n"
+" char *name = NULL;\n"
+" int errfnd = 0;\n"
+"\\&\n"
+" while ((opt = getopt(argc, argv, \"o:\")) != -1) {\n"
+" switch (opt) {\n"
+" case \\[aq]o\\[aq]:\n"
+" subopts = optarg;\n"
+" while (*subopts != \\[aq]\\e0\\[aq] && !errfnd) {\n"
+"\\&\n"
+" switch (getsubopt(&subopts, token, &value)) {\n"
+" case RO_OPT:\n"
+" readonly = 1;\n"
+" break;\n"
+"\\&\n"
+" case RW_OPT:\n"
+" readwrite = 1;\n"
+" break;\n"
+"\\&\n"
+" case NAME_OPT:\n"
+" if (value == NULL) {\n"
+" fprintf(stderr,\n"
+" \"Valeur absente pour la sous-option \\[aq]%s\\[aq]\\en\",\n"
+" token[NAME_OPT]);\n"
+" errfnd = 1;\n"
+" continue;\n"
+" }\n"
+"\\&\n"
+" name = value;\n"
+" break;\n"
+"\\&\n"
+" default:\n"
+" fprintf(stderr,\n"
+" \"Pas de correspondance trouvée pour le marqueur : /%s/\\en\", value);\n"
+" errfnd = 1;\n"
+" break;\n"
+" }\n"
+" }\n"
+" if (readwrite && readonly) {\n"
+" fprintf(stderr,\n"
+" \"Seul un de \\[aq]%s\\[aq] et \\[aq]%s\\[aq] peut être spécifié\\en\",\n"
+" token[RO_OPT], token[RW_OPT]);\n"
+" errfnd = 1;\n"
+" }\n"
+" break;\n"
+"\\&\n"
+" default:\n"
+" errfnd = 1;\n"
+" }\n"
+" }\n"
+"\\&\n"
+" if (errfnd || argc == 1) {\n"
+" fprintf(stderr, \"\\enUtilisation : %s -o E<lt>suboptstringE<gt>\\en\", argv[0]);\n"
+" fprintf(stderr,\n"
+" \"les sous-options sont \\[aq]ro\\[aq], \\[aq]rw\\[aq], and \\[aq]name=E<lt>valueE<gt>\\[aq]\\en\");\n"
+" exit(EXIT_FAILURE);\n"
+" }\n"
+"\\&\n"
+" /* Remainder of program... */\n"
+"\\&\n"
+" exit(EXIT_SUCCESS);\n"
+"}\n"
+
+#. SRC END
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "SEE ALSO"
+msgstr "VOIR AUSSI"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "B<getopt>(3)"
+msgstr "B<getopt>(3)"
+
+#. type: TH
+#: debian-bookworm
+#, no-wrap
+msgid "2023-02-05"
+msgstr "5 février 2023"
+
+#. type: TH
+#: debian-bookworm
+#, no-wrap
+msgid "Linux man-pages 6.03"
+msgstr "Pages du manuel de Linux 6.03"
+
+#. type: Plain text
+#: debian-bookworm
+msgid "POSIX.1-2001, POSIX.1-2008."
+msgstr "POSIX.1-2001, POSIX.1-2008."
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+"#define _XOPEN_SOURCE 500\n"
+"#include E<lt>stdio.hE<gt>\n"
+"#include E<lt>stdlib.hE<gt>\n"
+msgstr ""
+"#define _XOPEN_SOURCE 500\n"
+"#include E<lt>stdio.hE<gt>\n"
+"#include E<lt>stdlib.hE<gt>\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid "#include E<lt>assert.hE<gt>\n"
+msgstr "#include E<lt>assert.hE<gt>\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+"int\n"
+"main(int argc, char *argv[])\n"
+"{\n"
+" enum {\n"
+" RO_OPT = 0,\n"
+" RW_OPT,\n"
+" NAME_OPT\n"
+" };\n"
+" char *const token[] = {\n"
+" [RO_OPT] = \"ro\",\n"
+" [RW_OPT] = \"rw\",\n"
+" [NAME_OPT] = \"name\",\n"
+" NULL\n"
+" };\n"
+" char *subopts;\n"
+" char *value;\n"
+" int opt;\n"
+msgstr ""
+"int\n"
+"main(int argc, char *argv[])\n"
+"{\n"
+" enum {\n"
+" RO_OPT = 0,\n"
+" RW_OPT,\n"
+" NAME_OPT\n"
+" };\n"
+" char *const token[] = {\n"
+" [RO_OPT] = \"ro\",\n"
+" [RW_OPT] = \"rw\",\n"
+" [NAME_OPT] = \"name\",\n"
+" NULL\n"
+" };\n"
+" char *subopts;\n"
+" char *value;\n"
+" int opt;\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" int readonly = 0;\n"
+" int readwrite = 0;\n"
+" char *name = NULL;\n"
+" int errfnd = 0;\n"
+msgstr ""
+" int readonly = 0;\n"
+" int readwrite = 0;\n"
+" char *name = NULL;\n"
+" int errfnd = 0;\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" while ((opt = getopt(argc, argv, \"o:\")) != -1) {\n"
+" switch (opt) {\n"
+" case \\[aq]o\\[aq]:\n"
+" subopts = optarg;\n"
+" while (*subopts != \\[aq]\\e0\\[aq] && !errfnd) {\n"
+msgstr ""
+" while ((opt = getopt(argc, argv, \"o:\")) != -1) {\n"
+" switch (opt) {\n"
+" case \\[aq]o\\[aq]:\n"
+" subopts = optarg;\n"
+" while (*subopts != \\[aq]\\e0\\[aq] && !errfnd) {\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" switch (getsubopt(&subopts, token, &value)) {\n"
+" case RO_OPT:\n"
+" readonly = 1;\n"
+" break;\n"
+msgstr ""
+" switch (getsubopt(&subopts, token, &value)) {\n"
+" case RO_OPT:\n"
+" readonly = 1;\n"
+" break;\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" case RW_OPT:\n"
+" readwrite = 1;\n"
+" break;\n"
+msgstr ""
+" case RW_OPT:\n"
+" readwrite = 1;\n"
+" break;\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" case NAME_OPT:\n"
+" if (value == NULL) {\n"
+" fprintf(stderr,\n"
+" \"Missing value for suboption \\[aq]%s\\[aq]\\en\",\n"
+" token[NAME_OPT]);\n"
+" errfnd = 1;\n"
+" continue;\n"
+" }\n"
+msgstr ""
+" case NAME_OPT:\n"
+" if (value == NULL) {\n"
+" fprintf(stderr,\n"
+" \"Valeur absente pour la sous-option \\[aq]%s\\[aq]\\en\",\n"
+" token[NAME_OPT]);\n"
+" errfnd = 1;\n"
+" continue;\n"
+" }\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" name = value;\n"
+" break;\n"
+msgstr ""
+" name = value;\n"
+" break;\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" default:\n"
+" fprintf(stderr,\n"
+" \"No match found for token: /%s/\\en\", value);\n"
+" errfnd = 1;\n"
+" break;\n"
+" }\n"
+" }\n"
+" if (readwrite && readonly) {\n"
+" fprintf(stderr,\n"
+" \"Only one of \\[aq]%s\\[aq] and \\[aq]%s\\[aq] can be specified\\en\",\n"
+" token[RO_OPT], token[RW_OPT]);\n"
+" errfnd = 1;\n"
+" }\n"
+" break;\n"
+msgstr ""
+" default:\n"
+" fprintf(stderr,\n"
+" \"Pas de correspondance trouvée pour le marqueur : /%s/\\en\", value);\n"
+" errfnd = 1;\n"
+" break;\n"
+" }\n"
+" }\n"
+" if (readwrite && readonly) {\n"
+" fprintf(stderr,\n"
+" \"Seul un de \\[aq]%s\\[aq] et \\[aq]%s\\[aq] peut être spécifié\\en\",\n"
+" token[RO_OPT], token[RW_OPT]);\n"
+" errfnd = 1;\n"
+" }\n"
+" break;\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" default:\n"
+" errfnd = 1;\n"
+" }\n"
+" }\n"
+msgstr ""
+" default:\n"
+" errfnd = 1;\n"
+" }\n"
+" }\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" if (errfnd || argc == 1) {\n"
+" fprintf(stderr, \"\\enUsage: %s -o E<lt>suboptstringE<gt>\\en\", argv[0]);\n"
+" fprintf(stderr,\n"
+" \"suboptions are \\[aq]ro\\[aq], \\[aq]rw\\[aq], and \\[aq]name=E<lt>valueE<gt>\\[aq]\\en\");\n"
+" exit(EXIT_FAILURE);\n"
+" }\n"
+msgstr ""
+" if (errfnd || argc == 1) {\n"
+" fprintf(stderr, \"\\enUtilisation : %s -o E<lt>suboptstringE<gt>\\en\", argv[0]);\n"
+" fprintf(stderr,\n"
+" \"les sous-options sont \\[aq]ro\\[aq], \\[aq]rw\\[aq] et \\[aq]name=E<lt>valueE<gt>\\[aq]\\en\");\n"
+" exit(EXIT_FAILURE);\n"
+" }\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid " /* Remainder of program... */\n"
+msgstr " /* Remainder of program... */\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" exit(EXIT_SUCCESS);\n"
+"}\n"
+msgstr ""
+" exit(EXIT_SUCCESS);\n"
+"}\n"
+
+#. type: TH
+#: debian-unstable opensuse-tumbleweed
+#, no-wrap
+msgid "2023-07-20"
+msgstr "20 juillet 2023"
+
+#. type: TH
+#: debian-unstable opensuse-tumbleweed
+#, no-wrap
+msgid "Linux man-pages 6.05.01"
+msgstr "Pages du manuel de Linux 6.05.01"
+
+#. type: TH
+#: opensuse-leap-15-6
+#, no-wrap
+msgid "2023-03-30"
+msgstr "30 mars 2023"
+
+#. type: TH
+#: opensuse-leap-15-6
+#, no-wrap
+msgid "Linux man-pages 6.04"
+msgstr "Pages du manuel de Linux 6.04"