From d1e9ec6db78e8dbe7bd88ccfd353de602fe8f3c4 Mon Sep 17 00:00:00 2001
From: John Darrington
Date: Sun, 12 May 2013 17:46:15 +0200
Subject: [PATCH 1/5] Elaborate and update documentation on field constraints
---
doc/recutils.texi | 106 +++++---
po/fr.po | 848 +++++++++++++++++++---------------------------------
po/sr.po | 666 ++++++++++++++++--------------------------
po/uk.po | 860 +++++++++++++++++++----------------------------------
po/vi.po | 665 ++++++++++++++++-------------------------
5 files changed, 1187 insertions(+), 1958 deletions(-)
diff --git a/doc/recutils.texi b/doc/recutils.texi
index 7e62135..aeea9b9 100644
--- a/doc/recutils.texi
+++ b/doc/recutils.texi
@@ -2435,26 +2435,25 @@ violation, and will be reported by a checking tool.
@cindex @code{%mandatory}
@cindex mandatory fields
address@hidden restricting fields from records
-
-XXX
address@hidden requiring certain fields in records
address@hidden compulsory fields
-These special field names are used to restrict the fields that can
-appear in the records stored in a database. Their usage is:
+Sometimes, you want to make sure that @emph{every} record of a particular type
+contains certain fields.
+To do this, use the special field @code{%mandatory}.
+The usage is:
@example
%mandatory: @var{field1} @var{field2} @dots{} @var{fieldN}
-%prohibit: @var{field1} @var{field2} @dots{} @var{fieldN}
@end example
-
@noindent
-In both cases the lists of field names are separated by one or more
+The field names are separated by one or more
blank characters.
@cindex field, compulsory fields
@cindex field, mandatory fields
The fields listed in a @code{%mandatory} entry are
-mandatory; @ie{}, at least one field with this name shall be present
+non-optional; @ie{}, at least one field with this name shall be present
in any record of this kind.
@cindex integrity problems
Records violating this restriction are
@@ -2482,27 +2481,48 @@ Email: sales@@yoyod.com
Phone: +98 43434433
@end example
address@hidden
-Similarly, the fields listed in a @code{%prohibit} entry are
-forbidden; @ie{}, no field with this name should be present
-in any record of this kind. Again, records violating this restriction
-are invalid.
+A word of caution, however: In many situations, especially in day to day social
+interaction, it is common to find that certain information is simply unavailable.
+For example, although every person has a date of birth, some people will refuse
+to provide that information.
+
+It is probably wise therefore to avoid stipulating a field as mandatory, unless it is
+essential to the enterprise.
+Otherwise,
+a data entry clerk faced with this situation, will have to make the choice between
+dropping the entry entirely, or entering some fake data to keep the system happy.
-This can be useful when some field name is reserved for some future
-use. For example, if we want to make sure no @code{Telex} will ever
-be used in our contacts database, we would change the record
-descriptor as follows:
+
address@hidden Prohibited Fields
address@hidden Prohibited Fields
+
address@hidden @code{%prohibit}
address@hidden restricting fields from records
address@hidden field, forbidden fields
address@hidden prohibited fields
+
+The converse of @code{%mandatory} is @code{%prohibit}.
+Prohibited fields may not occur in @emph{any} record of the given type.
+The usage is:
@example
-%rec: Contact
-%mandatory: Name
-%prohibit: Telex
+%prohibit: @var{field1} @var{field2} @dots{} @var{fieldN}
@end example
address@hidden The field names are separated by one or more blank characters.
+
address@hidden
+Fields listed in a @code{%prohibit} entry are
+forbidden; @ie{}, no field with this name should be present
+in any record of this kind.
+Again, records violating this restriction
+are invalid.
@noindent
-Several @code{%mandatory} and/or @code{%prohibit} fields can appear in
-the same record descriptor. The set of mandatory or prohibited fields
-is the union of all the entries. For example, in the following
+Several @code{%prohibit} fields can appear in
+the same record descriptor.
+The set of prohibited fields
+is the union of all the entries.
+For example, in the following
database both @code{Id} and @code{id} are prohibited:
@example
@@ -2511,27 +2531,41 @@ database both @code{Id} and @code{id} are prohibited:
%prohibit: id
@end example
address@hidden Prohibited Fields
address@hidden Prohibited Fields
+One possible use case for prohibited fields arises
+when some field name is reserved for some future
+use.
+For example, if we were organising a sports competition, we would want
+competitors to register before the event.
+However a competitor's @code{result} should not and cannot be entered
+before the competition takes place.
+Initially then, we would change the record
+descriptor as follows:
address@hidden @code{%prohibit}
address@hidden restricting fields from records
address@hidden field, forbidden fields
address@hidden prohibited fields
address@hidden
+%rec: Contact
+%mandatory: Name
+%prohibit: result
address@hidden example
address@hidden
+At the start of the event, the @code{%mandatory} line can be deleted, to
+allow results to be entered.
-XXX
@node Arbitrary Constraints
@section Arbitrary Constraints
@cindex @code{%constraint}
@cindex restricting values of fields
-XXX the arbitrary constraints allow to define restrictions in the
-structure of the records based on the values of the fields, and
-the other way around.
+Occasionally @code{%mandatory} and @code{%prohibit} are just not flexible enough.
+We might, for instance, want to ensure that @emph{if} a field is present,
+then it must have a certain relationship to other fields.
+Or we might want to stipulate that only under certain conditions, a record contains
+a particular field.
-The @code{%constraint} special field is used to define constraints upon
-a field's value.
+To this end, recutils provides a way for arbitrary field constraints to be defined.
+These permit restrictions on the presence and/or value of fields, based upon the value or
+presence of other fields within that record.
+This is done using the @code{%constraint} special field.
Its usage is:
@example
diff --git a/po/fr.po b/po/fr.po
index c1d6189..d709ee9 100644
--- a/po/fr.po
+++ b/po/fr.po
@@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: GNU recutils 1.5\n"
"Report-Msgid-Bugs-To: address@hidden"
-"POT-Creation-Date: 2012-02-29 21:43+0100\n"
+"POT-Creation-Date: 2012-01-13 12:00+0100\n"
"PO-Revision-Date: 2012-01-30 20:16+0100\n"
"Last-Translator: Frédéric Marchal \n"
"Language-Team: French \n"
@@ -214,284 +214,232 @@ msgstr "le sous-processus %s a reçu le signal fatal %d"
msgid "memory exhausted"
msgstr "mémoire épuisée"
-#: src/rec-fex.c:379
+#: src/rec-fex.c:377
#, c-format
msgid "internal error: REC_FEX_MAX_ELEMS exceeded. Please report this.\n"
msgstr "erreur interne: REC_FEX_MAX_ELEMS dépassé. Merci de rapporter ceci.\n"
#: src/rec-int.c:172
-#, fuzzy, c-format
-msgid "%s: error: the number of records of type %s should be %zd.\n"
+#, c-format
+msgid "%s: error: the number of records of type %s shall be %zd.\n"
msgstr "%s: erreur: le nombre d'enregistrements de type %s sera %zd.\n"
#: src/rec-int.c:182
#, c-format
msgid "%s: error: too many records of type %s. Maximum allowed are %zd.\n"
-msgstr ""
-"%s: erreur: trop d'enregistrements de type %s. Le maximum permis est %zd.\n"
+msgstr "%s: erreur: trop d'enregistrements de type %s. Le maximum permis est %zd.\n"
#: src/rec-int.c:189
#, c-format
msgid "%s: error: too few records of type %s. Minimum allowed are %zd.\n"
-msgstr ""
-"%s: erreur: trop peu d'enregistrements de type %s. Le minimum permis est "
-"%zd.\n"
+msgstr "%s: erreur: trop peu d'enregistrements de type %s. Le minimum permis est %zd.\n"
-#: src/rec-int.c:350
+#: src/rec-int.c:305
+#, c-format
+msgid "%s:%s: warning: type %s collides with referred type %s in the rset %s.\n"
+msgstr "%s:%s: attention: le type %s entre en collision avec le type référé %s dans le rset %s.\n"
+
+#: src/rec-int.c:410
#, c-format
msgid "%s:%s: error: mandatory field '%s' not found in record\n"
-msgstr ""
-"%s:%s: erreur: champ obligatoire « %s » pas trouvé dans l'enregistrement\n"
+msgstr "%s:%s: erreur: champ obligatoire « %s » pas trouvé dans l'enregistrement\n"
-#: src/rec-int.c:401
+#: src/rec-int.c:463
#, c-format
msgid "%s:%s: error: field '%s' should be unique in this record\n"
-msgstr ""
-"%s:%s: erreur: le champ « %s » devrait être unique dans cet enregistrement\n"
+msgstr "%s:%s: erreur: le champ « %s » devrait être unique dans cet enregistrement\n"
-#: src/rec-int.c:452
+#: src/rec-int.c:516
#, c-format
msgid "%s:%s: error: prohibited field '%s' found in record\n"
msgstr "%s:%s erreur: champ prohibé « %s » rencontré dans l'enregistrement\n"
-#: src/rec-int.c:491
+#: src/rec-int.c:555
#, c-format
msgid "%s:%s: error: confidential field is not encrypted\n"
msgstr "%s:%s: erreur: le champ confidentiel n'est pas chiffré\n"
-#: src/rec-int.c:543
+#: src/rec-int.c:607
#, c-format
msgid "%s:%s: error: key field '%s' not found in record\n"
-msgstr ""
-"%s:%s: erreur: le champ clé « %s » n'est pas trouvé dans l'enregistrement\n"
+msgstr "%s:%s: erreur: le champ clé « %s » n'est pas trouvé dans l'enregistrement\n"
-#: src/rec-int.c:552
+#: src/rec-int.c:616
#, c-format
msgid "%s:%s: error: multiple key fields '%s' in record\n"
msgstr "%s:%s: erreur: plusieurs champs clé « %s » dans l'enregistrement\n"
-#: src/rec-int.c:595
+#: src/rec-int.c:659
#, c-format
msgid "%s:%s: error: duplicated key value in field '%s' in record\n"
-msgstr ""
-"%s:%s: erreur: valeur de clé en double dans le champ « %s » de "
-"l'enregistrement\n"
+msgstr "%s:%s: erreur: valeur de clé en double dans le champ « %s » de l'enregistrement\n"
-#: src/rec-int.c:643
+#: src/rec-int.c:709
#, c-format
msgid "%s:%s: error: missing %%rec field in record descriptor\n"
-msgstr ""
-"%s:%s: erreur: champ %%rec manquant dans le descripteur de l'enregistrement\n"
+msgstr "%s:%s: erreur: champ %%rec manquant dans le descripteur de l'enregistrement\n"
-#: src/rec-int.c:651
+#: src/rec-int.c:717
#, c-format
msgid "%s:%s: error: too many %%rec fields in record descriptor\n"
-msgstr ""
-"%s:%s: erreur: trop de champs %%rec dans le descripteur d'enregistrement\n"
+msgstr "%s:%s: erreur: trop de champs %%rec dans le descripteur d'enregistrement\n"
-#: src/rec-int.c:661
+#: src/rec-int.c:727
#, c-format
msgid "%s:%s: error: invalid record type %s\n"
msgstr "%s:%s: erreur: type d'enregistrement %s invalide\n"
-#: src/rec-int.c:672
+#: src/rec-int.c:738
#, c-format
msgid "%s:%s: error: only one %%key field is allowed in a record descriptor\n"
-msgstr ""
-"%s:%s: erreur: un seul champ %%key permis dans le descripteur "
-"d'enregistrement\n"
+msgstr "%s:%s: erreur: un seul champ %%key permis dans le descripteur d'enregistrement\n"
-#: src/rec-int.c:682
+#: src/rec-int.c:748
#, c-format
msgid "%s:%s: error: only one %%size field is allowed in a record descriptor\n"
-msgstr ""
-"%s:%s: erreur: un seul champ %%size permis dans le descripteur "
-"d'enregistrement\n"
+msgstr "%s:%s: erreur: un seul champ %%size permis dans le descripteur d'enregistrement\n"
-#: src/rec-int.c:692
+#: src/rec-int.c:758
#, c-format
msgid "%s:%s: error: only one %%sort field is allowed in a record descriptor\n"
-msgstr ""
-"%s:%s: erreur: un seul champ %%sort permis dans le descripteur "
-"d'enregistrement\n"
+msgstr "%s:%s: erreur: un seul champ %%sort permis dans le descripteur d'enregistrement\n"
-#: src/rec-int.c:715
+#: src/rec-int.c:782
#, c-format
-msgid ""
-"%s:%s: error: expected a comma-separated list of fields before the type "
-"specification\n"
-msgstr ""
-"%s:%s: erreur: une liste de champs délimités par des virgules est attendue "
-"devant la spécification de type\n"
+msgid "%s:%s: error: expected a comma-separated list of fields before the type specification\n"
+msgstr "%s:%s: erreur: une liste de champs délimités par des virgules est attendue devant la spécification de type\n"
-#: src/rec-int.c:741 src/rec-int.c:794
+#: src/rec-int.c:808 src/rec-int.c:861
#, c-format
msgid "%s:%s: error: the referred type %s does not exist\n"
msgstr "%s:%s: erreur: le type référé %s n'existe pas\n"
-#: src/rec-int.c:753
+#: src/rec-int.c:820
#, c-format
msgid "%s:%s: error: invalid type specification\n"
msgstr "%s:%s: erreur: spécification type invalide\n"
-#: src/rec-int.c:768
+#: src/rec-int.c:835
#, c-format
msgid "%s:%s: error: expected a type name before the type specification\n"
-msgstr ""
-"%s:%s: erreur: un nom de type est attendu avant la spécification du type\n"
+msgstr "%s:%s: erreur: un nom de type est attendu avant la spécification du type\n"
-#: src/rec-int.c:806
+#: src/rec-int.c:873
#, c-format
msgid "%s:%s: error: invalid typedef specification\n"
msgstr "%s:%s: erreur: spécification typedef invalide\n"
-#: src/rec-int.c:828
+#: src/rec-int.c:895
#, c-format
msgid "%s:%s: error: value for %s[%zd] is not a list of field names\n"
-msgstr ""
-"%s:%s: erreur: la valeur de %s[%zd] n'est pas une liste de noms de champs\n"
+msgstr "%s:%s: erreur: la valeur de %s[%zd] n'est pas une liste de noms de champs\n"
-#: src/rec-int.c:844
-#, fuzzy, c-format
-msgid "%s:%s: error: value for %s should be a field name.\n"
+#: src/rec-int.c:911
+#, c-format
+msgid "%s:%s: error: value for %s shall be a field name.\n"
msgstr "%s:%s: erreur: la valeur de %s sera un nom de champ.\n"
-#: src/rec-int.c:856
-#, fuzzy, c-format
-msgid ""
-"%s:%s: error: value for %s should be a number optionally preceded by >, <, "
-">= or <=.\n"
-msgstr ""
-"%s:%s: erreur: la valeur pour %s sera un nombre facultatif précédé de >, <, "
-">= ou <=.\n"
+#: src/rec-int.c:923
+#, c-format
+msgid "%s:%s: error: value for %s shall be a number optionally preceded by >, <, >= or <=.\n"
+msgstr "%s:%s: erreur: la valeur pour %s sera un nombre facultatif précédé de >, <, >= ou <=.\n"
-#: src/rec-int.c:872
-#, fuzzy, c-format
-msgid "%s:%s: error: value for %s should be a list of field names.\n"
+#: src/rec-int.c:939
+#, c-format
+msgid "%s:%s: error: value for %s shall be a list of field names.\n"
msgstr "%s:%s: erreur: la valeur de %s sera une liste de noms de champs.\n"
-#: src/rec-int.c:900
-#, fuzzy, c-format
-msgid ""
-"%s:%s: error: auto-incremented field %s should be of type int, range, uuid "
-"or date\n"
-msgstr ""
-"%s:%s: erreur: le champ auto-incrémenté %s sera de type entier, plage ou "
-"date\n"
-
-#: src/rec-int.c:902
-#, fuzzy, c-format
-msgid ""
-"%s:%s: error: auto-incremented field %s should be of type int, range or "
-"date\n"
-msgstr ""
-"%s:%s: erreur: le champ auto-incrémenté %s sera de type entier, plage ou "
-"date\n"
+#: src/rec-int.c:964
+#, c-format
+msgid "%s:%s: error: auto-incremented field %s shall be of type int, range or date\n"
+msgstr "%s:%s: erreur: le champ auto-incrémenté %s sera de type entier, plage ou date\n"
-#: src/rec-int.c:985
+#: src/rec-int.c:1046
#, c-format
msgid "%s:%s: error: could not fetch remote descriptor from url %s.\n"
-msgstr ""
-"%s:%s: erreur: le descripteur distant n'a pas pu être récupéré depuis l'URL "
-"%s.\n"
+msgstr "%s:%s: erreur: le descripteur distant n'a pas pu être récupéré depuis l'URL %s.\n"
-#: src/rec-int.c:1004
+#: src/rec-int.c:1065
#, c-format
msgid "%s:%s: error: could not read external descriptor from file %s.\n"
-msgstr ""
-"%s:%s: erreur: le descripteur externe n'a pas pu être lu depuis le fichier "
-"%s.\n"
+msgstr "%s:%s: erreur: le descripteur externe n'a pas pu être lu depuis le fichier %s.\n"
-#: src/rec-int.c:1019
+#: src/rec-int.c:1080
#, c-format
msgid "%s:%s: error: %s does not contain valid rec data.\n"
-msgstr ""
-"%s:%s: erreur: %s ne contient aucune donnée d'enregistrement valable.\n"
+msgstr "%s:%s: erreur: %s ne contient aucune donnée d'enregistrement valable.\n"
-#: src/rec-int.c:1033
+#: src/rec-int.c:1094
#, c-format
msgid "%s:%s: error: %s does not contain information for type %s.\n"
msgstr "%s:%s: erreur: %s ne contient aucune information pour le type %s.\n"
-#: src/rec-types.c:416
+#: src/rec-types.c:393
#, c-format
-msgid ""
-"internal error: rec-types: got REC_TYPE_NONE from rec_type_parse_type_kind() "
-"in rec_type_new().\n"
-msgstr ""
-"erreur interne: rec-types: REC_TYPE_NONE reçu de rec_type_parse_type_kind() "
-"dans rec_type_new().\n"
+msgid "internal error: rec-types: got REC_TYPE_NONE from rec_type_parse_type_kind() in rec_type_new().\n"
+msgstr "erreur interne: rec-types: REC_TYPE_NONE reçu de rec_type_parse_type_kind() dans rec_type_new().\n"
-#: src/rec-types.c:956
+#: src/rec-types.c:913
msgid "invalid integer."
msgstr "entier invalide."
-#: src/rec-types.c:972
+#: src/rec-types.c:929
msgid "invalid 'field' value."
msgstr "valeur « field » invalide."
-#: src/rec-types.c:995
-#, fuzzy
-msgid "invalid 'uuid' value."
-msgstr "valeur « field » invalide."
-
-#: src/rec-types.c:1013
+#: src/rec-types.c:945
msgid "invalid 'bool' value."
msgstr "valeur « bool » invalide."
-#: src/rec-types.c:1036
+#: src/rec-types.c:968
msgid "invalid 'range' value."
msgstr "valeur « range » invalide."
-#: src/rec-types.c:1045
+#: src/rec-types.c:977
#, c-format
msgid "expected an integer between %d and %d."
msgstr "entier entre %d et %d attendu."
-#: src/rec-types.c:1066
+#: src/rec-types.c:998
msgid "invalid 'real' value."
msgstr "valeur « real » invalide."
-#: src/rec-types.c:1084
+#: src/rec-types.c:1016
#, c-format
msgid "value too large. Expected a size <= %zu."
msgstr "valeur trop grande. Taille attendue <= %zu."
-#: src/rec-types.c:1105
+#: src/rec-types.c:1037
msgid "invalid 'line' value."
msgstr "valeur « ligne » attendue."
-#: src/rec-types.c:1124
+#: src/rec-types.c:1056
msgid "value does not match the regexp."
msgstr "valeur ne correspond pas à l'expression régulière."
-#: src/rec-types.c:1147
+#: src/rec-types.c:1079
msgid "invalid date."
msgstr "date invalide."
-#: src/rec-types.c:1163
+#: src/rec-types.c:1095
msgid "invalid email."
msgstr "email invalide."
-#: src/rec-types.c:1217
+#: src/rec-types.c:1149
msgid "invalid enum value."
msgstr "valeur énumérée invalide."
#: src/rec-utils.c:87
#, c-format
msgid "internal error: rec_int_rec_extract_file: error compiling regexp.\n"
-msgstr ""
-"erreur interne: rec_int_rec_extract_file: erreur à la compilation de la "
-"regexp.\n"
+msgstr "erreur interne: rec_int_rec_extract_file: erreur à la compilation de la regexp.\n"
-#: src/rec-utils.c:115 src/rec-utils.c:144
+#: src/rec-utils.c:115 src/rec-utils.c:143
#, c-format
msgid "internal error: rec_int_rec_extract_url: error compiling regexp.\n"
-msgstr ""
-"erreur interne: rec_int_rec_extract_url: erreur à la compilation de la "
-"regexp.\n"
+msgstr "erreur interne: rec_int_rec_extract_url: erreur à la compilation de la regexp.\n"
-#: src/rec-utils.c:290
+#: src/rec-utils.c:289
#, c-format
msgid "internal error: rec_match: error compiling regexp.\n"
msgstr "erreur interne: rec_match: erreur à la compilation de la regexp.\n"
@@ -513,18 +461,14 @@ msgstr "Convertit les données csv en des données d'enregistrement.\n"
#. no-wrap
#: utils/csv2rec.c:115
msgid ""
-" -t, --type=TYPE type name for the converted records; "
-"if this\n"
-" parameter is ommited then no type is "
-"used.\n"
+" -t, --type=TYPE type name for the converted records; if this\n"
+" parameter is ommited then no type is used.\n"
" -s, --strict be strict parsing the csv file.\n"
" -e, --omit-empty omit empty fields.\n"
msgstr ""
-" -t, --type=TYPE nom de type pour les enregistrements "
-"convertis; aucun type n'est utilisé\n"
+" -t, --type=TYPE nom de type pour les enregistrements convertis; aucun type n'est utilisé\n"
" si ce paramètre est omis.\n"
-" -s, --strict analyser le fichier csv de manière "
-"stricte.\n"
+" -s, --strict analyser le fichier csv de manière stricte.\n"
" -e, --omit-empty omettre les champs vides.\n"
#: utils/csv2rec.c:213
@@ -537,26 +481,26 @@ msgstr "nombre maximum de champs atteint: %d\n"
msgid "invalid field name '%s' in header\n"
msgstr "nom de champ « %s » invalide dans l'en-tête\n"
-#: utils/csv2rec.c:246 utils/csv2rec.c:282 utils/csv2rec.c:297
-#: utils/mdb2rec.c:310 utils/mdb2rec.c:423 utils/recsel.c:420
+#: utils/csv2rec.c:248 utils/csv2rec.c:287 utils/csv2rec.c:302
+#: utils/mdb2rec.c:326 utils/mdb2rec.c:439
msgid "out of memory\n"
msgstr "à cours de mémoire\n"
-#: utils/csv2rec.c:254
+#: utils/csv2rec.c:258
msgid "not enough headers"
msgstr "pas assez d'en-têtes"
-#: utils/csv2rec.c:339 utils/recdel.c:268 utils/recset.c:361
-#: utils/recutl.c:278
+#: utils/csv2rec.c:344 utils/recdel.c:328 utils/recset.c:706
+#: utils/recutl.c:294
#, c-format
msgid "cannot read file %s\n"
msgstr "impossible de lire le fichier %s\n"
-#: utils/csv2rec.c:350
+#: utils/csv2rec.c:355
msgid "failed to initialize csv parser\n"
msgstr "échec à l'initialisation de l'analyseur csv\n"
-#: utils/csv2rec.c:368
+#: utils/csv2rec.c:373
#, c-format
msgid "error while parsing CSV file: %s\n"
msgstr "erreur lors de l'analyse du fichier CSV: %s\n"
@@ -581,48 +525,45 @@ msgid ""
" -s, --system-tables include system tables.\n"
" -e, --keep-empty-fields don't prune empty fields in the rec\n"
" output.\n"
-" -l, --list-tables dump a list of the table names "
-"contained\n"
+" -l, --list-tables dump a list of the table names contained\n"
" in the mdb file.\n"
msgstr ""
" -s, --system-tables inclure les tables systèmes.\n"
-" -e, --keep-empty-fields garder les champs vides dans la "
-"sortie\n"
+" -e, --keep-empty-fields garder les champs vides dans la sortie\n"
" des enregistrements.\n"
-" -l, --list-tables afficher une liste des noms des "
-"tables\n"
+" -l, --list-tables afficher une liste des noms des tables\n"
" contenues dans le fichier mdb.\n"
-#: utils/mdb2rec.c:251 utils/mdb2rec.c:317
+#: utils/mdb2rec.c:252 utils/mdb2rec.c:333
#, c-format
msgid "failed to normalise record type name %s\n"
msgstr "erreur lors de la normalisation du nom de type d'enregistrement %s\n"
-#: utils/mdb2rec.c:259 utils/mdb2rec.c:270
+#: utils/mdb2rec.c:260 utils/mdb2rec.c:272
#, c-format
msgid "failed to normalise field name %s\n"
msgstr "erreur lors de la normalisation du nom du champ %s\n"
-#: utils/mdb2rec.c:338
+#: utils/mdb2rec.c:354
#, c-format
msgid "failed to normalise the field name %s\n"
msgstr "erreur lors de la normalisation du nom du champ %s\n"
-#: utils/mdb2rec.c:447 utils/recins.c:209 utils/recset.c:253
+#: utils/mdb2rec.c:465 utils/recins.c:342 utils/recset.c:265
#, c-format
msgid "invalid field name %s.\n"
msgstr "nom de champ %s invalide.\n"
-#: utils/mdb2rec.c:478 utils/rec2csv.c:193 utils/rec2csv.c:200
+#: utils/mdb2rec.c:496 utils/rec2csv.c:193 utils/rec2csv.c:200
msgid "out of memory"
msgstr "à cours de mémoire"
-#: utils/mdb2rec.c:488
+#: utils/mdb2rec.c:506
#, c-format
msgid "could not open file %s\n"
msgstr "le fichier %s n'a pas pu être ouvert\n"
-#: utils/mdb2rec.c:495
+#: utils/mdb2rec.c:513
msgid "file does not appear to be an Access database\n"
msgstr "le fichier ne semble pas être une base de données Access\n"
@@ -643,73 +584,53 @@ msgstr "Convertit les données enrg en données csv.\n"
#. no-wrap
#: utils/rec2csv.c:96
msgid ""
-" -t, --type=TYPE record set to convert to csv; if this "
-"parameter\n"
-" is omitted then the default record "
-"set is used\n"
-" -S, --sort=FIELD sort the output by the specified "
-"field.\n"
+" -t, --type=TYPE record set to convert to csv; if this parameter\n"
+" is omitted then the default record set is used\n"
+" -S, --sort=FIELD sort the output by the specified field.\n"
msgstr ""
-" -t, --type=TYPE ensemble d'enregistrements à convertir "
-"en csv; l'ensemble d'enregistrements\n"
-" par défaut est utilisé si ce "
-"paramètre est omis\n"
-" -S, --sort=CHAMP trier la sortie selon le champ "
-"spécifié.\n"
-
-#: utils/rec2csv.c:135 utils/recsel.c:230
+" -t, --type=TYPE ensemble d'enregistrements à convertir en csv; l'ensemble d'enregistrements\n"
+" par défaut est utilisé si ce paramètre est omis\n"
+" -S, --sort=CHAMP trier la sortie selon le champ spécifié.\n"
+
+#: utils/rec2csv.c:135 utils/recsel.c:228
msgid "only one field can be specified as a sorting criteria.\n"
msgstr "un seul champ peut servir de critère de tri.\n"
-#: utils/rec2csv.c:142 utils/recsel.c:237
+#: utils/rec2csv.c:142 utils/recsel.c:235
msgid "invalid field name in -S.\n"
msgstr "nom de champ invalide dans -S.\n"
#. TRANSLATORS: --help output, recdel synopsis.
#. no-wrap
#: utils/recdel.c:89
-#, fuzzy, c-format
-msgid ""
-"Usage: recdel [OPTIONS]... [-t TYPE] [-n NUM | -e RECORD_EXPR | -q STR | -m "
-"NUM] [FILE]\n"
-msgstr ""
-"Usage: recdel [OPTIONS]... [-t TYPE] [-n NUM | -e EXPR | -q CHAÎNE | -m NUM] "
-"[FICHIER]\n"
+#, c-format
+msgid "Usage: recdel [OPTIONS]... [-t TYPE] [-n NUM | -e EXPR | -q STR | -m NUM] [FILE]\n"
+msgstr "Usage: recdel [OPTIONS]... [-t TYPE] [-n NUM | -e EXPR | -q CHAÎNE | -m NUM] [FICHIER]\n"
#. TRANSLATORS: --help output, recdel short description.
#. no-wrap
#: utils/recdel.c:94
msgid "Remove (or comment out) records from a rec file.\n"
-msgstr ""
-"Supprime (ou met en commentaire) les enregistrements du fichier enrg.\n"
+msgstr "Supprime (ou met en commentaire) les enregistrements du fichier enrg.\n"
#. TRANSLATORS: --help output, recdel arguments.
#. no-wrap
#: utils/recdel.c:101
msgid ""
-" -c, --comment comment out the matching records "
-"instead of\n"
+" -c, --comment comment out the matching records instead of\n"
" deleting them.\n"
-" --force delete even in potentially dangerous "
-"situations,\n"
-" and if the deletion is violating "
-"record restrictions.\n"
+" --force delete even in potentially dangerous situations,\n"
+" and if the deletion is violating record restrictions.\n"
" --no-external don't use external descriptors.\n"
-" --verbose give a detailed report if the "
-"integrity check\n"
+" --verbose give a detailed report if the integrity check\n"
" fails.\n"
msgstr ""
-" -c, --comment mettre en commentaire les "
-"enregistrements correspondants au lieu de\n"
+" -c, --comment mettre en commentaire les enregistrements correspondants au lieu de\n"
" les supprimer.\n"
-" --force supprimer même dans des situations "
-"potentiellement dangereuses\n"
-" et si l'effacement viole des "
-"restrictions d'enregistrements.\n"
-" --no-external ne pas utiliser de descripteur "
-"externe.\n"
-" --verbose fournir un rapport détaillé si le "
-"contrôle d'intégrité\n"
+" --force supprimer même dans des situations potentiellement dangereuses\n"
+" et si l'effacement viole des restrictions d'enregistrements.\n"
+" --no-external ne pas utiliser de descripteur externe.\n"
+" --verbose fournir un rapport détaillé si le contrôle d'intégrité\n"
" échoue.\n"
#. TRANSLATORS: --help output, notes on recdel.
@@ -723,28 +644,28 @@ msgid ""
"If no FILE is specified then the command acts like a filter, getting\n"
"the data from standard input and writing the result to standard output.\n"
msgstr ""
-"Si aucun FICHIER n'est spécifié alors la commande agit comme un filtre "
-"récupérant les\n"
-"données depuis l'entrée standard et écrivant le résultat sur la sortie "
-"standard.\n"
+"Si aucun FICHIER n'est spécifié alors la commande agit comme un filtre récupérant les\n"
+"données depuis l'entrée standard et écrivant le résultat sur la sortie standard.\n"
-#: utils/recdel.c:136
+#: utils/recdel.c:143
#, c-format
msgid "no records of type %s found.\n"
msgstr "aucun enregistrement de type %s trouvé.\n"
-#: utils/recdel.c:229
+#: utils/recdel.c:224 utils/recins.c:501 utils/recsel.c:447
+msgid "evaluating the selection expression.\n"
+msgstr "évaluation de l'expression sélectionnée.\n"
+
+#: utils/recdel.c:289
#, c-format
msgid "ignoring a request to delete all records of type %s.\n"
msgstr "ignore la demande de supprimer tous les enregistrements de type %s.\n"
-#: utils/recdel.c:231
+#: utils/recdel.c:291
msgid "use --force if you really want to proceed, or use either -n or -e.\n"
-msgstr ""
-"utilisez --force si vous voulez réellement continuer ou alors utilisez -n ou "
-"-e.\n"
+msgstr "utilisez --force si vous voulez réellement continuer ou alors utilisez -n ou -e.\n"
-#: utils/recdel.c:239
+#: utils/recdel.c:299 utils/recset.c:432
msgid "invalid selection expression.\n"
msgstr "expression de sélection invalide.\n"
@@ -765,15 +686,12 @@ msgstr "Vérifie et corrige les fichiers enrg.\n"
#. no-wrap
#: utils/recfix.c:130
msgid ""
-" -t, --type=TYPE process only records of the given "
-"type.\n"
+" -t, --type=TYPE process only records of the given type.\n"
" --no-external don't use external descriptors.\n"
" --force force the requested operation.\n"
msgstr ""
-" -t, --type=TYPE traiter uniquement les enregistrements "
-"du type indiqué.\n"
-" --no-external ne pas utiliser de descripteur "
-"externe.\n"
+" -t, --type=TYPE traiter uniquement les enregistrements du type indiqué.\n"
+" --no-external ne pas utiliser de descripteur externe.\n"
" --force forcer l'opération demandée.\n"
#. TRANSLATORS: --help output, recfix operations.
@@ -781,34 +699,24 @@ msgstr ""
#: utils/recfix.c:141
msgid ""
"Operations:\n"
-" --check check integrity of the specified "
-"file. Default.\n"
-" --sort sort the records in the specified "
-"file.\n"
-" --auto insert auto-generated fields in "
-"records missing them.\n"
+" --check check integrity of the specified file. Default.\n"
+" --sort sort the records in the specified file.\n"
+" --auto insert auto-generated fields in records missing them.\n"
msgstr ""
"Opérations:\n"
-" --check vérifie l'intégrité du fichier "
-"spécifié. Défaut.\n"
-" --sort trier les enregistrements dans le "
-"fichier spécifié.\n"
-" --auto insérer des champs auto-générés dans "
-"les enregistrements où ils manquent.\n"
+" --check vérifie l'intégrité du fichier spécifié. Défaut.\n"
+" --sort trier les enregistrements dans le fichier spécifié.\n"
+" --auto insérer des champs auto-générés dans les enregistrements où ils manquent.\n"
#. TRANSLATORS: --help output, recfix operations related with encryption.
#. no-wrap
#: utils/recfix.c:151
msgid ""
-" --encrypt encrypt confidential fields in the "
-"specified file.\n"
-" --decrypt decrypt confidential fields in the "
-"specified file.\n"
+" --encrypt encrypt confidential fields in the specified file.\n"
+" --decrypt decrypt confidential fields in the specified file.\n"
msgstr ""
-" --encrypt chiffrer les champs confidentiels dans "
-"le fichier spécifié.\n"
-" --decrypt déchiffrer les champs confidentiels "
-"dans le fichier spécifié.\n"
+" --encrypt chiffrer les champs confidentiels dans le fichier spécifié.\n"
+" --decrypt déchiffrer les champs confidentiels dans le fichier spécifié.\n"
#. TRANSLATORS: --help output, recfix encryption and decryption
#. options.
@@ -819,8 +727,7 @@ msgid ""
" -s, --password=PASSWORD encrypt/decrypt with this password.\n"
msgstr ""
"Options de dé/chiffrement:\n"
-" -s, --password=MOT_DE_PASSE chiffre/déchiffre avec ce mot de "
-"passe.\n"
+" -s, --password=MOT_DE_PASSE chiffre/déchiffre avec ce mot de passe.\n"
#: utils/recfix.c:210
msgid "--password|-s must be used as an operation argument.\n"
@@ -839,22 +746,21 @@ msgstr "veuillez n'indiquer qu'un seul mot de passe.\n"
msgid "please specify just one operation.\n"
msgstr "veuillez n'indiquer qu'une seule opération\n"
-#: utils/recfix.c:307 utils/recins.c:341 utils/recsel.c:359
+#: utils/recfix.c:307 utils/recins.c:173 utils/recsel.c:348
msgid "Password: "
msgstr "Mot de passe: "
-#: utils/recfix.c:454
+#: utils/recfix.c:451
msgid "the database contains already encrypted fields\n"
msgstr "la base de données contient déjà des champs chiffrés\n"
-#: utils/recfix.c:455
+#: utils/recfix.c:452
msgid "please use --force or --decrypt\n"
msgstr "veuillez utiliser --force ou --decrypt\n"
-#: utils/recfix.c:567
+#: utils/recfix.c:561
msgid "unknown operation in recfix: please report this as a bug.\n"
-msgstr ""
-"opération inconnue dans recfix: veuillez rapporter ceci comme un bug.\n"
+msgstr "opération inconnue dans recfix: veuillez rapporter ceci comme un bug.\n"
#. TRANSLATORS: --help output, recfmt synopsis.
#. no-wrap
@@ -872,12 +778,8 @@ msgstr "Appliquer un modèle aux enregistrements lus sur l'entrée standard.\n"
#. TRANSLATORS: --help output, recfmt arguments.
#. no-wrap
#: utils/recfmt.c:89
-msgid ""
-" -f, --file=FILENAME read the template to apply from a "
-"file.\n"
-msgstr ""
-" -f, --file=FICHIER lire le modèle à appliquer dans le "
-"fichier.\n"
+msgid " -f, --file=FILENAME read the template to apply from a file.\n"
+msgstr " -f, --file=FICHIER lire le modèle à appliquer dans le fichier.\n"
#: utils/recfmt.c:123
#, c-format
@@ -886,9 +788,7 @@ msgstr "le fichier %s n'a pas pu être ouvert en lecture.\n"
#: utils/recfmt.c:141
msgid "don't specify a template in the command line and -f at the same time.\n"
-msgstr ""
-"ne spécifiez pas de modèle sur la ligne de commande et avec -f en même "
-"temps.\n"
+msgstr "ne spécifiez pas de modèle sur la ligne de commande et avec -f en même temps.\n"
#: utils/recfmt.c:164
msgid "invalid expression in a template slot.\n"
@@ -896,14 +796,11 @@ msgstr "expression invalide dans un emplacement de modèle.\n"
#: utils/recfmt.c:170
msgid "error evaluating expression in a template slot.\n"
-msgstr ""
-"erreur lors de l'évaluation d'une expression dans un emplacement de modèle.\n"
+msgstr "erreur lors de l'évaluation d'une expression dans un emplacement de modèle.\n"
#: utils/recfmt.c:204
msgid "recfmt_apply_template: error compiling regexp. Please report this.\n"
-msgstr ""
-"recfmt_apply_template: erreur à la compilation de la regexp. Merci de "
-"rapporter ceci.\n"
+msgstr "recfmt_apply_template: erreur à la compilation de la regexp. Merci de rapporter ceci.\n"
#. TRANSLATORS: --help output, recinf synopsis.
#. no-wrap
@@ -916,28 +813,22 @@ msgstr "Usage: recinf [OPTION]... [FICHIER]...\n"
#. no-wrap
#: utils/recinf.c:89
msgid "Print information about the types of records stored in the input.\n"
-msgstr ""
-"Afficher les informations à propos des types d'enregistrements stockés dans "
-"l'entrée.\n"
+msgstr "Afficher les informations à propos des types d'enregistrements stockés dans l'entrée.\n"
#. TRANSLATORS: --help output, recinf arguments.
#. no-wrap
#: utils/recinf.c:96
msgid ""
-" -t, --type=RECORD_TYPE print information on the records having "
-"the\n"
+" -t, --type=RECORD_TYPE print information on the records having the\n"
" specified type.\n"
" -d, --descriptor include the full record descriptors.\n"
" -n, --names-only output just the names of the record files\n"
" found in the input.\n"
msgstr ""
-" -t, --type=TYPE_ENREGISTREMENT afficher les informations sur les "
-"enregistrements ayant\n"
+" -t, --type=TYPE_ENREGISTREMENT afficher les informations sur les enregistrements ayant\n"
" le type spécifié.\n"
-" -d, --descriptor inclure les descriptors complets de "
-"l'enregistrement.\n"
-" -n, --names-only afficher uniquement les noms des fichiers "
-"d'enregistrements\n"
+" -d, --descriptor inclure les descriptors complets de l'enregistrement.\n"
+" -n, --names-only afficher uniquement les noms des fichiers d'enregistrements\n"
" rencontrés en entrée.\n"
#. TRANSLATORS: --help output, recinf special options.
@@ -945,14 +836,12 @@ msgstr ""
#: utils/recinf.c:109
msgid ""
"Special options:\n"
-" -S, --print-sexps print the data in sexps instead of rec "
-"format.\n"
+" -S, --print-sexps print the data in sexps instead of rec format.\n"
msgstr ""
"Options spéciales:\n"
-" -S, --print-sexps afficher les données en sexps au lieu "
-"du format enrg.\n"
+" -S, --print-sexps afficher les données en sexps au lieu du format enrg.\n"
-#: utils/recinf.c:260
+#: utils/recinf.c:259
#, c-format
msgid "error: cannot read file %s\n"
msgstr "erreur: impossible de lire le fichier %s\n"
@@ -960,416 +849,323 @@ msgstr "erreur: impossible de lire le fichier %s\n"
#. TRANSLATORS: --help output, recins synopsis.
#. no-wrap
#: utils/recins.c:112
-#, fuzzy, c-format
-msgid ""
-"Usage: recins [OPTION]... [-t TYPE] [-n NUM | -e RECORD_EXPR | -q STR | -m "
-"NUM] [(-f NAME -v STR) | -R RECDATA]... [FILE]\n"
-msgstr ""
-"Usage: recins [OPTION]... [t TYPE] [-n NUM | -e EXPR | -q CHAÎne | -m NUM] "
-"[(-f CHAÎNE -v CHAÎNE]|[-r RECDATA)]... [FICHIER]\n"
+#, c-format
+msgid "Usage: recins [OPTION]... [t TYPE] [-n NUM | -e EXPR | -q STR | -m NUM] [(-f STR -v STR]|[-R RECDATA)]... [FILE]\n"
+msgstr "Usage: recins [OPTION]... [t TYPE] [-n NUM | -e EXPR | -q CHAÎne | -m NUM] [(-f CHAÎNE -v CHAÎNE]|[-r RECDATA)]... [FICHIER]\n"
#. TRANSLATORS: --help output, recins short description.
#. no-wrap
#: utils/recins.c:117
msgid "Insert new records in a rec database.\n"
-msgstr ""
-"Insérer les nouveaux enregistrements dans une base de données "
-"d'enregistrements.\n"
+msgstr "Insérer les nouveaux enregistrements dans une base de données d'enregistrements.\n"
#. TRANSLATORS: --help output, recins arguments.
#. no-wrap
#: utils/recins.c:123
msgid ""
-" -f, --field=STR field name; should be followed by a -"
-"v.\n"
-" -v, --value=STR field value; should be preceded by an -"
-"f.\n"
-" -r, --record=STR record that will be inserted in the "
-"file.\n"
-" --force insert the record even if it is "
-"violating\n"
+" -f, --field=STR field name; should be followed by a -v.\n"
+" -v, --value=STR field value; should be preceded by an -f.\n"
+" -r, --record=STR record that will be inserted in the file.\n"
+" --force insert the record even if it is violating\n"
" record restrictions.\n"
" --no-external don't use external descriptors.\n"
" --no-auto don't insert auto generated fields.\n"
-" --verbose give a detailed report if the "
-"integrity check\n"
+" --verbose give a detailed report if the integrity check\n"
" fails.\n"
msgstr ""
-" -f, --field=CHAÎNE nom du champ; devrait être suivi par -"
-"v.\n"
-" -v, --value=CHAÎNE valeur du champ; devrait être précédé "
-"par -f.\n"
-" -r, --record=CHAÎNE enregistrement qui sera inséré dans le "
-"fichier.\n"
-" --force insérer l'enregistrement même si il "
-"viole\n"
-" les restrictions de "
-"l'enregistrement.\n"
-" --no-external ne pas utiliser de descripteur "
-"externe.\n"
-" --no-auto ne pas insérer de champ généré "
-"automatiquement.\n"
-" --verbose fournir un rapport détaillé si la "
-"validation d'intégrité\n"
+" -f, --field=CHAÎNE nom du champ; devrait être suivi par -v.\n"
+" -v, --value=CHAÎNE valeur du champ; devrait être précédé par -f.\n"
+" -r, --record=CHAÎNE enregistrement qui sera inséré dans le fichier.\n"
+" --force insérer l'enregistrement même si il viole\n"
+" les restrictions de l'enregistrement.\n"
+" --no-external ne pas utiliser de descripteur externe.\n"
+" --no-auto ne pas insérer de champ généré automatiquement.\n"
+" --verbose fournir un rapport détaillé si la validation d'intégrité\n"
" échoue.\n"
#. TRANSLATORS: --help output, encryption related options.
#. no-wrap
#: utils/recins.c:137
-msgid ""
-" -s, --password=STR encrypt confidential fields with the "
-"given password.\n"
-msgstr ""
-" -s, --password=CHAÎNE chiffrer les champs confidentiels avec "
-"ce mot de passe.\n"
+msgid " -s, --password=STR encrypt confidential fields with the given password.\n"
+msgstr " -s, --password=CHAÎNE chiffrer les champs confidentiels avec ce mot de passe.\n"
-#: utils/recins.c:196
+#: utils/recins.c:316
msgid "a -f should be followed by a -v\n"
msgstr "un -f devrait être suivi par un -v\n"
-#: utils/recins.c:220
+#: utils/recins.c:354
msgid "a -v should be preceded by a -f\n"
msgstr "un -v devrait être précédé par un -f\n"
-#: utils/recins.c:245 utils/recsel.c:218
+#: utils/recins.c:379 utils/recsel.c:216
msgid "more than one password was specified\n"
msgstr "plus d'un mot de passe a été spécifié\n"
-#: utils/recins.c:259
+#: utils/recins.c:393
msgid "error while parsing the record provided by -r\n"
msgstr "erreur lors de l'analyse de l'enregistrement fourni par -r\n"
-#: utils/recins.c:294
+#: utils/recins.c:428
#, c-format
msgid "please provide a value for the field %s\n"
msgstr "veuillez fournir une valeur pour le champ %s\n"
#. TRANSLATORS: --help output, recsel synopsis.
#. no-wrap
-#: utils/recsel.c:116
-#, fuzzy, c-format
-msgid ""
-"Usage: recsel [OPTION]... [-t TYPE] [-n INDEXES | -e RECORD_EXPR | -q STR | -"
-"m NUM] [-c | (-p|-P) FIELD_EXPR] [FILE]...\n"
-msgstr ""
-"Usage: recsel [OPTION]... [-t TYPE] [-n INDEXES | -e EXPR_ENRG | -q EXPR | -"
-"m NUM] [-c | (-p|-P) EXPR_CHAMP] [FICHIER]...\n"
+#: utils/recsel.c:115
+#, c-format
+msgid "Usage: recsel [OPTION]... [-t TYPE] [-n INDEXES | -e RECORD_EXPR | -q EXPR | -m NUM] [-c | (-p|-P) FIELD_EXPR] [FILE]...\n"
+msgstr "Usage: recsel [OPTION]... [-t TYPE] [-n INDEXES | -e EXPR_ENRG | -q EXPR | -m NUM] [-c | (-p|-P) EXPR_CHAMP] [FICHIER]...\n"
#. TRANSLATORS: --help output, recsel arguments.
#. no-wrap
-#: utils/recsel.c:121
+#: utils/recsel.c:120
msgid "Select and print rec data.\n"
msgstr "Sélectionne et affiche les données de l'enregistrement.\n"
#. TRANSLATORS: --help output, recsel arguments.
#. no-wrap
-#: utils/recsel.c:127
-#, fuzzy
+#: utils/recsel.c:126
msgid ""
-" -d, --include-descriptors print record descriptors along with "
-"the matched\n"
+" -d, --include-descriptors print record descriptors along with the matched\n"
" records.\n"
-" -C, --collapse do not section the result in records "
-"with newlines.\n"
-" -S, --sort=FIELD sort the output by the specified "
-"field.\n"
-" -G, --group-by=FIELD group records by the specified field.\n"
-" -U, --uniq remove duplicated fields in the output "
-"records.\n"
+" -C, --collapse do not section the result in records with newlines.\n"
+" -S, --sort=FIELD sort the output by the specified field.\n"
+" -U, --uniq remove duplicated fields in the output records.\n"
msgstr ""
-" -d, --include-descriptors afficher les descripteurs "
-"d'enregistrements ainsi que les enregistrements\n"
+" -d, --include-descriptors afficher les descripteurs d'enregistrements ainsi que les enregistrements\n"
" correspondants.\n"
-" -C, --collapse ne pas séparer les résultats des "
-"enregistrements avec des sauts de lignes.\n"
-" -S, --sort=CHAMP trier la sortie selon le champ "
-"spécifié.\n"
-" -U, --uniq supprimer les champs dupliqués dans "
-"les enregistrements de sortie.\n"
+" -C, --collapse ne pas séparer les résultats des enregistrements avec des sauts de lignes.\n"
+" -S, --sort=CHAMP trier la sortie selon le champ spécifié.\n"
+" -U, --uniq supprimer les champs dupliqués dans les enregistrements de sortie.\n"
#. TRANSLATORS: --help output, encryption related options.
#. no-wrap
-#: utils/recsel.c:139
-msgid ""
-" -s, --password=STR decrypt confidential fields with the "
-"given password.\n"
-msgstr ""
-" -s, --password=CHAÎNE déchiffrer les champs confidentiels "
-"avec ce mot de passe.\n"
+#: utils/recsel.c:137
+msgid " -s, --password=STR decrypt confidential fields with the given password.\n"
+msgstr " -s, --password=CHAÎNE déchiffrer les champs confidentiels avec ce mot de passe.\n"
#. TRANSLATORS: --help output, recsel output options.
#. no-wrap
-#: utils/recsel.c:152
+#: utils/recsel.c:150
msgid ""
"Output options:\n"
-" -p, --print=FIELDS comma-separated list of fields to "
-"print for each\n"
+" -p, --print=FIELDS comma-separated list of fields to print for each\n"
" matching record.\n"
-" -P, --print-values=FIELDS as -p, but print only the values of "
-"the selected\n"
+" -P, --print-values=FIELDS as -p, but print only the values of the selected\n"
" fields.\n"
-" -R, --print-row=FIELDS as -P, but separate the values with "
-"spaces instead\n"
+" -R, --print-row=FIELDS as -P, but separate the values with spaces instead\n"
" of newlines.\n"
-" -c, --count print a count of the matching records "
-"instead of\n"
+" -c, --count print a count of the matching records instead of\n"
" the records themselves.\n"
msgstr ""
"Options de sortie:\n"
-" -p, --print=CHAMPS liste séparée par des virgules des "
-"champs à afficher pour chaque\n"
+" -p, --print=CHAMPS liste séparée par des virgules des champs à afficher pour chaque\n"
" enregistrement correspondant.\n"
-" -P, --print-values=CHAMPS comme -p mais afficher uniquement les "
-"valeurs des champs sélectionnés.\n"
-" -R, --print-row=CHAMPS comme -P mais séparer les valeurs avec "
-"des espaces au lieu\n"
+" -P, --print-values=CHAMPS comme -p mais afficher uniquement les valeurs des champs sélectionnés.\n"
+" -R, --print-row=CHAMPS comme -P mais séparer les valeurs avec des espaces au lieu\n"
" de sauts de lignes.\n"
-" -c, --count afficher le décompte des "
-"enregistrements correspondants au lieu\n"
+" -c, --count afficher le décompte des enregistrements correspondants au lieu\n"
" des enregistrements.\n"
#. TRANSLATORS: --help output, recsel special options.
#. no-wrap
-#: utils/recsel.c:166
+#: utils/recsel.c:164
msgid ""
"Special options:\n"
-" --print-sexps print the data in sexps instead of rec "
-"format.\n"
+" --print-sexps print the data in sexps instead of rec format.\n"
msgstr ""
"Options spéciales:\n"
-" --print-sexps afficher les données en sexps au lieu "
-"du format enrg.\n"
+" --print-sexps afficher les données en sexps au lieu du format enrg.\n"
#: utils/recsel.c:247
-#, fuzzy
-msgid "only one field can be specified as a grouping criteria.\n"
-msgstr "un seul champ peut servir de critère de tri.\n"
-
-#: utils/recsel.c:255
-#, fuzzy
-msgid "invalid field name in -G.\n"
-msgstr "nom de champ invalide dans -S.\n"
-
-#: utils/recsel.c:267
msgid "cannot specify -[pPR] and also -c.\n"
msgstr "vous ne pouvez pas spécifier -[pPR] en même temps que -c.\n"
-#: utils/recsel.c:284
-#, fuzzy, c-format
-msgid "invalid list of fields in -%c\n"
-msgstr "nom de champ %s invalide.\n"
-
-#: utils/recsel.c:292
+#: utils/recsel.c:273
msgid "internal error creating the field expression.\n"
msgstr "erreur interne lors de la création de l'expression de champ.\n"
-#: utils/recsel.c:308
+#: utils/recsel.c:289
msgid "cannot specify -c and also -p.\n"
msgstr "vous ne pouvez pas spécifier -c en même temps que -p.\n"
-#: utils/recsel.c:382
+#: utils/recsel.c:369
msgid "several record types found. Please use -t to specify one.\n"
-msgstr ""
-"plusieurs types d'enregistrements trouvés. Veuillez utiliser -t pour en "
-"spécifier un.\n"
+msgstr "plusieurs types d'enregistrements trouvés. Veuillez utiliser -t pour en spécifier un.\n"
#. TRANSLATORS: --help output, recset synopsis.
#. no-wrap
-#: utils/recset.c:113
+#: utils/recset.c:125
#, c-format
msgid "Usage: recset [OPTION]... [FILE]...\n"
msgstr "Usage: recset [OPTION]... [FICHIER]...\n"
#. TRANSLATORS: --help output, recset short description.
#. no-wrap
-#: utils/recset.c:118
+#: utils/recset.c:130
msgid "Alter or delete fields in records.\n"
msgstr "Altérer ou éditer les champs dans les enregistrements.\n"
#. TRANSLATORS: --help output, recset options.
#. no-wrap
-#: utils/recset.c:124
+#: utils/recset.c:136
msgid ""
" --no-external don't use external descriptors.\n"
-" --force alter the records even if violating "
-"record\n"
+" --force alter the records even if violating record\n"
" restrictions.\n"
msgstr ""
-" --no-external ne pas utiliser de descripteur "
-"externe.\n"
-" --force altérer les enregistrements même si "
-"cela viole les restrictions\n"
+" --no-external ne pas utiliser de descripteur externe.\n"
+" --force altérer les enregistrements même si cela viole les restrictions\n"
" des enregistrements.\n"
#. TRANSLATORS: --help output, recset field selection options.
#. no-wrap
-#: utils/recset.c:137
+#: utils/recset.c:149
msgid ""
"Field selection options:\n"
-" -f, --fields=FIELDS comma-separated list of field names "
-"with optional\n"
+" -f, --fields=FIELDS comma-separated list of field names with optional\n"
" subscripts.\n"
msgstr ""
"Options de sélection des champs:\n"
-" -f, --fields=CHAMPS liste séparée par des virgules des "
-"noms des champs avec\n"
+" -f, --fields=CHAMPS liste séparée par des virgules des noms des champs avec\n"
" les indices optionnels.\n"
#. TRANSLATORS: --help output, recset actions.
#. no-wrap
-#: utils/recset.c:145
+#: utils/recset.c:157
msgid ""
"Actions:\n"
-" -s, --set=VALUE change the value of the selected "
-"fields.\n"
-" -a, --add=VALUE add the selected fields with the given "
-"value.\n"
-" -S, --set-add=VALUE change the value of the selected "
-"fields. If they don't\n"
-" exist then add a new field with that "
-"value.\n"
-" -r, --rename=NAME rename the selected fields to a given "
-"name. If an entire\n"
-" record set is selected then the "
-"field is renamed in the\n"
+" -s, --set=VALUE change the value of the selected fields.\n"
+" -a, --add=VALUE add the selected fields with the given value.\n"
+" -S, --set-add=VALUE change the value of the selected fields. If they don't\n"
+" exist then add a new field with that value.\n"
+" -r, --rename=NAME rename the selected fields to a given name. If an entire\n"
+" record set is selected then the field is renamed in the\n"
" record descriptor as well.\n"
" -d, --delete delete the selected fields.\n"
" -c, --comment comment out the selected fields.\n"
msgstr ""
"Actions:\n"
-" -s, --set=VALEUR changer la valeur des champs "
-"sélectionnés.\n"
-" -a, --add=VALEUR ajouter les champs sélectionnés avec "
-"la valeur indiquée.\n"
-" -S, --set-add=VALEUR changer la valeur des champs "
-"sélectionner. Si ils n'existent pas,\n"
-" ajouter un nouveau champ avec cette "
-"valeur.\n"
-" -r, --rename=NOM renommer les champs sélectionnés avec "
-"le nom indiqué. Si un ensemble complet\n"
-" d'enregistrements est sélectionné, "
-"alors le champ est également renommé dans\n"
+" -s, --set=VALEUR changer la valeur des champs sélectionnés.\n"
+" -a, --add=VALEUR ajouter les champs sélectionnés avec la valeur indiquée.\n"
+" -S, --set-add=VALEUR changer la valeur des champs sélectionner. Si ils n'existent pas,\n"
+" ajouter un nouveau champ avec cette valeur.\n"
+" -r, --rename=NOM renommer les champs sélectionnés avec le nom indiqué. Si un ensemble complet\n"
+" d'enregistrements est sélectionné, alors le champ est également renommé dans\n"
" le descripteur d'enregistrement.\n"
" -d, --delete effacer les champs sélectionnés.\n"
-" -c, --comment mettre en commentaire les champs "
-"sélectionnés.\n"
+" -c, --comment mettre en commentaire les champs sélectionnés.\n"
-#: utils/recset.c:168
+#: utils/recset.c:180
msgid "please specify some field with -f.\n"
msgstr "veuillez spécifier des champs avec -f.\n"
-#: utils/recset.c:173
+#: utils/recset.c:185
msgid "please specify just one action.\n"
msgstr "veuillez ne spécifier qu'une seule action.\n"
-#: utils/recset.c:213
+#: utils/recset.c:225
msgid "invalid field expression in -f.\n"
msgstr "expression de champ invalide dans -f.\n"
-#: utils/recset.c:221
+#: utils/recset.c:233
msgid "creating the field expression.\n"
msgstr "création de l'expression de champ.\n"
-#: utils/recset.c:243
-msgid ""
-"the rename operation requires just one field with an optional subscript.\n"
-msgstr ""
-"l'opération de renommage requiert un seul champ avec un indice optionnel.\n"
+#: utils/recset.c:255
+msgid "the rename operation requires just one field with an optional subscript.\n"
+msgstr "l'opération de renommage requiert un seul champ avec un indice optionnel.\n"
+
+#: utils/recset.c:449 utils/recutl.c:489
+msgid "operation aborted due to integrity failures.\n"
+msgstr "opération annulée à cause d'erreurs d'intégrité.\n"
+
+#: utils/recset.c:450 utils/recutl.c:490
+msgid "use --verbose to get a detailed report.\n"
+msgstr "utilisez --verbose pour obtenir un rapport détaillé.\n"
+
+#: utils/recset.c:457 utils/recutl.c:497
+msgid "use --force to skip the integrity check.\n"
+msgstr "utilisez --force pour ignorer la validation d'intégrité.\n"
#. TRANSLATORS: --help output 5+ (reports)
#. TRANSLATORS: the placeholder indicates the bug-reporting address
#. for this application. Please add _another line_ with the
#. address for translation bugs.
#. no-wrap
-#: utils/recutl.c:113
+#: utils/recutl.c:129
#, c-format
msgid "Report bugs to: %s\n"
msgstr ""
"Signalez les bugs à: %s\n"
"Signalez les erreurs de traduction à: address@hidden"
-#: utils/recutl.c:116
+#: utils/recutl.c:132
#, c-format
msgid "Report %s bugs to: %s\n"
msgstr "Rapportez les bugs de %s à: %s\n"
-#: utils/recutl.c:120
+#: utils/recutl.c:136
#, c-format
msgid "%s home page: <%s>\n"
msgstr "Page d'accueil de %s: <%s>\n"
-#: utils/recutl.c:122
+#: utils/recutl.c:138
#, c-format
msgid "%s home page: \n"
msgstr "Page d'accueil de %s: \n"
-#: utils/recutl.c:125
+#: utils/recutl.c:141
msgid "General help using GNU software: \n"
-msgstr ""
-"Aide générale sur l'utilisation des logiciels GNU: \n"
+msgstr "Aide générale sur l'utilisation des logiciels GNU: \n"
#. TRANSLATORS: --help output, common arguments.
#. no-wrap
-#: utils/recutl.c:134
+#: utils/recutl.c:150
msgid ""
" --help print a help message and exit.\n"
" --version show version and exit.\n"
msgstr ""
-" --help afficher un message d'aide et "
-"quitter.\n"
+" --help afficher un message d'aide et quitter.\n"
" --version afficher la version et quitter.\n"
#. TRANSLATORS: --help output, record selection arguments
#. no-wrap
-#: utils/recutl.c:145
-#, fuzzy
+#: utils/recutl.c:161
msgid ""
"Record selection options:\n"
-" -i, --case-insensitive make strings case-insensitive in "
-"selection\n"
+" -i, --case-insensitive make strings case-insensitive in selection\n"
" expressions.\n"
-" -t, --type=TYPE operate on records of the specified "
-"type only.\n"
-" -e, --expression=RECORD_EXPR selection expression.\n"
-" -q, --quick=STR select records with fields containing "
-"a string.\n"
-" -n, --number=NUM,... select specific records by position, "
-"with ranges.\n"
-" -m, --random=NUM select a given number of random "
-"records.\n"
+" -t, --type=TYPE operate on records of the specified type only.\n"
+" -e, --expression=EXPR selection expression.\n"
+" -q, --quick=STR select records with fields containing a string.\n"
+" -n, --number=NUM,... select specific records by position, with ranges.\n"
+" -R, --random=NUM select a given number of random records.\n"
msgstr ""
"Options de sélection des enregistrements:\n"
-" -i, --case-insensitive rendre les chaînes insensibles à la "
-"casse dans les expressions\n"
+" -i, --case-insensitive rendre les chaînes insensibles à la casse dans les expressions\n"
" de sélection.\n"
-" -t, --type=TYPE agir uniquement sur les "
-"enregistrements du type sélectionné.\n"
+" -t, --type=TYPE agir uniquement sur les enregistrements du type sélectionné.\n"
" -e, --expression=EXPR expression de sélection.\n"
-" -q, --quick=CHAÎNE sélectionner les enregistrements avec "
-"des champs contenant une chaîne.\n"
-" -n, --number=NUM... sélectionner les enregistrements "
-"spécifiés par position (plage permise).\n"
-" -R, --random=NUM sélectionner un nombre aléatoire "
-"d'enregistrements.\n"
+" -q, --quick=CHAÎNE sélectionner les enregistrements avec des champs contenant une chaîne.\n"
+" -n, --number=NUM... sélectionner les enregistrements spécifiés par position (plage permise).\n"
+" -R, --random=NUM sélectionner un nombre aléatoire d'enregistrements.\n"
-#: utils/recutl.c:170
+#: utils/recutl.c:186
#, c-format
msgid ""
"Copyright (C) %s Jose E. Marchesi.\n"
-"License GPLv3+: GNU GPL version 3 or later .\n"
+"License GPLv3+: GNU GPL version 3 or later .\n"
"This is free software: you are free to change and redistribute it.\n"
"There is NO WARRANTY, to the extent permitted by law.\n"
msgstr ""
"Copyright (C) %s Jose E. Marchesi.\n"
-"License GPLv3+: GNU GPL version 3 ou supérieure .\n"
-"Ceci est un logiciel libre: vous êtes libre de le changer et de le "
-"redistribuer.\n"
+"License GPLv3+: GNU GPL version 3 ou supérieure .\n"
+"Ceci est un logiciel libre: vous êtes libre de le changer et de le redistribuer.\n"
"Il n'y a PAS de GARANTIE, dans les limites permises par la loi.\n"
-#: utils/recutl.c:176
+#: utils/recutl.c:192
msgid ""
"\n"
"Written by Jose E. Marchesi."
@@ -1377,83 +1173,51 @@ msgstr ""
"\n"
"Écrit par Jose E. Marchesi."
-#: utils/recutl.c:188 utils/recutl.c:202
+#: utils/recutl.c:204 utils/recutl.c:218
msgid ": error: "
msgstr ": erreur: "
-#: utils/recutl.c:214
+#: utils/recutl.c:230
msgid ": warning: "
msgstr ": avertissement: "
-#: utils/recutl.c:238
+#: utils/recutl.c:254
#, c-format
msgid "duplicated record set '%s' from %s.\n"
msgstr "ensemble d'enregistrement « %s » en double dans %s.\n"
-#: utils/recutl.c:396
+#: utils/recutl.c:412
msgid "cannot create a unique name.\n"
msgstr "impossible de créer un nom unique.\n"
-#: utils/recutl.c:417
+#: utils/recutl.c:433
#, c-format
msgid "renaming file %s to %s\n"
msgstr "renomme le fichier %s en %s\n"
-#: utils/recutl.c:448
+#: utils/recutl.c:464
#, c-format
msgid "reading file %s"
msgstr "lecture du fichier %s"
-#: utils/recutl.c:473
-msgid "operation aborted due to integrity failures.\n"
-msgstr "opération annulée à cause d'erreurs d'intégrité.\n"
-
-#: utils/recutl.c:474
-msgid "use --verbose to get a detailed report.\n"
-msgstr "utilisez --verbose pour obtenir un rapport détaillé.\n"
-
-#: utils/recutl.c:481
-msgid "use --force to skip the integrity check.\n"
-msgstr "utilisez --force pour ignorer la validation d'intégrité.\n"
-
-#: utils/recutl.c:542
+#: utils/recutl.c:553
msgid "internal error: recutl_index_list_parse: error compiling regexp.\n"
-msgstr ""
-"erreur interne: recutl_index_list_parse: erreur à la compilation de la "
-"regexp.\n"
-
-#~ msgid ""
-#~ "%s:%s: warning: type %s collides with referred type %s in the rset %s.\n"
-#~ msgstr ""
-#~ "%s:%s: attention: le type %s entre en collision avec le type référé %s "
-#~ "dans le rset %s.\n"
-
-#~ msgid "evaluating the selection expression.\n"
-#~ msgstr "évaluation de l'expression sélectionnée.\n"
+msgstr "erreur interne: recutl_index_list_parse: erreur à la compilation de la regexp.\n"
#~ msgid "internal error: rec_resolver_check: error compiling regexp.\n"
-#~ msgstr ""
-#~ "erreur interne: rec_resolver_check: erreur lors de la compilation de la "
-#~ "regexp.\n"
+#~ msgstr "erreur interne: rec_resolver_check: erreur lors de la compilation de la regexp.\n"
#~ msgid "internal error: rec_field_name_part_str_p: error compiling regexp.\n"
-#~ msgstr ""
-#~ "erreur interne: rec_field_name_part_str_p: erreur à la compilation de la "
-#~ "regexp.\n"
+#~ msgstr "erreur interne: rec_field_name_part_str_p: erreur à la compilation de la regexp.\n"
#~ msgid "internal error: rec_int_rec_type_p: error compiling regexp.\n"
-#~ msgstr ""
-#~ "erreur interne: rec_int_rec_type_p: erreur à la compilation de la "
-#~ "regexp.\n"
+#~ msgstr "erreur interne: rec_int_rec_type_p: erreur à la compilation de la regexp.\n"
#~ msgid "internal error: rec-types: error compiling regexp.\n"
#~ msgstr "erreur interne: rec-types: erreur à la compilation de la regexp.\n"
-#~ msgid ""
-#~ "the record set contains confidential fields but no password was provided\n"
-#~ msgstr ""
-#~ "l'ensemble d'enregistrements contient des champs confidentiels mais aucun "
-#~ "mot de passe n'a été fourni\n"
+#~ msgid "the record set contains confidential fields but no password was provided\n"
+#~ msgstr "l'ensemble d'enregistrements contient des champs confidentiels mais aucun mot de passe n'a été fourni\n"
#~ msgid "the resulting record will have those fields unencrypted!\n"
#~ msgstr "l'enregistrement résultant contiendra ces champs non chiffrés !\n"
diff --git a/po/sr.po b/po/sr.po
index ae9e196..b4b81c6 100644
--- a/po/sr.po
+++ b/po/sr.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: recutils-1.5\n"
"Report-Msgid-Bugs-To: address@hidden"
-"POT-Creation-Date: 2012-02-29 21:43+0100\n"
+"POT-Creation-Date: 2012-01-13 12:00+0100\n"
"PO-Revision-Date: 2012-06-15 09:02+0200\n"
"Last-Translator: Мирослав Николић \n"
"Language-Team: Serbian \n"
@@ -14,8 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
-"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
#: lib/closeout.c:112
msgid "write error"
@@ -211,16 +210,14 @@ msgstr "%s потпроцес је добио кобни сигнал %d"
msgid "memory exhausted"
msgstr "меморија је потрошена"
-#: src/rec-fex.c:379
+#: src/rec-fex.c:377
#, c-format
msgid "internal error: REC_FEX_MAX_ELEMS exceeded. Please report this.\n"
-msgstr ""
-"унутрашња грешка: „REC_FEX_MAX_ELEMS“ је превелико. Молим известите о "
-"овоме.\n"
+msgstr "унутрашња грешка: „REC_FEX_MAX_ELEMS“ је превелико. Молим известите о овоме.\n"
#: src/rec-int.c:172
-#, fuzzy, c-format
-msgid "%s: error: the number of records of type %s should be %zd.\n"
+#, c-format
+msgid "%s: error: the number of records of type %s shall be %zd.\n"
msgstr "%s: грешка: број записа врсте %s ће бити %zd.\n"
#: src/rec-int.c:182
@@ -233,241 +230,212 @@ msgstr "%s: грешка: превише записа врсте %s. Најви
msgid "%s: error: too few records of type %s. Minimum allowed are %zd.\n"
msgstr "%s: грешка: премало записа врсте %s. Најмање је дозвољено %zd.\n"
-#: src/rec-int.c:350
+#: src/rec-int.c:305
+#, c-format
+msgid "%s:%s: warning: type %s collides with referred type %s in the rset %s.\n"
+msgstr "%s:%s: упозорење: врста %s се сукобљава са врстом примерка %s у рскупу %s.\n"
+
+#: src/rec-int.c:410
#, c-format
msgid "%s:%s: error: mandatory field '%s' not found in record\n"
msgstr "%s:%s: грешка: обавезно поље „%s“ није пронађено у запису\n"
-#: src/rec-int.c:401
+#: src/rec-int.c:463
#, c-format
msgid "%s:%s: error: field '%s' should be unique in this record\n"
msgstr "%s:%s: грешка: поље „%s“ треба да буде јединствено у овом запису\n"
-#: src/rec-int.c:452
+#: src/rec-int.c:516
#, c-format
msgid "%s:%s: error: prohibited field '%s' found in record\n"
msgstr "%s:%s: грешка: забрањено поље „%s“ је пронађено у запису\n"
-#: src/rec-int.c:491
+#: src/rec-int.c:555
#, c-format
msgid "%s:%s: error: confidential field is not encrypted\n"
msgstr "%s:%s: грешка: поверљиво поље није шифровано\n"
-#: src/rec-int.c:543
+#: src/rec-int.c:607
#, c-format
msgid "%s:%s: error: key field '%s' not found in record\n"
msgstr "%s:%s: грешка: кључно поље „%s“ није пронађено у запису\n"
-#: src/rec-int.c:552
+#: src/rec-int.c:616
#, c-format
msgid "%s:%s: error: multiple key fields '%s' in record\n"
msgstr "%s:%s: грешка: више кључних поља „%s“ у запису\n"
-#: src/rec-int.c:595
+#: src/rec-int.c:659
#, c-format
msgid "%s:%s: error: duplicated key value in field '%s' in record\n"
msgstr "%s:%s: грешка: удвострчена вредност кључа у пољу „%s“ у запису\n"
-#: src/rec-int.c:643
+#: src/rec-int.c:709
#, c-format
msgid "%s:%s: error: missing %%rec field in record descriptor\n"
msgstr "%s:%s: грешка: недостаје %%рек поље у описнику записа\n"
-#: src/rec-int.c:651
+#: src/rec-int.c:717
#, c-format
msgid "%s:%s: error: too many %%rec fields in record descriptor\n"
msgstr "%s:%s: грешка: превише %%rec поља у описнику записа\n"
-#: src/rec-int.c:661
+#: src/rec-int.c:727
#, c-format
msgid "%s:%s: error: invalid record type %s\n"
msgstr "%s:%s: грешка: неисправна врста записа %s\n"
-#: src/rec-int.c:672
+#: src/rec-int.c:738
#, c-format
msgid "%s:%s: error: only one %%key field is allowed in a record descriptor\n"
msgstr "%s:%s: грешка: само једно %%key поље је дозвољено у описнику записа\n"
-#: src/rec-int.c:682
+#: src/rec-int.c:748
#, c-format
msgid "%s:%s: error: only one %%size field is allowed in a record descriptor\n"
msgstr "%s:%s: грешка: само једно %%size поље је дозвољено у описнику записа\n"
-#: src/rec-int.c:692
+#: src/rec-int.c:758
#, c-format
msgid "%s:%s: error: only one %%sort field is allowed in a record descriptor\n"
msgstr "%s:%s: грешка: само једно %%sort поље је дозвољено у описнику записа\n"
-#: src/rec-int.c:715
+#: src/rec-int.c:782
#, c-format
-msgid ""
-"%s:%s: error: expected a comma-separated list of fields before the type "
-"specification\n"
-msgstr ""
-"%s:%s: грешка: очекиван је зарезом раздвојен списак поља пре спецификације "
-"врсте\n"
+msgid "%s:%s: error: expected a comma-separated list of fields before the type specification\n"
+msgstr "%s:%s: грешка: очекиван је зарезом раздвојен списак поља пре спецификације врсте\n"
-#: src/rec-int.c:741 src/rec-int.c:794
+#: src/rec-int.c:808 src/rec-int.c:861
#, c-format
msgid "%s:%s: error: the referred type %s does not exist\n"
msgstr "%s:%s: грешка: односна врста %s не постоји\n"
-#: src/rec-int.c:753
+#: src/rec-int.c:820
#, c-format
msgid "%s:%s: error: invalid type specification\n"
msgstr "%s:%s: грешка: неисправна спецификација врсте\n"
-#: src/rec-int.c:768
+#: src/rec-int.c:835
#, c-format
msgid "%s:%s: error: expected a type name before the type specification\n"
msgstr "%s:%s: грешка: очекиван је назив врсте пре спецификације врсте\n"
-#: src/rec-int.c:806
+#: src/rec-int.c:873
#, c-format
msgid "%s:%s: error: invalid typedef specification\n"
msgstr "%s:%s: грешка: неисправна спецификација одреднице врсте\n"
-#: src/rec-int.c:828
+#: src/rec-int.c:895
#, c-format
msgid "%s:%s: error: value for %s[%zd] is not a list of field names\n"
msgstr "%s:%s: грешка: вредност за %s[%zd] није списак назива поља\n"
-#: src/rec-int.c:844
-#, fuzzy, c-format
-msgid "%s:%s: error: value for %s should be a field name.\n"
+#: src/rec-int.c:911
+#, c-format
+msgid "%s:%s: error: value for %s shall be a field name.\n"
msgstr "%s:%s: грешка: вредност за %s ће бити назив поља.\n"
-#: src/rec-int.c:856
-#, fuzzy, c-format
-msgid ""
-"%s:%s: error: value for %s should be a number optionally preceded by >, <, "
-">= or <=.\n"
-msgstr ""
-"%s:%s: грешка: вредност за %s ће бити број коме по могућности претходи >, <, "
-">= или <=.\n"
+#: src/rec-int.c:923
+#, c-format
+msgid "%s:%s: error: value for %s shall be a number optionally preceded by >, <, >= or <=.\n"
+msgstr "%s:%s: грешка: вредност за %s ће бити број коме по могућности претходи >, <, >= или <=.\n"
-#: src/rec-int.c:872
-#, fuzzy, c-format
-msgid "%s:%s: error: value for %s should be a list of field names.\n"
+#: src/rec-int.c:939
+#, c-format
+msgid "%s:%s: error: value for %s shall be a list of field names.\n"
msgstr "%s:%s: грешка: вредност за %s ће бити списак назива поља.\n"
-#: src/rec-int.c:900
-#, fuzzy, c-format
-msgid ""
-"%s:%s: error: auto-incremented field %s should be of type int, range, uuid "
-"or date\n"
-msgstr ""
-"%s:%s: грешка: само-повећано поље %s ће бити врсте „int“ (цео број), "
-"„range“ (опсег) или „date“ (датум)\n"
-
-#: src/rec-int.c:902
-#, fuzzy, c-format
-msgid ""
-"%s:%s: error: auto-incremented field %s should be of type int, range or "
-"date\n"
-msgstr ""
-"%s:%s: грешка: само-повећано поље %s ће бити врсте „int“ (цео број), "
-"„range“ (опсег) или „date“ (датум)\n"
+#: src/rec-int.c:964
+#, c-format
+msgid "%s:%s: error: auto-incremented field %s shall be of type int, range or date\n"
+msgstr "%s:%s: грешка: само-повећано поље %s ће бити врсте „int“ (цео број), „range“ (опсег) или „date“ (датум)\n"
-#: src/rec-int.c:985
+#: src/rec-int.c:1046
#, c-format
msgid "%s:%s: error: could not fetch remote descriptor from url %s.\n"
msgstr "%s:%s: грешка: не могу да довучем удаљени описник са адресе %s.\n"
-#: src/rec-int.c:1004
+#: src/rec-int.c:1065
#, c-format
msgid "%s:%s: error: could not read external descriptor from file %s.\n"
msgstr "%s:%s: грешка: не могу прочитам спољни описник из датотеке %s.\n"
-#: src/rec-int.c:1019
+#: src/rec-int.c:1080
#, c-format
msgid "%s:%s: error: %s does not contain valid rec data.\n"
msgstr "%s:%s: грешка: %s не садржи исправне податке записа.\n"
-#: src/rec-int.c:1033
+#: src/rec-int.c:1094
#, c-format
msgid "%s:%s: error: %s does not contain information for type %s.\n"
msgstr "%s:%s: грешка: %s не садржи податке за врсту %s.\n"
-#: src/rec-types.c:416
+#: src/rec-types.c:393
#, c-format
-msgid ""
-"internal error: rec-types: got REC_TYPE_NONE from rec_type_parse_type_kind() "
-"in rec_type_new().\n"
-msgstr ""
-"унутрашња грешка: врсте-записа: добих „REC_TYPE_NONE“ из "
-"„rec_type_parse_type_kind()“ у „rec_type_new()“.\n"
+msgid "internal error: rec-types: got REC_TYPE_NONE from rec_type_parse_type_kind() in rec_type_new().\n"
+msgstr "унутрашња грешка: врсте-записа: добих „REC_TYPE_NONE“ из „rec_type_parse_type_kind()“ у „rec_type_new()“.\n"
-#: src/rec-types.c:956
+#: src/rec-types.c:913
msgid "invalid integer."
msgstr "неисправ цео број."
-#: src/rec-types.c:972
+#: src/rec-types.c:929
msgid "invalid 'field' value."
msgstr "неисправна вредност „field“."
-#: src/rec-types.c:995
-#, fuzzy
-msgid "invalid 'uuid' value."
-msgstr "неисправна вредност „field“."
-
-#: src/rec-types.c:1013
+#: src/rec-types.c:945
msgid "invalid 'bool' value."
msgstr "неисправна вредност „bool“."
-#: src/rec-types.c:1036
+#: src/rec-types.c:968
msgid "invalid 'range' value."
msgstr "неисправна вредност „range“."
-#: src/rec-types.c:1045
+#: src/rec-types.c:977
#, c-format
msgid "expected an integer between %d and %d."
msgstr "очекиван је цео број између %d и %d."
-#: src/rec-types.c:1066
+#: src/rec-types.c:998
msgid "invalid 'real' value."
msgstr "неисправна вредност „real“."
-#: src/rec-types.c:1084
+#: src/rec-types.c:1016
#, c-format
msgid "value too large. Expected a size <= %zu."
msgstr "вредност је превелика. Очекивана вредност је <= %zu."
-#: src/rec-types.c:1105
+#: src/rec-types.c:1037
msgid "invalid 'line' value."
msgstr "неисправна вредност „line“."
-#: src/rec-types.c:1124
+#: src/rec-types.c:1056
msgid "value does not match the regexp."
msgstr "вредност се не поклапа са регуларним изразом."
-#: src/rec-types.c:1147
+#: src/rec-types.c:1079
msgid "invalid date."
msgstr "неисправан датум."
-#: src/rec-types.c:1163
+#: src/rec-types.c:1095
msgid "invalid email."
msgstr "неисправна ел. пошта."
-#: src/rec-types.c:1217
+#: src/rec-types.c:1149
msgid "invalid enum value."
msgstr "неисправна бројевна вредност."
#: src/rec-utils.c:87
#, c-format
msgid "internal error: rec_int_rec_extract_file: error compiling regexp.\n"
-msgstr ""
-"унутрашња грешка: „rec_int_rec_extract_file“: грешка превођења регуларног "
-"израза.\n"
+msgstr "унутрашња грешка: „rec_int_rec_extract_file“: грешка превођења регуларног израза.\n"
-#: src/rec-utils.c:115 src/rec-utils.c:144
+#: src/rec-utils.c:115 src/rec-utils.c:143
#, c-format
msgid "internal error: rec_int_rec_extract_url: error compiling regexp.\n"
-msgstr ""
-"унутрашња грешка: „rec_int_rec_extract_url“: грешка превођења регуларног "
-"израза.\n"
+msgstr "унутрашња грешка: „rec_int_rec_extract_url“: грешка превођења регуларног израза.\n"
-#: src/rec-utils.c:290
+#: src/rec-utils.c:289
#, c-format
msgid "internal error: rec_match: error compiling regexp.\n"
msgstr "унутрашња грешка: „rec_match“: грешка превођења регуларног израза.\n"
@@ -489,17 +457,13 @@ msgstr "Претворите цсв податке у податке запис
#. no-wrap
#: utils/csv2rec.c:115
msgid ""
-" -t, --type=TYPE type name for the converted records; "
-"if this\n"
-" parameter is ommited then no type is "
-"used.\n"
+" -t, --type=TYPE type name for the converted records; if this\n"
+" parameter is ommited then no type is used.\n"
" -s, --strict be strict parsing the csv file.\n"
" -e, --omit-empty omit empty fields.\n"
msgstr ""
-" -t, --type=ВРСТА назив врсте за претворене записе; ако "
-"је овај\n"
-" параметар изостављен онда се не "
-"користи врста.\n"
+" -t, --type=ВРСТА назив врсте за претворене записе; ако је овај\n"
+" параметар изостављен онда се не користи врста.\n"
" -s, --strict бива тачан обрађујући цсв датотеку.\n"
" -e, --omit-empty изоставља празна поља.\n"
@@ -513,26 +477,26 @@ msgstr "достигнут је највећи број поља: %d\n"
msgid "invalid field name '%s' in header\n"
msgstr "неисправан назив поља „%s“ у заглављу\n"
-#: utils/csv2rec.c:246 utils/csv2rec.c:282 utils/csv2rec.c:297
-#: utils/mdb2rec.c:310 utils/mdb2rec.c:423 utils/recsel.c:420
+#: utils/csv2rec.c:248 utils/csv2rec.c:287 utils/csv2rec.c:302
+#: utils/mdb2rec.c:326 utils/mdb2rec.c:439
msgid "out of memory\n"
msgstr "нема више меморије\n"
-#: utils/csv2rec.c:254
+#: utils/csv2rec.c:258
msgid "not enough headers"
msgstr "нема довољно заглавља"
-#: utils/csv2rec.c:339 utils/recdel.c:268 utils/recset.c:361
-#: utils/recutl.c:278
+#: utils/csv2rec.c:344 utils/recdel.c:328 utils/recset.c:706
+#: utils/recutl.c:294
#, c-format
msgid "cannot read file %s\n"
msgstr "не могу да прочитам датотеку „%s“\n"
-#: utils/csv2rec.c:350
+#: utils/csv2rec.c:355
msgid "failed to initialize csv parser\n"
msgstr "нисам успео да покренем цсв обрађивача\n"
-#: utils/csv2rec.c:368
+#: utils/csv2rec.c:373
#, c-format
msgid "error while parsing CSV file: %s\n"
msgstr "грешка приликом обраде ЦСВ датотеке: %s\n"
@@ -557,8 +521,7 @@ msgid ""
" -s, --system-tables include system tables.\n"
" -e, --keep-empty-fields don't prune empty fields in the rec\n"
" output.\n"
-" -l, --list-tables dump a list of the table names "
-"contained\n"
+" -l, --list-tables dump a list of the table names contained\n"
" in the mdb file.\n"
msgstr ""
" -s, --system-tables укључује системске табеле.\n"
@@ -567,36 +530,36 @@ msgstr ""
" -l, --list-tables прослеђује списак назива табела\n"
" садржаних у мдб датотеци.\n"
-#: utils/mdb2rec.c:251 utils/mdb2rec.c:317
+#: utils/mdb2rec.c:252 utils/mdb2rec.c:333
#, c-format
msgid "failed to normalise record type name %s\n"
msgstr "нисам успео да нормализујем назив врсте записа %s\n"
-#: utils/mdb2rec.c:259 utils/mdb2rec.c:270
+#: utils/mdb2rec.c:260 utils/mdb2rec.c:272
#, c-format
msgid "failed to normalise field name %s\n"
msgstr "нисам успео да нормализујем назив поља %s\n"
-#: utils/mdb2rec.c:338
+#: utils/mdb2rec.c:354
#, c-format
msgid "failed to normalise the field name %s\n"
msgstr "нисам успео да нормализујем назив поља %s\n"
-#: utils/mdb2rec.c:447 utils/recins.c:209 utils/recset.c:253
+#: utils/mdb2rec.c:465 utils/recins.c:342 utils/recset.c:265
#, c-format
msgid "invalid field name %s.\n"
msgstr "неисправан назив поља %s.\n"
-#: utils/mdb2rec.c:478 utils/rec2csv.c:193 utils/rec2csv.c:200
+#: utils/mdb2rec.c:496 utils/rec2csv.c:193 utils/rec2csv.c:200
msgid "out of memory"
msgstr "нема више меморије"
-#: utils/mdb2rec.c:488
+#: utils/mdb2rec.c:506
#, c-format
msgid "could not open file %s\n"
msgstr "не могу да отворим датотеку %s\n"
-#: utils/mdb2rec.c:495
+#: utils/mdb2rec.c:513
msgid "file does not appear to be an Access database\n"
msgstr "датотека не изгледа да је база пдатака Аксеса\n"
@@ -617,37 +580,28 @@ msgstr "Претворите податке записа у цсв податк
#. no-wrap
#: utils/rec2csv.c:96
msgid ""
-" -t, --type=TYPE record set to convert to csv; if this "
-"parameter\n"
-" is omitted then the default record "
-"set is used\n"
-" -S, --sort=FIELD sort the output by the specified "
-"field.\n"
+" -t, --type=TYPE record set to convert to csv; if this parameter\n"
+" is omitted then the default record set is used\n"
+" -S, --sort=FIELD sort the output by the specified field.\n"
msgstr ""
-" -t, --type=ВРСТА скуп записа за претварање у цсв; ако "
-"је овај параматар\n"
-" изостављен онда се користи основни "
-"скуп записа\n"
+" -t, --type=ВРСТА скуп записа за претварање у цсв; ако је овај параматар\n"
+" изостављен онда се користи основни скуп записа\n"
" -S, --sort=ПОЉЕ ређа резултат према наведеном пољу.\n"
-#: utils/rec2csv.c:135 utils/recsel.c:230
+#: utils/rec2csv.c:135 utils/recsel.c:228
msgid "only one field can be specified as a sorting criteria.\n"
msgstr "само једно поље може бити наведено као критеријум ређања.\n"
-#: utils/rec2csv.c:142 utils/recsel.c:237
+#: utils/rec2csv.c:142 utils/recsel.c:235
msgid "invalid field name in -S.\n"
msgstr "неисправан назив поља у -S.\n"
#. TRANSLATORS: --help output, recdel synopsis.
#. no-wrap
#: utils/recdel.c:89
-#, fuzzy, c-format
-msgid ""
-"Usage: recdel [OPTIONS]... [-t TYPE] [-n NUM | -e RECORD_EXPR | -q STR | -m "
-"NUM] [FILE]\n"
-msgstr ""
-"Употреба: recdel [ОПЦИЈЕ]... [-t ВРСТА] [-n БРОЈ | -e ИЗРАЗ | -q НИЗ | -m "
-"БРОЈ] [ДАТОТЕКА]\n"
+#, c-format
+msgid "Usage: recdel [OPTIONS]... [-t TYPE] [-n NUM | -e EXPR | -q STR | -m NUM] [FILE]\n"
+msgstr "Употреба: recdel [ОПЦИЈЕ]... [-t ВРСТА] [-n БРОЈ | -e ИЗРАЗ | -q НИЗ | -m БРОЈ] [ДАТОТЕКА]\n"
#. TRANSLATORS: --help output, recdel short description.
#. no-wrap
@@ -659,24 +613,18 @@ msgstr "Уклоните (или ставите у напомену) запис
#. no-wrap
#: utils/recdel.c:101
msgid ""
-" -c, --comment comment out the matching records "
-"instead of\n"
+" -c, --comment comment out the matching records instead of\n"
" deleting them.\n"
-" --force delete even in potentially dangerous "
-"situations,\n"
-" and if the deletion is violating "
-"record restrictions.\n"
+" --force delete even in potentially dangerous situations,\n"
+" and if the deletion is violating record restrictions.\n"
" --no-external don't use external descriptors.\n"
-" --verbose give a detailed report if the "
-"integrity check\n"
+" --verbose give a detailed report if the integrity check\n"
" fails.\n"
msgstr ""
" -c, --comment ставља у напомену подударајуће записе\n"
" уместо да их брише.\n"
-" --force брише чак и у потенцијално опасним "
-"ситуацијама,\n"
-" и ако брисање нарушава ограничења "
-"записа.\n"
+" --force брише чак и у потенцијално опасним ситуацијама,\n"
+" и ако брисање нарушава ограничења записа.\n"
" --no-external не користи спољне описнике.\n"
" --verbose даје опширан извештај ако провера\n"
" целовитости не успе.\n"
@@ -695,23 +643,25 @@ msgstr ""
"Ако ДАТОТЕКА није наведена онда наредба делује као пропусник, добављајући\n"
"податке са стандардног улаза и записујући резултат на стандардни излаз.\n"
-#: utils/recdel.c:136
+#: utils/recdel.c:143
#, c-format
msgid "no records of type %s found.\n"
msgstr "нису пронађени записи врсте %s.\n"
-#: utils/recdel.c:229
+#: utils/recdel.c:224 utils/recins.c:501 utils/recsel.c:447
+msgid "evaluating the selection expression.\n"
+msgstr "процењује израз избора.\n"
+
+#: utils/recdel.c:289
#, c-format
msgid "ignoring a request to delete all records of type %s.\n"
msgstr "занемарује захтев за брисање свих записа врсте %s.\n"
-#: utils/recdel.c:231
+#: utils/recdel.c:291
msgid "use --force if you really want to proceed, or use either -n or -e.\n"
-msgstr ""
-"користите „--force“ ако заиста желите да наставите, или користите „-n“ или „-"
-"e“.\n"
+msgstr "користите „--force“ ако заиста желите да наставите, или користите „-n“ или „-e“.\n"
-#: utils/recdel.c:239
+#: utils/recdel.c:299 utils/recset.c:432
msgid "invalid selection expression.\n"
msgstr "неисправан израз избора.\n"
@@ -732,8 +682,7 @@ msgstr "Проверите и поправите датотеке записа.\
#. no-wrap
#: utils/recfix.c:130
msgid ""
-" -t, --type=TYPE process only records of the given "
-"type.\n"
+" -t, --type=TYPE process only records of the given type.\n"
" --no-external don't use external descriptors.\n"
" --force force the requested operation.\n"
msgstr ""
@@ -746,33 +695,24 @@ msgstr ""
#: utils/recfix.c:141
msgid ""
"Operations:\n"
-" --check check integrity of the specified "
-"file. Default.\n"
-" --sort sort the records in the specified "
-"file.\n"
-" --auto insert auto-generated fields in "
-"records missing them.\n"
+" --check check integrity of the specified file. Default.\n"
+" --sort sort the records in the specified file.\n"
+" --auto insert auto-generated fields in records missing them.\n"
msgstr ""
"Радње:\n"
-" --check cпроверава целовитост наведене "
-"датотеке. Основно.\n"
+" --check cпроверава целовитост наведене датотеке. Основно.\n"
" --sort ређа записе у наведеној датотеци.\n"
-" --auto умеће самостворена поља у записима "
-"који их немају.\n"
+" --auto умеће самостворена поља у записима који их немају.\n"
#. TRANSLATORS: --help output, recfix operations related with encryption.
#. no-wrap
#: utils/recfix.c:151
msgid ""
-" --encrypt encrypt confidential fields in the "
-"specified file.\n"
-" --decrypt decrypt confidential fields in the "
-"specified file.\n"
+" --encrypt encrypt confidential fields in the specified file.\n"
+" --decrypt decrypt confidential fields in the specified file.\n"
msgstr ""
-" --encrypt шифрује поверљива поља у наведеној "
-"датотеци.\n"
-" --decrypt дешифрује поверљива поља у наведеној "
-"датотеци.\n"
+" --encrypt шифрује поверљива поља у наведеној датотеци.\n"
+" --decrypt дешифрује поверљива поља у наведеној датотеци.\n"
#. TRANSLATORS: --help output, recfix encryption and decryption
#. options.
@@ -802,19 +742,19 @@ msgstr "молим наведите барем једну лозинку.\n"
msgid "please specify just one operation.\n"
msgstr "молим наведите барем једну радњу.\n"
-#: utils/recfix.c:307 utils/recins.c:341 utils/recsel.c:359
+#: utils/recfix.c:307 utils/recins.c:173 utils/recsel.c:348
msgid "Password: "
msgstr "Лозинка: "
-#: utils/recfix.c:454
+#: utils/recfix.c:451
msgid "the database contains already encrypted fields\n"
msgstr "база података садржи већ шифрована поља\n"
-#: utils/recfix.c:455
+#: utils/recfix.c:452
msgid "please use --force or --decrypt\n"
msgstr "молим користите „--force“ или „--decrypt“\n"
-#: utils/recfix.c:567
+#: utils/recfix.c:561
msgid "unknown operation in recfix: please report this as a bug.\n"
msgstr "непозната радња у поправци записа: молим пријавите ово као грешку.\n"
@@ -834,11 +774,8 @@ msgstr "Примените шаблон на читања записа са ст
#. TRANSLATORS: --help output, recfmt arguments.
#. no-wrap
#: utils/recfmt.c:89
-msgid ""
-" -f, --file=FILENAME read the template to apply from a "
-"file.\n"
-msgstr ""
-" -f, --file=НАЗИВДАТОТЕКЕ чита шаблон за примену из датотеке.\n"
+msgid " -f, --file=FILENAME read the template to apply from a file.\n"
+msgstr " -f, --file=НАЗИВДАТОТЕКЕ чита шаблон за примену из датотеке.\n"
#: utils/recfmt.c:123
#, c-format
@@ -859,9 +796,7 @@ msgstr "грешка процењивања израза у прикључку
#: utils/recfmt.c:204
msgid "recfmt_apply_template: error compiling regexp. Please report this.\n"
-msgstr ""
-"фмтзпс_примени_шаблон: грешка превођења регуларног израза. Молим пријавите "
-"ово.\n"
+msgstr "фмтзпс_примени_шаблон: грешка превођења регуларног израза. Молим пријавите ово.\n"
#. TRANSLATORS: --help output, recinf synopsis.
#. no-wrap
@@ -880,8 +815,7 @@ msgstr "Исписшите податке о врстама записа уск
#. no-wrap
#: utils/recinf.c:96
msgid ""
-" -t, --type=RECORD_TYPE print information on the records having "
-"the\n"
+" -t, --type=RECORD_TYPE print information on the records having the\n"
" specified type.\n"
" -d, --descriptor include the full record descriptors.\n"
" -n, --names-only output just the names of the record files\n"
@@ -898,14 +832,12 @@ msgstr ""
#: utils/recinf.c:109
msgid ""
"Special options:\n"
-" -S, --print-sexps print the data in sexps instead of rec "
-"format.\n"
+" -S, --print-sexps print the data in sexps instead of rec format.\n"
msgstr ""
"Посебне опције:\n"
-" -S, --print-sexps исписује податке у сехпс уместо у рек "
-"формату.\n"
+" -S, --print-sexps исписује податке у сехпс уместо у рек формату.\n"
-#: utils/recinf.c:260
+#: utils/recinf.c:259
#, c-format
msgid "error: cannot read file %s\n"
msgstr "грешка: не могу да читам датотеку „%s“\n"
@@ -913,13 +845,9 @@ msgstr "грешка: не могу да читам датотеку „%s“\n"
#. TRANSLATORS: --help output, recins synopsis.
#. no-wrap
#: utils/recins.c:112
-#, fuzzy, c-format
-msgid ""
-"Usage: recins [OPTION]... [-t TYPE] [-n NUM | -e RECORD_EXPR | -q STR | -m "
-"NUM] [(-f NAME -v STR) | -R RECDATA]... [FILE]\n"
-msgstr ""
-"Употреба: recins [ОПЦИЈА]... [t ВРСТА] [-n БРОЈ | -e ИЗРАЗ | -q НИЗ | -m "
-"БРОЈ] [(-f НИЗ -v НИЗ]|[-R ПОДАЦИЗАПИСА)]... [ДАТОТЕКА]\n"
+#, c-format
+msgid "Usage: recins [OPTION]... [t TYPE] [-n NUM | -e EXPR | -q STR | -m NUM] [(-f STR -v STR]|[-R RECDATA)]... [FILE]\n"
+msgstr "Употреба: recins [ОПЦИЈА]... [t ВРСТА] [-n БРОЈ | -e ИЗРАЗ | -q НИЗ | -m БРОЈ] [(-f НИЗ -v НИЗ]|[-R ПОДАЦИЗАПИСА)]... [ДАТОТЕКА]\n"
#. TRANSLATORS: --help output, recins short description.
#. no-wrap
@@ -931,214 +859,157 @@ msgstr "Уметните нове записе у базу података.\n"
#. no-wrap
#: utils/recins.c:123
msgid ""
-" -f, --field=STR field name; should be followed by a -"
-"v.\n"
-" -v, --value=STR field value; should be preceded by an -"
-"f.\n"
-" -r, --record=STR record that will be inserted in the "
-"file.\n"
-" --force insert the record even if it is "
-"violating\n"
+" -f, --field=STR field name; should be followed by a -v.\n"
+" -v, --value=STR field value; should be preceded by an -f.\n"
+" -r, --record=STR record that will be inserted in the file.\n"
+" --force insert the record even if it is violating\n"
" record restrictions.\n"
" --no-external don't use external descriptors.\n"
" --no-auto don't insert auto generated fields.\n"
-" --verbose give a detailed report if the "
-"integrity check\n"
+" --verbose give a detailed report if the integrity check\n"
" fails.\n"
msgstr ""
" -f, --field=НИЗ назив поља; трба да га следи -v.\n"
-" -v, --value=НИЗ вредност поља; трба да јој претходи -"
-"f.\n"
-" -r, --record=НИЗ запис који ће бити уметнут у "
-"датотеку.\n"
+" -v, --value=НИЗ вредност поља; трба да јој претходи -f.\n"
+" -r, --record=НИЗ запис који ће бити уметнут у датотеку.\n"
" --force умеће запис чак и ако нарушава\n"
" ограничења записа.\n"
" --no-external не користи спољне описнике.\n"
" --no-auto не умеће самостворена поља.\n"
-" --verbose даје опширан извештај ако провера "
-"целовитости\n"
+" --verbose даје опширан извештај ако провера целовитости\n"
" не успе.\n"
#. TRANSLATORS: --help output, encryption related options.
#. no-wrap
#: utils/recins.c:137
-msgid ""
-" -s, --password=STR encrypt confidential fields with the "
-"given password.\n"
-msgstr ""
-" -s, --password=НИЗ шифрује поверљива поља датом "
-"лозинком.\n"
+msgid " -s, --password=STR encrypt confidential fields with the given password.\n"
+msgstr " -s, --password=НИЗ шифрује поверљива поља датом лозинком.\n"
-#: utils/recins.c:196
+#: utils/recins.c:316
msgid "a -f should be followed by a -v\n"
msgstr "након „-f“ треба да следи „-v“\n"
-#: utils/recins.c:220
+#: utils/recins.c:354
msgid "a -v should be preceded by a -f\n"
msgstr "испред „-v“ треба да претходи „-f“\n"
-#: utils/recins.c:245 utils/recsel.c:218
+#: utils/recins.c:379 utils/recsel.c:216
msgid "more than one password was specified\n"
msgstr "наведено је неколико лозинки\n"
-#: utils/recins.c:259
+#: utils/recins.c:393
msgid "error while parsing the record provided by -r\n"
msgstr "грешка за време обраде записа достављеног „-r“-ом\n"
-#: utils/recins.c:294
+#: utils/recins.c:428
#, c-format
msgid "please provide a value for the field %s\n"
msgstr "молим обезбедите вредност за поље %s\n"
#. TRANSLATORS: --help output, recsel synopsis.
#. no-wrap
-#: utils/recsel.c:116
-#, fuzzy, c-format
-msgid ""
-"Usage: recsel [OPTION]... [-t TYPE] [-n INDEXES | -e RECORD_EXPR | -q STR | -"
-"m NUM] [-c | (-p|-P) FIELD_EXPR] [FILE]...\n"
-msgstr ""
-"Употреба: recsel [ОПЦИЈА]... [-t ВРСТА] [-n ИНДЕКСИ | -e ИЗРАЗ_ЗАПИСА | -q "
-"ИЗРАЗ | -m БРОЈ] [-c | (-p|-P) ИЗРАЗ_ПОЉА] [ДАТОТЕКА]...\n"
+#: utils/recsel.c:115
+#, c-format
+msgid "Usage: recsel [OPTION]... [-t TYPE] [-n INDEXES | -e RECORD_EXPR | -q EXPR | -m NUM] [-c | (-p|-P) FIELD_EXPR] [FILE]...\n"
+msgstr "Употреба: recsel [ОПЦИЈА]... [-t ВРСТА] [-n ИНДЕКСИ | -e ИЗРАЗ_ЗАПИСА | -q ИЗРАЗ | -m БРОЈ] [-c | (-p|-P) ИЗРАЗ_ПОЉА] [ДАТОТЕКА]...\n"
#. TRANSLATORS: --help output, recsel arguments.
#. no-wrap
-#: utils/recsel.c:121
+#: utils/recsel.c:120
msgid "Select and print rec data.\n"
msgstr "Изаберите и исписшите податке записа.\n"
#. TRANSLATORS: --help output, recsel arguments.
#. no-wrap
-#: utils/recsel.c:127
-#, fuzzy
+#: utils/recsel.c:126
msgid ""
-" -d, --include-descriptors print record descriptors along with "
-"the matched\n"
+" -d, --include-descriptors print record descriptors along with the matched\n"
" records.\n"
-" -C, --collapse do not section the result in records "
-"with newlines.\n"
-" -S, --sort=FIELD sort the output by the specified "
-"field.\n"
-" -G, --group-by=FIELD group records by the specified field.\n"
-" -U, --uniq remove duplicated fields in the output "
-"records.\n"
+" -C, --collapse do not section the result in records with newlines.\n"
+" -S, --sort=FIELD sort the output by the specified field.\n"
+" -U, --uniq remove duplicated fields in the output records.\n"
msgstr ""
-" -d, --include-descriptors исписује описнике записа поред "
-"поклопљених\n"
+" -d, --include-descriptors исписује описнике записа поред поклопљених\n"
" записа.\n"
-" -C, --collapse не дели резултат у записима новим "
-"редовима.\n"
+" -C, --collapse не дели резултат у записима новим редовима.\n"
" -S, --sort=ПОЉЕ ређа излазе према наведеном пољу.\n"
-" -U, --uniq уклања удвостручена поља у излазним "
-"записима.\n"
+" -U, --uniq уклања удвостручена поља у излазним записима.\n"
#. TRANSLATORS: --help output, encryption related options.
#. no-wrap
-#: utils/recsel.c:139
-msgid ""
-" -s, --password=STR decrypt confidential fields with the "
-"given password.\n"
-msgstr ""
-" -s, --password=НИЗ дешифрује поверљива поља датом "
-"лозинком.\n"
+#: utils/recsel.c:137
+msgid " -s, --password=STR decrypt confidential fields with the given password.\n"
+msgstr " -s, --password=НИЗ дешифрује поверљива поља датом лозинком.\n"
#. TRANSLATORS: --help output, recsel output options.
#. no-wrap
-#: utils/recsel.c:152
+#: utils/recsel.c:150
msgid ""
"Output options:\n"
-" -p, --print=FIELDS comma-separated list of fields to "
-"print for each\n"
+" -p, --print=FIELDS comma-separated list of fields to print for each\n"
" matching record.\n"
-" -P, --print-values=FIELDS as -p, but print only the values of "
-"the selected\n"
+" -P, --print-values=FIELDS as -p, but print only the values of the selected\n"
" fields.\n"
-" -R, --print-row=FIELDS as -P, but separate the values with "
-"spaces instead\n"
+" -R, --print-row=FIELDS as -P, but separate the values with spaces instead\n"
" of newlines.\n"
-" -c, --count print a count of the matching records "
-"instead of\n"
+" -c, --count print a count of the matching records instead of\n"
" the records themselves.\n"
msgstr ""
"Опције излаза:\n"
-" -p, --print=ПОЉА зарезом раздвојен списак поља за "
-"исписивање за\n"
+" -p, --print=ПОЉА зарезом раздвојен списак поља за исписивање за\n"
" сваки поклопљени запис.\n"
-" -P, --print-values=ПОЉА као -p, али исписује само вредност "
-"изабраних\n"
+" -P, --print-values=ПОЉА као -p, али исписује само вредност изабраних\n"
" поља.\n"
-" -R, --print-row=ПОЉА као -P, али раздваја вредности "
-"просторима уместо\n"
+" -R, --print-row=ПОЉА као -P, али раздваја вредности просторима уместо\n"
" новим редовима.\n"
-" -c, --count исписује број поклопљених записа "
-"уместо\n"
+" -c, --count исписује број поклопљених записа уместо\n"
" самих записа.\n"
#. TRANSLATORS: --help output, recsel special options.
#. no-wrap
-#: utils/recsel.c:166
+#: utils/recsel.c:164
msgid ""
"Special options:\n"
-" --print-sexps print the data in sexps instead of rec "
-"format.\n"
+" --print-sexps print the data in sexps instead of rec format.\n"
msgstr ""
"Посебне опције:\n"
-" --print-sexps исписује податке у сехпс уместо у рек "
-"формату.\n"
+" --print-sexps исписује податке у сехпс уместо у рек формату.\n"
#: utils/recsel.c:247
-#, fuzzy
-msgid "only one field can be specified as a grouping criteria.\n"
-msgstr "само једно поље може бити наведено као критеријум ређања.\n"
-
-#: utils/recsel.c:255
-#, fuzzy
-msgid "invalid field name in -G.\n"
-msgstr "неисправан назив поља у -S.\n"
-
-#: utils/recsel.c:267
msgid "cannot specify -[pPR] and also -c.\n"
msgstr "не можете да наведете „-[pPR]“ и такође „-c“.\n"
-#: utils/recsel.c:284
-#, fuzzy, c-format
-msgid "invalid list of fields in -%c\n"
-msgstr "неисправан назив поља %s.\n"
-
-#: utils/recsel.c:292
+#: utils/recsel.c:273
msgid "internal error creating the field expression.\n"
msgstr "унутрашња грешка стварања израза поља.\n"
-#: utils/recsel.c:308
+#: utils/recsel.c:289
msgid "cannot specify -c and also -p.\n"
msgstr "не можете да наведете „-c“ и такође „-p“.\n"
-#: utils/recsel.c:382
+#: utils/recsel.c:369
msgid "several record types found. Please use -t to specify one.\n"
-msgstr ""
-"пронађено је неколико врста записа. Молим користите „-t“ да наведете "
-"једну.\n"
+msgstr "пронађено је неколико врста записа. Молим користите „-t“ да наведете једну.\n"
#. TRANSLATORS: --help output, recset synopsis.
#. no-wrap
-#: utils/recset.c:113
+#: utils/recset.c:125
#, c-format
msgid "Usage: recset [OPTION]... [FILE]...\n"
msgstr "Употреба: recset [ОПЦИЈА]... [ДАТОТЕКА]...\n"
#. TRANSLATORS: --help output, recset short description.
#. no-wrap
-#: utils/recset.c:118
+#: utils/recset.c:130
msgid "Alter or delete fields in records.\n"
msgstr "Измените или обришите поља у запису.\n"
#. TRANSLATORS: --help output, recset options.
#. no-wrap
-#: utils/recset.c:124
+#: utils/recset.c:136
msgid ""
" --no-external don't use external descriptors.\n"
-" --force alter the records even if violating "
-"record\n"
+" --force alter the records even if violating record\n"
" restrictions.\n"
msgstr ""
" --no-external dне користи смољне описнике.\n"
@@ -1147,11 +1018,10 @@ msgstr ""
#. TRANSLATORS: --help output, recset field selection options.
#. no-wrap
-#: utils/recset.c:137
+#: utils/recset.c:149
msgid ""
"Field selection options:\n"
-" -f, --fields=FIELDS comma-separated list of field names "
-"with optional\n"
+" -f, --fields=FIELDS comma-separated list of field names with optional\n"
" subscripts.\n"
msgstr ""
"Опције избора поља:\n"
@@ -1160,95 +1030,94 @@ msgstr ""
#. TRANSLATORS: --help output, recset actions.
#. no-wrap
-#: utils/recset.c:145
+#: utils/recset.c:157
msgid ""
"Actions:\n"
-" -s, --set=VALUE change the value of the selected "
-"fields.\n"
-" -a, --add=VALUE add the selected fields with the given "
-"value.\n"
-" -S, --set-add=VALUE change the value of the selected "
-"fields. If they don't\n"
-" exist then add a new field with that "
-"value.\n"
-" -r, --rename=NAME rename the selected fields to a given "
-"name. If an entire\n"
-" record set is selected then the "
-"field is renamed in the\n"
+" -s, --set=VALUE change the value of the selected fields.\n"
+" -a, --add=VALUE add the selected fields with the given value.\n"
+" -S, --set-add=VALUE change the value of the selected fields. If they don't\n"
+" exist then add a new field with that value.\n"
+" -r, --rename=NAME rename the selected fields to a given name. If an entire\n"
+" record set is selected then the field is renamed in the\n"
" record descriptor as well.\n"
" -d, --delete delete the selected fields.\n"
" -c, --comment comment out the selected fields.\n"
msgstr ""
"Радње:\n"
" -s, --set=ВРЕДНОСТ мења вредност изабраних поља.\n"
-" -a, --add=ВРЕДНОСТ додаје изабрана поља са датом "
-"вредношћу.\n"
-" -S, --set-add=ВРЕДНОСТ мења вредност изабраних поља. Ако не "
-"постоје\n"
-" тада додаје ново поље са том "
-"вредношћу.\n"
-" -r, --rename=НАЗИВ преименује изабрана поља на дати "
-"назив. Ако је изабран\n"
-" читав скуп записа тада је поље такође "
-"применовано\n"
+" -a, --add=ВРЕДНОСТ додаје изабрана поља са датом вредношћу.\n"
+" -S, --set-add=ВРЕДНОСТ мења вредност изабраних поља. Ако не постоје\n"
+" тада додаје ново поље са том вредношћу.\n"
+" -r, --rename=НАЗИВ преименује изабрана поља на дати назив. Ако је изабран\n"
+" читав скуп записа тада је поље такође применовано\n"
" и у описнику.\n"
" -d, --delete брише изабрана поља.\n"
" -c, --comment ставља у напомену изабрана поља.\n"
-#: utils/recset.c:168
+#: utils/recset.c:180
msgid "please specify some field with -f.\n"
msgstr "молим наведите неко поље са „-f“.\n"
-#: utils/recset.c:173
+#: utils/recset.c:185
msgid "please specify just one action.\n"
msgstr "молим наведите барем једну радњу.\n"
-#: utils/recset.c:213
+#: utils/recset.c:225
msgid "invalid field expression in -f.\n"
msgstr "неисправан израз поља у „-f“.\n"
-#: utils/recset.c:221
+#: utils/recset.c:233
msgid "creating the field expression.\n"
msgstr "стварам израз поља.\n"
-#: utils/recset.c:243
-msgid ""
-"the rename operation requires just one field with an optional subscript.\n"
-msgstr ""
-"радња преименовања захтева само једно поље са опционалним подскриптом.\n"
+#: utils/recset.c:255
+msgid "the rename operation requires just one field with an optional subscript.\n"
+msgstr "радња преименовања захтева само једно поље са опционалним подскриптом.\n"
+
+#: utils/recset.c:449 utils/recutl.c:489
+msgid "operation aborted due to integrity failures.\n"
+msgstr "радња је прекинута услед неуспеха целовитости.\n"
+
+#: utils/recset.c:450 utils/recutl.c:490
+msgid "use --verbose to get a detailed report.\n"
+msgstr "користите „--verbose“ да добијете опширан извештај.\n"
+
+#: utils/recset.c:457 utils/recutl.c:497
+msgid "use --force to skip the integrity check.\n"
+msgstr "користите „--force“ да прескочите проверу целовитости.\n"
#. TRANSLATORS: --help output 5+ (reports)
#. TRANSLATORS: the placeholder indicates the bug-reporting address
#. for this application. Please add _another line_ with the
#. address for translation bugs.
#. no-wrap
-#: utils/recutl.c:113
+#: utils/recutl.c:129
#, c-format
msgid "Report bugs to: %s\n"
msgstr "Грешке пријавите на: %s\n"
-#: utils/recutl.c:116
+#: utils/recutl.c:132
#, c-format
msgid "Report %s bugs to: %s\n"
msgstr "Грешке програма „%s“ пријавите на: %s\n"
-#: utils/recutl.c:120
+#: utils/recutl.c:136
#, c-format
msgid "%s home page: <%s>\n"
msgstr "%s матична страница: <%s>\n"
-#: utils/recutl.c:122
+#: utils/recutl.c:138
#, c-format
msgid "%s home page: \n"
msgstr "%s матична страница: \n"
-#: utils/recutl.c:125
+#: utils/recutl.c:141
msgid "General help using GNU software: \n"
msgstr "Општа помоћ користећи ГНУ софтвер: \n"
#. TRANSLATORS: --help output, common arguments.
#. no-wrap
-#: utils/recutl.c:134
+#: utils/recutl.c:150
msgid ""
" --help print a help message and exit.\n"
" --version show version and exit.\n"
@@ -1258,52 +1127,40 @@ msgstr ""
#. TRANSLATORS: --help output, record selection arguments
#. no-wrap
-#: utils/recutl.c:145
-#, fuzzy
+#: utils/recutl.c:161
msgid ""
"Record selection options:\n"
-" -i, --case-insensitive make strings case-insensitive in "
-"selection\n"
+" -i, --case-insensitive make strings case-insensitive in selection\n"
" expressions.\n"
-" -t, --type=TYPE operate on records of the specified "
-"type only.\n"
-" -e, --expression=RECORD_EXPR selection expression.\n"
-" -q, --quick=STR select records with fields containing "
-"a string.\n"
-" -n, --number=NUM,... select specific records by position, "
-"with ranges.\n"
-" -m, --random=NUM select a given number of random "
-"records.\n"
+" -t, --type=TYPE operate on records of the specified type only.\n"
+" -e, --expression=EXPR selection expression.\n"
+" -q, --quick=STR select records with fields containing a string.\n"
+" -n, --number=NUM,... select specific records by position, with ranges.\n"
+" -R, --random=NUM select a given number of random records.\n"
msgstr ""
"Опције избор азаписа:\n"
-" -i, --case-insensitive чини ниске неосетљиве на величину "
-"слова\n"
+" -i, --case-insensitive чини ниске неосетљиве на величину слова\n"
" у изразима избора.\n"
-" -t, --type=ВРСТА ради само над записима наведене "
-"врсте.\n"
+" -t, --type=ВРСТА ради само над записима наведене врсте.\n"
" -e, --expression=ИЗРАЗ израз избора.\n"
-" -q, --quick=НИЗ бира записе са пољима која садрже "
-"ниску.\n"
-" -n, --number=БРОЈ,... бира нарочите записе према положају, "
-"са опсезима.\n"
+" -q, --quick=НИЗ бира записе са пољима која садрже ниску.\n"
+" -n, --number=БРОЈ,... бира нарочите записе према положају, са опсезима.\n"
" -R, --random=БРОЈ бира дати број насумичних записа.\n"
-#: utils/recutl.c:170
+#: utils/recutl.c:186
#, c-format
msgid ""
"Copyright (C) %s Jose E. Marchesi.\n"
-"License GPLv3+: GNU GPL version 3 or later .\n"
+"License GPLv3+: GNU GPL version 3 or later .\n"
"This is free software: you are free to change and redistribute it.\n"
"There is NO WARRANTY, to the extent permitted by law.\n"
msgstr ""
"Ауторска права (C) %s Хозе Е. Маркези.\n"
-"Лиценца ОЈЛв3+: ГНУ ОЈЛ издање 3 или касније .\n"
+"Лиценца ОЈЛв3+: ГНУ ОЈЛ издање 3 или касније .\n"
"Ово је слободан софтвер: слободни сте да га мењате и расподељујете.\n"
"Не постоји НИКАКВА ГАРАНЦИЈА, у оквирима дозвољеним законом.\n"
-#: utils/recutl.c:176
+#: utils/recutl.c:192
msgid ""
"\n"
"Written by Jose E. Marchesi."
@@ -1311,56 +1168,33 @@ msgstr ""
"\n"
"Написао Хозе Е. Маркези."
-#: utils/recutl.c:188 utils/recutl.c:202
+#: utils/recutl.c:204 utils/recutl.c:218
msgid ": error: "
msgstr ": грешка: "
-#: utils/recutl.c:214
+#: utils/recutl.c:230
msgid ": warning: "
msgstr ": упозорење: "
-#: utils/recutl.c:238
+#: utils/recutl.c:254
#, c-format
msgid "duplicated record set '%s' from %s.\n"
msgstr "удвостручени скуп записа „%s“ из %s.\n"
-#: utils/recutl.c:396
+#: utils/recutl.c:412
msgid "cannot create a unique name.\n"
msgstr "не могу да створим јединствени назив.\n"
-#: utils/recutl.c:417
+#: utils/recutl.c:433
#, c-format
msgid "renaming file %s to %s\n"
msgstr "преименујем датотеку „%s“ у „%s“\n"
-#: utils/recutl.c:448
+#: utils/recutl.c:464
#, c-format
msgid "reading file %s"
msgstr "читам датотеку „%s“"
-#: utils/recutl.c:473
-msgid "operation aborted due to integrity failures.\n"
-msgstr "радња је прекинута услед неуспеха целовитости.\n"
-
-#: utils/recutl.c:474
-msgid "use --verbose to get a detailed report.\n"
-msgstr "користите „--verbose“ да добијете опширан извештај.\n"
-
-#: utils/recutl.c:481
-msgid "use --force to skip the integrity check.\n"
-msgstr "користите „--force“ да прескочите проверу целовитости.\n"
-
-#: utils/recutl.c:542
+#: utils/recutl.c:553
msgid "internal error: recutl_index_list_parse: error compiling regexp.\n"
-msgstr ""
-"унутрашња грешка: „recutl_index_list_parse“: грешка превођења регуларног "
-"израза.\n"
-
-#~ msgid ""
-#~ "%s:%s: warning: type %s collides with referred type %s in the rset %s.\n"
-#~ msgstr ""
-#~ "%s:%s: упозорење: врста %s се сукобљава са врстом примерка %s у рскупу "
-#~ "%s.\n"
-
-#~ msgid "evaluating the selection expression.\n"
-#~ msgstr "процењује израз избора.\n"
+msgstr "унутрашња грешка: „recutl_index_list_parse“: грешка превођења регуларног израза.\n"
diff --git a/po/uk.po b/po/uk.po
index ad4e9b8..404e813 100644
--- a/po/uk.po
+++ b/po/uk.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: GNU recutils 1.5\n"
"Report-Msgid-Bugs-To: address@hidden"
-"POT-Creation-Date: 2012-02-29 21:43+0100\n"
+"POT-Creation-Date: 2012-01-13 12:00+0100\n"
"PO-Revision-Date: 2012-01-14 21:47+0200\n"
"Last-Translator: Yuri Chornoivan \n"
"Language-Team: Ukrainian \n"
@@ -212,16 +212,14 @@ msgstr "Підпроцесом %s отримано сигнал щодо ава
msgid "memory exhausted"
msgstr "пам’ять вичерпано"
-#: src/rec-fex.c:379
+#: src/rec-fex.c:377
#, c-format
msgid "internal error: REC_FEX_MAX_ELEMS exceeded. Please report this.\n"
-msgstr ""
-"внутрішня помилка: перевищено обмеження REC_FEX_MAX_ELEMS. Будь ласка, "
-"повідомте авторам програми про цю помилку.\n"
+msgstr "внутрішня помилка: перевищено обмеження REC_FEX_MAX_ELEMS. Будь ласка, повідомте авторам програми про цю помилку.\n"
#: src/rec-int.c:172
-#, fuzzy, c-format
-msgid "%s: error: the number of records of type %s should be %zd.\n"
+#, c-format
+msgid "%s: error: the number of records of type %s shall be %zd.\n"
msgstr "%s: помилка: кількість записів типу %s має дорівнювати %zd.\n"
#: src/rec-int.c:182
@@ -234,258 +232,215 @@ msgstr "%s: помилка: забагато записів типу %s. Мак
msgid "%s: error: too few records of type %s. Minimum allowed are %zd.\n"
msgstr "%s: помилка: замало записів типу %s. Мінімальною кількістю є %zd.\n"
-#: src/rec-int.c:350
+#: src/rec-int.c:305
+#, c-format
+msgid "%s:%s: warning: type %s collides with referred type %s in the rset %s.\n"
+msgstr "%s:%s: попередження: тип %s суперечить еталонному типу %s у rset %s.\n"
+
+#: src/rec-int.c:410
#, c-format
msgid "%s:%s: error: mandatory field '%s' not found in record\n"
msgstr "%s:%s: помилка: у записі не виявлено обов’язкового поля «%s»\n"
-#: src/rec-int.c:401
+#: src/rec-int.c:463
#, c-format
msgid "%s:%s: error: field '%s' should be unique in this record\n"
-msgstr ""
-"%s:%s: помилка: у цьому записі можна використовувати лише одне поле «%s»\n"
+msgstr "%s:%s: помилка: у цьому записі можна використовувати лише одне поле «%s»\n"
-#: src/rec-int.c:452
+#: src/rec-int.c:516
#, c-format
msgid "%s:%s: error: prohibited field '%s' found in record\n"
msgstr "%s:%s: помилка: у записі виявлено заборонене поле «%s»\n"
-#: src/rec-int.c:491
+#: src/rec-int.c:555
#, c-format
msgid "%s:%s: error: confidential field is not encrypted\n"
msgstr "%s:%s: помилка: вміст поля з конфіденційними даними не зашифровано\n"
-#: src/rec-int.c:543
+#: src/rec-int.c:607
#, c-format
msgid "%s:%s: error: key field '%s' not found in record\n"
msgstr "%s:%s: помилка: у записі не виявлено поля ключа «%s»\n"
-#: src/rec-int.c:552
+#: src/rec-int.c:616
#, c-format
msgid "%s:%s: error: multiple key fields '%s' in record\n"
msgstr "%s:%s: помилка: у записі виявлено декілька полів ключів «%s»\n"
-#: src/rec-int.c:595
+#: src/rec-int.c:659
#, c-format
msgid "%s:%s: error: duplicated key value in field '%s' in record\n"
-msgstr ""
-"%s:%s: помилка: у записі виявлено дублювання встановлення значення ключа у "
-"полі «%s»\n"
+msgstr "%s:%s: помилка: у записі виявлено дублювання встановлення значення ключа у полі «%s»\n"
-#: src/rec-int.c:643
+#: src/rec-int.c:709
#, c-format
msgid "%s:%s: error: missing %%rec field in record descriptor\n"
msgstr "%s:%s: помилка: у дескрипторі запису не вистачає поля %%rec\n"
-#: src/rec-int.c:651
+#: src/rec-int.c:717
#, c-format
msgid "%s:%s: error: too many %%rec fields in record descriptor\n"
msgstr "%s:%s: помилка: у дескрипторі запису занадто багато полів %%rec\n"
-#: src/rec-int.c:661
+#: src/rec-int.c:727
#, c-format
msgid "%s:%s: error: invalid record type %s\n"
msgstr "%s:%s: помилка: некоректний тип запису %s\n"
-#: src/rec-int.c:672
+#: src/rec-int.c:738
#, c-format
msgid "%s:%s: error: only one %%key field is allowed in a record descriptor\n"
-msgstr ""
-"%s:%s: помилка: у дескрипторі запису можна використовувати лише одне поле "
-"%%key\n"
+msgstr "%s:%s: помилка: у дескрипторі запису можна використовувати лише одне поле %%key\n"
-#: src/rec-int.c:682
+#: src/rec-int.c:748
#, c-format
msgid "%s:%s: error: only one %%size field is allowed in a record descriptor\n"
-msgstr ""
-"%s:%s: помилка: у дескрипторі запису можна використовувати лише одне поле "
-"%%size\n"
+msgstr "%s:%s: помилка: у дескрипторі запису можна використовувати лише одне поле %%size\n"
-#: src/rec-int.c:692
+#: src/rec-int.c:758
#, c-format
msgid "%s:%s: error: only one %%sort field is allowed in a record descriptor\n"
-msgstr ""
-"%s:%s: помилка: у дескрипторі запису можна використовувати лише одне поле "
-"%%sort\n"
+msgstr "%s:%s: помилка: у дескрипторі запису можна використовувати лише одне поле %%sort\n"
-#: src/rec-int.c:715
+#: src/rec-int.c:782
#, c-format
-msgid ""
-"%s:%s: error: expected a comma-separated list of fields before the type "
-"specification\n"
-msgstr ""
-"%s:%s: помилка: перед специфікацією типу мало бути вказано список полів, "
-"відокремлених комами\n"
+msgid "%s:%s: error: expected a comma-separated list of fields before the type specification\n"
+msgstr "%s:%s: помилка: перед специфікацією типу мало бути вказано список полів, відокремлених комами\n"
-#: src/rec-int.c:741 src/rec-int.c:794
+#: src/rec-int.c:808 src/rec-int.c:861
#, c-format
msgid "%s:%s: error: the referred type %s does not exist\n"
msgstr "%s:%s: помилка: вказаного типу, %s, не існує\n"
-#: src/rec-int.c:753
+#: src/rec-int.c:820
#, c-format
msgid "%s:%s: error: invalid type specification\n"
msgstr "%s:%s: помилка: некоректне визначення типу\n"
-#: src/rec-int.c:768
+#: src/rec-int.c:835
#, c-format
msgid "%s:%s: error: expected a type name before the type specification\n"
-msgstr ""
-"%s:%s: помилка: перед специфікацією типу мало бути вказано назву типу\n"
+msgstr "%s:%s: помилка: перед специфікацією типу мало бути вказано назву типу\n"
-#: src/rec-int.c:806
+#: src/rec-int.c:873
#, c-format
msgid "%s:%s: error: invalid typedef specification\n"
msgstr "%s:%s: помилка: некоректне визначення типу\n"
-#: src/rec-int.c:828
+#: src/rec-int.c:895
#, c-format
msgid "%s:%s: error: value for %s[%zd] is not a list of field names\n"
msgstr "%s:%s: помилка: значенням %s[%zd] не є список назв полів\n"
-#: src/rec-int.c:844
-#, fuzzy, c-format
-msgid "%s:%s: error: value for %s should be a field name.\n"
+#: src/rec-int.c:911
+#, c-format
+msgid "%s:%s: error: value for %s shall be a field name.\n"
msgstr "%s:%s: помилка: значенням %s має бути назва поля.\n"
-#: src/rec-int.c:856
-#, fuzzy, c-format
-msgid ""
-"%s:%s: error: value for %s should be a number optionally preceded by >, <, "
-">= or <=.\n"
-msgstr ""
-"%s:%s: помилка: значенням %s має бути число, перед яким може бути вказано "
-"символ >, <, >= або <=.\n"
+#: src/rec-int.c:923
+#, c-format
+msgid "%s:%s: error: value for %s shall be a number optionally preceded by >, <, >= or <=.\n"
+msgstr "%s:%s: помилка: значенням %s має бути число, перед яким може бути вказано символ >, <, >= або <=.\n"
-#: src/rec-int.c:872
-#, fuzzy, c-format
-msgid "%s:%s: error: value for %s should be a list of field names.\n"
+#: src/rec-int.c:939
+#, c-format
+msgid "%s:%s: error: value for %s shall be a list of field names.\n"
msgstr "%s:%s: помилка: значенням %s має бути список назв полів.\n"
-#: src/rec-int.c:900
-#, fuzzy, c-format
-msgid ""
-"%s:%s: error: auto-incremented field %s should be of type int, range, uuid "
-"or date\n"
-msgstr ""
-"%s:%s: помилка: поле з автоматичним збільшенням значення %s має містити "
-"значення цілого типу, діапазон або дату\n"
-
-#: src/rec-int.c:902
-#, fuzzy, c-format
-msgid ""
-"%s:%s: error: auto-incremented field %s should be of type int, range or "
-"date\n"
-msgstr ""
-"%s:%s: помилка: поле з автоматичним збільшенням значення %s має містити "
-"значення цілого типу, діапазон або дату\n"
+#: src/rec-int.c:964
+#, c-format
+msgid "%s:%s: error: auto-incremented field %s shall be of type int, range or date\n"
+msgstr "%s:%s: помилка: поле з автоматичним збільшенням значення %s має містити значення цілого типу, діапазон або дату\n"
-#: src/rec-int.c:985
+#: src/rec-int.c:1046
#, c-format
msgid "%s:%s: error: could not fetch remote descriptor from url %s.\n"
-msgstr ""
-"%s:%s: помилка: не вдалося отримати значення дескриптора за адресою url %s.\n"
+msgstr "%s:%s: помилка: не вдалося отримати значення дескриптора за адресою url %s.\n"
-#: src/rec-int.c:1004
+#: src/rec-int.c:1065
#, c-format
msgid "%s:%s: error: could not read external descriptor from file %s.\n"
-msgstr ""
-"%s:%s: помилка: не вдалося прочитати зовнішній дескриптор з файла %s.\n"
+msgstr "%s:%s: помилка: не вдалося прочитати зовнішній дескриптор з файла %s.\n"
-#: src/rec-int.c:1019
+#: src/rec-int.c:1080
#, c-format
msgid "%s:%s: error: %s does not contain valid rec data.\n"
msgstr "%s:%s: помилка: у %s не міститься коректних даних rec.\n"
-#: src/rec-int.c:1033
+#: src/rec-int.c:1094
#, c-format
msgid "%s:%s: error: %s does not contain information for type %s.\n"
msgstr "%s:%s: помилка: у %s не міститься даних типу %s.\n"
-#: src/rec-types.c:416
+#: src/rec-types.c:393
#, c-format
-msgid ""
-"internal error: rec-types: got REC_TYPE_NONE from rec_type_parse_type_kind() "
-"in rec_type_new().\n"
-msgstr ""
-"внутрішня помилка: типи rec: отримано сигнал REC_TYPE_NONE від функції "
-"rec_type_parse_type_kind() у rec_type_new().\n"
+msgid "internal error: rec-types: got REC_TYPE_NONE from rec_type_parse_type_kind() in rec_type_new().\n"
+msgstr "внутрішня помилка: типи rec: отримано сигнал REC_TYPE_NONE від функції rec_type_parse_type_kind() у rec_type_new().\n"
-#: src/rec-types.c:956
+#: src/rec-types.c:913
msgid "invalid integer."
msgstr "некоректне ціле число."
-#: src/rec-types.c:972
+#: src/rec-types.c:929
msgid "invalid 'field' value."
msgstr "некоректне значення «field»."
-#: src/rec-types.c:995
-#, fuzzy
-msgid "invalid 'uuid' value."
-msgstr "некоректне значення «field»."
-
-#: src/rec-types.c:1013
+#: src/rec-types.c:945
msgid "invalid 'bool' value."
msgstr "некоректне значення «bool»."
-#: src/rec-types.c:1036
+#: src/rec-types.c:968
msgid "invalid 'range' value."
msgstr "некоректне значення «range»."
-#: src/rec-types.c:1045
+#: src/rec-types.c:977
#, c-format
msgid "expected an integer between %d and %d."
msgstr "слід було використати ціле значення у діапазоні від %d до %d."
-#: src/rec-types.c:1066
+#: src/rec-types.c:998
msgid "invalid 'real' value."
msgstr "некоректне значення «real»."
-#: src/rec-types.c:1084
+#: src/rec-types.c:1016
#, c-format
msgid "value too large. Expected a size <= %zu."
msgstr "занадто велике значення. Слід було використати розмір <= %zu."
-#: src/rec-types.c:1105
+#: src/rec-types.c:1037
msgid "invalid 'line' value."
msgstr "некоректне значення «line»."
-#: src/rec-types.c:1124
+#: src/rec-types.c:1056
msgid "value does not match the regexp."
msgstr "значення не відповідає формальному виразу."
-#: src/rec-types.c:1147
+#: src/rec-types.c:1079
msgid "invalid date."
msgstr "некоректна дата."
-#: src/rec-types.c:1163
+#: src/rec-types.c:1095
msgid "invalid email."
msgstr "некоректна адреса ел. пошти."
-#: src/rec-types.c:1217
+#: src/rec-types.c:1149
msgid "invalid enum value."
msgstr "некоректне значення нумератора."
#: src/rec-utils.c:87
#, c-format
msgid "internal error: rec_int_rec_extract_file: error compiling regexp.\n"
-msgstr ""
-"внутрішня помилка: rec_int_rec_extract_file: помилка під час спроби "
-"компіляції формального виразу.\n"
+msgstr "внутрішня помилка: rec_int_rec_extract_file: помилка під час спроби компіляції формального виразу.\n"
-#: src/rec-utils.c:115 src/rec-utils.c:144
+#: src/rec-utils.c:115 src/rec-utils.c:143
#, c-format
msgid "internal error: rec_int_rec_extract_url: error compiling regexp.\n"
-msgstr ""
-"внутрішня помилка: rec_int_rec_extract_url: помилка під час спроби "
-"компіляції формального виразу.\n"
+msgstr "внутрішня помилка: rec_int_rec_extract_url: помилка під час спроби компіляції формального виразу.\n"
-#: src/rec-utils.c:290
+#: src/rec-utils.c:289
#, c-format
msgid "internal error: rec_match: error compiling regexp.\n"
-msgstr ""
-"внутрішня помилка: rec_match: помилка під час спроби компіляції формального "
-"виразу.\n"
+msgstr "внутрішня помилка: rec_match: помилка під час спроби компіляції формального виразу.\n"
#. TRANSLATORS: --help output, csv2rec synopsis.
#. no-wrap
@@ -498,27 +453,20 @@ msgstr "Використання: csv2rec [ПАРАМЕТРИ]... [ФАЙЛ_CSV]
#. no-wrap
#: utils/csv2rec.c:109
msgid "Convert csv data into rec data.\n"
-msgstr ""
-"Перетворення даних csv (списку значень відокремлених роздільниками) у дані "
-"rec.\n"
+msgstr "Перетворення даних csv (списку значень відокремлених роздільниками) у дані rec.\n"
#. TRANSLATORS: --help output, csv2rec options.
#. no-wrap
#: utils/csv2rec.c:115
msgid ""
-" -t, --type=TYPE type name for the converted records; "
-"if this\n"
-" parameter is ommited then no type is "
-"used.\n"
+" -t, --type=TYPE type name for the converted records; if this\n"
+" parameter is ommited then no type is used.\n"
" -s, --strict be strict parsing the csv file.\n"
" -e, --omit-empty omit empty fields.\n"
msgstr ""
-" -t, --type=ТИП назва типу для перетворених значень "
-"записів; якщо цей\n"
-" параметр буде пропущено, не "
-"використовуватиметься жодного типу.\n"
-" -s, --strict обробити файл csv зі строгим "
-"застосуванням правил.\n"
+" -t, --type=ТИП назва типу для перетворених значень записів; якщо цей\n"
+" параметр буде пропущено, не використовуватиметься жодного типу.\n"
+" -s, --strict обробити файл csv зі строгим застосуванням правил.\n"
" -e, --omit-empty пропустити порожні поля.\n"
#: utils/csv2rec.c:213
@@ -531,26 +479,26 @@ msgstr "досягнуто максимальної можливої кільк
msgid "invalid field name '%s' in header\n"
msgstr "некоректна назва поля, «%s», у заголовку\n"
-#: utils/csv2rec.c:246 utils/csv2rec.c:282 utils/csv2rec.c:297
-#: utils/mdb2rec.c:310 utils/mdb2rec.c:423 utils/recsel.c:420
+#: utils/csv2rec.c:248 utils/csv2rec.c:287 utils/csv2rec.c:302
+#: utils/mdb2rec.c:326 utils/mdb2rec.c:439
msgid "out of memory\n"
msgstr "не вистачає пам'яті\n"
-#: utils/csv2rec.c:254
+#: utils/csv2rec.c:258
msgid "not enough headers"
msgstr "недостатньо заголовків"
-#: utils/csv2rec.c:339 utils/recdel.c:268 utils/recset.c:361
-#: utils/recutl.c:278
+#: utils/csv2rec.c:344 utils/recdel.c:328 utils/recset.c:706
+#: utils/recutl.c:294
#, c-format
msgid "cannot read file %s\n"
msgstr "не вдалося виконати читання даних з файла %s\n"
-#: utils/csv2rec.c:350
+#: utils/csv2rec.c:355
msgid "failed to initialize csv parser\n"
msgstr "не вдалося започаткувати обробку csv\n"
-#: utils/csv2rec.c:368
+#: utils/csv2rec.c:373
#, c-format
msgid "error while parsing CSV file: %s\n"
msgstr "помилка під час обробки файла CSV: %s\n"
@@ -575,48 +523,45 @@ msgid ""
" -s, --system-tables include system tables.\n"
" -e, --keep-empty-fields don't prune empty fields in the rec\n"
" output.\n"
-" -l, --list-tables dump a list of the table names "
-"contained\n"
+" -l, --list-tables dump a list of the table names contained\n"
" in the mdb file.\n"
msgstr ""
" -s, --system-tables включити системні таблиці.\n"
-" -e, --keep-empty-fields не вирізати порожні поля з виведених "
-"даних\n"
+" -e, --keep-empty-fields не вирізати порожні поля з виведених даних\n"
" rec.\n"
-" -l, --list-tables показати список назв таблиць, що "
-"містяться\n"
+" -l, --list-tables показати список назв таблиць, що містяться\n"
" у файлі mdb.\n"
-#: utils/mdb2rec.c:251 utils/mdb2rec.c:317
+#: utils/mdb2rec.c:252 utils/mdb2rec.c:333
#, c-format
msgid "failed to normalise record type name %s\n"
msgstr "не вдалося нормалізувати тип запису з назвою %s\n"
-#: utils/mdb2rec.c:259 utils/mdb2rec.c:270
+#: utils/mdb2rec.c:260 utils/mdb2rec.c:272
#, c-format
msgid "failed to normalise field name %s\n"
msgstr "не вдалося нормалізувати поле з назвою %s\n"
-#: utils/mdb2rec.c:338
+#: utils/mdb2rec.c:354
#, c-format
msgid "failed to normalise the field name %s\n"
msgstr "не вдалося нормалізувати поле з назвою %s\n"
-#: utils/mdb2rec.c:447 utils/recins.c:209 utils/recset.c:253
+#: utils/mdb2rec.c:465 utils/recins.c:342 utils/recset.c:265
#, c-format
msgid "invalid field name %s.\n"
msgstr "некоректна назва поля %s.\n"
-#: utils/mdb2rec.c:478 utils/rec2csv.c:193 utils/rec2csv.c:200
+#: utils/mdb2rec.c:496 utils/rec2csv.c:193 utils/rec2csv.c:200
msgid "out of memory"
msgstr "нестача пам'яті"
-#: utils/mdb2rec.c:488
+#: utils/mdb2rec.c:506
#, c-format
msgid "could not open file %s\n"
msgstr "не вдалося відкрити файл %s\n"
-#: utils/mdb2rec.c:495
+#: utils/mdb2rec.c:513
msgid "file does not appear to be an Access database\n"
msgstr "здається, файл не є файлом бази даних Access\n"
@@ -631,46 +576,34 @@ msgstr "Використання: rec2csv [ПАРАМЕТРИ]... [ФАЙЛ_REC]
#. no-wrap
#: utils/rec2csv.c:90
msgid "Convert rec data into csv data.\n"
-msgstr ""
-"Перетворення даних rec у файли csv (списку значень відокремлених "
-"роздільниками).\n"
+msgstr "Перетворення даних rec у файли csv (списку значень відокремлених роздільниками).\n"
#. TRANSLATORS: --help output, rec2csv options.
#. no-wrap
#: utils/rec2csv.c:96
msgid ""
-" -t, --type=TYPE record set to convert to csv; if this "
-"parameter\n"
-" is omitted then the default record "
-"set is used\n"
-" -S, --sort=FIELD sort the output by the specified "
-"field.\n"
+" -t, --type=TYPE record set to convert to csv; if this parameter\n"
+" is omitted then the default record set is used\n"
+" -S, --sort=FIELD sort the output by the specified field.\n"
msgstr ""
-" -t, --type=ТИП набір записів, які слід перетворити у "
-"формат csv; якщо цього параметра\n"
-" не буде вказано, "
-"використовуватиметься типовий набір записів\n"
-" -S, --sort=FIELD впорядкувати виведені дані за вмістом "
-"вказаного поля.\n"
-
-#: utils/rec2csv.c:135 utils/recsel.c:230
+" -t, --type=ТИП набір записів, які слід перетворити у формат csv; якщо цього параметра\n"
+" не буде вказано, використовуватиметься типовий набір записів\n"
+" -S, --sort=FIELD впорядкувати виведені дані за вмістом вказаного поля.\n"
+
+#: utils/rec2csv.c:135 utils/recsel.c:228
msgid "only one field can be specified as a sorting criteria.\n"
msgstr "критерієм впорядковування може бути лише значення одного поля.\n"
-#: utils/rec2csv.c:142 utils/recsel.c:237
+#: utils/rec2csv.c:142 utils/recsel.c:235
msgid "invalid field name in -S.\n"
msgstr "некоректна назва поля у -S.\n"
#. TRANSLATORS: --help output, recdel synopsis.
#. no-wrap
#: utils/recdel.c:89
-#, fuzzy, c-format
-msgid ""
-"Usage: recdel [OPTIONS]... [-t TYPE] [-n NUM | -e RECORD_EXPR | -q STR | -m "
-"NUM] [FILE]\n"
-msgstr ""
-"Використання: recdel [ПАРАМЕТРИ]... [-t ТИП] [-n НОМЕР | -e ВИРАЗ | -q РЯДОК "
-"| -m НОМЕР]] [ФАЙЛ]\n"
+#, c-format
+msgid "Usage: recdel [OPTIONS]... [-t TYPE] [-n NUM | -e EXPR | -q STR | -m NUM] [FILE]\n"
+msgstr "Використання: recdel [ПАРАМЕТРИ]... [-t ТИП] [-n НОМЕР | -e ВИРАЗ | -q РЯДОК | -m НОМЕР]] [ФАЙЛ]\n"
#. TRANSLATORS: --help output, recdel short description.
#. no-wrap
@@ -682,29 +615,20 @@ msgstr "Вилучення (або коментування) записів у
#. no-wrap
#: utils/recdel.c:101
msgid ""
-" -c, --comment comment out the matching records "
-"instead of\n"
+" -c, --comment comment out the matching records instead of\n"
" deleting them.\n"
-" --force delete even in potentially dangerous "
-"situations,\n"
-" and if the deletion is violating "
-"record restrictions.\n"
+" --force delete even in potentially dangerous situations,\n"
+" and if the deletion is violating record restrictions.\n"
" --no-external don't use external descriptors.\n"
-" --verbose give a detailed report if the "
-"integrity check\n"
+" --verbose give a detailed report if the integrity check\n"
" fails.\n"
msgstr ""
-" -c, --comment закоментувати відповідні записи "
-"замість\n"
+" -c, --comment закоментувати відповідні записи замість\n"
" їхнього вилучення.\n"
-" --force вилучати навіть у потенційно "
-"небезпечних ситуаціях\n"
-" і якщо вилучення призводити до "
-"порушення обмежень запису.\n"
-" --no-external не використовувати зовнішніх "
-"дескрипторів.\n"
-" --verbose надати докладний звіт у разі, якщо "
-"буде виявлено помилку\n"
+" --force вилучати навіть у потенційно небезпечних ситуаціях\n"
+" і якщо вилучення призводити до порушення обмежень запису.\n"
+" --no-external не використовувати зовнішніх дескрипторів.\n"
+" --verbose надати докладний звіт у разі, якщо буде виявлено помилку\n"
" цілісності бази даних.\n"
#. TRANSLATORS: --help output, notes on recdel.
@@ -718,29 +642,29 @@ msgid ""
"If no FILE is specified then the command acts like a filter, getting\n"
"the data from standard input and writing the result to standard output.\n"
msgstr ""
-"Якщо не буде вказано значення ФАЙЛ, програма працюватиме у режимі "
-"фільтрування:\n"
-"отримуватиме дані зі стандартного джерела вхідних даних і виводитиме ці дані "
-"до\n"
+"Якщо не буде вказано значення ФАЙЛ, програма працюватиме у режимі фільтрування:\n"
+"отримуватиме дані зі стандартного джерела вхідних даних і виводитиме ці дані до\n"
"стандартного виводу даних.\n"
-#: utils/recdel.c:136
+#: utils/recdel.c:143
#, c-format
msgid "no records of type %s found.\n"
msgstr "не виявлено жодних записів типу %s.\n"
-#: utils/recdel.c:229
+#: utils/recdel.c:224 utils/recins.c:501 utils/recsel.c:447
+msgid "evaluating the selection expression.\n"
+msgstr "визначення виразу вибору.\n"
+
+#: utils/recdel.c:289
#, c-format
msgid "ignoring a request to delete all records of type %s.\n"
msgstr "пропущено запит щодо вилучення всіх записів типу %s.\n"
-#: utils/recdel.c:231
+#: utils/recdel.c:291
msgid "use --force if you really want to proceed, or use either -n or -e.\n"
-msgstr ""
-"скористайтеся параметром --force, якщо вам потрібно продовжити обробку, або "
-"скористайтеся одним з параметрів, -n або -e.\n"
+msgstr "скористайтеся параметром --force, якщо вам потрібно продовжити обробку, або скористайтеся одним з параметрів, -n або -e.\n"
-#: utils/recdel.c:239
+#: utils/recdel.c:299 utils/recset.c:432
msgid "invalid selection expression.\n"
msgstr "некоректний вираз вибору.\n"
@@ -749,8 +673,7 @@ msgstr "некоректний вираз вибору.\n"
#: utils/recfix.c:118
#, c-format
msgid "Usage: recfix [OPTION]... [OPERATION] [OP_OPTION]... [FILE]\n"
-msgstr ""
-"Використання: recfix [ПАРАМЕТР]... [ДІЯ] [ПАРАМЕТРИ_ДІЇ]... [ФАЙЛ]...\n"
+msgstr "Використання: recfix [ПАРАМЕТР]... [ДІЯ] [ПАРАМЕТРИ_ДІЇ]... [ФАЙЛ]...\n"
#. TRANSLATORS: --help output, recfix short description.
#. no-wrap
@@ -762,16 +685,13 @@ msgstr "Перевірка і виправлення файлів rec.\n"
#. no-wrap
#: utils/recfix.c:130
msgid ""
-" -t, --type=TYPE process only records of the given "
-"type.\n"
+" -t, --type=TYPE process only records of the given type.\n"
" --no-external don't use external descriptors.\n"
" --force force the requested operation.\n"
msgstr ""
" -t, --type=ТИП обробляти лише записи вказаного типу.\n"
-" --no-external не використовувати зовнішніх "
-"дескрипторів.\n"
-" --force змінювати записи, навіть якщо у "
-"результаті буде порушено\n"
+" --no-external не використовувати зовнішніх дескрипторів.\n"
+" --force змінювати записи, навіть якщо у результаті буде порушено\n"
" обмеження, накладені на запис.\n"
#. TRANSLATORS: --help output, recfix operations.
@@ -779,34 +699,24 @@ msgstr ""
#: utils/recfix.c:141
msgid ""
"Operations:\n"
-" --check check integrity of the specified "
-"file. Default.\n"
-" --sort sort the records in the specified "
-"file.\n"
-" --auto insert auto-generated fields in "
-"records missing them.\n"
+" --check check integrity of the specified file. Default.\n"
+" --sort sort the records in the specified file.\n"
+" --auto insert auto-generated fields in records missing them.\n"
msgstr ""
"Дії:\n"
-" --check перевірити цілісність вказаного файла. "
-"Типова дія.\n"
-" --sort впорядкувати записи у вказаному "
-"файлі.\n"
-" --auto вставити автозаповнені поля до "
-"записів, у яких їх не вистачає.\n"
+" --check перевірити цілісність вказаного файла. Типова дія.\n"
+" --sort впорядкувати записи у вказаному файлі.\n"
+" --auto вставити автозаповнені поля до записів, у яких їх не вистачає.\n"
#. TRANSLATORS: --help output, recfix operations related with encryption.
#. no-wrap
#: utils/recfix.c:151
msgid ""
-" --encrypt encrypt confidential fields in the "
-"specified file.\n"
-" --decrypt decrypt confidential fields in the "
-"specified file.\n"
+" --encrypt encrypt confidential fields in the specified file.\n"
+" --decrypt decrypt confidential fields in the specified file.\n"
msgstr ""
-" --encrypt зашифрувати вміст полів з "
-"конфіденційними даними у вказаному файлі.\n"
-" --decrypt розшифрувати вміст полів з "
-"конфіденційними даними у вказаному файлі.\n"
+" --encrypt зашифрувати вміст полів з конфіденційними даними у вказаному файлі.\n"
+" --decrypt розшифрувати вміст полів з конфіденційними даними у вказаному файлі.\n"
#. TRANSLATORS: --help output, recfix encryption and decryption
#. options.
@@ -817,8 +727,7 @@ msgid ""
" -s, --password=PASSWORD encrypt/decrypt with this password.\n"
msgstr ""
"Параметри розшифрування та шифрування:\n"
-" -s, --password=ПАРОЛЬ зашифрувати або розшифрувати на основі "
-"вказаного пароля.\n"
+" -s, --password=ПАРОЛЬ зашифрувати або розшифрувати на основі вказаного пароля.\n"
#: utils/recfix.c:210
msgid "--password|-s must be used as an operation argument.\n"
@@ -837,19 +746,19 @@ msgstr "будь ласка, вкажіть лише один пароль.\n"
msgid "please specify just one operation.\n"
msgstr "будь ласка, вкажіть лише одну дію.\n"
-#: utils/recfix.c:307 utils/recins.c:341 utils/recsel.c:359
+#: utils/recfix.c:307 utils/recins.c:173 utils/recsel.c:348
msgid "Password: "
msgstr "Пароль: "
-#: utils/recfix.c:454
+#: utils/recfix.c:451
msgid "the database contains already encrypted fields\n"
msgstr "у базі даних містяться вже зашифровані поля\n"
-#: utils/recfix.c:455
+#: utils/recfix.c:452
msgid "please use --force or --decrypt\n"
msgstr "будь ласка, скористайтеся --force або --decrypt\n"
-#: utils/recfix.c:567
+#: utils/recfix.c:561
msgid "unknown operation in recfix: please report this as a bug.\n"
msgstr "невідома операція у recfix: будь ласка, повідомте про цю ваду.\n"
@@ -864,19 +773,13 @@ msgstr "Використання: recfmt [ПАРАМЕТР]... [ШАБЛОН]\n"
#. no-wrap
#: utils/recfmt.c:83
msgid "Apply a template to records read from standard input.\n"
-msgstr ""
-"Застосування шаблону до записів, прочитаних зі стандартного джерела вхідних "
-"даних.\n"
+msgstr "Застосування шаблону до записів, прочитаних зі стандартного джерела вхідних даних.\n"
#. TRANSLATORS: --help output, recfmt arguments.
#. no-wrap
#: utils/recfmt.c:89
-msgid ""
-" -f, --file=FILENAME read the template to apply from a "
-"file.\n"
-msgstr ""
-" -f, --file=НАЗВА_ФАЙЛА прочитати дані шаблону, який слід "
-"застосувати з файла.\n"
+msgid " -f, --file=FILENAME read the template to apply from a file.\n"
+msgstr " -f, --file=НАЗВА_ФАЙЛА прочитати дані шаблону, який слід застосувати з файла.\n"
#: utils/recfmt.c:123
#, c-format
@@ -885,9 +788,7 @@ msgstr "не вдалося відкрити файл %s для читання
#: utils/recfmt.c:141
msgid "don't specify a template in the command line and -f at the same time.\n"
-msgstr ""
-"не можна вказувати шаблон у командному рядку і одночасно використовувати "
-"параметр -f.\n"
+msgstr "не можна вказувати шаблон у командному рядку і одночасно використовувати параметр -f.\n"
#: utils/recfmt.c:164
msgid "invalid expression in a template slot.\n"
@@ -899,9 +800,7 @@ msgstr "помилка під час визначення виразу у пол
#: utils/recfmt.c:204
msgid "recfmt_apply_template: error compiling regexp. Please report this.\n"
-msgstr ""
-"recfmt_apply_template: помилка під час спроби компіляції формального виразу. "
-"Будь ласка, повідомте про цю помилку авторам програми.\n"
+msgstr "recfmt_apply_template: помилка під час спроби компіляції формального виразу. Будь ласка, повідомте про цю помилку авторам програми.\n"
#. TRANSLATORS: --help output, recinf synopsis.
#. no-wrap
@@ -920,8 +819,7 @@ msgstr "Показ даних щодо типів записів, що міст
#. no-wrap
#: utils/recinf.c:96
msgid ""
-" -t, --type=RECORD_TYPE print information on the records having "
-"the\n"
+" -t, --type=RECORD_TYPE print information on the records having the\n"
" specified type.\n"
" -d, --descriptor include the full record descriptors.\n"
" -n, --names-only output just the names of the record files\n"
@@ -938,14 +836,12 @@ msgstr ""
#: utils/recinf.c:109
msgid ""
"Special options:\n"
-" -S, --print-sexps print the data in sexps instead of rec "
-"format.\n"
+" -S, --print-sexps print the data in sexps instead of rec format.\n"
msgstr ""
"Особливі параметри:\n"
-" -S, --print-sexps показати дані у форматі sexps, а не у "
-"форматі rec.\n"
+" -S, --print-sexps показати дані у форматі sexps, а не у форматі rec.\n"
-#: utils/recinf.c:260
+#: utils/recinf.c:259
#, c-format
msgid "error: cannot read file %s\n"
msgstr "помилка: не вдалося виконати читання даних з файла %s\n"
@@ -953,13 +849,9 @@ msgstr "помилка: не вдалося виконати читання да
#. TRANSLATORS: --help output, recins synopsis.
#. no-wrap
#: utils/recins.c:112
-#, fuzzy, c-format
-msgid ""
-"Usage: recins [OPTION]... [-t TYPE] [-n NUM | -e RECORD_EXPR | -q STR | -m "
-"NUM] [(-f NAME -v STR) | -R RECDATA]... [FILE]\n"
-msgstr ""
-"Використання: recins [ПАРАМЕТР]... [-t ТИП] [-n НОМЕР | -e ВИРАЗ | -q РЯДОК "
-"| -m НОМЕР] [(-f РЯДОК -v РЯДОК]|[-R ДАНІ_ЗАПИСУ)]... [ФАЙЛ]\n"
+#, c-format
+msgid "Usage: recins [OPTION]... [t TYPE] [-n NUM | -e EXPR | -q STR | -m NUM] [(-f STR -v STR]|[-R RECDATA)]... [FILE]\n"
+msgstr "Використання: recins [ПАРАМЕТР]... [-t ТИП] [-n НОМЕР | -e ВИРАЗ | -q РЯДОК | -m НОМЕР] [(-f РЯДОК -v РЯДОК]|[-R ДАНІ_ЗАПИСУ)]... [ФАЙЛ]\n"
#. TRANSLATORS: --help output, recins short description.
#. no-wrap
@@ -971,395 +863,308 @@ msgstr "Додавання нових записів до бази даних re
#. no-wrap
#: utils/recins.c:123
msgid ""
-" -f, --field=STR field name; should be followed by a -"
-"v.\n"
-" -v, --value=STR field value; should be preceded by an -"
-"f.\n"
-" -r, --record=STR record that will be inserted in the "
-"file.\n"
-" --force insert the record even if it is "
-"violating\n"
+" -f, --field=STR field name; should be followed by a -v.\n"
+" -v, --value=STR field value; should be preceded by an -f.\n"
+" -r, --record=STR record that will be inserted in the file.\n"
+" --force insert the record even if it is violating\n"
" record restrictions.\n"
" --no-external don't use external descriptors.\n"
" --no-auto don't insert auto generated fields.\n"
-" --verbose give a detailed report if the "
-"integrity check\n"
+" --verbose give a detailed report if the integrity check\n"
" fails.\n"
msgstr ""
-" -f, --field=РЯДОК назва поля; після цього параметра слід "
-"вказати параметр -v.\n"
-" -v, --value=РЯДОК значення поля; перед цим параметром "
-"слід вказати параметр -f.\n"
+" -f, --field=РЯДОК назва поля; після цього параметра слід вказати параметр -v.\n"
+" -v, --value=РЯДОК значення поля; перед цим параметром слід вказати параметр -f.\n"
" -r, --record=РЯДОК запис, який буде додано до файла.\n"
-" --force додати запис, навіть якщо його "
-"додавання порушує\n"
+" --force додати запис, навіть якщо його додавання порушує\n"
" обмеження, накладені на запис.\n"
-" --no-external не використовувати зовнішніх "
-"дескрипторів.\n"
-" --no-auto не вставляти автоматично створених "
-"полів.\n"
-" --verbose надати докладний звіт у разі, якщо "
-"виконання перевірки\n"
+" --no-external не використовувати зовнішніх дескрипторів.\n"
+" --no-auto не вставляти автоматично створених полів.\n"
+" --verbose надати докладний звіт у разі, якщо виконання перевірки\n"
" цілісності зазнає невдачі.\n"
#. TRANSLATORS: --help output, encryption related options.
#. no-wrap
#: utils/recins.c:137
-msgid ""
-" -s, --password=STR encrypt confidential fields with the "
-"given password.\n"
-msgstr ""
-" -s, --password=РЯДОК зашифрувати поля з конфіденційними "
-"даними за допомогою вказаного пароля.\n"
+msgid " -s, --password=STR encrypt confidential fields with the given password.\n"
+msgstr " -s, --password=РЯДОК зашифрувати поля з конфіденційними даними за допомогою вказаного пароля.\n"
-#: utils/recins.c:196
+#: utils/recins.c:316
msgid "a -f should be followed by a -v\n"
msgstr "після параметра -f слід вказати параметр -v\n"
-#: utils/recins.c:220
+#: utils/recins.c:354
msgid "a -v should be preceded by a -f\n"
msgstr "перед параметром -v слід вказати параметр -f\n"
-#: utils/recins.c:245 utils/recsel.c:218
+#: utils/recins.c:379 utils/recsel.c:216
msgid "more than one password was specified\n"
msgstr "було вказано декілька паролів\n"
-#: utils/recins.c:259
+#: utils/recins.c:393
msgid "error while parsing the record provided by -r\n"
msgstr "помилка під час обробки запису, вказаного за допомогою -r\n"
-#: utils/recins.c:294
+#: utils/recins.c:428
#, c-format
msgid "please provide a value for the field %s\n"
msgstr "будь ласка, вкажіть значення для поля %s\n"
#. TRANSLATORS: --help output, recsel synopsis.
#. no-wrap
-#: utils/recsel.c:116
-#, fuzzy, c-format
-msgid ""
-"Usage: recsel [OPTION]... [-t TYPE] [-n INDEXES | -e RECORD_EXPR | -q STR | -"
-"m NUM] [-c | (-p|-P) FIELD_EXPR] [FILE]...\n"
-msgstr ""
-"Використання: recsel [ПАРАМЕТР]... [-t ТИП] [-n ІНДЕКСИ | -e ВИРАЗ_ЗАПИСУ | -"
-"q ВИРАЗ | -m НОМЕР]] [-c | (-p|-P) ВИРАЗ_ПОЛЯ] [ФАЙЛ]...\n"
+#: utils/recsel.c:115
+#, c-format
+msgid "Usage: recsel [OPTION]... [-t TYPE] [-n INDEXES | -e RECORD_EXPR | -q EXPR | -m NUM] [-c | (-p|-P) FIELD_EXPR] [FILE]...\n"
+msgstr "Використання: recsel [ПАРАМЕТР]... [-t ТИП] [-n ІНДЕКСИ | -e ВИРАЗ_ЗАПИСУ | -q ВИРАЗ | -m НОМЕР]] [-c | (-p|-P) ВИРАЗ_ПОЛЯ] [ФАЙЛ]...\n"
#. TRANSLATORS: --help output, recsel arguments.
#. no-wrap
-#: utils/recsel.c:121
+#: utils/recsel.c:120
msgid "Select and print rec data.\n"
msgstr "Вибір і виведення даних rec.\n"
#. TRANSLATORS: --help output, recsel arguments.
#. no-wrap
-#: utils/recsel.c:127
-#, fuzzy
+#: utils/recsel.c:126
msgid ""
-" -d, --include-descriptors print record descriptors along with "
-"the matched\n"
+" -d, --include-descriptors print record descriptors along with the matched\n"
" records.\n"
-" -C, --collapse do not section the result in records "
-"with newlines.\n"
-" -S, --sort=FIELD sort the output by the specified "
-"field.\n"
-" -G, --group-by=FIELD group records by the specified field.\n"
-" -U, --uniq remove duplicated fields in the output "
-"records.\n"
+" -C, --collapse do not section the result in records with newlines.\n"
+" -S, --sort=FIELD sort the output by the specified field.\n"
+" -U, --uniq remove duplicated fields in the output records.\n"
msgstr ""
-" -d, --include-descriptors показувати дескриптори записів разом з "
-"відповідними\n"
+" -d, --include-descriptors показувати дескриптори записів разом з відповідними\n"
" записами.\n"
-" -C, --collapse не поділяти окремі записи у "
-"результатах символами нового рядка.\n"
-" -S, --sort=ПОЛЕ впорядкувати виведені дані за вмістом "
-"вказаного поля.\n"
-" -U, --uniq вилучити дублікати полів з виведених "
-"записів.\n"
+" -C, --collapse не поділяти окремі записи у результатах символами нового рядка.\n"
+" -S, --sort=ПОЛЕ впорядкувати виведені дані за вмістом вказаного поля.\n"
+" -U, --uniq вилучити дублікати полів з виведених записів.\n"
#. TRANSLATORS: --help output, encryption related options.
#. no-wrap
-#: utils/recsel.c:139
-msgid ""
-" -s, --password=STR decrypt confidential fields with the "
-"given password.\n"
-msgstr ""
-" -s, --password=РЯДОК розшифрувати поля з конфіденційними "
-"даними за допомогою вказаного пароля.\n"
+#: utils/recsel.c:137
+msgid " -s, --password=STR decrypt confidential fields with the given password.\n"
+msgstr " -s, --password=РЯДОК розшифрувати поля з конфіденційними даними за допомогою вказаного пароля.\n"
#. TRANSLATORS: --help output, recsel output options.
#. no-wrap
-#: utils/recsel.c:152
+#: utils/recsel.c:150
msgid ""
"Output options:\n"
-" -p, --print=FIELDS comma-separated list of fields to "
-"print for each\n"
+" -p, --print=FIELDS comma-separated list of fields to print for each\n"
" matching record.\n"
-" -P, --print-values=FIELDS as -p, but print only the values of "
-"the selected\n"
+" -P, --print-values=FIELDS as -p, but print only the values of the selected\n"
" fields.\n"
-" -R, --print-row=FIELDS as -P, but separate the values with "
-"spaces instead\n"
+" -R, --print-row=FIELDS as -P, but separate the values with spaces instead\n"
" of newlines.\n"
-" -c, --count print a count of the matching records "
-"instead of\n"
+" -c, --count print a count of the matching records instead of\n"
" the records themselves.\n"
msgstr ""
"Параметри виведення даних:\n"
-" -p, --print=ПОЛЯ список полів, відокремлених комами, "
-"які\n"
-" слід показати для кожного "
-"відповідного запису.\n"
-" -P, --print-values=ПОЛЯ те саме, що і -p, але показувати лише "
-"значення\n"
+" -p, --print=ПОЛЯ список полів, відокремлених комами, які\n"
+" слід показати для кожного відповідного запису.\n"
+" -P, --print-values=ПОЛЯ те саме, що і -p, але показувати лише значення\n"
" вибраних полів.\n"
-" -R, --print-row=ПОЛЯ те саме, що і -P, але з відокремленням "
-"значень пробілами\n"
+" -R, --print-row=ПОЛЯ те саме, що і -P, але з відокремленням значень пробілами\n"
" замість символів нового рядка.\n"
-" -c, --count показати кількість відповідних записів "
-"замість\n"
+" -c, --count показати кількість відповідних записів замість\n"
" самих записів.\n"
#. TRANSLATORS: --help output, recsel special options.
#. no-wrap
-#: utils/recsel.c:166
+#: utils/recsel.c:164
msgid ""
"Special options:\n"
-" --print-sexps print the data in sexps instead of rec "
-"format.\n"
+" --print-sexps print the data in sexps instead of rec format.\n"
msgstr ""
"Особливі параметри:\n"
-" --print-sexps показати дані у форматі sexps, а не у "
-"форматі rec.\n"
+" --print-sexps показати дані у форматі sexps, а не у форматі rec.\n"
#: utils/recsel.c:247
-#, fuzzy
-msgid "only one field can be specified as a grouping criteria.\n"
-msgstr "критерієм впорядковування може бути лише значення одного поля.\n"
-
-#: utils/recsel.c:255
-#, fuzzy
-msgid "invalid field name in -G.\n"
-msgstr "некоректна назва поля у -S.\n"
-
-#: utils/recsel.c:267
msgid "cannot specify -[pPR] and also -c.\n"
msgstr "не можна одночасно використовувати -[pPR] і -c.\n"
-#: utils/recsel.c:284
-#, fuzzy, c-format
-msgid "invalid list of fields in -%c\n"
-msgstr "некоректна назва поля %s.\n"
-
-#: utils/recsel.c:292
+#: utils/recsel.c:273
msgid "internal error creating the field expression.\n"
msgstr "внутрішня помилка під час створення виразу поля.\n"
-#: utils/recsel.c:308
+#: utils/recsel.c:289
msgid "cannot specify -c and also -p.\n"
msgstr "не можна одночасно визначати -c і -p.\n"
-#: utils/recsel.c:382
+#: utils/recsel.c:369
msgid "several record types found. Please use -t to specify one.\n"
-msgstr ""
-"знайдено декілька типів записів. Будь ласка, скористайтеся параметром -t, "
-"щоб вказати потрібний вам тип.\n"
+msgstr "знайдено декілька типів записів. Будь ласка, скористайтеся параметром -t, щоб вказати потрібний вам тип.\n"
#. TRANSLATORS: --help output, recset synopsis.
#. no-wrap
-#: utils/recset.c:113
+#: utils/recset.c:125
#, c-format
msgid "Usage: recset [OPTION]... [FILE]...\n"
msgstr "Використання: recset [ПАРАМЕТР]... [ФАЙЛ]...\n"
#. TRANSLATORS: --help output, recset short description.
#. no-wrap
-#: utils/recset.c:118
+#: utils/recset.c:130
msgid "Alter or delete fields in records.\n"
msgstr "Зміна або вилучення полів у записах.\n"
#. TRANSLATORS: --help output, recset options.
#. no-wrap
-#: utils/recset.c:124
+#: utils/recset.c:136
msgid ""
" --no-external don't use external descriptors.\n"
-" --force alter the records even if violating "
-"record\n"
+" --force alter the records even if violating record\n"
" restrictions.\n"
msgstr ""
-" --no-external не використовувати зовнішніх "
-"дескрипторів.\n"
-" --force змінювати записи, навіть якщо у "
-"результаті буде порушено\n"
+" --no-external не використовувати зовнішніх дескрипторів.\n"
+" --force змінювати записи, навіть якщо у результаті буде порушено\n"
" обмеження, накладені на запис.\n"
#. TRANSLATORS: --help output, recset field selection options.
#. no-wrap
-#: utils/recset.c:137
+#: utils/recset.c:149
msgid ""
"Field selection options:\n"
-" -f, --fields=FIELDS comma-separated list of field names "
-"with optional\n"
+" -f, --fields=FIELDS comma-separated list of field names with optional\n"
" subscripts.\n"
msgstr ""
"Параметри вибору полів:\n"
-" -f, --fields=ПОЛЯ список назв полів, відокремлених "
-"комами,\n"
+" -f, --fields=ПОЛЯ список назв полів, відокремлених комами,\n"
" з додатковими індексами.\n"
#. TRANSLATORS: --help output, recset actions.
#. no-wrap
-#: utils/recset.c:145
+#: utils/recset.c:157
msgid ""
"Actions:\n"
-" -s, --set=VALUE change the value of the selected "
-"fields.\n"
-" -a, --add=VALUE add the selected fields with the given "
-"value.\n"
-" -S, --set-add=VALUE change the value of the selected "
-"fields. If they don't\n"
-" exist then add a new field with that "
-"value.\n"
-" -r, --rename=NAME rename the selected fields to a given "
-"name. If an entire\n"
-" record set is selected then the "
-"field is renamed in the\n"
+" -s, --set=VALUE change the value of the selected fields.\n"
+" -a, --add=VALUE add the selected fields with the given value.\n"
+" -S, --set-add=VALUE change the value of the selected fields. If they don't\n"
+" exist then add a new field with that value.\n"
+" -r, --rename=NAME rename the selected fields to a given name. If an entire\n"
+" record set is selected then the field is renamed in the\n"
" record descriptor as well.\n"
" -d, --delete delete the selected fields.\n"
" -c, --comment comment out the selected fields.\n"
msgstr ""
"Дії:\n"
-" -s, --set=ЗНАЧЕННЯ змінити значення вибраних полів на "
-"вказане.\n"
-" -a, --add=ЗНАЧЕННЯ додати вибрані поля з вказаним "
-"значенням.\n"
-" -S, --set-add=ЗНАЧЕННЯ змінити значення вибраних полів. Якщо "
-"цих полів\n"
-" не існує, додати нове поле з цим "
-"значенням.\n"
-" -r, --rename=НАЗВА перейменувати позначені поля, надавши "
-"їм вказаної назви.\n"
-" Якщо вибрано весь набір записів, "
-"поле буде\n"
-" перейменовано і у дескрипторі "
-"записів.\n"
+" -s, --set=ЗНАЧЕННЯ змінити значення вибраних полів на вказане.\n"
+" -a, --add=ЗНАЧЕННЯ додати вибрані поля з вказаним значенням.\n"
+" -S, --set-add=ЗНАЧЕННЯ змінити значення вибраних полів. Якщо цих полів\n"
+" не існує, додати нове поле з цим значенням.\n"
+" -r, --rename=НАЗВА перейменувати позначені поля, надавши їм вказаної назви.\n"
+" Якщо вибрано весь набір записів, поле буде\n"
+" перейменовано і у дескрипторі записів.\n"
" -d, --delete вилучити вибрані поля.\n"
" -c, --comment закоментувати вибрані поля.\n"
-#: utils/recset.c:168
+#: utils/recset.c:180
msgid "please specify some field with -f.\n"
msgstr "будь ласка, вкажіть якесь поле за допомогою параметра -f.\n"
-#: utils/recset.c:173
+#: utils/recset.c:185
msgid "please specify just one action.\n"
msgstr "будь ласка, вкажіть лише одну дію.\n"
-#: utils/recset.c:213
+#: utils/recset.c:225
msgid "invalid field expression in -f.\n"
msgstr "некоректний вираз для поля у параметрі -f.\n"
-#: utils/recset.c:221
+#: utils/recset.c:233
msgid "creating the field expression.\n"
msgstr "створення виразу для поля.\n"
-#: utils/recset.c:243
-msgid ""
-"the rename operation requires just one field with an optional subscript.\n"
-msgstr ""
-"для дії з перейменування слід вказати точно одне поле з додатковим "
-"параметром індексу.\n"
+#: utils/recset.c:255
+msgid "the rename operation requires just one field with an optional subscript.\n"
+msgstr "для дії з перейменування слід вказати точно одне поле з додатковим параметром індексу.\n"
+
+#: utils/recset.c:449 utils/recutl.c:489
+msgid "operation aborted due to integrity failures.\n"
+msgstr "дію перервано через порушення цілісності бази даних.\n"
+
+#: utils/recset.c:450 utils/recutl.c:490
+msgid "use --verbose to get a detailed report.\n"
+msgstr "скористайтеся параметром --verbose, щоб отримати докладний звіт.\n"
+
+#: utils/recset.c:457 utils/recutl.c:497
+msgid "use --force to skip the integrity check.\n"
+msgstr "скористайтеся параметром --force, щоб наказати програмі не виконувати перевірки цілісності.\n"
#. TRANSLATORS: --help output 5+ (reports)
#. TRANSLATORS: the placeholder indicates the bug-reporting address
#. for this application. Please add _another line_ with the
#. address for translation bugs.
#. no-wrap
-#: utils/recutl.c:113
+#: utils/recutl.c:129
#, c-format
msgid "Report bugs to: %s\n"
msgstr "Повідомляйте про вади на адресу: %s\n"
-#: utils/recutl.c:116
+#: utils/recutl.c:132
#, c-format
msgid "Report %s bugs to: %s\n"
msgstr "Про вади у %s повідомляйте на адресу %s\n"
-#: utils/recutl.c:120
+#: utils/recutl.c:136
#, c-format
msgid "%s home page: <%s>\n"
msgstr "Домашня сторінка %s: <%s>\n"
-#: utils/recutl.c:122
+#: utils/recutl.c:138
#, c-format
msgid "%s home page: \n"
msgstr "Домашня сторінка %s: \n"
-#: utils/recutl.c:125
+#: utils/recutl.c:141
msgid "General help using GNU software: \n"
-msgstr ""
-"Загальна довідкова інформація щодо використання програмного забезпечення "
-"GNU: \n"
+msgstr "Загальна довідкова інформація щодо використання програмного забезпечення GNU: \n"
#. TRANSLATORS: --help output, common arguments.
#. no-wrap
-#: utils/recutl.c:134
+#: utils/recutl.c:150
msgid ""
" --help print a help message and exit.\n"
" --version show version and exit.\n"
msgstr ""
-" --help показати довідкове повідомлення і "
-"завершити роботу.\n"
-" --version показати повідомлення щодо версії і "
-"завершити роботу.\n"
+" --help показати довідкове повідомлення і завершити роботу.\n"
+" --version показати повідомлення щодо версії і завершити роботу.\n"
#. TRANSLATORS: --help output, record selection arguments
#. no-wrap
-#: utils/recutl.c:145
-#, fuzzy
+#: utils/recutl.c:161
msgid ""
"Record selection options:\n"
-" -i, --case-insensitive make strings case-insensitive in "
-"selection\n"
+" -i, --case-insensitive make strings case-insensitive in selection\n"
" expressions.\n"
-" -t, --type=TYPE operate on records of the specified "
-"type only.\n"
-" -e, --expression=RECORD_EXPR selection expression.\n"
-" -q, --quick=STR select records with fields containing "
-"a string.\n"
-" -n, --number=NUM,... select specific records by position, "
-"with ranges.\n"
-" -m, --random=NUM select a given number of random "
-"records.\n"
+" -t, --type=TYPE operate on records of the specified type only.\n"
+" -e, --expression=EXPR selection expression.\n"
+" -q, --quick=STR select records with fields containing a string.\n"
+" -n, --number=NUM,... select specific records by position, with ranges.\n"
+" -R, --random=NUM select a given number of random records.\n"
msgstr ""
"Параметри вибору записів:\n"
-" -i, --case-insensitive не зважати на регістр символів у "
-"виразах\n"
+" -i, --case-insensitive не зважати на регістр символів у виразах\n"
" вибору.\n"
" -t, --type=ТИП обробляти лише записи вказаного типу.\n"
" -e, --expression=ВИРАЗ вираз для вибору.\n"
-" -q, --quick=РЯДОК вибрати записи з полями, що містять "
-"рядок.\n"
+" -q, --quick=РЯДОК вибрати записи з полями, що містять рядок.\n"
" -n, --number=НОМЕР вибрати запис з вказаним номером.\n"
-" -R, --random=КІЛЬКІСТЬ вибрати вказану кількість випадкових "
-"записів.\n"
+" -R, --random=КІЛЬКІСТЬ вибрати вказану кількість випадкових записів.\n"
-#: utils/recutl.c:170
+#: utils/recutl.c:186
#, c-format
msgid ""
"Copyright (C) %s Jose E. Marchesi.\n"
-"License GPLv3+: GNU GPL version 3 or later .\n"
+"License GPLv3+: GNU GPL version 3 or later .\n"
"This is free software: you are free to change and redistribute it.\n"
"There is NO WARRANTY, to the extent permitted by law.\n"
msgstr ""
"Авторські права належать Jose E. Marchesi, %s.\n"
-"Умови ліцензування викладено у GPLv3+: GNU GPL версії 3 або новішій, \n"
-"Це вільне програмне забезпечення: ви можете вільно змінювати і поширювати "
-"його.\n"
-"Вам не надається ЖОДНИХ ГАРАНТІЙ, окрім гарантій передбачених "
-"законодавством.\n"
-
-#: utils/recutl.c:176
+"Умови ліцензування викладено у GPLv3+: GNU GPL версії 3 або новішій, \n"
+"Це вільне програмне забезпечення: ви можете вільно змінювати і поширювати його.\n"
+"Вам не надається ЖОДНИХ ГАРАНТІЙ, окрім гарантій передбачених законодавством.\n"
+
+#: utils/recutl.c:192
msgid ""
"\n"
"Written by Jose E. Marchesi."
@@ -1367,80 +1172,48 @@ msgstr ""
"\n"
"Автор — Jose E. Marchesi."
-#: utils/recutl.c:188 utils/recutl.c:202
+#: utils/recutl.c:204 utils/recutl.c:218
msgid ": error: "
msgstr ": помилка: "
-#: utils/recutl.c:214
+#: utils/recutl.c:230
msgid ": warning: "
msgstr ": попередження: "
-#: utils/recutl.c:238
+#: utils/recutl.c:254
#, c-format
msgid "duplicated record set '%s' from %s.\n"
msgstr "повторення набору записів «%s» з %s.\n"
-#: utils/recutl.c:396
+#: utils/recutl.c:412
msgid "cannot create a unique name.\n"
msgstr "не вдалося створити назви, яка б не повторювалася.\n"
-#: utils/recutl.c:417
+#: utils/recutl.c:433
#, c-format
msgid "renaming file %s to %s\n"
msgstr "перейменування файла %s на %s\n"
-#: utils/recutl.c:448
+#: utils/recutl.c:464
#, c-format
msgid "reading file %s"
msgstr "читання файла %s"
-#: utils/recutl.c:473
-msgid "operation aborted due to integrity failures.\n"
-msgstr "дію перервано через порушення цілісності бази даних.\n"
-
-#: utils/recutl.c:474
-msgid "use --verbose to get a detailed report.\n"
-msgstr "скористайтеся параметром --verbose, щоб отримати докладний звіт.\n"
-
-#: utils/recutl.c:481
-msgid "use --force to skip the integrity check.\n"
-msgstr ""
-"скористайтеся параметром --force, щоб наказати програмі не виконувати "
-"перевірки цілісності.\n"
-
-#: utils/recutl.c:542
+#: utils/recutl.c:553
msgid "internal error: recutl_index_list_parse: error compiling regexp.\n"
-msgstr ""
-"внутрішня помилка: помилка recutl_index_list_parse під час спроби компіляції "
-"формального виразу.\n"
-
-#~ msgid ""
-#~ "%s:%s: warning: type %s collides with referred type %s in the rset %s.\n"
-#~ msgstr ""
-#~ "%s:%s: попередження: тип %s суперечить еталонному типу %s у rset %s.\n"
-
-#~ msgid "evaluating the selection expression.\n"
-#~ msgstr "визначення виразу вибору.\n"
+msgstr "внутрішня помилка: помилка recutl_index_list_parse під час спроби компіляції формального виразу.\n"
#~ msgid "internal error: rec_resolver_check: error compiling regexp.\n"
-#~ msgstr ""
-#~ "внутрішня помилка: помилка rec_resolver_check під час спроби компіляції "
-#~ "формального виразу.\n"
+#~ msgstr "внутрішня помилка: помилка rec_resolver_check під час спроби компіляції формального виразу.\n"
#~ msgid "internal error: rec_field_name_part_str_p: error compiling regexp.\n"
-#~ msgstr ""
-#~ "внутрішня помилка: помилка rrec_field_name_part_str_p під час спроби "
-#~ "компіляції формального виразу.\n"
+#~ msgstr "внутрішня помилка: помилка rrec_field_name_part_str_p під час спроби компіляції формального виразу.\n"
#~ msgid "internal error: rec_int_rec_type_p: error compiling regexp.\n"
-#~ msgstr ""
-#~ "внутрішня помилка: помилка rec_int_rec_type_p під час спроби компіляції "
-#~ "формального виразу.\n"
+#~ msgstr "внутрішня помилка: помилка rec_int_rec_type_p під час спроби компіляції формального виразу.\n"
#~ msgid "internal error: rec-types: error compiling regexp.\n"
-#~ msgstr ""
-#~ "внутрішня помилка: типи rec: помилка під час спроби компіляції "
-#~ "формального виразу.\n"
+#~ msgstr "внутрішня помилка: типи rec: помилка під час спроби компіляції формального виразу.\n"
#~ msgid ""
#~ "Examples:\n"
@@ -1479,14 +1252,12 @@ msgstr ""
#~ "Examples:\n"
#~ "\n"
#~ " recdel -n 10 contacts.rec\n"
-#~ " cat hackers.rec | recdel -e \"Email[0] = 'address@hidden'\" > other."
-#~ "rec\n"
+#~ " cat hackers.rec | recdel -e \"Email[0] = 'address@hidden'\" > other.rec\n"
#~ msgstr ""
#~ "Приклади:\n"
#~ "\n"
#~ " recdel -n 10 contacts.rec\n"
-#~ " cat hackers.rec | recdel -e \"Email[0] = 'address@hidden'\" > other."
-#~ "rec\n"
+#~ " cat hackers.rec | recdel -e \"Email[0] = 'address@hidden'\" > other.rec\n"
#~ msgid ""
#~ "Examples:\n"
@@ -1515,23 +1286,16 @@ msgstr ""
#~ msgid ""
#~ "Examples:\n"
#~ "\n"
-#~ " recins -f Name -v \"Mr Foo\" -f Email -v address@hidden contacts."
-#~ "rec\n"
-#~ " cat hackers.rec | recins -t Hacker -f Email -v address@hidden > "
-#~ "other.rec\n"
+#~ " recins -f Name -v \"Mr Foo\" -f Email -v address@hidden contacts.rec\n"
+#~ " cat hackers.rec | recins -t Hacker -f Email -v address@hidden > other.rec\n"
#~ msgstr ""
#~ "Приклади:\n"
#~ "\n"
-#~ " recins -f Name -v \"Mr Foo\" -f Email -v address@hidden contacts."
-#~ "rec\n"
-#~ " cat hackers.rec | recins -t Hacker -f Email -v address@hidden > "
-#~ "other.rec\n"
+#~ " recins -f Name -v \"Mr Foo\" -f Email -v address@hidden contacts.rec\n"
+#~ " cat hackers.rec | recins -t Hacker -f Email -v address@hidden > other.rec\n"
-#~ msgid ""
-#~ "the record set contains confidential fields but no password was provided\n"
-#~ msgstr ""
-#~ "набір записів містить дані конфіденційних полів, але не вказано жодного "
-#~ "пароля для доступу до них\n"
+#~ msgid "the record set contains confidential fields but no password was provided\n"
+#~ msgstr "набір записів містить дані конфіденційних полів, але не вказано жодного пароля для доступу до них\n"
#~ msgid "the resulting record will have those fields unencrypted!\n"
#~ msgstr "у остаточному записі дані цих полів буде розшифровано!\n"
@@ -1540,36 +1304,30 @@ msgstr ""
#~ "Examples:\n"
#~ "\n"
#~ " recsel -t Friend -e \"Name ~ 'Smith'\" friends.rec\n"
-#~ " recsel -C -e \"#Email && Wiki = 'no'\" -P Email[0] gnupdf-hackers."
-#~ "rec\n"
+#~ " recsel -C -e \"#Email && Wiki = 'no'\" -P Email[0] gnupdf-hackers.rec\n"
#~ msgstr ""
#~ "Приклади:\n"
#~ "\n"
#~ " recsel -t Friend -e \"Name ~ 'Smith'\" friends.rec\n"
-#~ " recsel -C -e \"#Email && Wiki = 'no'\" -P Email[0] gnupdf-hackers."
-#~ "rec\n"
+#~ " recsel -C -e \"#Email && Wiki = 'no'\" -P Email[0] gnupdf-hackers.rec\n"
#~ msgid ""
#~ "Examples:\n"
#~ "\n"
#~ " recset -f TmpName -d data.rec\n"
#~ " recset -f Email[1] -s address@hidden friends.rec\n"
-#~ " recset -e \"Name ~ 'Smith'\" -f Email -a address@hidden friends."
-#~ "rec\n"
+#~ " recset -e \"Name ~ 'Smith'\" -f Email -a address@hidden friends.rec\n"
#~ " recset -f Email[1] -r AltEmail friends.rec\n"
#~ msgstr ""
#~ "Приклади:\n"
#~ "\n"
#~ " recset -f TmpName -d data.rec\n"
#~ " recset -f Email[1] -s address@hidden friends.rec\n"
-#~ " recset -e \"Name ~ 'Smith'\" -f Email -a address@hidden friends."
-#~ "rec\n"
+#~ " recset -e \"Name ~ 'Smith'\" -f Email -a address@hidden friends.rec\n"
#~ " recset -f Email[1] -r AltEmail friends.rec\n"
#~ msgid " --no-external don't use external descriptors.\n"
-#~ msgstr ""
-#~ " --no-external не використовувати зовнішніх "
-#~ "дескрипторів.\n"
+#~ msgstr " --no-external не використовувати зовнішніх дескрипторів.\n"
#~ msgid ""
#~ "Examples:\n"
diff --git a/po/vi.po b/po/vi.po
index 830e1c8..b46c5df 100644
--- a/po/vi.po
+++ b/po/vi.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: recutils 1.5\n"
"Report-Msgid-Bugs-To: address@hidden"
-"POT-Creation-Date: 2012-02-29 21:43+0100\n"
+"POT-Creation-Date: 2012-01-13 12:00+0100\n"
"PO-Revision-Date: 2012-12-29 09:01+0700\n"
"Last-Translator: Trần Ngọc Quân \n"
"Language-Team: Vietnamese \n"
@@ -214,14 +214,14 @@ msgstr "tiến trình con %s đã nhận tín hiệu nghiêm trọng %d"
msgid "memory exhausted"
msgstr "hết bộ nhớ"
-#: src/rec-fex.c:379
+#: src/rec-fex.c:377
#, c-format
msgid "internal error: REC_FEX_MAX_ELEMS exceeded. Please report this.\n"
msgstr "lỗi nội bộ: đã vượt quá REC_FEX_MAX_ELEMS. Hãy báo cáo lỗi này.\n"
#: src/rec-int.c:172
-#, fuzzy, c-format
-msgid "%s: error: the number of records of type %s should be %zd.\n"
+#, c-format
+msgid "%s: error: the number of records of type %s shall be %zd.\n"
msgstr "%s: lỗi: số bản ghi của kiểu %s phải là %zd.\n"
#: src/rec-int.c:182
@@ -234,240 +234,212 @@ msgstr "%s: lỗi: có quá nhiều bản ghi cho kiểu %s. Tối đa là %zd.\
msgid "%s: error: too few records of type %s. Minimum allowed are %zd.\n"
msgstr "%s: lỗi: có quá ít bản ghi cho kiểu %s. Tối thiểu là %zd.\n"
-#: src/rec-int.c:350
+#: src/rec-int.c:305
+#, c-format
+msgid "%s:%s: warning: type %s collides with referred type %s in the rset %s.\n"
+msgstr "%s:%s: cảnh báo: kiểu %s đối lập với kiểu tham chiếu %s trong rset %s.\n"
+
+#: src/rec-int.c:410
#, c-format
msgid "%s:%s: error: mandatory field '%s' not found in record\n"
msgstr "%s:%s: lỗi: trường yêu cầu '%s' không tìm thấy trong bản ghi\n"
-#: src/rec-int.c:401
+#: src/rec-int.c:463
#, c-format
msgid "%s:%s: error: field '%s' should be unique in this record\n"
msgstr "%s:%s: cảnh báo: trường '%s' cần phải là duy nhất trong bản ghi này\n"
-#: src/rec-int.c:452
+#: src/rec-int.c:516
#, c-format
msgid "%s:%s: error: prohibited field '%s' found in record\n"
msgstr "%s:%s: lỗi: trường cấm '%s' tìm thấy trong bản ghi\n"
-#: src/rec-int.c:491
+#: src/rec-int.c:555
#, c-format
msgid "%s:%s: error: confidential field is not encrypted\n"
msgstr "%s:%s: lỗi: trường bí mật thì chưa được mã hóa\n"
-#: src/rec-int.c:543
+#: src/rec-int.c:607
#, c-format
msgid "%s:%s: error: key field '%s' not found in record\n"
msgstr "%s:%s: lỗi: trường yêu cầu '%s' không tìm thấy trong bản ghi\n"
-#: src/rec-int.c:552
+#: src/rec-int.c:616
#, c-format
msgid "%s:%s: error: multiple key fields '%s' in record\n"
msgstr "%s:%s: lỗi: có quá nhiều trường khóa '%s' trong bản ghi\n"
-#: src/rec-int.c:595
+#: src/rec-int.c:659
#, c-format
msgid "%s:%s: error: duplicated key value in field '%s' in record\n"
msgstr "%s:%s: lỗi: trùng lặp khóa trong trường '%s' trong bản ghi\n"
-#: src/rec-int.c:643
+#: src/rec-int.c:709
#, c-format
msgid "%s:%s: error: missing %%rec field in record descriptor\n"
msgstr "%s:%s: lỗi: thiếu trường %%rec trong bộ mô tả bản ghi\n"
-#: src/rec-int.c:651
+#: src/rec-int.c:717
#, c-format
msgid "%s:%s: error: too many %%rec fields in record descriptor\n"
msgstr "%s:%s: lỗi: quá nhiều trường %%rec trong bộ mô tả bản ghi\n"
-#: src/rec-int.c:661
+#: src/rec-int.c:727
#, c-format
msgid "%s:%s: error: invalid record type %s\n"
msgstr "%s:%s: lỗi: kiểu bản ghi %s không hợp lệ\n"
-#: src/rec-int.c:672
+#: src/rec-int.c:738
#, c-format
msgid "%s:%s: error: only one %%key field is allowed in a record descriptor\n"
msgstr "%s:%s: lỗi: chỉ cho phép một trường %%key trong bộ mô tả bản ghi\n"
-#: src/rec-int.c:682
+#: src/rec-int.c:748
#, c-format
msgid "%s:%s: error: only one %%size field is allowed in a record descriptor\n"
msgstr "%s:%s: lỗi: chỉ cho phép một trường %%size trong bộ mô tả bản ghi\n"
-#: src/rec-int.c:692
+#: src/rec-int.c:758
#, c-format
msgid "%s:%s: error: only one %%sort field is allowed in a record descriptor\n"
msgstr "%s:%s: lỗi: chỉ cho phép một trường %%sort trong bộ mô tả bản ghi\n"
-#: src/rec-int.c:715
+#: src/rec-int.c:782
#, c-format
-msgid ""
-"%s:%s: error: expected a comma-separated list of fields before the type "
-"specification\n"
-msgstr ""
-"%s:%s: lỗi: cần danh sách các trường ngăn cách bằng dấu phẩy trước đặc tả "
-"kiểu\n"
+msgid "%s:%s: error: expected a comma-separated list of fields before the type specification\n"
+msgstr "%s:%s: lỗi: cần danh sách các trường ngăn cách bằng dấu phẩy trước đặc tả kiểu\n"
-#: src/rec-int.c:741 src/rec-int.c:794
+#: src/rec-int.c:808 src/rec-int.c:861
#, c-format
msgid "%s:%s: error: the referred type %s does not exist\n"
msgstr "%s:%s: lỗi: kiểu tham chiếu %s không tồn tại\n"
-#: src/rec-int.c:753
+#: src/rec-int.c:820
#, c-format
msgid "%s:%s: error: invalid type specification\n"
msgstr "%s:%s: lỗi: đặc tả kiểu không hợp lệ\n"
-#: src/rec-int.c:768
+#: src/rec-int.c:835
#, c-format
msgid "%s:%s: error: expected a type name before the type specification\n"
msgstr "%s:%s: lỗi: cần tên kiểu trước đặc tả kiểu\n"
-#: src/rec-int.c:806
+#: src/rec-int.c:873
#, c-format
msgid "%s:%s: error: invalid typedef specification\n"
msgstr "%s:%s: lỗi: đặc tả kiểu không hợp lệ\n"
-#: src/rec-int.c:828
+#: src/rec-int.c:895
#, c-format
msgid "%s:%s: error: value for %s[%zd] is not a list of field names\n"
-msgstr ""
-"%s:%s: lỗi: giá trị cho %s[%zd] không phải là một danh sách tên trường\n"
+msgstr "%s:%s: lỗi: giá trị cho %s[%zd] không phải là một danh sách tên trường\n"
-#: src/rec-int.c:844
-#, fuzzy, c-format
-msgid "%s:%s: error: value for %s should be a field name.\n"
+#: src/rec-int.c:911
+#, c-format
+msgid "%s:%s: error: value for %s shall be a field name.\n"
msgstr "%s:%s: lỗi: giá trị cho %s phải là tên trường.\n"
-#: src/rec-int.c:856
-#, fuzzy, c-format
-msgid ""
-"%s:%s: error: value for %s should be a number optionally preceded by >, <, "
-">= or <=.\n"
-msgstr ""
-"%s:%s: lỗi: giá trị cho %s phải là con số tùy chọn đi trước bởi >, <, >= or "
-"<=.\n"
+#: src/rec-int.c:923
+#, c-format
+msgid "%s:%s: error: value for %s shall be a number optionally preceded by >, <, >= or <=.\n"
+msgstr "%s:%s: lỗi: giá trị cho %s phải là con số tùy chọn đi trước bởi >, <, >= or <=.\n"
-#: src/rec-int.c:872
-#, fuzzy, c-format
-msgid "%s:%s: error: value for %s should be a list of field names.\n"
+#: src/rec-int.c:939
+#, c-format
+msgid "%s:%s: error: value for %s shall be a list of field names.\n"
msgstr "%s:%s: lỗi: giá trị cho %s phải là danh sách tên trường.\n"
-#: src/rec-int.c:900
-#, fuzzy, c-format
-msgid ""
-"%s:%s: error: auto-incremented field %s should be of type int, range, uuid "
-"or date\n"
-msgstr ""
-"%s:%s: lỗi: trường tự-động-tăng %s phải là kiểu int, vùng hay ngày tháng\n"
-
-#: src/rec-int.c:902
-#, fuzzy, c-format
-msgid ""
-"%s:%s: error: auto-incremented field %s should be of type int, range or "
-"date\n"
-msgstr ""
-"%s:%s: lỗi: trường tự-động-tăng %s phải là kiểu int, vùng hay ngày tháng\n"
+#: src/rec-int.c:964
+#, c-format
+msgid "%s:%s: error: auto-incremented field %s shall be of type int, range or date\n"
+msgstr "%s:%s: lỗi: trường tự-động-tăng %s phải là kiểu int, vùng hay ngày tháng\n"
-#: src/rec-int.c:985
+#: src/rec-int.c:1046
#, c-format
msgid "%s:%s: error: could not fetch remote descriptor from url %s.\n"
msgstr "%s:%s: lỗi: không thể lấy về bộ mô tả máy chủ từ địa chỉ url %s.\n"
-#: src/rec-int.c:1004
+#: src/rec-int.c:1065
#, c-format
msgid "%s:%s: error: could not read external descriptor from file %s.\n"
msgstr "%s:%s: lỗi: không thể đọc bộ mô tả mở rộng từ tập tin %s.\n"
-#: src/rec-int.c:1019
+#: src/rec-int.c:1080
#, c-format
msgid "%s:%s: error: %s does not contain valid rec data.\n"
msgstr "%s:%s: lỗi: %s không chứa dữ liệu rec hợp lệ.\n"
-#: src/rec-int.c:1033
+#: src/rec-int.c:1094
#, c-format
msgid "%s:%s: error: %s does not contain information for type %s.\n"
msgstr "%s:%s: lỗi: %s không chứa thông tin cho kiểu %s.\n"
-#: src/rec-types.c:416
+#: src/rec-types.c:393
#, c-format
-msgid ""
-"internal error: rec-types: got REC_TYPE_NONE from rec_type_parse_type_kind() "
-"in rec_type_new().\n"
-msgstr ""
-"lỗi nội bộ: rec-types: nhận REC_TYPE_NONE từ rec_type_parse_type_kind() "
-"trong rec_type_new().\n"
+msgid "internal error: rec-types: got REC_TYPE_NONE from rec_type_parse_type_kind() in rec_type_new().\n"
+msgstr "lỗi nội bộ: rec-types: nhận REC_TYPE_NONE từ rec_type_parse_type_kind() trong rec_type_new().\n"
-#: src/rec-types.c:956
+#: src/rec-types.c:913
msgid "invalid integer."
msgstr "số nguyên không hợp lệ."
-#: src/rec-types.c:972
+#: src/rec-types.c:929
msgid "invalid 'field' value."
msgstr "giá trị không hợp lệ cho `trường'."
-#: src/rec-types.c:995
-#, fuzzy
-msgid "invalid 'uuid' value."
-msgstr "giá trị không hợp lệ cho `trường'."
-
-#: src/rec-types.c:1013
+#: src/rec-types.c:945
msgid "invalid 'bool' value."
msgstr "giá trị lôgíc 'bool' không hợp lệ."
-#: src/rec-types.c:1036
+#: src/rec-types.c:968
msgid "invalid 'range' value."
msgstr "giá trị 'vùng' không hợp lệ."
-#: src/rec-types.c:1045
+#: src/rec-types.c:977
#, c-format
msgid "expected an integer between %d and %d."
msgstr "cần một số nguyên nằm giữa %d và %d."
-#: src/rec-types.c:1066
+#: src/rec-types.c:998
msgid "invalid 'real' value."
msgstr "giá trị thực 'real' không hợp lệ."
-#: src/rec-types.c:1084
+#: src/rec-types.c:1016
#, c-format
msgid "value too large. Expected a size <= %zu."
msgstr "giá trị quá lớn. Cần kích thước <= %zu."
-#: src/rec-types.c:1105
+#: src/rec-types.c:1037
msgid "invalid 'line' value."
msgstr "giá trị dòng 'line' không hợp lệ."
-#: src/rec-types.c:1124
+#: src/rec-types.c:1056
msgid "value does not match the regexp."
msgstr "giá trị không khớp với biểu thức chính quy regexp."
-#: src/rec-types.c:1147
+#: src/rec-types.c:1079
msgid "invalid date."
msgstr "ngày tháng không hợp lệ."
-#: src/rec-types.c:1163
+#: src/rec-types.c:1095
msgid "invalid email."
msgstr "địa chỉ thư điện tử không hợp lệ."
-#: src/rec-types.c:1217
+#: src/rec-types.c:1149
msgid "invalid enum value."
msgstr "kiểu liệt kê (enum) không hợp lệ."
#: src/rec-utils.c:87
#, c-format
msgid "internal error: rec_int_rec_extract_file: error compiling regexp.\n"
-msgstr ""
-"lỗi nội bộ: rec_int_rec_extract_file: lỗi khi biên dịch biểu thức chính quy "
-"(regexp).\n"
+msgstr "lỗi nội bộ: rec_int_rec_extract_file: lỗi khi biên dịch biểu thức chính quy (regexp).\n"
-#: src/rec-utils.c:115 src/rec-utils.c:144
+#: src/rec-utils.c:115 src/rec-utils.c:143
#, c-format
msgid "internal error: rec_int_rec_extract_url: error compiling regexp.\n"
-msgstr ""
-"lỗi nội bộ: rec_int_rec_extract_url: lỗi biên dịch biểu thức chính quy "
-"regexp.\n"
+msgstr "lỗi nội bộ: rec_int_rec_extract_url: lỗi biên dịch biểu thức chính quy regexp.\n"
-#: src/rec-utils.c:290
+#: src/rec-utils.c:289
#, c-format
msgid "internal error: rec_match: error compiling regexp.\n"
msgstr "lỗi nội bộ: rec_match: lỗi biên dịch biểu thức chính quy regexp.\n"
@@ -489,17 +461,13 @@ msgstr "Chuyển đổi dữ liệu từ kiểu csv sang rec.\n"
#. no-wrap
#: utils/csv2rec.c:115
msgid ""
-" -t, --type=TYPE type name for the converted records; "
-"if this\n"
-" parameter is ommited then no type is "
-"used.\n"
+" -t, --type=TYPE type name for the converted records; if this\n"
+" parameter is ommited then no type is used.\n"
" -s, --strict be strict parsing the csv file.\n"
" -e, --omit-empty omit empty fields.\n"
msgstr ""
-" -t, --type=KIỂU tên kiểu cho các bản ghi được chuyển "
-"đổi; nếu tham số\n"
-" này được để trống thì kiểu mặc định "
-"sẽ được áp dụng.\n"
+" -t, --type=KIỂU tên kiểu cho các bản ghi được chuyển đổi; nếu tham số\n"
+" này được để trống thì kiểu mặc định sẽ được áp dụng.\n"
" -s, --strict phân tích theo chuẩn csv.\n"
" -e, --omit-empty bỏ qua các trường trống.\n"
@@ -513,26 +481,26 @@ msgstr "đã đạt đến số lượng trường tối đa: %d\n"
msgid "invalid field name '%s' in header\n"
msgstr "tên người trường sai `%s' trong phần mở đầu\n"
-#: utils/csv2rec.c:246 utils/csv2rec.c:282 utils/csv2rec.c:297
-#: utils/mdb2rec.c:310 utils/mdb2rec.c:423 utils/recsel.c:420
+#: utils/csv2rec.c:248 utils/csv2rec.c:287 utils/csv2rec.c:302
+#: utils/mdb2rec.c:326 utils/mdb2rec.c:439
msgid "out of memory\n"
msgstr "không đủ bộ nhớ\n"
-#: utils/csv2rec.c:254
+#: utils/csv2rec.c:258
msgid "not enough headers"
msgstr "không đủ header"
-#: utils/csv2rec.c:339 utils/recdel.c:268 utils/recset.c:361
-#: utils/recutl.c:278
+#: utils/csv2rec.c:344 utils/recdel.c:328 utils/recset.c:706
+#: utils/recutl.c:294
#, c-format
msgid "cannot read file %s\n"
msgstr "không thể đọc tập tin %s\n"
-#: utils/csv2rec.c:350
+#: utils/csv2rec.c:355
msgid "failed to initialize csv parser\n"
msgstr "gặp lỗi khi khởi tạo bộ phân tích csv\n"
-#: utils/csv2rec.c:368
+#: utils/csv2rec.c:373
#, c-format
msgid "error while parsing CSV file: %s\n"
msgstr "gặp lỗi khi phân tích ngữ pháp tập tin CSV: %s\n"
@@ -557,47 +525,45 @@ msgid ""
" -s, --system-tables include system tables.\n"
" -e, --keep-empty-fields don't prune empty fields in the rec\n"
" output.\n"
-" -l, --list-tables dump a list of the table names "
-"contained\n"
+" -l, --list-tables dump a list of the table names contained\n"
" in the mdb file.\n"
msgstr ""
" -s, --system-tables bao gồm các bảng hệ thống.\n"
-" -e, --keep-empty-fields không cắt cụt các trường trống trong "
-"kết\n"
+" -e, --keep-empty-fields không cắt cụt các trường trống trong kết\n"
" xuất rec.\n"
" -l, --list-tables đổ danh sách tên các bảng chứa trong\n"
" trong tập tin mdb.\n"
-#: utils/mdb2rec.c:251 utils/mdb2rec.c:317
+#: utils/mdb2rec.c:252 utils/mdb2rec.c:333
#, c-format
msgid "failed to normalise record type name %s\n"
msgstr "gặp lỗi khi tiêu chuẩn hóa tên kiểu bản ghi %s\n"
-#: utils/mdb2rec.c:259 utils/mdb2rec.c:270
+#: utils/mdb2rec.c:260 utils/mdb2rec.c:272
#, c-format
msgid "failed to normalise field name %s\n"
msgstr "gặp lỗi khi tiêu chuẩn hóa tên trường %s\n"
-#: utils/mdb2rec.c:338
+#: utils/mdb2rec.c:354
#, c-format
msgid "failed to normalise the field name %s\n"
msgstr "gặp lỗi khi tiêu chuẩn hóa tên trường %s\n"
-#: utils/mdb2rec.c:447 utils/recins.c:209 utils/recset.c:253
+#: utils/mdb2rec.c:465 utils/recins.c:342 utils/recset.c:265
#, c-format
msgid "invalid field name %s.\n"
msgstr "tên trường không hợp lệ %s.\n"
-#: utils/mdb2rec.c:478 utils/rec2csv.c:193 utils/rec2csv.c:200
+#: utils/mdb2rec.c:496 utils/rec2csv.c:193 utils/rec2csv.c:200
msgid "out of memory"
msgstr "hết bộ nhớ"
-#: utils/mdb2rec.c:488
+#: utils/mdb2rec.c:506
#, c-format
msgid "could not open file %s\n"
msgstr "không thể mở tập tin %s\n"
-#: utils/mdb2rec.c:495
+#: utils/mdb2rec.c:513
msgid "file does not appear to be an Access database\n"
msgstr "tập tin có vẻ không phải là cơ sở dữ liệu Access\n"
@@ -618,37 +584,28 @@ msgstr "Chuyển đổi dữ liệu từ kiểu rec sang csv.\n"
#. no-wrap
#: utils/rec2csv.c:96
msgid ""
-" -t, --type=TYPE record set to convert to csv; if this "
-"parameter\n"
-" is omitted then the default record "
-"set is used\n"
-" -S, --sort=FIELD sort the output by the specified "
-"field.\n"
+" -t, --type=TYPE record set to convert to csv; if this parameter\n"
+" is omitted then the default record set is used\n"
+" -S, --sort=FIELD sort the output by the specified field.\n"
msgstr ""
-" -t, --type=KIỂU tập hợp các bản ghi chuyển đổi sang "
-"csv; nếu tham số này\n"
-" được bỏ qua thì kiểu mặc định sẽ "
-"được dùng\n"
+" -t, --type=KIỂU tập hợp các bản ghi chuyển đổi sang csv; nếu tham số này\n"
+" được bỏ qua thì kiểu mặc định sẽ được dùng\n"
" -S, --sort=TRƯỜNG sắp xếp theo trường này.\n"
-#: utils/rec2csv.c:135 utils/recsel.c:230
+#: utils/rec2csv.c:135 utils/recsel.c:228
msgid "only one field can be specified as a sorting criteria.\n"
msgstr "chỉ được chỉ ra một trường làm tiêu chí để sắp xếp.\n"
-#: utils/rec2csv.c:142 utils/recsel.c:237
+#: utils/rec2csv.c:142 utils/recsel.c:235
msgid "invalid field name in -S.\n"
msgstr "tên trường không hợp lệ trong -S.\n"
#. TRANSLATORS: --help output, recdel synopsis.
#. no-wrap
#: utils/recdel.c:89
-#, fuzzy, c-format
-msgid ""
-"Usage: recdel [OPTIONS]... [-t TYPE] [-n NUM | -e RECORD_EXPR | -q STR | -m "
-"NUM] [FILE]\n"
-msgstr ""
-"Cách dùng: recdel [TÙY-CHỌN]... [-t KIỂU] [-n SỐ | -e EXPR | -q STR | -m SỐ] "
-"[TẬP-TIN]\n"
+#, c-format
+msgid "Usage: recdel [OPTIONS]... [-t TYPE] [-n NUM | -e EXPR | -q STR | -m NUM] [FILE]\n"
+msgstr "Cách dùng: recdel [TÙY-CHỌN]... [-t KIỂU] [-n SỐ | -e EXPR | -q STR | -m SỐ] [TẬP-TIN]\n"
#. TRANSLATORS: --help output, recdel short description.
#. no-wrap
@@ -660,26 +617,20 @@ msgstr "Gỡ bỏ (biến thành ghi chú) các bản ghi từ tập tin rec.\n"
#. no-wrap
#: utils/recdel.c:101
msgid ""
-" -c, --comment comment out the matching records "
-"instead of\n"
+" -c, --comment comment out the matching records instead of\n"
" deleting them.\n"
-" --force delete even in potentially dangerous "
-"situations,\n"
-" and if the deletion is violating "
-"record restrictions.\n"
+" --force delete even in potentially dangerous situations,\n"
+" and if the deletion is violating record restrictions.\n"
" --no-external don't use external descriptors.\n"
-" --verbose give a detailed report if the "
-"integrity check\n"
+" --verbose give a detailed report if the integrity check\n"
" fails.\n"
msgstr ""
-" -c, --comment đánh dấu là ghi chú cho các bản ghi "
-"được tìm thấy\n"
+" -c, --comment đánh dấu là ghi chú cho các bản ghi được tìm thấy\n"
" thay vì xóa chúng đi.\n"
" --force xóa ngay cả khi nó tiềm ẩn rủi ro,\n"
" và khi nó vi phạm các hạn chế.\n"
" --no-external không dùng mô tả từ bên ngoài.\n"
-" --verbose đưa ra báo cáo chi tiết nếu việc kiểm "
-"tra\n"
+" --verbose đưa ra báo cáo chi tiết nếu việc kiểm tra\n"
" tính toàn vẹn thất bại.\n"
#. TRANSLATORS: --help output, notes on recdel.
@@ -696,23 +647,25 @@ msgstr ""
"Nếu không đưa ra TẬP-TIN thì lệnh thực hiện như là một bộ lọc, lấy\n"
"dữ liệu từ đầu vào tiêu chuẩn và kết quả đưa ra đầu ra tiêu chuẩn.\n"
-#: utils/recdel.c:136
+#: utils/recdel.c:143
#, c-format
msgid "no records of type %s found.\n"
msgstr "không tìm thấy bản ghi nào thuộc kiểu %s.\n"
-#: utils/recdel.c:229
+#: utils/recdel.c:224 utils/recins.c:501 utils/recsel.c:447
+msgid "evaluating the selection expression.\n"
+msgstr "ước lượng biểu thức chính qui đã chọn.\n"
+
+#: utils/recdel.c:289
#, c-format
msgid "ignoring a request to delete all records of type %s.\n"
msgstr "lờ đi các yêu cầu xóa các bản ghi thuộc kiểu %s.\n"
-#: utils/recdel.c:231
+#: utils/recdel.c:291
msgid "use --force if you really want to proceed, or use either -n or -e.\n"
-msgstr ""
-"dùng --force nếu bạn thực sự muốn xử lý, hoặc dùng một trong hai tùy chọn -"
-"n, -e.\n"
+msgstr "dùng --force nếu bạn thực sự muốn xử lý, hoặc dùng một trong hai tùy chọn -n, -e.\n"
-#: utils/recdel.c:239
+#: utils/recdel.c:299 utils/recset.c:432
msgid "invalid selection expression.\n"
msgstr "Biểu thức chính quy đã chọn không hợp lệ.\n"
@@ -733,13 +686,11 @@ msgstr "Kiểm tra và sửa chữa các tập tin rec.\n"
#. no-wrap
#: utils/recfix.c:130
msgid ""
-" -t, --type=TYPE process only records of the given "
-"type.\n"
+" -t, --type=TYPE process only records of the given type.\n"
" --no-external don't use external descriptors.\n"
" --force force the requested operation.\n"
msgstr ""
-" -t, --type=KIỂU chỉ xử lý các bản ghi của kiểu đã "
-"cho.\n"
+" -t, --type=KIỂU chỉ xử lý các bản ghi của kiểu đã cho.\n"
" --no-external không dùng mô tả từ bên ngoài.\n"
" --force ép buộc thao tác được yêu cầu.\n"
@@ -748,34 +699,24 @@ msgstr ""
#: utils/recfix.c:141
msgid ""
"Operations:\n"
-" --check check integrity of the specified "
-"file. Default.\n"
-" --sort sort the records in the specified "
-"file.\n"
-" --auto insert auto-generated fields in "
-"records missing them.\n"
+" --check check integrity of the specified file. Default.\n"
+" --sort sort the records in the specified file.\n"
+" --auto insert auto-generated fields in records missing them.\n"
msgstr ""
"Các thao tác:\n"
-" --check kiểm tra tính toàn vẹn của tập tin. "
-"Mặc định.\n"
-" --sort sắp xếp các bản ghi trong tập tin đã "
-"cho.\n"
-" --auto chèn thêm các trường auto-generated "
-"vào các bản ghi bị thiếu.\n"
+" --check kiểm tra tính toàn vẹn của tập tin. Mặc định.\n"
+" --sort sắp xếp các bản ghi trong tập tin đã cho.\n"
+" --auto chèn thêm các trường auto-generated vào các bản ghi bị thiếu.\n"
#. TRANSLATORS: --help output, recfix operations related with encryption.
#. no-wrap
#: utils/recfix.c:151
msgid ""
-" --encrypt encrypt confidential fields in the "
-"specified file.\n"
-" --decrypt decrypt confidential fields in the "
-"specified file.\n"
+" --encrypt encrypt confidential fields in the specified file.\n"
+" --decrypt decrypt confidential fields in the specified file.\n"
msgstr ""
-" --encrypt mã hóa các trường trong tập tin đã "
-"cho.\n"
-" --decrypt giải mã các trường trong tập tin đã "
-"cho.\n"
+" --encrypt mã hóa các trường trong tập tin đã cho.\n"
+" --decrypt giải mã các trường trong tập tin đã cho.\n"
#. TRANSLATORS: --help output, recfix encryption and decryption
#. options.
@@ -786,8 +727,7 @@ msgid ""
" -s, --password=PASSWORD encrypt/decrypt with this password.\n"
msgstr ""
"Tùy chọn mã hóa/ Giải mã:\n"
-" -s, --password=MẬT-KHẨU mã hóa hoặc giải mã dùng MẬT KHẨU "
-"này.\n"
+" -s, --password=MẬT-KHẨU mã hóa hoặc giải mã dùng MẬT KHẨU này.\n"
#: utils/recfix.c:210
msgid "--password|-s must be used as an operation argument.\n"
@@ -806,19 +746,19 @@ msgstr "chỉ được phép chỉ ra một mật khẩu.\n"
msgid "please specify just one operation.\n"
msgstr "chỉ được phép chỉ ra một thao tác.\n"
-#: utils/recfix.c:307 utils/recins.c:341 utils/recsel.c:359
+#: utils/recfix.c:307 utils/recins.c:173 utils/recsel.c:348
msgid "Password: "
msgstr "Mật khẩu: "
-#: utils/recfix.c:454
+#: utils/recfix.c:451
msgid "the database contains already encrypted fields\n"
msgstr "cơ sở dữ liệu đã sẵn chứa các trường được mã hóa\n"
-#: utils/recfix.c:455
+#: utils/recfix.c:452
msgid "please use --force or --decrypt\n"
msgstr "hãy dùng --force hoặc --decrypt\n"
-#: utils/recfix.c:567
+#: utils/recfix.c:561
msgid "unknown operation in recfix: please report this as a bug.\n"
msgstr "không hiểu thao tác recfix: hãy báo cáo đây là một lỗi.\n"
@@ -838,11 +778,8 @@ msgstr "Áp dụng mẫu cho các bản ghi đọc từ đầu ra tiêu chuẩn.
#. TRANSLATORS: --help output, recfmt arguments.
#. no-wrap
#: utils/recfmt.c:89
-msgid ""
-" -f, --file=FILENAME read the template to apply from a "
-"file.\n"
-msgstr ""
-" -f, --file=TẬP-TIN đọc mẫu để áp dụng từ một tập tin.\n"
+msgid " -f, --file=FILENAME read the template to apply from a file.\n"
+msgstr " -f, --file=TẬP-TIN đọc mẫu để áp dụng từ một tập tin.\n"
#: utils/recfmt.c:123
#, c-format
@@ -863,8 +800,7 @@ msgstr "gặp lỗi khi ước lượng giá trị của biểu thức trong slo
#: utils/recfmt.c:204
msgid "recfmt_apply_template: error compiling regexp. Please report this.\n"
-msgstr ""
-"recfmt_apply_template: lỗi dịch biểu thức chính qui. Hãy báo cáo lỗi này.\n"
+msgstr "recfmt_apply_template: lỗi dịch biểu thức chính qui. Hãy báo cáo lỗi này.\n"
#. TRANSLATORS: --help output, recinf synopsis.
#. no-wrap
@@ -883,8 +819,7 @@ msgstr "Hiển thị thông tin về các kiểu của các trường đã lưu
#. no-wrap
#: utils/recinf.c:96
msgid ""
-" -t, --type=RECORD_TYPE print information on the records having "
-"the\n"
+" -t, --type=RECORD_TYPE print information on the records having the\n"
" specified type.\n"
" -d, --descriptor include the full record descriptors.\n"
" -n, --names-only output just the names of the record files\n"
@@ -893,8 +828,7 @@ msgstr ""
" -t, --type=KIỂU-BẢN-GHI hiển thị thông tin trên những bản ghi có\n"
" kiểu đã cho.\n"
" -d, --descriptor bao gồm đầy đủ cả các mô tả bản ghi.\n"
-" -n, --names-only chỉ hiển thị tên của những tập tin bản "
-"ghi\n"
+" -n, --names-only chỉ hiển thị tên của những tập tin bản ghi\n"
" được tìm thấy từ đầu vào.\n"
#. TRANSLATORS: --help output, recinf special options.
@@ -902,14 +836,12 @@ msgstr ""
#: utils/recinf.c:109
msgid ""
"Special options:\n"
-" -S, --print-sexps print the data in sexps instead of rec "
-"format.\n"
+" -S, --print-sexps print the data in sexps instead of rec format.\n"
msgstr ""
"Các tùy chọn đặc biệt:\n"
-" -S, --print-sexps hiển thị dữ liệu ở định dạng sexps "
-"thay cho rec.\n"
+" -S, --print-sexps hiển thị dữ liệu ở định dạng sexps thay cho rec.\n"
-#: utils/recinf.c:260
+#: utils/recinf.c:259
#, c-format
msgid "error: cannot read file %s\n"
msgstr "lỗi: không thể đọc tập tin %s\n"
@@ -917,13 +849,9 @@ msgstr "lỗi: không thể đọc tập tin %s\n"
#. TRANSLATORS: --help output, recins synopsis.
#. no-wrap
#: utils/recins.c:112
-#, fuzzy, c-format
-msgid ""
-"Usage: recins [OPTION]... [-t TYPE] [-n NUM | -e RECORD_EXPR | -q STR | -m "
-"NUM] [(-f NAME -v STR) | -R RECDATA]... [FILE]\n"
-msgstr ""
-"Cách dùng: recins [TÙY-CHỌN]... [t KIỂU] [-n SỐ | -e EXPR | -q STR | -m SỐ] "
-"[(-f STR -v STR]|[-R RECDATA)]... [TẬP-TIN]\n"
+#, c-format
+msgid "Usage: recins [OPTION]... [t TYPE] [-n NUM | -e EXPR | -q STR | -m NUM] [(-f STR -v STR]|[-R RECDATA)]... [FILE]\n"
+msgstr "Cách dùng: recins [TÙY-CHỌN]... [t KIỂU] [-n SỐ | -e EXPR | -q STR | -m SỐ] [(-f STR -v STR]|[-R RECDATA)]... [TẬP-TIN]\n"
#. TRANSLATORS: --help output, recins short description.
#. no-wrap
@@ -935,19 +863,14 @@ msgstr "Chèn thêm các bản ghi mới vào cơ sở dữ liệu rec.\n"
#. no-wrap
#: utils/recins.c:123
msgid ""
-" -f, --field=STR field name; should be followed by a -"
-"v.\n"
-" -v, --value=STR field value; should be preceded by an -"
-"f.\n"
-" -r, --record=STR record that will be inserted in the "
-"file.\n"
-" --force insert the record even if it is "
-"violating\n"
+" -f, --field=STR field name; should be followed by a -v.\n"
+" -v, --value=STR field value; should be preceded by an -f.\n"
+" -r, --record=STR record that will be inserted in the file.\n"
+" --force insert the record even if it is violating\n"
" record restrictions.\n"
" --no-external don't use external descriptors.\n"
" --no-auto don't insert auto generated fields.\n"
-" --verbose give a detailed report if the "
-"integrity check\n"
+" --verbose give a detailed report if the integrity check\n"
" fails.\n"
msgstr ""
" -f, --field=STR tên trường; nên được theo sau -v.\n"
@@ -957,300 +880,248 @@ msgstr ""
" các hạn chế.\n"
" --no-external không dùng các mô tả từ bên ngoài.\n"
" --no-auto không chèn các trường tự động.\n"
-" --verbose đưa ra thông tin chi tiết nếu không "
-"đạt\n"
+" --verbose đưa ra thông tin chi tiết nếu không đạt\n"
" khi kiểm tra tính toàn vẹn dữ liệu.\n"
#. TRANSLATORS: --help output, encryption related options.
#. no-wrap
#: utils/recins.c:137
-msgid ""
-" -s, --password=STR encrypt confidential fields with the "
-"given password.\n"
-msgstr ""
-" -s, --password=STR mã hóa các trường bằng mật khẩu đã "
-"cho.\n"
+msgid " -s, --password=STR encrypt confidential fields with the given password.\n"
+msgstr " -s, --password=STR mã hóa các trường bằng mật khẩu đã cho.\n"
-#: utils/recins.c:196
+#: utils/recins.c:316
msgid "a -f should be followed by a -v\n"
msgstr "-f phải theo sau bởi -v\n"
-#: utils/recins.c:220
+#: utils/recins.c:354
msgid "a -v should be preceded by a -f\n"
msgstr "-v phải được đi trước bởi -f\n"
-#: utils/recins.c:245 utils/recsel.c:218
+#: utils/recins.c:379 utils/recsel.c:216
msgid "more than one password was specified\n"
msgstr "đã đưa ra nhiều hơn một mật khẩu\n"
-#: utils/recins.c:259
+#: utils/recins.c:393
msgid "error while parsing the record provided by -r\n"
msgstr "gặp lỗi trong khi phân tích bản ghi cung cấp bởi tùy chọn -r\n"
-#: utils/recins.c:294
+#: utils/recins.c:428
#, c-format
msgid "please provide a value for the field %s\n"
msgstr "hãy cung cấp giá trị cho trường %s\n"
#. TRANSLATORS: --help output, recsel synopsis.
#. no-wrap
-#: utils/recsel.c:116
-#, fuzzy, c-format
-msgid ""
-"Usage: recsel [OPTION]... [-t TYPE] [-n INDEXES | -e RECORD_EXPR | -q STR | -"
-"m NUM] [-c | (-p|-P) FIELD_EXPR] [FILE]...\n"
-msgstr ""
-"Cách dùng: recsel [TÙY-CHỌN]... [-t KIỂU] [-n INDEXES | -e RECORD_EXPR | -q "
-"EXPR | -m SỐ] [-c | (-p|-P) FIELD_EXPR] [TẬP-TIN]...\n"
+#: utils/recsel.c:115
+#, c-format
+msgid "Usage: recsel [OPTION]... [-t TYPE] [-n INDEXES | -e RECORD_EXPR | -q EXPR | -m NUM] [-c | (-p|-P) FIELD_EXPR] [FILE]...\n"
+msgstr "Cách dùng: recsel [TÙY-CHỌN]... [-t KIỂU] [-n INDEXES | -e RECORD_EXPR | -q EXPR | -m SỐ] [-c | (-p|-P) FIELD_EXPR] [TẬP-TIN]...\n"
#. TRANSLATORS: --help output, recsel arguments.
#. no-wrap
-#: utils/recsel.c:121
+#: utils/recsel.c:120
msgid "Select and print rec data.\n"
msgstr "Chọn và hiển thị dữ liệu rec.\n"
#. TRANSLATORS: --help output, recsel arguments.
#. no-wrap
-#: utils/recsel.c:127
-#, fuzzy
+#: utils/recsel.c:126
msgid ""
-" -d, --include-descriptors print record descriptors along with "
-"the matched\n"
+" -d, --include-descriptors print record descriptors along with the matched\n"
" records.\n"
-" -C, --collapse do not section the result in records "
-"with newlines.\n"
-" -S, --sort=FIELD sort the output by the specified "
-"field.\n"
-" -G, --group-by=FIELD group records by the specified field.\n"
-" -U, --uniq remove duplicated fields in the output "
-"records.\n"
+" -C, --collapse do not section the result in records with newlines.\n"
+" -S, --sort=FIELD sort the output by the specified field.\n"
+" -U, --uniq remove duplicated fields in the output records.\n"
msgstr ""
" -d, --include-descriptors hiển thị các mô tả bản ghi cùng với\n"
" các bản ghi tìm thấy.\n"
-" -C, --collapse không phân đoạn kết quả từng bản ghi "
-"bằng ngắt dòng.\n"
+" -C, --collapse không phân đoạn kết quả từng bản ghi bằng ngắt dòng.\n"
" -S, --sort=TRƯỜNG sắp xếp kết xuất theo trường đã cho.\n"
-" -U, --uniq gỡ bỏ các trường bị trùng trong các "
-"bản ghi kết xuất.\n"
+" -U, --uniq gỡ bỏ các trường bị trùng trong các bản ghi kết xuất.\n"
#. TRANSLATORS: --help output, encryption related options.
#. no-wrap
-#: utils/recsel.c:139
-msgid ""
-" -s, --password=STR decrypt confidential fields with the "
-"given password.\n"
-msgstr ""
-" -s, --password=STR giải mã các trường bằng mật khẩu đã "
-"cho.\n"
+#: utils/recsel.c:137
+msgid " -s, --password=STR decrypt confidential fields with the given password.\n"
+msgstr " -s, --password=STR giải mã các trường bằng mật khẩu đã cho.\n"
#. TRANSLATORS: --help output, recsel output options.
#. no-wrap
-#: utils/recsel.c:152
+#: utils/recsel.c:150
msgid ""
"Output options:\n"
-" -p, --print=FIELDS comma-separated list of fields to "
-"print for each\n"
+" -p, --print=FIELDS comma-separated list of fields to print for each\n"
" matching record.\n"
-" -P, --print-values=FIELDS as -p, but print only the values of "
-"the selected\n"
+" -P, --print-values=FIELDS as -p, but print only the values of the selected\n"
" fields.\n"
-" -R, --print-row=FIELDS as -P, but separate the values with "
-"spaces instead\n"
+" -R, --print-row=FIELDS as -P, but separate the values with spaces instead\n"
" of newlines.\n"
-" -c, --count print a count of the matching records "
-"instead of\n"
+" -c, --count print a count of the matching records instead of\n"
" the records themselves.\n"
msgstr ""
"Các tùy chọn kết xuất:\n"
-" -p, --print=TRƯỜNG danh sách các trường (ngăn cách bằng "
-"dấu phẩy) sẽ được in ra\n"
+" -p, --print=TRƯỜNG danh sách các trường (ngăn cách bằng dấu phẩy) sẽ được in ra\n"
" khi kết xuất.\n"
-" -P, --print-values=TRƯỜNG như -p, nhưng chỉ in giá trị của các "
-"trường\n"
+" -P, --print-values=TRƯỜNG như -p, nhưng chỉ in giá trị của các trường\n"
" đã chọn.\n"
-" -R, --print-row=TRƯỜNG như -P, nhưng ngăn cách các giá trị "
-"bằng khoảng trắng\n"
+" -R, --print-row=TRƯỜNG như -P, nhưng ngăn cách các giá trị bằng khoảng trắng\n"
" thay vì ngắt dòng.\n"
" -c, --count in ra số lượng của các bản ghi\n"
" thay cho các bản ghi.\n"
#. TRANSLATORS: --help output, recsel special options.
#. no-wrap
-#: utils/recsel.c:166
+#: utils/recsel.c:164
msgid ""
"Special options:\n"
-" --print-sexps print the data in sexps instead of rec "
-"format.\n"
+" --print-sexps print the data in sexps instead of rec format.\n"
msgstr ""
"Tùy chọn đặc biệt:\n"
-" --print-sexps hiển thị dữ liệu theo định dạng sexps "
-"thay cho rec.\n"
+" --print-sexps hiển thị dữ liệu theo định dạng sexps thay cho rec.\n"
#: utils/recsel.c:247
-#, fuzzy
-msgid "only one field can be specified as a grouping criteria.\n"
-msgstr "chỉ được chỉ ra một trường làm tiêu chí để sắp xếp.\n"
-
-#: utils/recsel.c:255
-#, fuzzy
-msgid "invalid field name in -G.\n"
-msgstr "tên trường không hợp lệ trong -S.\n"
-
-#: utils/recsel.c:267
msgid "cannot specify -[pPR] and also -c.\n"
msgstr "không được phép đưa ra -[pPR] mà lại còn dùng -c.\n"
-#: utils/recsel.c:284
-#, fuzzy, c-format
-msgid "invalid list of fields in -%c\n"
-msgstr "tên trường không hợp lệ %s.\n"
-
-#: utils/recsel.c:292
+#: utils/recsel.c:273
msgid "internal error creating the field expression.\n"
msgstr "lỗi nội bộ khi tạo biểu thức trường.\n"
-#: utils/recsel.c:308
+#: utils/recsel.c:289
msgid "cannot specify -c and also -p.\n"
msgstr "không thể chỉ ra đồng thời hai tùy chọn -c và -p.\n"
-#: utils/recsel.c:382
+#: utils/recsel.c:369
msgid "several record types found. Please use -t to specify one.\n"
msgstr "tìm thấy vài kiểu bản ghi. Hãy dùng tùy chọn -t để chỉ định một.\n"
#. TRANSLATORS: --help output, recset synopsis.
#. no-wrap
-#: utils/recset.c:113
+#: utils/recset.c:125
#, c-format
msgid "Usage: recset [OPTION]... [FILE]...\n"
msgstr "Cách dùng: recset [TÙY-CHỌN]... [TẬP-TIN]...\n"
#. TRANSLATORS: --help output, recset short description.
#. no-wrap
-#: utils/recset.c:118
+#: utils/recset.c:130
msgid "Alter or delete fields in records.\n"
msgstr "Thay thế hay xóa các trường trong bản ghi.\n"
#. TRANSLATORS: --help output, recset options.
#. no-wrap
-#: utils/recset.c:124
+#: utils/recset.c:136
msgid ""
" --no-external don't use external descriptors.\n"
-" --force alter the records even if violating "
-"record\n"
+" --force alter the records even if violating record\n"
" restrictions.\n"
msgstr ""
" --no-external không dùng bộ mô tả từ bên ngoài.\n"
-" --force thay thế các bản ghi ngay cả khi nó vi "
-"phạm\n"
+" --force thay thế các bản ghi ngay cả khi nó vi phạm\n"
" các hạn chế.\n"
#. TRANSLATORS: --help output, recset field selection options.
#. no-wrap
-#: utils/recset.c:137
+#: utils/recset.c:149
msgid ""
"Field selection options:\n"
-" -f, --fields=FIELDS comma-separated list of field names "
-"with optional\n"
+" -f, --fields=FIELDS comma-separated list of field names with optional\n"
" subscripts.\n"
msgstr ""
"Các tùy chọn chọn trường:\n"
-" -f, --fields=TRƯỜNG danh sách tên trường được ngăn cách "
-"bằng dấu phẩy\n"
+" -f, --fields=TRƯỜNG danh sách tên trường được ngăn cách bằng dấu phẩy\n"
" với chỉ số phụ tùy chọn.\n"
#. TRANSLATORS: --help output, recset actions.
#. no-wrap
-#: utils/recset.c:145
+#: utils/recset.c:157
msgid ""
"Actions:\n"
-" -s, --set=VALUE change the value of the selected "
-"fields.\n"
-" -a, --add=VALUE add the selected fields with the given "
-"value.\n"
-" -S, --set-add=VALUE change the value of the selected "
-"fields. If they don't\n"
-" exist then add a new field with that "
-"value.\n"
-" -r, --rename=NAME rename the selected fields to a given "
-"name. If an entire\n"
-" record set is selected then the "
-"field is renamed in the\n"
+" -s, --set=VALUE change the value of the selected fields.\n"
+" -a, --add=VALUE add the selected fields with the given value.\n"
+" -S, --set-add=VALUE change the value of the selected fields. If they don't\n"
+" exist then add a new field with that value.\n"
+" -r, --rename=NAME rename the selected fields to a given name. If an entire\n"
+" record set is selected then the field is renamed in the\n"
" record descriptor as well.\n"
" -d, --delete delete the selected fields.\n"
" -c, --comment comment out the selected fields.\n"
msgstr ""
"Actions:\n"
-" -s, --set=GIÁ-TRỊ thay đổi giá trị của các trường đã "
-"chọn.\n"
-" -a, --add=GIÁ-TRỊ thêm các trường đã chọn bằng giá trị "
-"đã cho.\n"
-" -S, --set-add=GIÁ-TRỊ thay đổi giá trị của các trường đã "
-"chọn. Nếu chúng\n"
-" chưa có thì thêm trường bằng giá trị "
-"này.\n"
-" -r, --rename=TÊN đổi tên trường bằng tên đã cho. Nếu "
-"toàn bộ tập hợp\n"
-" bản ghi được chọn thì trường đổi "
-"tên \n"
+" -s, --set=GIÁ-TRỊ thay đổi giá trị của các trường đã chọn.\n"
+" -a, --add=GIÁ-TRỊ thêm các trường đã chọn bằng giá trị đã cho.\n"
+" -S, --set-add=GIÁ-TRỊ thay đổi giá trị của các trường đã chọn. Nếu chúng\n"
+" chưa có thì thêm trường bằng giá trị này.\n"
+" -r, --rename=TÊN đổi tên trường bằng tên đã cho. Nếu toàn bộ tập hợp\n"
+" bản ghi được chọn thì trường đổi tên \n"
" mô tả bản ghi cũng bị đổi tên.\n"
" -d, --delete xóa các trường đã chọn.\n"
-" -c, --comment biến các trường đã chọn thành ghi "
-"chú.\n"
+" -c, --comment biến các trường đã chọn thành ghi chú.\n"
-#: utils/recset.c:168
+#: utils/recset.c:180
msgid "please specify some field with -f.\n"
msgstr "hãy chỉ ra một số trường cho tùy chọn -f.\n"
-#: utils/recset.c:173
+#: utils/recset.c:185
msgid "please specify just one action.\n"
msgstr "chỉ được phép chỉ ra một hành động.\n"
-#: utils/recset.c:213
+#: utils/recset.c:225
msgid "invalid field expression in -f.\n"
msgstr "biểu thức trường không hợp lệ trong -f.\n"
-#: utils/recset.c:221
+#: utils/recset.c:233
msgid "creating the field expression.\n"
msgstr "tạo biểu thức trường.\n"
-#: utils/recset.c:243
-msgid ""
-"the rename operation requires just one field with an optional subscript.\n"
+#: utils/recset.c:255
+msgid "the rename operation requires just one field with an optional subscript.\n"
msgstr "thao tác đổi tên yêu cầu chỉ một trường với một subcript tùy chọn.\n"
+#: utils/recset.c:449 utils/recutl.c:489
+msgid "operation aborted due to integrity failures.\n"
+msgstr "thao tác bị bãi bỏ bởi vì tính liêm chính không được đảm bảo.\n"
+
+#: utils/recset.c:450 utils/recutl.c:490
+msgid "use --verbose to get a detailed report.\n"
+msgstr "dùng --verbose để có báo cáo đầy đủ.\n"
+
+#: utils/recset.c:457 utils/recutl.c:497
+msgid "use --force to skip the integrity check.\n"
+msgstr "dùng --force để bỏ qua kiểm tra sự toàn vẹn dữ liệu.\n"
+
#. TRANSLATORS: --help output 5+ (reports)
#. TRANSLATORS: the placeholder indicates the bug-reporting address
#. for this application. Please add _another line_ with the
#. address for translation bugs.
#. no-wrap
-#: utils/recutl.c:113
+#: utils/recutl.c:129
#, c-format
msgid "Report bugs to: %s\n"
msgstr "Thông báo lỗi cho : %s\n"
-#: utils/recutl.c:116
+#: utils/recutl.c:132
#, c-format
msgid "Report %s bugs to: %s\n"
msgstr "Thông báo lỗi %s tới: %s\n"
-#: utils/recutl.c:120
+#: utils/recutl.c:136
#, c-format
msgid "%s home page: <%s>\n"
msgstr "Trang chủ %s: <%s>\n"
-#: utils/recutl.c:122
+#: utils/recutl.c:138
#, c-format
msgid "%s home page: \n"
msgstr "Trang chủ %s: \n"
-#: utils/recutl.c:125
+#: utils/recutl.c:141
msgid "General help using GNU software: \n"
-msgstr ""
-"Trợ giúp chung về sử dụng phần mềm GNU: \n"
+msgstr "Trợ giúp chung về sử dụng phần mềm GNU: \n"
#. TRANSLATORS: --help output, common arguments.
#. no-wrap
-#: utils/recutl.c:134
+#: utils/recutl.c:150
msgid ""
" --help print a help message and exit.\n"
" --version show version and exit.\n"
@@ -1260,50 +1131,39 @@ msgstr ""
#. TRANSLATORS: --help output, record selection arguments
#. no-wrap
-#: utils/recutl.c:145
-#, fuzzy
+#: utils/recutl.c:161
msgid ""
"Record selection options:\n"
-" -i, --case-insensitive make strings case-insensitive in "
-"selection\n"
+" -i, --case-insensitive make strings case-insensitive in selection\n"
" expressions.\n"
-" -t, --type=TYPE operate on records of the specified "
-"type only.\n"
-" -e, --expression=RECORD_EXPR selection expression.\n"
-" -q, --quick=STR select records with fields containing "
-"a string.\n"
-" -n, --number=NUM,... select specific records by position, "
-"with ranges.\n"
-" -m, --random=NUM select a given number of random "
-"records.\n"
+" -t, --type=TYPE operate on records of the specified type only.\n"
+" -e, --expression=EXPR selection expression.\n"
+" -q, --quick=STR select records with fields containing a string.\n"
+" -n, --number=NUM,... select specific records by position, with ranges.\n"
+" -R, --random=NUM select a given number of random records.\n"
msgstr ""
"Các tùy chọn để lấy bản ghi:\n"
" -i, --case-insensitive phân biệt hoa thường\n"
-" -t, --type=KIỂU chỉ thao tác với các bản ghi có kiểu "
-"đã cho.\n"
+" -t, --type=KIỂU chỉ thao tác với các bản ghi có kiểu đã cho.\n"
" -e, --expression=EXPR biểu thức.\n"
-" -q, --quick=STR lấy các bản ghi với các trường chứa "
-"chuỗi.\n"
-" -n, --number=SỐ,... lấy các bản ghi theo vị trí với một "
-"vùng.\n"
+" -q, --quick=STR lấy các bản ghi với các trường chứa chuỗi.\n"
+" -n, --number=SỐ,... lấy các bản ghi theo vị trí với một vùng.\n"
" -R, --random=SỐ lấy ra số bản ghi ngẫu nhiên.\n"
-#: utils/recutl.c:170
+#: utils/recutl.c:186
#, c-format
msgid ""
"Copyright (C) %s Jose E. Marchesi.\n"
-"License GPLv3+: GNU GPL version 3 or later .\n"
+"License GPLv3+: GNU GPL version 3 or later .\n"
"This is free software: you are free to change and redistribute it.\n"
"There is NO WARRANTY, to the extent permitted by law.\n"
msgstr ""
"Tác quyền © %s Jose E. Marchesi.\n"
-"Giấy Phép Công Cộng GNU (GPL), phiên bản 3 hay sau \n"
+"Giấy Phép Công Cộng GNU (GPL), phiên bản 3 hay sau \n"
"Đây là phần mềm tự do: bạn có quyền thay đổi và phát hành lại nó.\n"
"KHÔNG CÓ BẢO HÀNH GÌ CẢ, với điều kiện được pháp luật cho phép.\n"
-#: utils/recutl.c:176
+#: utils/recutl.c:192
msgid ""
"\n"
"Written by Jose E. Marchesi."
@@ -1311,54 +1171,33 @@ msgstr ""
"\n"
"Được viết bởi Jose E. Marchesi."
-#: utils/recutl.c:188 utils/recutl.c:202
+#: utils/recutl.c:204 utils/recutl.c:218
msgid ": error: "
msgstr ": lỗi:"
-#: utils/recutl.c:214
+#: utils/recutl.c:230
msgid ": warning: "
msgstr ": cảnh báo: "
-#: utils/recutl.c:238
+#: utils/recutl.c:254
#, c-format
msgid "duplicated record set '%s' from %s.\n"
msgstr "trùng lặp tập hợp bản ghi '%s' từ %s.\n"
-#: utils/recutl.c:396
+#: utils/recutl.c:412
msgid "cannot create a unique name.\n"
msgstr "không tạo được tên tệp tin duy nhất.\n"
-#: utils/recutl.c:417
+#: utils/recutl.c:433
#, c-format
msgid "renaming file %s to %s\n"
msgstr "đổi tên tập tin %s thành %s\n"
-#: utils/recutl.c:448
+#: utils/recutl.c:464
#, c-format
msgid "reading file %s"
msgstr "đang đọc tập tin %s"
-#: utils/recutl.c:473
-msgid "operation aborted due to integrity failures.\n"
-msgstr "thao tác bị bãi bỏ bởi vì tính liêm chính không được đảm bảo.\n"
-
-#: utils/recutl.c:474
-msgid "use --verbose to get a detailed report.\n"
-msgstr "dùng --verbose để có báo cáo đầy đủ.\n"
-
-#: utils/recutl.c:481
-msgid "use --force to skip the integrity check.\n"
-msgstr "dùng --force để bỏ qua kiểm tra sự toàn vẹn dữ liệu.\n"
-
-#: utils/recutl.c:542
+#: utils/recutl.c:553
msgid "internal error: recutl_index_list_parse: error compiling regexp.\n"
-msgstr ""
-"lỗi nội bộ: recutl_index_list_parse: lỗi biên dịch biểu thức chính quy.\n"
-
-#~ msgid ""
-#~ "%s:%s: warning: type %s collides with referred type %s in the rset %s.\n"
-#~ msgstr ""
-#~ "%s:%s: cảnh báo: kiểu %s đối lập với kiểu tham chiếu %s trong rset %s.\n"
-
-#~ msgid "evaluating the selection expression.\n"
-#~ msgstr "ước lượng biểu thức chính qui đã chọn.\n"
+msgstr "lỗi nội bộ: recutl_index_list_parse: lỗi biên dịch biểu thức chính quy.\n"
--
1.7.2.5