diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-15 05:54:39 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-15 05:54:39 +0000 |
commit | 267c6f2ac71f92999e969232431ba04678e7437e (patch) | |
tree | 358c9467650e1d0a1d7227a21dac2e3d08b622b2 /i18npool/source/localedata/data/list-locales.awk | |
parent | Initial commit. (diff) | |
download | libreoffice-267c6f2ac71f92999e969232431ba04678e7437e.tar.xz libreoffice-267c6f2ac71f92999e969232431ba04678e7437e.zip |
Adding upstream version 4:24.2.0.upstream/4%24.2.0
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'i18npool/source/localedata/data/list-locales.awk')
-rwxr-xr-x | i18npool/source/localedata/data/list-locales.awk | 98 |
1 files changed, 98 insertions, 0 deletions
diff --git a/i18npool/source/localedata/data/list-locales.awk b/i18npool/source/localedata/data/list-locales.awk new file mode 100755 index 0000000000..52f02ba649 --- /dev/null +++ b/i18npool/source/localedata/data/list-locales.awk @@ -0,0 +1,98 @@ +#!/usr/bin/gawk -f +# +# This file is part of the LibreOffice project. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# This file incorporates work covered by the following license notice: +# +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed +# with this work for additional information regarding copyright +# ownership. The ASF licenses this file to you under the Apache +# License, Version 2.0 (the "License"); you may not use this file +# except in compliance with the License. You may obtain a copy of +# the License at http://www.apache.org/licenses/LICENSE-2.0 . +# +#// Usage: gawk -f list-locales.awk *.xml +#// Simply create a verbose list of known locales as stated in XML files. +#// Author: Eike Rathke <erack@sun.com> + +BEGIN { + file = "" + count = 0 +} + +function init_locale() { + lcinfo = 0 + inlang = 0 + incoun = 0 + language = "" + country = "" +} + +FILENAME != file { + printEntry() + file = FILENAME + ++count + init_locale() +} + +{ + if ( !lcinfo ) + { + if ( /<LC_INFO>/ ) + lcinfo = 1 + next + } + if ( /<\/LC_INFO>/ ) + { + lcinfo = 0 + next + } + if ( /<Language>/ ) + inlang = 1 + if ( inlang && /<DefaultName>/ ) + { + split( $0, x, /<|>/ ) + language = x[3] + } + if ( /<\/Language>/ ) + inlang = 0 + if ( /<Country>/ ) + incoun = 1 + if ( incoun && /<DefaultName>/ ) + { + split( $0, x, /<|>/ ) + country = x[3] + } + if ( /<\/Country>/ ) + incoun = 0 +} + +END { + printEntry() + print "\n" count " locales" +} + +function printEntry() { + if ( file ) + { + tmp = file + gsub( /.*\//, "", tmp ) + gsub( /\.xml/, "", tmp ) + n = split( tmp, iso, /_/ ) + if ( n > 2 ) + { + if (length(iso[1]) == 2) + printf(" ") + printf( "%s: %s - %s\n", tmp, language, country ) + } + else if ( n == 2 ) + printf( "%3s_%2s: %s - %s\n", iso[1], iso[2], language, country ) + else + printf( "%3s %2s: %s %s\n", iso[1], iso[2], language, country ) + } +} |