about summary refs log tree commit diff
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>1998-04-30 18:52:38 +0000
committerUlrich Drepper <drepper@redhat.com>1998-04-30 18:52:38 +0000
commit12a9fabe52b88bdb75e305bbe485573d34bfbc24 (patch)
tree1ca0bd207f63fc1ea0202aad84cd1e7c8c744b8c
parent69f155d4fc11f2f0e1dd1bfcd804192303ba1627 (diff)
downloadglibc-12a9fabe52b88bdb75e305bbe485573d34bfbc24.tar.gz
glibc-12a9fabe52b88bdb75e305bbe485573d34bfbc24.tar.xz
glibc-12a9fabe52b88bdb75e305bbe485573d34bfbc24.zip
Update.
	* locale/programs/locfile.c: Interpret I18NPATH value as base of
	path, extended with "/locales/".
-rw-r--r--ChangeLog3
-rw-r--r--locale/programs/charmap.c27
-rw-r--r--locale/programs/charset.h3
-rw-r--r--locale/programs/locfile.c111
-rw-r--r--locale/programs/repertoire.c133
-rw-r--r--localedata/ChangeLog79
-rw-r--r--localedata/locales/POSIX248
-rw-r--r--localedata/locales/cs_CZ1
-rw-r--r--localedata/locales/da_DK3
-rw-r--r--localedata/locales/de_AT3
-rw-r--r--localedata/locales/de_BE3
-rw-r--r--localedata/locales/de_CH3
-rw-r--r--localedata/locales/de_DE3
-rw-r--r--localedata/locales/de_LU3
-rw-r--r--localedata/locales/en_AU3
-rw-r--r--localedata/locales/en_CA3
-rw-r--r--localedata/locales/en_CA,2.549
-rw-r--r--localedata/locales/en_DK3
-rw-r--r--localedata/locales/en_DK.com1
-rw-r--r--localedata/locales/en_GB3
-rw-r--r--localedata/locales/en_IE3
-rw-r--r--localedata/locales/en_NZ3
-rw-r--r--localedata/locales/en_US3
-rw-r--r--localedata/locales/es_AR3
-rw-r--r--localedata/locales/es_BO3
-rw-r--r--localedata/locales/es_CL3
-rw-r--r--localedata/locales/es_CO3
-rw-r--r--localedata/locales/es_DO3
-rw-r--r--localedata/locales/es_EC3
-rw-r--r--localedata/locales/es_ES3
-rw-r--r--localedata/locales/es_GT3
-rw-r--r--localedata/locales/es_HN1
-rw-r--r--localedata/locales/es_MX3
-rw-r--r--localedata/locales/es_PA3
-rw-r--r--localedata/locales/es_PE3
-rw-r--r--localedata/locales/es_PY3
-rw-r--r--localedata/locales/es_SV3
-rw-r--r--localedata/locales/es_US3
-rw-r--r--localedata/locales/es_UY3
-rw-r--r--localedata/locales/es_VE3
-rw-r--r--localedata/locales/et_EE3
-rw-r--r--localedata/locales/eu_ES3
-rw-r--r--localedata/locales/fi_FI1
-rw-r--r--localedata/locales/fo_FO3
-rw-r--r--localedata/locales/fr_BE3
-rw-r--r--localedata/locales/fr_CA3
-rw-r--r--localedata/locales/fr_CA,2.131
-rw-r--r--localedata/locales/fr_CH3
-rw-r--r--localedata/locales/fr_FR3
-rw-r--r--localedata/locales/fr_LU3
-rw-r--r--localedata/locales/ga_IE3
-rw-r--r--localedata/locales/gr_GR3
-rw-r--r--localedata/locales/he_IL3
-rw-r--r--localedata/locales/hr_HR3
-rw-r--r--localedata/locales/hu_HU3
-rw-r--r--localedata/locales/is_IS1
-rw-r--r--localedata/locales/it_IT3
-rw-r--r--localedata/locales/iw_IL3
-rw-r--r--localedata/locales/kl_GL3
-rw-r--r--localedata/locales/lt_LT3
-rw-r--r--localedata/locales/lv_LV3
-rw-r--r--localedata/locales/nl_BE3
-rw-r--r--localedata/locales/nl_NL3
-rw-r--r--localedata/locales/no_NO3
-rw-r--r--localedata/locales/pl_PL3
-rw-r--r--localedata/locales/pt_BR3
-rw-r--r--localedata/locales/pt_PT3
-rw-r--r--localedata/locales/ro_RO3
-rw-r--r--localedata/locales/ru_RU3
-rw-r--r--localedata/locales/sl_SI3
-rw-r--r--localedata/locales/sv_FI3
-rw-r--r--localedata/locales/sv_SE3
-rw-r--r--localedata/locales/tr_TR3
-rw-r--r--localedata/locales/zh_CN1
-rw-r--r--localedata/repertoiremaps/charids.8944
-rw-r--r--localedata/repertoiremaps/mnemonic.ds2
-rw-r--r--localedata/sort-test.sh2
-rwxr-xr-xlocaledata/tst-fmon.sh4
-rwxr-xr-xlocaledata/tst-locale.sh17
79 files changed, 542 insertions, 324 deletions
diff --git a/ChangeLog b/ChangeLog
index e6af1a812d..dbcf4b1a23 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -21,6 +21,9 @@
 	* locale/programs/locfile.h: Likewise.
 	* locale/programs/stringtrans.c: Likewise.
 
+	* locale/programs/locfile.c: Interpret I18NPATH value as base of
+	path, extended with "/locales/".
+
 1998-04-18  Philip Blundell  <Philip.Blundell@pobox.com>
 
 	* sysdeps/arm/memset.S: Fix off by one error.
diff --git a/locale/programs/charmap.c b/locale/programs/charmap.c
index 7114a237a0..e11df1cf29 100644
--- a/locale/programs/charmap.c
+++ b/locale/programs/charmap.c
@@ -211,8 +211,6 @@ parse_charmap (const char *filename)
   memset (result, '\0', sizeof (struct charset_t));
   /* The default DEFAULT_WIDTH is 1.  */
   result->width_default = 1;
-  /* Let the user overwrite the repertoire map we use.  */
-  result->repertoiremap = repertoiremap;
 
 #define obstack_chunk_alloc malloc
 #define obstack_chunk_free free
@@ -269,17 +267,6 @@ parse_charmap (const char *filename)
 
 	      lr_ignore_rest (cmfile, 1);
 
-	      /* Read the repertoire map now.  */
-	      if (result->repertoiremap == NULL)
-		/* This is fatal.  */
-		error (4, 0, _("no repertoire map specified: cannot proceed"));
-
-	      result->repertoire = repertoire_read (result->repertoiremap);
-	      if (result->repertoire == NULL)
-		/* This is also fatal.  */
-		error (4, errno, _("cannot read repertoire map `%s'"),
-		       result->repertoiremap);
-
 	      state = 2;
 	      continue;
 	    }
@@ -288,7 +275,7 @@ parse_charmap (const char *filename)
 	      && nowtok != tok_mb_cur_min && nowtok != tok_escape_char
 	      && nowtok != tok_comment_char && nowtok != tok_g0esc
 	      && nowtok != tok_g1esc && nowtok != tok_g2esc
-	      && nowtok != tok_g3esc && nowtok != tok_repertoiremap)
+	      && nowtok != tok_g3esc)
 	    {
 	      lr_error (cmfile, _("syntax error in prolog: %s"),
 			_("illegal definition"));
@@ -320,18 +307,6 @@ parse_charmap (const char *filename)
 	      lr_ignore_rest (cmfile, 1);
 	      continue;
 
-	    case tok_repertoiremap:
-	      if (arg->tok != tok_ident)
-		goto badarg;
-
-	      if (result->repertoiremap == NULL)
-		result->repertoiremap = obstack_copy0 (&result->mem_pool,
-						       arg->val.str.start,
-						       arg->val.str.len);
-
-	      lr_ignore_rest (cmfile, 1);
-	      continue;
-
 	    case tok_mb_cur_max:
 	    case tok_mb_cur_min:
 	      if (arg->tok != tok_number)
diff --git a/locale/programs/charset.h b/locale/programs/charset.h
index db93f16306..8f066b115b 100644
--- a/locale/programs/charset.h
+++ b/locale/programs/charset.h
@@ -37,9 +37,6 @@ struct width_rule
 
 struct charset_t
 {
-  const char *repertoiremap;
-  struct repertoire_t *repertoire;
-
   const char *code_set_name;
   int mb_cur_min;
   int mb_cur_max;
diff --git a/locale/programs/locfile.c b/locale/programs/locfile.c
index ad7e9d5fb4..5a3fc25e3d 100644
--- a/locale/programs/locfile.c
+++ b/locale/programs/locfile.c
@@ -58,6 +58,7 @@ char *xstrdup (const char *__str);
 struct localedef_t *
 locfile_read (const char *filename, struct charset_t *charset)
 {
+  struct repertoire_t *repertoire = NULL;
   struct linereader *ldfile;
   struct localedef_t *result;
   int state;
@@ -80,7 +81,8 @@ locfile_read (const char *filename, struct charset_t *charset)
 	  char *i18npath = __secure_getenv ("I18NPATH");
 	  if (i18npath != NULL && *i18npath != '\0')
 	    {
-	      char path[strlen (filename) + 1 + strlen (i18npath) + 1];
+	      char path[strlen (filename) + 1 + strlen (i18npath)
+		        + sizeof ("/locales/") - 1];
 	      char *next;
 	      i18npath = strdupa (i18npath);
 
@@ -88,7 +90,7 @@ locfile_read (const char *filename, struct charset_t *charset)
 	      while (ldfile == NULL
 		     && (next = strsep (&i18npath, ":")) != NULL)
 		{
-		  stpcpy (stpcpy (stpcpy (path, next), "/"), filename);
+		  stpcpy (stpcpy (stpcpy (path, next), "/locales/"), filename);
 
 		  ldfile = lr_open (path, locfile_hash);
 		}
@@ -249,27 +251,132 @@ argument to `%s' must be a single character"),
 		ldfile->comment_char = *arg->val.str.start;
 	      break;
 
+	    case tok_repertoiremap:
+	      /* We need an argument.  */
+	      arg = lr_token (ldfile, charset);
+
+	      if (arg->tok != tok_ident)
+		{
+		  SYNTAX_ERROR (_("bad argument"));
+		  continue;
+		}
+
+	      if (repertoiremap == NULL)
+		{
+		  repertoiremap = memcpy (xmalloc (arg->val.str.len + 1),
+					  arg->val.str.start,
+					  arg->val.str.len);
+		  ((char *) repertoiremap)[arg->val.str.len] = '\0';
+		}
+
+	      lr_ignore_rest (ldfile, 1);
+	      continue;
+
 	    case tok_lc_ctype:
+	      if (repertoire == NULL)
+		{
+		  /* Read the repertoire map now.  */
+		  if (repertoiremap == NULL)
+		    /* This is fatal.  */
+		    error (4, 0,
+			   _("no repertoire map specified: cannot proceed"));
+
+		  repertoire = repertoire_read (repertoiremap);
+		  if (repertoire == NULL)
+		    /* This is also fatal.  */
+		    error (4, errno, _("cannot read repertoire map `%s'"),
+			   repertoiremap);
+		}
 	      state = 2;
 	      break;
 
 	    case tok_lc_collate:
+	      if (repertoire == NULL)
+		{
+		  /* Read the repertoire map now.  */
+		  if (repertoiremap == NULL)
+		    /* This is fatal.  */
+		    error (4, 0,
+			   _("no repertoire map specified: cannot proceed"));
+
+		  repertoire = repertoire_read (repertoiremap);
+		  if (repertoire == NULL)
+		    /* This is also fatal.  */
+		    error (4, errno, _("cannot read repertoire map `%s'"),
+			   repertoiremap);
+		}
 	      state = 10;
 	      break;
 
 	    case tok_lc_monetary:
+	      if (repertoire == NULL)
+		{
+		  /* Read the repertoire map now.  */
+		  if (repertoiremap == NULL)
+		    /* This is fatal.  */
+		    error (4, 0,
+			   _("no repertoire map specified: cannot proceed"));
+
+		  repertoire = repertoire_read (repertoiremap);
+		  if (repertoire == NULL)
+		    /* This is also fatal.  */
+		    error (4, errno, _("cannot read repertoire map `%s'"),
+			   repertoiremap);
+		}
 	      state = 20;
 	      break;
 
 	    case tok_lc_numeric:
+	      if (repertoire == NULL)
+		{
+		  /* Read the repertoire map now.  */
+		  if (repertoiremap == NULL)
+		    /* This is fatal.  */
+		    error (4, 0,
+			   _("no repertoire map specified: cannot proceed"));
+
+		  repertoire = repertoire_read (repertoiremap);
+		  if (repertoire == NULL)
+		    /* This is also fatal.  */
+		    error (4, errno, _("cannot read repertoire map `%s'"),
+			   repertoiremap);
+		}
 	      state = 30;
 	      break;
 
 	    case tok_lc_time:
+	      if (repertoire == NULL)
+		{
+		  /* Read the repertoire map now.  */
+		  if (repertoiremap == NULL)
+		    /* This is fatal.  */
+		    error (4, 0,
+			   _("no repertoire map specified: cannot proceed"));
+
+		  repertoire = repertoire_read (repertoiremap);
+		  if (repertoire == NULL)
+		    /* This is also fatal.  */
+		    error (4, errno, _("cannot read repertoire map `%s'"),
+			   repertoiremap);
+		}
 	      state = 40;
 	      break;
 
 	    case tok_lc_messages:
+	      if (repertoire == NULL)
+		{
+		  /* Read the repertoire map now.  */
+		  if (repertoiremap == NULL)
+		    /* This is fatal.  */
+		    error (4, 0,
+			   _("no repertoire map specified: cannot proceed"));
+
+		  repertoire = repertoire_read (repertoiremap);
+		  if (repertoire == NULL)
+		    /* This is also fatal.  */
+		    error (4, errno, _("cannot read repertoire map `%s'"),
+			   repertoiremap);
+		}
 	      state = 50;
 	      break;
 
diff --git a/locale/programs/repertoire.c b/locale/programs/repertoire.c
index 1f219ec81f..e7040a0e2c 100644
--- a/locale/programs/repertoire.c
+++ b/locale/programs/repertoire.c
@@ -38,68 +38,63 @@ extern void *xmalloc (size_t __n);
 
 
 /* Simple keyword hashing for the repertoiremap.  */
-static struct repertoire_t *parse_repertoiremap (const char *filename);
 static const struct keyword_t *repertoiremap_hash (const char *str, int len);
 
 
 struct repertoire_t *
 repertoire_read (const char *filename)
 {
-  const char *pathnfile;
-  struct repertoire_t *result = NULL;
-
-  if (euidaccess (filename, R_OK) >= 0)
-    pathnfile = filename;
-  else if (filename[0] != '/')
-    {
-      char *cp = xmalloc (strlen (filename) + sizeof CHARMAP_PATH + 1);
-      stpcpy (stpcpy (stpcpy (cp, CHARMAP_PATH), "/"), filename);
-
-      pathnfile = (const char *) cp;
-    }
-  else
-    pathnfile = NULL;
-
-  if (pathnfile != NULL)
-    {
-      result = parse_repertoiremap (pathnfile);
-
-      if (result == NULL && !be_quiet)
-	error (0, errno, _("repertoire map file `%s' not found"), filename);
-    }
-
-  return result;
-}
-
-
-static struct repertoire_t *
-parse_repertoiremap (const char *filename)
-{
-  struct linereader *cmfile;
+  struct linereader *repfile;
   struct repertoire_t *result;
   int state;
   char *from_name = NULL;
   char *to_name = NULL;
 
   /* Determine path.  */
-  cmfile = lr_open (filename, repertoiremap_hash);
-  if (cmfile == NULL)
+  repfile = lr_open (filename, repertoiremap_hash);
+  if (repfile == NULL)
     {
       if (strchr (filename, '/') == NULL)
 	{
-	  /* Look in the systems charmap directory.  */
-	  char *buf = xmalloc (strlen (filename) + 1
-			       + sizeof (REPERTOIREMAP_PATH));
+	  char *i18npath = __secure_getenv ("I18NPATH");
+	  if (i18npath != NULL && *i18npath != '\0')
+	    {
+	      char path[strlen (filename) + 1 + strlen (i18npath)
+		        + sizeof ("/repertoiremaps/") - 1];
+	      char *next;
+	      i18npath = strdupa (i18npath);
 
-	  stpcpy (stpcpy (stpcpy (buf, REPERTOIREMAP_PATH), "/"), filename);
-	  cmfile = lr_open (buf, repertoiremap_hash);
 
-	  if (cmfile == NULL)
-	    free (buf);
+	      while (repfile == NULL
+		     && (next = strsep (&i18npath, ":")) != NULL)
+		{
+		  stpcpy (stpcpy (stpcpy (path, next), "/repertoiremaps/"),
+			  filename);
+
+		  repfile = lr_open (path, repertoiremap_hash);
+		}
+	    }
+
+	  if (repfile == NULL)
+	    {
+	      /* Look in the systems charmap directory.  */
+	      char *buf = xmalloc (strlen (filename) + 1
+				   + sizeof (REPERTOIREMAP_PATH));
+
+	      stpcpy (stpcpy (stpcpy (buf, REPERTOIREMAP_PATH), "/"),
+		      filename);
+	      repfile = lr_open (buf, repertoiremap_hash);
+
+	      if (repfile == NULL)
+		free (buf);
+	    }
 	}
 
-      if (cmfile == NULL)
-	return NULL;
+      if (repfile == NULL)
+	{
+	  error (0, errno, _("repertoire map file `%s' not found"), filename);
+	  return NULL;
+	}
     }
 
   /* Allocate room for result.  */
@@ -122,7 +117,7 @@ parse_repertoiremap (const char *filename)
   while (1)
     {
       /* What's on?  */
-      struct token *now = lr_token (cmfile, NULL);
+      struct token *now = lr_token (repfile, NULL);
       enum token_t nowtok = now->tok;
       struct token *arg;
 
@@ -141,40 +136,40 @@ parse_repertoiremap (const char *filename)
 	  if (nowtok == tok_escape_char || nowtok == tok_comment_char)
 	    {
 	      /* We know that we need an argument.  */
-	      arg = lr_token (cmfile, NULL);
+	      arg = lr_token (repfile, NULL);
 
 	      if (arg->tok != tok_ident)
 		{
-		  lr_error (cmfile, _("syntax error in prolog: %s"),
+		  lr_error (repfile, _("syntax error in prolog: %s"),
 			    _("bad argument"));
 
-		  lr_ignore_rest (cmfile, 0);
+		  lr_ignore_rest (repfile, 0);
 		  continue;
 		}
 
 	      if (arg->val.str.len != 1)
 		{
-		  lr_error (cmfile, _("\
+		  lr_error (repfile, _("\
 argument to <%s> must be a single character"),
 			    nowtok == tok_escape_char ? "escape_char"
 						      : "comment_char");
 
-		  lr_ignore_rest (cmfile, 0);
+		  lr_ignore_rest (repfile, 0);
 		  continue;
 		}
 
 	      if (nowtok == tok_escape_char)
-		cmfile->escape_char = *arg->val.str.start;
+		repfile->escape_char = *arg->val.str.start;
 	      else
-		cmfile->comment_char = *arg->val.str.start;
+		repfile->comment_char = *arg->val.str.start;
 
-	      lr_ignore_rest (cmfile, 1);
+	      lr_ignore_rest (repfile, 1);
 	      continue;
 	    }
 
 	  if (nowtok == tok_charids)
 	    {
-	      lr_ignore_rest (cmfile, 1);
+	      lr_ignore_rest (repfile, 1);
 
 	      state = 2;
 	      continue;
@@ -199,11 +194,11 @@ argument to <%s> must be a single character"),
 
 	  if (nowtok != tok_bsymbol)
 	    {
-	      lr_error (cmfile,
+	      lr_error (repfile,
 			_("syntax error in repertoire map definition: %s"),
 			_("no symbolic name given"));
 
-	      lr_ignore_rest (cmfile, 0);
+	      lr_ignore_rest (repfile, 0);
 	      continue;
 	    }
 
@@ -238,20 +233,20 @@ argument to <%s> must be a single character"),
 	  errno = 0;
 	  if (nowtok != tok_ucs2 && nowtok != tok_ucs4)
 	    {
-	      lr_error (cmfile,
+	      lr_error (repfile,
 			_("syntax error in repertoire map definition: %s"),
 			_("no <Uxxxx> or <Uxxxxxxxx> value given"));
 
-	      lr_ignore_rest (cmfile, 0);
+	      lr_ignore_rest (repfile, 0);
 	      continue;
 	    }
 
 	  /* We've found a new valid definition.  */
-	  charset_new_char (cmfile, &result->char_table, 4,
+	  charset_new_char (repfile, &result->char_table, 4,
 			    now->val.charcode.val, from_name, to_name);
 
 	  /* Ignore the rest of the line.  */
-	  lr_ignore_rest (cmfile, 0);
+	  lr_ignore_rest (repfile, 0);
 
 	  from_name = NULL;
 	  to_name = NULL;
@@ -261,29 +256,29 @@ argument to <%s> must be a single character"),
 	case 4:
 	  if (nowtok != tok_bsymbol)
 	    {
-	      lr_error (cmfile,
+	      lr_error (repfile,
 			_("syntax error in repertoire map definition: %s"),
 			_("no symbolic name given for end of range"));
 
-	      lr_ignore_rest (cmfile, 0);
+	      lr_ignore_rest (repfile, 0);
 	      state = 2;
 	      continue;
 	    }
 
 	  /* Copy the to-name in a safe place.  */
 	  to_name = (char *) obstack_copy0 (&result->mem_pool,
-					    cmfile->token.val.str.start,
-					    cmfile->token.val.str.len);
+					    repfile->token.val.str.start,
+					    repfile->token.val.str.len);
 
 	  state = 5;
 	  continue;
 
 	case 90:
 	  if (nowtok != tok_charids)
-	    lr_error (cmfile, _("\
+	    lr_error (repfile, _("\
 `%1$s' definition does not end with `END %1$s'"), "CHARIDS");
 
-	  lr_ignore_rest (cmfile, nowtok == tok_charids);
+	  lr_ignore_rest (repfile, nowtok == tok_charids);
 	  break;
 	}
 
@@ -291,9 +286,9 @@ argument to <%s> must be a single character"),
     }
 
   if (state != 2 && state != 90 && !be_quiet)
-    error (0, 0, _("%s: premature end of file"), cmfile->fname);
+    error (0, 0, _("%s: premature end of file"), repfile->fname);
 
-  lr_close (cmfile);
+  lr_close (repfile);
 
   return result;
 }
@@ -304,8 +299,8 @@ repertoiremap_hash (const char *str, int len)
 {
   static const struct keyword_t wordlist[0] =
   {
-    {"escape_char",      tok_escape_char,     1},
-    {"comment_char",     tok_comment_char,    1},
+    {"escape_char",      tok_escape_char,     0},
+    {"comment_char",     tok_comment_char,    0},
     {"CHARIDS",          tok_charids,         0},
     {"END",              tok_end,             0},
   };
diff --git a/localedata/ChangeLog b/localedata/ChangeLog
index 8ec112fb74..964d96614c 100644
--- a/localedata/ChangeLog
+++ b/localedata/ChangeLog
@@ -1,9 +1,82 @@
 1998-04-30  Ulrich Drepper  <drepper@cygnus.com>
 
 	* Makefile: Install repertoire maps.
-	* localedata/mnemonic.ds: Moved into repertoiremaps subdir.
-	* localedata/repertoiremaps/charids.894: New file.
-	* localedata/repertoiremaps/mnemonic.ds: New file.
+	* mnemonic.ds: Moved into repertoiremaps subdir.
+	* repertoiremaps/charids.894: New file.
+	* repertoiremaps/mnemonic.ds: New file.
+
+	* sort-test.sh: Adapt for most recent changes in localedef.
+	* tst-fmon.sh: Likewise.
+	* tst-locale.sh: Likewise.
+
+	* locales/POSIX: Add repertoiremap definition.
+	* locales/cs_CZ: Likewise.
+	* locales/da_DK: Likewise.
+	* locales/de_AT: Likewise.
+	* locales/de_BE: Likewise.
+	* locales/de_CH: Likewise.
+	* locales/de_DE: Likewise.
+	* locales/de_LU: Likewise.
+	* locales/en_AU: Likewise.
+	* locales/en_CA: Likewise.
+	* locales/en_CA,2.5: Likewise.
+	* locales/en_DK: Likewise.
+	* locales/en_DK.com: Likewise.
+	* locales/en_GB: Likewise.
+	* locales/en_IE: Likewise.
+	* locales/en_NZ: Likewise.
+	* locales/en_US: Likewise.
+	* locales/es_AR: Likewise.
+	* locales/es_BO: Likewise.
+	* locales/es_CL: Likewise.
+	* locales/es_CO: Likewise.
+	* locales/es_DO: Likewise.
+	* locales/es_EC: Likewise.
+	* locales/es_ES: Likewise.
+	* locales/es_GT: Likewise.
+	* locales/es_HN: Likewise.
+	* locales/es_MX: Likewise.
+	* locales/es_PA: Likewise.
+	* locales/es_PE: Likewise.
+	* locales/es_PY: Likewise.
+	* locales/es_SV: Likewise.
+	* locales/es_US: Likewise.
+	* locales/es_UY: Likewise.
+	* locales/es_VE: Likewise.
+	* locales/et_EE: Likewise.
+	* locales/eu_ES: Likewise.
+	* locales/fi_FI: Likewise.
+	* locales/fo_FO: Likewise.
+	* locales/fr_BE: Likewise.
+	* locales/fr_CA: Likewise.
+	* locales/fr_CA,2.13: Likewise.
+	* locales/fr_CH: Likewise.
+	* locales/fr_FR: Likewise.
+	* locales/fr_LU: Likewise.
+	* locales/ga_IE: Likewise.
+	* locales/gr_GR: Likewise.
+	* locales/he_IL: Likewise.
+	* locales/hr_HR: Likewise.
+	* locales/hu_HU: Likewise.
+	* locales/is_IS: Likewise.
+	* locales/it_IT: Likewise.
+	* locales/iw_IL: Likewise.
+	* locales/kl_GL: Likewise.
+	* locales/lt_LT: Likewise.
+	* locales/lv_LV: Likewise.
+	* locales/nl_BE: Likewise.
+	* locales/nl_NL: Likewise.
+	* locales/no_NO: Likewise.
+	* locales/pl_PL: Likewise.
+	* locales/pt_BR: Likewise.
+	* locales/pt_PT: Likewise.
+	* locales/ro_RO: Likewise.
+	* locales/ru_RU: Likewise.
+	* locales/sl_SI: Likewise.
+	* locales/sv_FI: Likewise.
+	* locales/sv_SE: Likewise.
+	* locales/tr_TR: Likewise.
+	* locales/zh_CN: Likewise.
 
 1998-04-29  Ulrich Drepper  <drepper@cygnus.com>
 
diff --git a/localedata/locales/POSIX b/localedata/locales/POSIX
index 21b09e69d2..a60ccd8927 100644
--- a/localedata/locales/POSIX
+++ b/localedata/locales/POSIX
@@ -21,6 +21,8 @@
 # Distribution and use is free, also for
 # commercial purposes.
 
+repertoire_map mnemonic.ds
+
 LC_CTYPE
 # The following is the POSIX Locale LC_CTYPE.
 # "alpha" is by default "upper" and "lower"
@@ -78,132 +80,132 @@ LC_COLLATE
 # This is the POSIX Locale definition for the LC_COLLATE category.
 # The order is the same as in the ASCII code set.
 order_start forward
-<NUL>	
-<SOH>	
-<STX>	
-<ETX>	
-<EOT>	
-<ENQ>	
-<ACK>	
-<alert>	
-<backspace>	
-<tab>	
-<newline>	
-<vertical-tab>	
-<form-feed>	
-<carriage-return>	
+<NUL>
+<SOH>
+<STX>
+<ETX>
+<EOT>
+<ENQ>
+<ACK>
+<alert>
+<backspace>
+<tab>
+<newline>
+<vertical-tab>
+<form-feed>
+<carriage-return>
 <SI>
 <SO>
-<DLE>	
-<DC1>	
-<DC2>	
-<DC3>	
-<DC4>	
-<NAK>	
-<SYN>	
-<ETB>	
-<CAN>	
+<DLE>
+<DC1>
+<DC2>
+<DC3>
+<DC4>
+<NAK>
+<SYN>
+<ETB>
+<CAN>
 <EM>
-<SUB>	
-<ESC>	
-<IS4>	
-<IS3>	
-<IS2>	
-<IS1>	
-<space>	
-<exclamation-mark>	
-<quotation-mark>	
-<number-sign>	
-<dollar-sign>	
-<percent-sign>	
-<ampersand>	
-<apostrophe>	
-<left-parenthesis>	
-<right-parenthesis>	
-<asterisk>	
-<plus-sign>	
-<comma>	
-<hyphen>	
-<period>	
-<slash>	
-<zero>	
-<one>	
-<two>	
-<three>	
-<four>	
-<five>	
-<seven>	
-<eight>	
-<nine>	
-<colon>	
-<semicolon>	
-<less-than-sign>	
-<equals-sign>	
-<greater-than-sign>	
-<question-mark>	
-<commercial-at>	
-<A>	
-<B>	
-<C>	
-<D>	
-<E>	
-<F>	
-<G>	
-<H>	
-<I>	
-<J>	
-<K>	
-<L>	
-<M>	
-<N>	
-<O>	
-<P>	
-<Q>	
-<R>	
-<S>	
-<T>	
-<U>	
-<V>	
-<W>	
-<X>	
-<Y>	
-<Z>	
-<left-square-bracket>	
-<backslash>	
-<right-square-bracket>	
-<circumflex>	
-<underscore>	
-<grave-accent>	
-<a>	
-<b>	
-<c>	
-<d>	
-<e>	
-<f>	
-<g>	
-<h>	
-<i>	
-<j>	
-<k>	
-<l>	
-<m>	
-<n>	
-<o>	
-<p>	
-<q>	
-<r>	
-<s>	
-<t>	
-<u>	
-<v>	
-<w>	
-<y>	
-<z>	
-<left-curly-bracket>	
-<vertical-line>	
-<right-curly-bracket>	
-<tilde>	
-<DEL>	
+<SUB>
+<ESC>
+<IS4>
+<IS3>
+<IS2>
+<IS1>
+<space>
+<exclamation-mark>
+<quotation-mark>
+<number-sign>
+<dollar-sign>
+<percent-sign>
+<ampersand>
+<apostrophe>
+<left-parenthesis>
+<right-parenthesis>
+<asterisk>
+<plus-sign>
+<comma>
+<hyphen>
+<period>
+<slash>
+<zero>
+<one>
+<two>
+<three>
+<four>
+<five>
+<seven>
+<eight>
+<nine>
+<colon>
+<semicolon>
+<less-than-sign>
+<equals-sign>
+<greater-than-sign>
+<question-mark>
+<commercial-at>
+<A>
+<B>
+<C>
+<D>
+<E>
+<F>
+<G>
+<H>
+<I>
+<J>
+<K>
+<L>
+<M>
+<N>
+<O>
+<P>
+<Q>
+<R>
+<S>
+<T>
+<U>
+<V>
+<W>
+<X>
+<Y>
+<Z>
+<left-square-bracket>
+<backslash>
+<right-square-bracket>
+<circumflex>
+<underscore>
+<grave-accent>
+<a>
+<b>
+<c>
+<d>
+<e>
+<f>
+<g>
+<h>
+<i>
+<j>
+<k>
+<l>
+<m>
+<n>
+<o>
+<p>
+<q>
+<r>
+<s>
+<t>
+<u>
+<v>
+<w>
+<y>
+<z>
+<left-curly-bracket>
+<vertical-line>
+<right-curly-bracket>
+<tilde>
+<DEL>
 order_end
 #
 END LC_COLLATE
diff --git a/localedata/locales/cs_CZ b/localedata/locales/cs_CZ
index 734fde972d..1a1abc4a05 100644
--- a/localedata/locales/cs_CZ
+++ b/localedata/locales/cs_CZ
@@ -1,5 +1,6 @@
 escape_char /
 comment_char %
+repertoiremap mnemonic.ds
 %
 % Czech Language Locale for Czech
 % Source:
diff --git a/localedata/locales/da_DK b/localedata/locales/da_DK
index ce375c04e3..0b2d665579 100644
--- a/localedata/locales/da_DK
+++ b/localedata/locales/da_DK
@@ -1,5 +1,6 @@
 escape_char /
 comment_char %
+repertoiremap mnemonic.ds
 
 % Danish language locale for Denmark
 % Source: Danish Standards Association
@@ -15,7 +16,7 @@ comment_char %
 % Date: 1996-10-15
 % Application: general
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/de_AT b/localedata/locales/de_AT
index a4642179d4..14b2fcf3cc 100644
--- a/localedata/locales/de_AT
+++ b/localedata/locales/de_AT
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 
 % German Language Locale for Austria
 % Source: O:sterreiches Normungsinstitut
@@ -13,7 +14,7 @@ escape_char  /
 % Revision: 4.3
 % Date: 1996-10-15
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/de_BE b/localedata/locales/de_BE
index 953b04b825..d5b460f831 100644
--- a/localedata/locales/de_BE
+++ b/localedata/locales/de_BE
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 %
 % German Language Locale for Belgium
 % Source: RAP
@@ -14,7 +15,7 @@ escape_char  /
 % Revision: 4.3
 % Date: 1996-10-15
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/de_CH b/localedata/locales/de_CH
index 3f4f675324..40011ecba9 100644
--- a/localedata/locales/de_CH
+++ b/localedata/locales/de_CH
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 %
 % German Language Locale for Switzerland
 % Source: RAP
@@ -14,7 +15,7 @@ escape_char  /
 % Revision: 4.3
 % Date: 1996-10-15
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/de_DE b/localedata/locales/de_DE
index 615a35e022..8516f1e69d 100644
--- a/localedata/locales/de_DE
+++ b/localedata/locales/de_DE
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 %
 % German Language Locale for Germany
 % Source: RAP
@@ -14,7 +15,7 @@ escape_char  /
 % Revision: 4.3
 % Date: 1996-10-15
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/de_LU b/localedata/locales/de_LU
index 6ba48df1d8..d79df2ad93 100644
--- a/localedata/locales/de_LU
+++ b/localedata/locales/de_LU
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 %
 % German Language Locale for Luxemburg
 % Source: RAP
@@ -14,7 +15,7 @@ escape_char  /
 % Revision: 4.3
 % Date: 1996-10-15
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/en_AU b/localedata/locales/en_AU
index 1e84be529e..0986ed38f4 100644
--- a/localedata/locales/en_AU
+++ b/localedata/locales/en_AU
@@ -1,5 +1,6 @@
 escape_char  /
 comment_char  %
+repertoiremap mnemonic.ds
 
 % English language locale for Australia
 % Source: RAP
@@ -14,7 +15,7 @@ comment_char  %
 % Revision: 4.3
 % Date: 1997-11-05
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/en_CA b/localedata/locales/en_CA
index d0e28c9ed0..7b0cad089a 100644
--- a/localedata/locales/en_CA
+++ b/localedata/locales/en_CA
@@ -1,5 +1,6 @@
 escape_char  /
 comment_char  %
+repertoiremap mnemonic.ds
 
 % English language locale for Canada
 % sorting according to CAN/CSA-Z243.4.1-1992
@@ -16,7 +17,7 @@ comment_char  %
 % Date: 1996-10-15
 % Application: general
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/en_CA,2.5 b/localedata/locales/en_CA,2.5
index b2accb0913..ee12945c5f 100644
--- a/localedata/locales/en_CA,2.5
+++ b/localedata/locales/en_CA,2.5
@@ -1,4 +1,5 @@
 escape_char /
+repertoiremap charids.894
 ###############################################################################
 # English language locale for Canada / Locale de langue anglaise pour le Canada
 #
@@ -21,35 +22,35 @@ escape_char /
 #
 # Copyright (C) GIA, Canada 1994,1995
 #
-# Distribution and usage are free, including for commercial purposes.  In all 
-# instances, the source must be cited and the present notice reproduced. If   
-# required, only a minimal and reasonable charge is permitted for this        
-# distribution. This charge, if applicable, should be limited to the cost of  
-# the medium used for distribution. In all cases, no other cost shall be      
-# associated with the use.                                                    
+# Distribution and usage are free, including for commercial purposes.  In all
+# instances, the source must be cited and the present notice reproduced. If
+# required, only a minimal and reasonable charge is permitted for this
+# distribution. This charge, if applicable, should be limited to the cost of
+# the medium used for distribution. In all cases, no other cost shall be
+# associated with the use.
 #
 # This LOCALE is an integral part of CAN/CSA Z243.230 standard.
 # Its use is not sufficient to guarantee conformance to this standard.
 # Please refer to the text of the CAN/CSA Z243.230 standard to know its exact
 # conformance requirements.
 # This standard can be obtained from:
-#         Canadian Standards Association/Standards Sales                       
-#         178, Rexdale Blvd., Rexdale (Toronto), ON  M9W 1R3                   
+#         Canadian Standards Association/Standards Sales
+#         178, Rexdale Blvd., Rexdale (Toronto), ON  M9W 1R3
 #         Canada                Tel.: +1 416 747 4044      Fax: +1 416 747 2475
-#                                                                               
-# Distribution et usage gratuits, y compris <a!> des fins commerciales.  On   
-# se doit de citer la source, de reproduire le pr<e'>sent avertissement et de 
-# n'exiger, s'il y a lieu, qu'un co<u>>t minime et raisonnable se limitant au 
+#
+# Distribution et usage gratuits, y compris <a!> des fins commerciales.  On
+# se doit de citer la source, de reproduire le pr<e'>sent avertissement et de
+# n'exiger, s'il y a lieu, qu'un co<u>>t minime et raisonnable se limitant au
 # co<u>>t du support utilis<e'> pour la distribution. Dans tous les cas, il ne
-# doit y avoir aucun co<u>>t associ<e'> <a!> l'usage.                         
+# doit y avoir aucun co<u>>t associ<e'> <a!> l'usage.
 #
-# Cette LOCALE est une partie int<e'>grante de la norme CAN/CSA Z243.230. 
-# L'utilisation de la pr<e'>sente LOCALE ne suffit pas pour assurer la 
+# Cette LOCALE est une partie int<e'>grante de la norme CAN/CSA Z243.230.
+# L'utilisation de la pr<e'>sente LOCALE ne suffit pas pour assurer la
 # conformit<e'> <a!> cette norme. Veuillez vous r<e'>f<e'>rer au texte de la
 # norme CAN/CSA Z243.230 pour en conna<i/>>tre les exigences de conformit<e'>.
 # Cette norme peut <e/>>tre obtenue aupr<e!>s de:
-#         Association canadienne de normalisation/Vente des normes             
-#         178, boul. Rexdale, Rexdale (Toronto), ON  M9W 1R3                   
+#         Association canadienne de normalisation/Vente des normes
+#         178, boul. Rexdale, Rexdale (Toronto), ON  M9W 1R3
 #         Canada             T<e'>l.: +1 416 747 4044      Fax: +1 416 747 2475
 #
 ###############################################################################
@@ -163,15 +164,15 @@ order_start forward;backward;forward;forward,position
 <ACA>                 #                            0180
 <GRA>                 #                            0190
 <BRE>                 #                            0192  diacr. NAPLPS/6937
-<CIR>                 #                            0200     
+<CIR>                 #                            0200
 <CAR>                 #                            0202  diacr. NAPLPS/6937
-<RNE>                 #                            0210     
-<REU>                 #                            0220     
+<RNE>                 #                            0210
+<REU>                 #                            0220
 <DAC>                 #                            0225  diacr. NAPLPS/6937
-<TIL>                 #                            0230     
+<TIL>                 #                            0230
 <PCT>                 #                            0235  diacr. NAPLPS/6937
-<OBL>                 #                            0240     
-<CDI>                 #                            0250     
+<OBL>                 #                            0240
+<CDI>                 #                            0250
 <OGO>                 #                            0252  diacr. NAPLPS/6937
 <MAC>                 #                            0255  diacr. NAPLPS/6937
 #
@@ -382,7 +383,7 @@ order_start forward;backward;forward;forward,position
 <n,>            <n110>;<CDI>;<MIN>;IGNORE                              #0146
 <ng>            <n110><g103>;<LIG><LIG>;<MIN><MIN>;IGNORE              #014B
 <o>             <o111>;<BAS>;<MIN>;IGNORE         #o                    006F
-<-o>            <o111>;<PCL>;<EMI>;IGNORE                         #§    00BA    
+<-o>            <o111>;<PCL>;<EMI>;IGNORE                         #§    00BA
 <o'>            <o111>;<ACA>;<MIN>;IGNORE                         #¢    00F3
 <o!>            <o111>;<GRA>;<MIN>;IGNORE                         #•    00F2
 <o/>>           <o111>;<CIR>;<MIN>;IGNORE                 #“            00F4
diff --git a/localedata/locales/en_DK b/localedata/locales/en_DK
index 57bd34def1..c0ee514e89 100644
--- a/localedata/locales/en_DK
+++ b/localedata/locales/en_DK
@@ -1,5 +1,6 @@
 escape_char /
 comment_char %
+repertoiremap mnemonic.ds
 
 % English language locale for Denmark
 %
@@ -19,7 +20,7 @@ comment_char %
 % Date: 1996-09-18
 % Application: general
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO_8859-1:1987
 % Distribution and use is free, also for
 % commercial purposes.
diff --git a/localedata/locales/en_DK.com b/localedata/locales/en_DK.com
index 104c51fcd3..e1aba0b747 100644
--- a/localedata/locales/en_DK.com
+++ b/localedata/locales/en_DK.com
@@ -1,5 +1,6 @@
 escape_char /
 comment_char %
+repertoiremap mnemonic.ds
 
 % English language locale for Denmark
 %
diff --git a/localedata/locales/en_GB b/localedata/locales/en_GB
index c349ee0c22..97b5979ed5 100644
--- a/localedata/locales/en_GB
+++ b/localedata/locales/en_GB
@@ -1,5 +1,6 @@
 escape_char  /
 comment_char  %
+repertoiremap mnemonic.ds
 
 % English language locale for Britain
 % Source: RAP
@@ -14,7 +15,7 @@ comment_char  %
 % Revision: 4.3
 % Date: 1996-10-15
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/en_IE b/localedata/locales/en_IE
index 9f4670f31c..6e3c7f8902 100644
--- a/localedata/locales/en_IE
+++ b/localedata/locales/en_IE
@@ -1,5 +1,6 @@
 escape_char  /
 comment_char  %
+repertoiremap mnemonic.ds
 
 % English language locale for Ireland
 % Source: RAP
@@ -14,7 +15,7 @@ comment_char  %
 % Revision: 4.4
 % Date: 1997-11-05
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/en_NZ b/localedata/locales/en_NZ
index e116c805e4..d34e01b9c9 100644
--- a/localedata/locales/en_NZ
+++ b/localedata/locales/en_NZ
@@ -1,5 +1,6 @@
 escape_char  /
 comment_char  %
+repertoiremap mnemonic.ds
 
 % English language locale for New Zealand
 % Source: RAP
@@ -14,7 +15,7 @@ comment_char  %
 % Revision: 4.3
 % Date: 1997-11-05
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/en_US b/localedata/locales/en_US
index ebd171982d..c95365cf59 100644
--- a/localedata/locales/en_US
+++ b/localedata/locales/en_US
@@ -1,5 +1,6 @@
 escape_char  /
 comment_char  %
+repertoiremap mnemonic.ds
 
 % English language locale for USA
 % Source: RAP
@@ -14,7 +15,7 @@ comment_char  %
 % Revision: 4.4
 % Date: 1997-11-05
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/es_AR b/localedata/locales/es_AR
index a4eab6425b..e9020ef1d6 100644
--- a/localedata/locales/es_AR
+++ b/localedata/locales/es_AR
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 %
 % Spanish language locale for Argentina
 % Source: RAP
@@ -15,7 +16,7 @@ escape_char  /
 % Date: 1997-11-05
 % Application: general
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/es_BO b/localedata/locales/es_BO
index 1cd7589845..72288385cd 100644
--- a/localedata/locales/es_BO
+++ b/localedata/locales/es_BO
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 %
 % Spanish language locale for Bolivia
 % Source: RAP
@@ -15,7 +16,7 @@ escape_char  /
 % Date: 1997-11-05
 % Application: general
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/es_CL b/localedata/locales/es_CL
index 96f0ec2830..e675717195 100644
--- a/localedata/locales/es_CL
+++ b/localedata/locales/es_CL
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 %
 % Spanish language locale for Chile
 % Source: RAP
@@ -15,7 +16,7 @@ escape_char  /
 % Date: 1997-11-05
 % Application: general
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/es_CO b/localedata/locales/es_CO
index 8723870043..a8533a71f4 100644
--- a/localedata/locales/es_CO
+++ b/localedata/locales/es_CO
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 %
 % Spanish language locale for Colombia
 % Source: RAP
@@ -15,7 +16,7 @@ escape_char  /
 % Date: 1997-11-05
 % Application: general
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/es_DO b/localedata/locales/es_DO
index 719a50e677..dec757c3d0 100644
--- a/localedata/locales/es_DO
+++ b/localedata/locales/es_DO
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 %
 % Spanish language locale for Dominican Republic
 % Source: RAP
@@ -15,7 +16,7 @@ escape_char  /
 % Date: 1997-11-05
 % Application: general
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/es_EC b/localedata/locales/es_EC
index 4df56ad9e8..8270287c2f 100644
--- a/localedata/locales/es_EC
+++ b/localedata/locales/es_EC
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 %
 % Spanish Language Locale for Equador
 % Source: RAP
@@ -15,7 +16,7 @@ escape_char  /
 % Date: 1997-03-18
 % Application: general
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/es_ES b/localedata/locales/es_ES
index ba2bc8e005..46d9e8fb5a 100644
--- a/localedata/locales/es_ES
+++ b/localedata/locales/es_ES
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 %
 % Spanish Language Locale for Spain
 % Source: RAP
@@ -15,7 +16,7 @@ escape_char  /
 % Date: 1997-03-18
 % Application: general
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/es_GT b/localedata/locales/es_GT
index fabde6d1d7..71a0eb63c6 100644
--- a/localedata/locales/es_GT
+++ b/localedata/locales/es_GT
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 %
 % Spanish language locale for Guatemala
 % Source: RAP
@@ -15,7 +16,7 @@ escape_char  /
 % Date: 1997-11-05
 % Application: general
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/es_HN b/localedata/locales/es_HN
index 7b562bdb90..86d11e2c97 100644
--- a/localedata/locales/es_HN
+++ b/localedata/locales/es_HN
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 %
 % Spanish language locale for Honduras
 % Source: RAP
diff --git a/localedata/locales/es_MX b/localedata/locales/es_MX
index 02868617d4..523e822837 100644
--- a/localedata/locales/es_MX
+++ b/localedata/locales/es_MX
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 %
 % Spanish language locale for Mexico
 % Source: RAP
@@ -15,7 +16,7 @@ escape_char  /
 % Date: 1997-11-05
 % Application: general
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/es_PA b/localedata/locales/es_PA
index 63e8d5d48b..0b11b5ea34 100644
--- a/localedata/locales/es_PA
+++ b/localedata/locales/es_PA
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 %
 % Spanish language locale for Panama
 % Source: RAP
@@ -15,7 +16,7 @@ escape_char  /
 % Date: 1997-11-05
 % Application: general
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/es_PE b/localedata/locales/es_PE
index 10d7d37047..ce9bf77e85 100644
--- a/localedata/locales/es_PE
+++ b/localedata/locales/es_PE
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 %
 % Spanish language locale for Peru
 % Source: RAP
@@ -15,7 +16,7 @@ escape_char  /
 % Date: 1997-11-05
 % Application: general
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/es_PY b/localedata/locales/es_PY
index 816f6d7233..44bb29e3f0 100644
--- a/localedata/locales/es_PY
+++ b/localedata/locales/es_PY
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 %
 % Spanish language locale for Paraguay
 % Source: RAP
@@ -15,7 +16,7 @@ escape_char  /
 % Date: 1997-11-05
 % Application: general
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/es_SV b/localedata/locales/es_SV
index ff3ab39c91..4e8b34eaea 100644
--- a/localedata/locales/es_SV
+++ b/localedata/locales/es_SV
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 %
 % Spanish language locale for El Salvador
 % Source: RAP
@@ -15,7 +16,7 @@ escape_char  /
 % Date: 1997-11-05
 % Application: general
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/es_US b/localedata/locales/es_US
index 2dc16517e6..8123a77412 100644
--- a/localedata/locales/es_US
+++ b/localedata/locales/es_US
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 %
 % Spanish Language Locale for U.S.A.
 % Source: RAP
@@ -15,7 +16,7 @@ escape_char  /
 % Date: 1997-03-18
 % Application: general
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/es_UY b/localedata/locales/es_UY
index e65a973f80..f673d8267e 100644
--- a/localedata/locales/es_UY
+++ b/localedata/locales/es_UY
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 %
 % Spanish language locale for Uruguay
 % Source: RAP
@@ -15,7 +16,7 @@ escape_char  /
 % Date: 1997-11-05
 % Application: general
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/es_VE b/localedata/locales/es_VE
index 168483f116..ede6b1cc7d 100644
--- a/localedata/locales/es_VE
+++ b/localedata/locales/es_VE
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 %
 % Spanish language locale for Venezuela
 % Source: RAP
@@ -15,7 +16,7 @@ escape_char  /
 % Date: 1997-11-05
 % Application: general
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/et_EE b/localedata/locales/et_EE
index a4dbe0b78b..bbc7d4d796 100644
--- a/localedata/locales/et_EE
+++ b/localedata/locales/et_EE
@@ -1,5 +1,6 @@
 escape_char  /
 comment_char %
+repertoiremap mnemonic.ds
 
 % Estonian language locale for Estonia
 % according to EVS 8:1993
@@ -16,7 +17,7 @@ comment_char %
 % Date: 1996-10-15
 % Application: general
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/eu_ES b/localedata/locales/eu_ES
index 8835b0e4da..03c8c1041e 100644
--- a/localedata/locales/eu_ES
+++ b/localedata/locales/eu_ES
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 %
 % Basque Language Locale for Spain
 % Source: RAP
@@ -15,7 +16,7 @@ escape_char  /
 % Date: 1996-10-15
 % Application: general
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/fi_FI b/localedata/locales/fi_FI
index 0d0a97aa29..b35e6c8325 100644
--- a/localedata/locales/fi_FI
+++ b/localedata/locales/fi_FI
@@ -1,5 +1,6 @@
 escape_char	/
 comment_char    %
+repertoiremap mnemonic.ds
 
 % Finnish language locale for Finland
 % sorting according to SFS 4600 (1986-06-09)
diff --git a/localedata/locales/fo_FO b/localedata/locales/fo_FO
index b9a474cf58..a0fde5c868 100644
--- a/localedata/locales/fo_FO
+++ b/localedata/locales/fo_FO
@@ -1,5 +1,6 @@
 escape_char /
 comment_char %
+repertoiremap mnemonic.ds
 
 % Faroese language locale for Faroe Islands
 % Source: Danish Standards Association
@@ -14,7 +15,7 @@ comment_char %
 % Revision: 4.3
 % Date: 1996-10-15
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/fr_BE b/localedata/locales/fr_BE
index b7752f6cc2..6d8f2a7655 100644
--- a/localedata/locales/fr_BE
+++ b/localedata/locales/fr_BE
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 %
 % French Language Locale for Belgium
 % Source: RAP
@@ -14,7 +15,7 @@ escape_char  /
 % Revision: 4.4
 % Date: 1997-03-18
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/fr_CA b/localedata/locales/fr_CA
index 60f3745774..5143916122 100644
--- a/localedata/locales/fr_CA
+++ b/localedata/locales/fr_CA
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 %
 % French Language Locale for Canada
 % Source: RAP
@@ -14,7 +15,7 @@ escape_char  /
 % Revision: 4.3
 % Date: 1996-10-15
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/fr_CA,2.13 b/localedata/locales/fr_CA,2.13
index bd3f77c645..25d5fa9b2a 100644
--- a/localedata/locales/fr_CA,2.13
+++ b/localedata/locales/fr_CA,2.13
@@ -1,4 +1,5 @@
 escape_char /
+repertoiremap charids.894
 ###########################################################################
 ####
 # Locale de langue fran<c,>aise pour le Canada / French lang. locale for Canada
diff --git a/localedata/locales/fr_CH b/localedata/locales/fr_CH
index c0e32dc4f7..51db22df18 100644
--- a/localedata/locales/fr_CH
+++ b/localedata/locales/fr_CH
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 %
 % French Language Locale for Switzerland
 % Source: RAP
@@ -14,7 +15,7 @@ escape_char  /
 % Revision: 4.3
 % Date: 1996-10-15
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/fr_FR b/localedata/locales/fr_FR
index bf60b8fddb..d5a9dc64e4 100644
--- a/localedata/locales/fr_FR
+++ b/localedata/locales/fr_FR
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 %
 % French Language Locale for France
 % Source: RAP
@@ -14,7 +15,7 @@ escape_char  /
 % Revision: 4.3
 % Date: 1996-10-15
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/fr_LU b/localedata/locales/fr_LU
index 364db9813e..fd0c7f63b8 100644
--- a/localedata/locales/fr_LU
+++ b/localedata/locales/fr_LU
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 %
 % French Language Locale for Luxemburg
 % Source: RAP
@@ -14,7 +15,7 @@ escape_char  /
 % Revision: 4.3
 % Date: 1996-10-15
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/ga_IE b/localedata/locales/ga_IE
index 9ef73ff424..933e395f9b 100644
--- a/localedata/locales/ga_IE
+++ b/localedata/locales/ga_IE
@@ -1,5 +1,6 @@
 escape_char  /
 comment_char  %
+repertoiremap mnemonic.ds
 % Irish language locale for Ireland
 % Source: NSAI
 % Address: Glasnevin, Dublin 9, Ireland
@@ -12,7 +13,7 @@ comment_char  %
 % Revision: 4.3
 % Date: 1996-10-15
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/gr_GR b/localedata/locales/gr_GR
index 088a57e2fa..559594eafd 100644
--- a/localedata/locales/gr_GR
+++ b/localedata/locales/gr_GR
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 %
 % Greek Language Locale for Greece
 % Source: RAP
@@ -14,7 +15,7 @@ escape_char  /
 % Revision: 4.3
 % Date: 1996-10-15
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-7
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/he_IL b/localedata/locales/he_IL
index 02f4a3f8e6..e62846d89d 100644
--- a/localedata/locales/he_IL
+++ b/localedata/locales/he_IL
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 %
 % Hebrew Language Locale for Israel
 % Source: RAP
@@ -14,7 +15,7 @@ escape_char  /
 % Revision: 4.4
 % Date: 1997-03-18
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-8
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/hr_HR b/localedata/locales/hr_HR
index 35a91f044c..cf9101fa8e 100644
--- a/localedata/locales/hr_HR
+++ b/localedata/locales/hr_HR
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 %
 % Croatian Language Locale for Croatia
 % Source: USM/MZT
@@ -15,7 +16,7 @@ escape_char  /
 % Date: 1997-04-17
 % Application: general
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-2
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/hu_HU b/localedata/locales/hu_HU
index 12829112ae..17dc52ea08 100644
--- a/localedata/locales/hu_HU
+++ b/localedata/locales/hu_HU
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 %
 % Hungarian Language Locale for Hungary
 % Source: RAP
@@ -15,7 +16,7 @@ escape_char  /
 % Date: 1996-10-15
 % Application: general
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-2
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/is_IS b/localedata/locales/is_IS
index 217c0f6ab6..d5658fbdde 100644
--- a/localedata/locales/is_IS
+++ b/localedata/locales/is_IS
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 
 % Icelandic Language Locale for Iceland
 % Source: Stadlarad I'slands
diff --git a/localedata/locales/it_IT b/localedata/locales/it_IT
index 058269bc88..aa154db6f4 100644
--- a/localedata/locales/it_IT
+++ b/localedata/locales/it_IT
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 %
 % Italian Language Locale for Italy
 % Source: RAP
@@ -14,7 +15,7 @@ escape_char  /
 % Revision: 4.3
 % Date: 1996-10-15
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/iw_IL b/localedata/locales/iw_IL
index 02f4a3f8e6..e62846d89d 100644
--- a/localedata/locales/iw_IL
+++ b/localedata/locales/iw_IL
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 %
 % Hebrew Language Locale for Israel
 % Source: RAP
@@ -14,7 +15,7 @@ escape_char  /
 % Revision: 4.4
 % Date: 1997-03-18
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-8
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/kl_GL b/localedata/locales/kl_GL
index 7510411d42..157f8d6c7b 100644
--- a/localedata/locales/kl_GL
+++ b/localedata/locales/kl_GL
@@ -1,5 +1,6 @@
 escape_char /
 comment_char %
+repertoiremap mnemonic.ds
 
 % Greenlandic language locale for Greenland
 % Source: Danish Standards Association
@@ -14,7 +15,7 @@ comment_char %
 % Revision: 4.3
 % Date: 1996-10-15
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/lt_LT b/localedata/locales/lt_LT
index cac28b18f5..c4e472077b 100644
--- a/localedata/locales/lt_LT
+++ b/localedata/locales/lt_LT
@@ -1,5 +1,6 @@
 escape_char /
 comment_char %
+repertoiremap mnemonic.ds
 
 % Lithuanian language locale for Lithuania
 % Created on January 30, 1992
@@ -25,7 +26,7 @@ comment_char %
 % Date: 1995-08-28
 % Application: general
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: BALTIC
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/lv_LV b/localedata/locales/lv_LV
index 7853f9cbe5..02fff689ac 100644
--- a/localedata/locales/lv_LV
+++ b/localedata/locales/lv_LV
@@ -1,5 +1,6 @@
 escape_char /
 comment_char %
+repertoiremap mnemonic.ds
 
 % Latvian language locale for Latvia
 % Source: Latvian Standard LVS 24-93
@@ -15,7 +16,7 @@ comment_char %
 % Date: 1995-08-28
 % Application: general
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: BALTIC
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/nl_BE b/localedata/locales/nl_BE
index 2901d081cb..2efe3d6328 100644
--- a/localedata/locales/nl_BE
+++ b/localedata/locales/nl_BE
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 %
 % Dutch Language Locale for Belgium
 % Source: RAP
@@ -14,7 +15,7 @@ escape_char  /
 % Revision: 4.3
 % Date: 1996-10-15
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/nl_NL b/localedata/locales/nl_NL
index 2a467d8b4e..a5e143bfa6 100644
--- a/localedata/locales/nl_NL
+++ b/localedata/locales/nl_NL
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 %
 % Dutch Language Locale for the Netherlands
 % Source: RAP
@@ -14,7 +15,7 @@ escape_char  /
 % Revision: 4.3
 % Date: 1996-10-15
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/no_NO b/localedata/locales/no_NO
index 67f797d258..364ee4878f 100644
--- a/localedata/locales/no_NO
+++ b/localedata/locales/no_NO
@@ -1,5 +1,6 @@
 escape_char	/
 comment_char    %
+repertoiremap mnemonic.ds
 
 % Norwegian language locale for Norway
 % Source: Norsk Standardiseringsforbund
@@ -15,7 +16,7 @@ comment_char    %
 % Date: 1996-10-15
 % Application: general
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/pl_PL b/localedata/locales/pl_PL
index 9b1bdcba80..64e0bb6cfa 100644
--- a/localedata/locales/pl_PL
+++ b/localedata/locales/pl_PL
@@ -1,5 +1,6 @@
 comment_char %
 escape_char /
+repertoiremap mnemonic.ds
 %
 % Polish Language Locale for Poland
 % Source: RAP
@@ -15,7 +16,7 @@ escape_char /
 % Date: 1997-03-18
 % Application: general
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-2
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/pt_BR b/localedata/locales/pt_BR
index 5bbd989ac9..ca0f8c80af 100644
--- a/localedata/locales/pt_BR
+++ b/localedata/locales/pt_BR
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 %
 % Portuguese Language Locale for Brasil
 % Source: RAP
@@ -14,7 +15,7 @@ escape_char  /
 % Revision: 4.4
 % Date: 1997-03-19
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/pt_PT b/localedata/locales/pt_PT
index f9e67305a5..e404c92015 100644
--- a/localedata/locales/pt_PT
+++ b/localedata/locales/pt_PT
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 %
 % Portuguese Language Locale for Portugal
 % Source: RAP
@@ -14,7 +15,7 @@ escape_char  /
 % Revision: 4.3
 % Date: 1996-10-15
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/ro_RO b/localedata/locales/ro_RO
index 59e297a9e7..8b3ec88864 100644
--- a/localedata/locales/ro_RO
+++ b/localedata/locales/ro_RO
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 %
 % Romanian Language Locale for Romania
 % Source: RAP
@@ -15,7 +16,7 @@ escape_char  /
 % Date: 1996-10-15
 % Application: general
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-2
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/ru_RU b/localedata/locales/ru_RU
index 18c9faaa8c..f0f6fa8ef5 100644
--- a/localedata/locales/ru_RU
+++ b/localedata/locales/ru_RU
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 %
 % Russian Language Locale for Russia
 % Source: RAP
@@ -15,7 +16,7 @@ escape_char  /
 % Date: 1996-10-15
 % Application: general
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-5
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/sl_SI b/localedata/locales/sl_SI
index 9d19a5847c..f3da1f97b4 100644
--- a/localedata/locales/sl_SI
+++ b/localedata/locales/sl_SI
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 %
 % Slovenian language locale for Slovenia
 % Source: USM/MZT
@@ -15,7 +16,7 @@ escape_char  /
 % Date: 1997-11-05
 % Application: general
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-2
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/sv_FI b/localedata/locales/sv_FI
index fceca6eaa0..82d77d04ae 100644
--- a/localedata/locales/sv_FI
+++ b/localedata/locales/sv_FI
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 %
 % Swedish Language Locale for Finland
 % Source: RAP
@@ -14,7 +15,7 @@ escape_char  /
 % Revision: 4.3
 % Date: 1996-10-15
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/sv_SE b/localedata/locales/sv_SE
index 405802b895..2826d759e5 100644
--- a/localedata/locales/sv_SE
+++ b/localedata/locales/sv_SE
@@ -1,5 +1,6 @@
 escape_char	/
 comment_char    %
+repertoiremap mnemonic.ds
 
 % Swedish language locale for Sweden
 % Source: RAP
@@ -15,7 +16,7 @@ comment_char    %
 % Date: 1997-03-18
 % Application: general
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-1
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/tr_TR b/localedata/locales/tr_TR
index d0a3c3ea4c..d5b9d86ff2 100644
--- a/localedata/locales/tr_TR
+++ b/localedata/locales/tr_TR
@@ -1,5 +1,6 @@
 comment_char %
 escape_char  /
+repertoiremap mnemonic.ds
 %
 % Turkish Language Locale for Turkey
 % Source: RAP
@@ -15,7 +16,7 @@ escape_char  /
 % Date: 1997-03-18
 % Application: general
 % Users: general
-% Repertoiremap: mnemonic,ds
+% Repertoiremap: mnemonic.ds
 % Charset: ISO-8859-9
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/locales/zh_CN b/localedata/locales/zh_CN
index 01afd136fa..b7d5439b91 100644
--- a/localedata/locales/zh_CN
+++ b/localedata/locales/zh_CN
@@ -14,7 +14,6 @@ escape_char  /
 % Revision: 4.3
 % Date: 1997-11-09
 % Users: general
-% Repertoiremap: mnemonic,ds
 % Charset: GB_2312-80
 % Distribution and use is free, also
 % for commercial purposes.
diff --git a/localedata/repertoiremaps/charids.894 b/localedata/repertoiremaps/charids.894
index 868a4782ed..74d5facddf 100644
--- a/localedata/repertoiremaps/charids.894
+++ b/localedata/repertoiremaps/charids.894
@@ -1,7 +1,7 @@
-<escape_char> /
+escape_char /
 # Charids refering to ISO 10646/Correspondance des caract<e!>res avec ISO 10646
 # Version: 1994-08-25
-#<comment_char> #
+#comment_char #
 CHARIDS
 <NUL>   <U0000>  # NULL / NUL
 <SOH>   <U0001>  # START OF HEADING / D<E'>BUT D'ENT<E/>>TE
diff --git a/localedata/repertoiremaps/mnemonic.ds b/localedata/repertoiremaps/mnemonic.ds
index fb70c3b784..6d0fd69b9b 100644
--- a/localedata/repertoiremaps/mnemonic.ds
+++ b/localedata/repertoiremaps/mnemonic.ds
@@ -1,4 +1,4 @@
-<escape_char> /
+escape_char /
 <NUL>	<U0000>	NULL (NUL)
 <SOH>	<U0001>	START OF HEADING (SOH)
 <STX>	<U0002>	START OF TEXT (STX)
diff --git a/localedata/sort-test.sh b/localedata/sort-test.sh
index affbb26312..322d40cb2c 100644
--- a/localedata/sort-test.sh
+++ b/localedata/sort-test.sh
@@ -11,7 +11,7 @@ for l in $lang; do
   cns=`echo $l | sed 's/\(.*\)[.][^.]*/\1/'`
   cn=locales/$cns
   fn=charmaps/`echo $l | sed 's/.*[.]\([^.]*\)/\1/'`
-  I18NPATH=./locales ${common_objpfx}elf/ld.so --library-path $common_objpfx \
+  I18NPATH=. ${common_objpfx}elf/ld.so --library-path $common_objpfx \
    ${common_objpfx}locale/localedef --quiet -i $cn -f $fn \
    ${common_objpfx}localedata/$cns
 done
diff --git a/localedata/tst-fmon.sh b/localedata/tst-fmon.sh
index 4192a405d6..a98a3bfce0 100755
--- a/localedata/tst-fmon.sh
+++ b/localedata/tst-fmon.sh
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Testing the implementation of strfmon(3).
-# Copyright (C) 1996, 1997 Free Software Foundation, Inc.
+# Copyright (C) 1996, 1997, 1998 Free Software Foundation, Inc.
 # This file is part of the GNU C Library.
 # Contributed by Jochen Hein <jochen.hein@delphi.central.de>, 1997.
 #
@@ -32,7 +32,7 @@ for l in $lang; do
     cns=`echo $l | sed 's/\(.*\)[.][^.]*/\1/'`
     cn=locales/$cns
     fn=charmaps/`echo $l | sed 's/.*[.]\([^.]*\)/\1/'`
-    I18NPATH=./locales \
+    I18NPATH=. \
     ${common_objpfx}elf/ld.so --library-path $common_objpfx \
     ${common_objpfx}locale/localedef \
     --quiet -i $cn -f $fn ${common_objpfx}localedata/$cns
diff --git a/localedata/tst-locale.sh b/localedata/tst-locale.sh
index e52749de6d..db94acb64f 100755
--- a/localedata/tst-locale.sh
+++ b/localedata/tst-locale.sh
@@ -26,10 +26,11 @@ test_locale ()
     charmap=$1
     input=$2
     out=$3
-    I18NPATH=./locales \
+    rep=$4
+    I18NPATH=. \
     ${common_objpfx}elf/ld.so --library-path $common_objpfx \
     ${common_objpfx}locale/localedef --quiet -c -f $charmap -i $input \
-    ${common_objpfx}localedata/$out
+      --repertoire-map $rep ${common_objpfx}localedata/$out
 
     if [ $? -ne 0 ]; then
 	echo "Charmap: \"${charmap}\" Inputfile: \"${input}\"" \
@@ -40,13 +41,13 @@ test_locale ()
 
 # I take this out for now since it is a known problem
 # (see [PR libc/229] and [PR libc/454]. --drepper
-# test_locale IBM437 de_DE de_DE.437
-test_locale tests/test1.cm tests/test1.def test1
-test_locale tests/test2.cm tests/test2.def test2
-test_locale tests/test3.cm tests/test3.def test3
-test_locale tests/test4.cm tests/test4.def test4
+# test_locale IBM437 de_DE de_DE.437 mnemonic.ds
+test_locale tests/test1.cm tests/test1.def test1 mnemonic.ds
+test_locale tests/test2.cm tests/test2.def test2 mnemonic.ds
+test_locale tests/test3.cm tests/test3.def test3 mnemonic.ds
+test_locale tests/test4.cm tests/test4.def test4 mnemonic.ds
 # I know that multi-byte charsets do not yet work. --drepper
-# test_locale tests/test5.cm tests/test5.def test5
+# test_locale tests/test5.cm tests/test5.def test5 mnemonic.ds
 
 exit 0