Merge branch '4.4'
* 4.4: [Form][Validator][Intl] Fix tests [Messenger] return empty envelopes when RetryableException occurs [Intl] Excludes locale from language codes (split localized language names) [FrameworkBundle] WebTestCase KernelBrowser::getContainer null return type [Intl] Fix compile type errors [Validator] Accept underscores in the URL validator as the URL will resolve correctly [Translation] Collect original locale in case of fallback translation Add types to constructors and private/final/internal methods (Batch I) [HttpFoundation] optimize normalization of headers Replace REMOTE_ADDR in trusted proxies with the current REMOTE_ADDR [ErrorHandler] Forward \Throwable Fix toolbar load when GET params are present in "_wdt" route
This commit is contained in:
commit
4a9926aa68
@ -60,7 +60,7 @@ DependencyInjection
|
||||
```php
|
||||
new Definition('%my_class%');
|
||||
```
|
||||
|
||||
|
||||
DoctrineBridge
|
||||
--------------
|
||||
* Deprecated injecting `ClassMetadataFactory` in `DoctrineExtractor`, an instance of `EntityManagerInterface` should be
|
||||
@ -96,7 +96,7 @@ FrameworkBundle
|
||||
* Deprecated `routing.loader.service`, use `routing.loader.container` instead.
|
||||
* Not tagging service route loaders with `routing.route_loader` has been deprecated.
|
||||
* Overriding the methods `KernelTestCase::tearDown()` and `WebTestCase::tearDown()` without the `void` return-type is deprecated.
|
||||
|
||||
|
||||
HttpClient
|
||||
----------
|
||||
|
||||
@ -139,7 +139,7 @@ HttpKernel
|
||||
}
|
||||
```
|
||||
|
||||
As many bundles must be compatible with a range of Symfony versions, the current
|
||||
As many bundles must be compatible with a range of Symfony versions, the current
|
||||
directory convention is not deprecated yet, but it will be in the future.
|
||||
|
||||
* Deprecated the second and third argument of `KernelInterface::locateResource`
|
||||
@ -148,6 +148,7 @@ HttpKernel
|
||||
fallback directories. Resources like service definitions are usually loaded relative to the
|
||||
current directory or with a glob pattern. The fallback directories have never been advocated
|
||||
so you likely do not use those in any app based on the SF Standard or Flex edition.
|
||||
* Getting the container from a non-booted kernel is deprecated
|
||||
|
||||
Lock
|
||||
----
|
||||
@ -171,7 +172,7 @@ MonologBridge
|
||||
--------------
|
||||
|
||||
* The `RouteProcessor` has been marked final.
|
||||
|
||||
|
||||
Process
|
||||
-------
|
||||
|
||||
@ -195,14 +196,14 @@ Security
|
||||
* Implementations of `PasswordEncoderInterface` and `UserPasswordEncoderInterface` should add a new `needsRehash()` method
|
||||
* Deprecated returning a non-boolean value when implementing `Guard\AuthenticatorInterface::checkCredentials()`. Please explicitly return `false` to indicate invalid credentials.
|
||||
* Deprecated passing more than one attribute to `AccessDecisionManager::decide()` and `AuthorizationChecker::isGranted()` (and indirectly the `is_granted()` Twig and ExpressionLanguage function)
|
||||
|
||||
|
||||
**Before**
|
||||
```php
|
||||
if ($this->authorizationChecker->isGranted(['ROLE_USER', 'ROLE_ADMIN'])) {
|
||||
// ...
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
**After**
|
||||
```php
|
||||
if ($this->authorizationChecker->isGranted(new Expression("has_role('ROLE_USER') or has_role('ROLE_ADMIN')"))) {}
|
||||
@ -230,18 +231,18 @@ TwigBridge
|
||||
* Deprecated to pass `$rootDir` and `$fileLinkFormatter` as 5th and 6th argument respectively to the
|
||||
`DebugCommand::__construct()` method, swap the variables position.
|
||||
* Deprecated accepting STDIN implicitly when using the `lint:twig` command, use `lint:twig -` (append a dash) instead to make it explicit.
|
||||
|
||||
|
||||
TwigBundle
|
||||
----------
|
||||
|
||||
* Deprecated `twig.exception_controller` configuration option, set it to "null" and use `framework.error_controller` instead:
|
||||
|
||||
|
||||
Before:
|
||||
```yaml
|
||||
twig:
|
||||
exception_controller: 'App\Controller\MyExceptionController'
|
||||
```
|
||||
|
||||
|
||||
After:
|
||||
```yaml
|
||||
twig:
|
||||
@ -250,36 +251,36 @@ TwigBundle
|
||||
framework:
|
||||
error_controller: 'App\Controller\MyExceptionController'
|
||||
```
|
||||
|
||||
The new default exception controller will also change the error response content according to
|
||||
|
||||
The new default exception controller will also change the error response content according to
|
||||
https://tools.ietf.org/html/rfc7807 for `json`, `xml`, `atom` and `txt` formats:
|
||||
|
||||
|
||||
Before:
|
||||
```json
|
||||
{
|
||||
"error": {
|
||||
"code": 404,
|
||||
"message": "Sorry, the page you are looking for could not be found"
|
||||
}
|
||||
{
|
||||
"error": {
|
||||
"code": 404,
|
||||
"message": "Sorry, the page you are looking for could not be found"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
After:
|
||||
```json
|
||||
{
|
||||
{
|
||||
"title": "Not Found",
|
||||
"status": 404,
|
||||
"status": 404,
|
||||
"detail": "Sorry, the page you are looking for could not be found"
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
* Deprecated the `ExceptionController` and `PreviewErrorController` controllers, use `ErrorController` from the HttpKernel component instead
|
||||
* Deprecated all built-in error templates, use the error renderer mechanism of the `ErrorRenderer` component
|
||||
* Deprecated loading custom error templates in non-html formats. Custom HTML error pages based on Twig keep working as before:
|
||||
* Deprecated loading custom error templates in non-html formats. Custom HTML error pages based on Twig keep working as before:
|
||||
|
||||
Before (`templates/bundles/TwigBundle/Exception/error.jsonld.twig`):
|
||||
```twig
|
||||
{
|
||||
{
|
||||
"@id": "https://example.com",
|
||||
"@type": "error",
|
||||
"@context": {
|
||||
@ -289,7 +290,7 @@ TwigBundle
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
After (`App\ErrorRenderer\JsonLdErrorRenderer`):
|
||||
```php
|
||||
class JsonLdErrorRenderer implements ErrorRendererInterface
|
||||
@ -298,7 +299,7 @@ TwigBundle
|
||||
{
|
||||
return 'jsonld';
|
||||
}
|
||||
|
||||
|
||||
public function render(FlattenException $exception): string
|
||||
{
|
||||
return json_encode([
|
||||
@ -323,7 +324,7 @@ Validator
|
||||
* Deprecated using anything else than a `string` as the code of a `ConstraintViolation`, a `string` type-hint will
|
||||
be added to the constructor of the `ConstraintViolation` class and to the `ConstraintViolationBuilder::setCode()`
|
||||
method in 5.0.
|
||||
* Deprecated passing an `ExpressionLanguage` instance as the second argument of `ExpressionValidator::__construct()`.
|
||||
* Deprecated passing an `ExpressionLanguage` instance as the second argument of `ExpressionValidator::__construct()`.
|
||||
Pass it as the first argument instead.
|
||||
* The `Length` constraint expects the `allowEmptyString` option to be defined
|
||||
when the `min` option is used.
|
||||
@ -343,7 +344,7 @@ WebServerBundle
|
||||
---------------
|
||||
|
||||
* The bundle is deprecated and will be removed in 5.0.
|
||||
|
||||
|
||||
Yaml
|
||||
----
|
||||
|
||||
|
@ -288,6 +288,7 @@ HttpFoundation
|
||||
use `Symfony\Component\Mime\FileinfoMimeTypeGuesser` instead.
|
||||
* `ApacheRequest` has been removed, use the `Request` class instead.
|
||||
* The third argument of the `HeaderBag::get()` method has been removed, use method `all()` instead.
|
||||
* Getting the container from a non-booted kernel is not possible anymore.
|
||||
|
||||
HttpKernel
|
||||
----------
|
||||
|
@ -174,10 +174,8 @@ class Application extends BaseApplication
|
||||
if ($bundle instanceof Bundle) {
|
||||
try {
|
||||
$bundle->registerCommands($this);
|
||||
} catch (\Exception $e) {
|
||||
$this->registrationErrors[] = $e;
|
||||
} catch (\Throwable $e) {
|
||||
$this->registrationErrors[] = new FatalThrowableError($e);
|
||||
$this->registrationErrors[] = $e;
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -192,10 +190,8 @@ class Application extends BaseApplication
|
||||
if (!isset($lazyCommandIds[$id])) {
|
||||
try {
|
||||
$this->add($container->get($id));
|
||||
} catch (\Exception $e) {
|
||||
$this->registrationErrors[] = $e;
|
||||
} catch (\Throwable $e) {
|
||||
$this->registrationErrors[] = new FatalThrowableError($e);
|
||||
$this->registrationErrors[] = $e;
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -211,6 +207,10 @@ class Application extends BaseApplication
|
||||
(new SymfonyStyle($input, $output))->warning('Some commands could not be registered:');
|
||||
|
||||
foreach ($this->registrationErrors as $error) {
|
||||
if (!$error instanceof \Exception) {
|
||||
$error = new FatalThrowableError($error);
|
||||
}
|
||||
|
||||
$this->doRenderException($error, $output);
|
||||
}
|
||||
}
|
||||
|
@ -125,11 +125,15 @@ abstract class KernelTestCase extends TestCase
|
||||
protected static function ensureKernelShutdown()
|
||||
{
|
||||
if (null !== static::$kernel) {
|
||||
$container = static::$kernel->getContainer();
|
||||
static::$kernel->shutdown();
|
||||
static::$booted = false;
|
||||
if ($container instanceof ResetInterface) {
|
||||
$container->reset();
|
||||
$isBooted = (new \ReflectionClass(static::$kernel))->getProperty('booted');
|
||||
$isBooted->setAccessible(true);
|
||||
if ($isBooted->getValue(static::$kernel)) {
|
||||
$container = static::$kernel->getContainer();
|
||||
static::$kernel->shutdown();
|
||||
static::$booted = false;
|
||||
if ($container instanceof ResetInterface) {
|
||||
$container->reset();
|
||||
}
|
||||
}
|
||||
}
|
||||
static::$container = null;
|
||||
|
@ -14,6 +14,7 @@ namespace Symfony\Bundle\FrameworkBundle\Tests\Functional\app;
|
||||
use Psr\Log\NullLogger;
|
||||
use Symfony\Component\Config\Loader\LoaderInterface;
|
||||
use Symfony\Component\DependencyInjection\ContainerBuilder;
|
||||
use Symfony\Component\DependencyInjection\ContainerInterface;
|
||||
use Symfony\Component\Filesystem\Filesystem;
|
||||
use Symfony\Component\HttpKernel\Kernel;
|
||||
|
||||
@ -96,4 +97,13 @@ class AppKernel extends Kernel
|
||||
|
||||
return $parameters;
|
||||
}
|
||||
|
||||
public function getContainer(): ContainerInterface
|
||||
{
|
||||
if (!$this->booted) {
|
||||
throw new \LogicException('Cannot access the container on a non-booted kernel. Did you forget to boot it?');
|
||||
}
|
||||
|
||||
return parent::getContainer();
|
||||
}
|
||||
}
|
||||
|
@ -12,6 +12,7 @@
|
||||
namespace Symfony\Bundle\SecurityBundle\Tests\Functional\app;
|
||||
|
||||
use Symfony\Component\Config\Loader\LoaderInterface;
|
||||
use Symfony\Component\DependencyInjection\ContainerInterface;
|
||||
use Symfony\Component\Filesystem\Filesystem;
|
||||
use Symfony\Component\HttpKernel\Kernel;
|
||||
|
||||
@ -98,4 +99,13 @@ class AppKernel extends Kernel
|
||||
|
||||
return $parameters;
|
||||
}
|
||||
|
||||
public function getContainer(): ContainerInterface
|
||||
{
|
||||
if (!$this->booted) {
|
||||
throw new \LogicException('Cannot access the container on a non-booted kernel. Did you forget to boot it?');
|
||||
}
|
||||
|
||||
return parent::getContainer();
|
||||
}
|
||||
}
|
||||
|
@ -13,7 +13,7 @@
|
||||
|
||||
{% set text %}
|
||||
<div class="sf-toolbar-info-piece">
|
||||
<b>Locale</b>
|
||||
<b>Default locale</b>
|
||||
<span class="sf-toolbar-status">
|
||||
{{ collector.locale|default('-') }}
|
||||
</span>
|
||||
@ -61,7 +61,7 @@
|
||||
<div class="metrics">
|
||||
<div class="metric">
|
||||
<span class="value">{{ collector.locale|default('-') }}</span>
|
||||
<span class="label">Locale</span>
|
||||
<span class="label">Default locale</span>
|
||||
</div>
|
||||
<div class="metric">
|
||||
<span class="value">{{ collector.fallbackLocales|join(', ')|default('-') }}</span>
|
||||
@ -126,7 +126,7 @@
|
||||
</div>
|
||||
{% else %}
|
||||
{% block fallback_messages %}
|
||||
{{ helper.render_table(messages_fallback) }}
|
||||
{{ helper.render_table(messages_fallback, true) }}
|
||||
{% endblock %}
|
||||
{% endif %}
|
||||
</div>
|
||||
@ -162,11 +162,14 @@
|
||||
|
||||
{% endblock %}
|
||||
|
||||
{% macro render_table(messages) %}
|
||||
{% macro render_table(messages, is_fallback) %}
|
||||
<table data-filters>
|
||||
<thead>
|
||||
<tr>
|
||||
<th data-filter="locale">Locale</th>
|
||||
{% if is_fallback %}
|
||||
<th>Fallback locale</th>
|
||||
{% endif %}
|
||||
<th data-filter="domain">Domain</th>
|
||||
<th>Times used</th>
|
||||
<th>Message ID</th>
|
||||
@ -177,6 +180,9 @@
|
||||
{% for message in messages %}
|
||||
<tr data-filter-locale="{{ message.locale }}" data-filter-domain="{{ message.domain }}">
|
||||
<td class="font-normal text-small nowrap">{{ message.locale }}</td>
|
||||
{% if is_fallback %}
|
||||
<td class="font-normal text-small nowrap">{{ message.fallbackLocale|default('-') }}</td>
|
||||
{% endif %}
|
||||
<td class="font-normal text-small text-bold nowrap">{{ message.domain }}</td>
|
||||
<td class="font-normal text-small nowrap">{{ message.count }}</td>
|
||||
<td>
|
||||
|
@ -429,7 +429,7 @@
|
||||
newToken = (newToken || token);
|
||||
this.load(
|
||||
'sfwdt' + token,
|
||||
'{{ path("_wdt", { "token": "xxxxxx" }) }}'.replace(/xxxxxx/, newToken),
|
||||
'{{ path("_wdt", { "token": "xxxxxx" })|escape('js') }}'.replace(/xxxxxx/, newToken),
|
||||
function(xhr, el) {
|
||||
|
||||
/* Evaluate in global scope scripts embedded inside the toolbar */
|
||||
@ -532,7 +532,7 @@
|
||||
sfwdt.innerHTML = '\
|
||||
<div class="sf-toolbarreset">\
|
||||
<div class="sf-toolbar-icon"><svg width="26" height="28" xmlns="http://www.w3.org/2000/svg" version="1.1" x="0px" y="0px" viewBox="0 0 26 28" enable-background="new 0 0 26 28" xml:space="preserve"><path fill="#FFFFFF" d="M13 0C5.8 0 0 5.8 0 13c0 7.2 5.8 13 13 13c7.2 0 13-5.8 13-13C26 5.8 20.2 0 13 0z M20 7.5 c-0.6 0-1-0.3-1-0.9c0-0.2 0-0.4 0.2-0.6c0.1-0.3 0.2-0.3 0.2-0.4c0-0.3-0.5-0.4-0.7-0.4c-2 0.1-2.5 2.7-2.9 4.8l-0.2 1.1 c1.1 0.2 1.9 0 2.4-0.3c0.6-0.4-0.2-0.8-0.1-1.3C18 9.2 18.4 9 18.7 8.9c0.5 0 0.8 0.5 0.8 1c0 0.8-1.1 2-3.3 1.9 c-0.3 0-0.5 0-0.7-0.1L15 14.1c-0.4 1.7-0.9 4.1-2.6 6.2c-1.5 1.8-3.1 2.1-3.8 2.1c-1.3 0-2.1-0.6-2.2-1.6c0-0.9 0.8-1.4 1.3-1.4 c0.7 0 1.2 0.5 1.2 1.1c0 0.5-0.2 0.6-0.4 0.7c-0.1 0.1-0.3 0.2-0.3 0.4c0 0.1 0.1 0.3 0.4 0.3c0.5 0 0.9-0.3 1.2-0.5 c1.3-1 1.7-2.9 2.4-6.2l0.1-0.8c0.2-1.1 0.5-2.3 0.8-3.5c-0.9-0.7-1.4-1.5-2.6-1.8c-0.8-0.2-1.3 0-1.7 0.4C8.4 10 8.6 10.7 9 11.1 l0.7 0.7c0.8 0.9 1.3 1.7 1.1 2.7c-0.3 1.6-2.1 2.8-4.3 2.1c-1.9-0.6-2.2-1.9-2-2.7c0.2-0.6 0.7-0.8 1.2-0.6 c0.5 0.2 0.7 0.8 0.6 1.3c0 0.1 0 0.1-0.1 0.3C6 15 5.9 15.2 5.9 15.3c-0.1 0.4 0.4 0.7 0.8 0.8c0.8 0.3 1.7-0.2 1.9-0.9 c0.2-0.6-0.2-1.1-0.4-1.2l-0.8-0.9c-0.4-0.4-1.2-1.5-0.8-2.8c0.2-0.5 0.5-1 0.9-1.4c1-0.7 2-0.8 3-0.6c1.3 0.4 1.9 1.2 2.8 1.9 c0.5-1.3 1.1-2.6 2-3.8c0.9-1 2-1.7 3.3-1.8C20 4.8 21 5.4 21 6.3C21 6.7 20.8 7.5 20 7.5z"/></svg></div>\
|
||||
An error occurred while loading the web debug toolbar. <a href="{{ path("_profiler_home") }}' + newToken + '>Open the web profiler.</a>\
|
||||
An error occurred while loading the web debug toolbar. <a href="{{ path("_profiler_home")|escape('js') }}' + newToken + '>Open the web profiler.</a>\
|
||||
</div>\
|
||||
';
|
||||
sfwdt.setAttribute('class', 'sf-toolbar sf-error-toolbar');
|
||||
|
@ -68,6 +68,9 @@ class Package implements PackageInterface
|
||||
return $this->versionStrategy;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return bool
|
||||
*/
|
||||
protected function isAbsoluteUrl(string $url)
|
||||
{
|
||||
return false !== strpos($url, '://') || '//' === substr($url, 0, 2);
|
||||
|
@ -50,7 +50,7 @@ class JsonManifestVersionStrategy implements VersionStrategyInterface
|
||||
return $this->getManifestPath($path) ?: $path;
|
||||
}
|
||||
|
||||
private function getManifestPath(string $path)
|
||||
private function getManifestPath(string $path): ?string
|
||||
{
|
||||
if (null === $this->manifestData) {
|
||||
if (!file_exists($this->manifestPath)) {
|
||||
|
@ -100,7 +100,7 @@ class ReflectionClassResource implements SelfCheckingResourceInterface
|
||||
} while ($class = $class->getParentClass());
|
||||
}
|
||||
|
||||
private function computeHash()
|
||||
private function computeHash(): string
|
||||
{
|
||||
if (null === $this->classReflector) {
|
||||
try {
|
||||
@ -119,7 +119,7 @@ class ReflectionClassResource implements SelfCheckingResourceInterface
|
||||
return hash_final($hash);
|
||||
}
|
||||
|
||||
private function generateSignature(\ReflectionClass $class)
|
||||
private function generateSignature(\ReflectionClass $class): iterable
|
||||
{
|
||||
yield $class->getDocComment();
|
||||
yield (int) $class->isFinal();
|
||||
|
@ -120,7 +120,7 @@ class Application implements ResetInterface
|
||||
$output = new ConsoleOutput();
|
||||
}
|
||||
|
||||
$renderException = function ($e) use ($output) {
|
||||
$renderException = function (\Throwable $e) use ($output) {
|
||||
if (!$e instanceof \Exception) {
|
||||
$e = class_exists(FatalThrowableError::class) ? new FatalThrowableError($e) : new \ErrorException($e->getMessage(), $e->getCode(), E_ERROR, $e->getFile(), $e->getLine());
|
||||
}
|
||||
@ -1090,12 +1090,12 @@ class Application implements ResetInterface
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
public function isSingleCommand()
|
||||
public function isSingleCommand(): bool
|
||||
{
|
||||
return $this->singleCommand;
|
||||
}
|
||||
|
||||
private function splitStringByWidth(string $string, int $width)
|
||||
private function splitStringByWidth(string $string, int $width): array
|
||||
{
|
||||
// str_split is not suitable for multi-byte characters, we should use preg_split to get char array properly.
|
||||
// additionally, array_slice() is not enough as some character has doubled width.
|
||||
|
@ -76,10 +76,7 @@ EOF
|
||||
]);
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
private function createDefinition()
|
||||
private function createDefinition(): InputDefinition
|
||||
{
|
||||
return new InputDefinition([
|
||||
new InputArgument('namespace', InputArgument::OPTIONAL, 'The namespace name'),
|
||||
|
@ -173,7 +173,7 @@ class MarkdownDescriptor extends Descriptor
|
||||
}
|
||||
}
|
||||
|
||||
private function getApplicationTitle(Application $application)
|
||||
private function getApplicationTitle(Application $application): string
|
||||
{
|
||||
if ('UNKNOWN' !== $application->getName()) {
|
||||
if ('UNKNOWN' !== $application->getVersion()) {
|
||||
|
@ -77,7 +77,7 @@ class ErrorListener implements EventSubscriberInterface
|
||||
];
|
||||
}
|
||||
|
||||
private static function getInputString(ConsoleEvent $event)
|
||||
private static function getInputString(ConsoleEvent $event): ?string
|
||||
{
|
||||
$commandName = $event->getCommand() ? $event->getCommand()->getName() : null;
|
||||
$input = $event->getInput();
|
||||
|
@ -129,7 +129,7 @@ class ProcessHelper extends Helper
|
||||
};
|
||||
}
|
||||
|
||||
private function escapeString(string $str)
|
||||
private function escapeString(string $str): string
|
||||
{
|
||||
return str_replace('<', '\\<', $str);
|
||||
}
|
||||
|
@ -188,7 +188,7 @@ class ProgressIndicator
|
||||
}, $this->format));
|
||||
}
|
||||
|
||||
private function determineBestFormat()
|
||||
private function determineBestFormat(): string
|
||||
{
|
||||
switch ($this->output->getVerbosity()) {
|
||||
// OutputInterface::VERBOSITY_QUIET: display is disabled anyway
|
||||
@ -215,12 +215,12 @@ class ProgressIndicator
|
||||
}
|
||||
}
|
||||
|
||||
private function getCurrentTimeInMilliseconds()
|
||||
private function getCurrentTimeInMilliseconds(): float
|
||||
{
|
||||
return round(microtime(true) * 1000);
|
||||
}
|
||||
|
||||
private static function initPlaceholderFormatters()
|
||||
private static function initPlaceholderFormatters(): array
|
||||
{
|
||||
return [
|
||||
'indicator' => function (self $indicator) {
|
||||
@ -238,7 +238,7 @@ class ProgressIndicator
|
||||
];
|
||||
}
|
||||
|
||||
private static function initFormats()
|
||||
private static function initFormats(): array
|
||||
{
|
||||
return [
|
||||
'normal' => ' %indicator% %message%',
|
||||
|
@ -336,7 +336,7 @@ class QuestionHelper extends Helper
|
||||
return $fullChoice;
|
||||
}
|
||||
|
||||
private function mostRecentlyEnteredValue(string $entered)
|
||||
private function mostRecentlyEnteredValue(string $entered): string
|
||||
{
|
||||
// Determine the most recent value that the user entered
|
||||
if (false === strpos($entered, ',')) {
|
||||
|
@ -456,7 +456,7 @@ class Table
|
||||
/**
|
||||
* Renders vertical column separator.
|
||||
*/
|
||||
private function renderColumnSeparator(int $type = self::BORDER_OUTSIDE)
|
||||
private function renderColumnSeparator(int $type = self::BORDER_OUTSIDE): string
|
||||
{
|
||||
$borders = $this->style->getBorderChars();
|
||||
|
||||
@ -489,7 +489,7 @@ class Table
|
||||
/**
|
||||
* Renders table cell with padding.
|
||||
*/
|
||||
private function renderCell(array $row, int $column, string $cellFormat)
|
||||
private function renderCell(array $row, int $column, string $cellFormat): string
|
||||
{
|
||||
$cell = isset($row[$column]) ? $row[$column] : '';
|
||||
$width = $this->effectiveColumnWidths[$column];
|
||||
@ -534,7 +534,7 @@ class Table
|
||||
$this->numberOfColumns = max($columns);
|
||||
}
|
||||
|
||||
private function buildTableRows(array $rows)
|
||||
private function buildTableRows(array $rows): TableRows
|
||||
{
|
||||
/** @var WrappableOutputFormatterInterface $formatter */
|
||||
$formatter = $this->output->getFormatter();
|
||||
@ -568,7 +568,7 @@ class Table
|
||||
}
|
||||
}
|
||||
|
||||
return new TableRows(function () use ($rows, $unmergedRows) {
|
||||
return new TableRows(function () use ($rows, $unmergedRows): \Traversable {
|
||||
foreach ($rows as $rowKey => $row) {
|
||||
yield $this->fillCells($row);
|
||||
|
||||
@ -772,7 +772,7 @@ class Table
|
||||
$this->numberOfColumns = null;
|
||||
}
|
||||
|
||||
private static function initStyles()
|
||||
private static function initStyles(): array
|
||||
{
|
||||
$borderless = new TableStyle();
|
||||
$borderless
|
||||
@ -819,7 +819,7 @@ class Table
|
||||
];
|
||||
}
|
||||
|
||||
private function resolveStyle($name)
|
||||
private function resolveStyle($name): TableStyle
|
||||
{
|
||||
if ($name instanceof TableStyle) {
|
||||
return $name;
|
||||
|
@ -124,7 +124,7 @@ class TableStyle
|
||||
*
|
||||
* @internal
|
||||
*/
|
||||
public function getBorderChars()
|
||||
public function getBorderChars(): array
|
||||
{
|
||||
return [
|
||||
$this->horizontalOutsideBorderChar,
|
||||
|
@ -449,7 +449,7 @@ class SymfonyStyle extends OutputStyle
|
||||
$this->bufferedOutput->write(substr($message, -4), $newLine, $type);
|
||||
}
|
||||
|
||||
private function createBlock(iterable $messages, string $type = null, string $style = null, string $prefix = ' ', bool $padding = false, bool $escape = false)
|
||||
private function createBlock(iterable $messages, string $type = null, string $style = null, string $prefix = ' ', bool $padding = false, bool $escape = false): array
|
||||
{
|
||||
$indentLength = 0;
|
||||
$prefixLength = Helper::strlenWithoutDecoration($this->getFormatter(), $prefix);
|
||||
|
@ -160,6 +160,9 @@ trait TesterTrait
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @return resource
|
||||
*/
|
||||
private static function createStream(array $inputs)
|
||||
{
|
||||
$stream = fopen('php://memory', 'r+', false);
|
||||
|
@ -367,7 +367,7 @@ final class Dotenv
|
||||
}
|
||||
}
|
||||
|
||||
private function resolveCommands(string $value)
|
||||
private function resolveCommands(string $value): string
|
||||
{
|
||||
if (false === strpos($value, '$')) {
|
||||
return $value;
|
||||
@ -414,7 +414,7 @@ final class Dotenv
|
||||
}, $value);
|
||||
}
|
||||
|
||||
private function resolveVariables(string $value)
|
||||
private function resolveVariables(string $value): string
|
||||
{
|
||||
if (false === strpos($value, '$')) {
|
||||
return $value;
|
||||
|
@ -14,7 +14,6 @@ namespace Symfony\Component\ErrorHandler;
|
||||
use Psr\Log\LoggerInterface;
|
||||
use Psr\Log\LogLevel;
|
||||
use Symfony\Component\ErrorHandler\Exception\FatalErrorException;
|
||||
use Symfony\Component\ErrorHandler\Exception\FatalThrowableError;
|
||||
use Symfony\Component\ErrorHandler\Exception\OutOfMemoryException;
|
||||
use Symfony\Component\ErrorHandler\Exception\SilencedErrorContext;
|
||||
use Symfony\Component\ErrorHandler\FatalErrorHandler\ClassNotFoundFatalErrorHandler;
|
||||
@ -266,7 +265,7 @@ class ErrorHandler
|
||||
|
||||
if ($flush) {
|
||||
foreach ($this->bootstrappingLogger->cleanLogs() as $log) {
|
||||
$type = $log[2]['exception'] instanceof \ErrorException ? $log[2]['exception']->getSeverity() : E_ERROR;
|
||||
$type = ThrowableUtils::getSeverity($log[2]['exception']);
|
||||
if (!isset($flush[$type])) {
|
||||
$this->bootstrappingLogger->log($log[0], $log[1], $log[2]);
|
||||
} elseif ($this->loggers[$type][0]) {
|
||||
@ -281,7 +280,7 @@ class ErrorHandler
|
||||
/**
|
||||
* Sets a user exception handler.
|
||||
*
|
||||
* @param callable|null $handler A handler that will be called on Exception
|
||||
* @param callable|null $handler A handler that must support \Throwable instances that will be called on Exception
|
||||
*
|
||||
* @return callable|null The previous exception handler
|
||||
*/
|
||||
@ -539,57 +538,64 @@ class ErrorHandler
|
||||
/**
|
||||
* Handles an exception by logging then forwarding it to another handler.
|
||||
*
|
||||
* @param \Exception|\Throwable $exception An exception to handle
|
||||
* @param array $error An array as returned by error_get_last()
|
||||
* @param array $error An array as returned by error_get_last()
|
||||
*
|
||||
* @internal
|
||||
*/
|
||||
public function handleException($exception, array $error = null)
|
||||
public function handleException(\Throwable $exception, array $error = null)
|
||||
{
|
||||
if (null === $error) {
|
||||
self::$exitCode = 255;
|
||||
}
|
||||
if (!$exception instanceof \Exception) {
|
||||
$exception = new FatalThrowableError($exception);
|
||||
}
|
||||
$type = $exception instanceof FatalErrorException ? $exception->getSeverity() : E_ERROR;
|
||||
|
||||
$type = ThrowableUtils::getSeverity($exception);
|
||||
$handlerException = null;
|
||||
|
||||
if (($this->loggedErrors & $type) || $exception instanceof FatalThrowableError) {
|
||||
if (($this->loggedErrors & $type) || $exception instanceof \Error) {
|
||||
if (false !== strpos($message = $exception->getMessage(), "class@anonymous\0")) {
|
||||
$message = $this->parseAnonymousClass($message);
|
||||
}
|
||||
|
||||
if ($exception instanceof FatalErrorException) {
|
||||
if ($exception instanceof FatalThrowableError) {
|
||||
$error = [
|
||||
'type' => $type,
|
||||
'message' => $message,
|
||||
'file' => $exception->getFile(),
|
||||
'line' => $exception->getLine(),
|
||||
];
|
||||
} else {
|
||||
$message = 'Fatal '.$message;
|
||||
}
|
||||
$message = 'Fatal '.$message;
|
||||
} elseif ($exception instanceof \ErrorException) {
|
||||
$message = 'Uncaught '.$message;
|
||||
} elseif ($exception instanceof \Error) {
|
||||
$error = [
|
||||
'type' => $type,
|
||||
'message' => $message,
|
||||
'file' => $exception->getFile(),
|
||||
'line' => $exception->getLine(),
|
||||
];
|
||||
$message = 'Uncaught Error: '.$message;
|
||||
} else {
|
||||
$message = 'Uncaught Exception: '.$message;
|
||||
}
|
||||
}
|
||||
|
||||
if ($this->loggedErrors & $type) {
|
||||
try {
|
||||
$this->loggers[$type][0]->log($this->loggers[$type][1], $message, ['exception' => $exception]);
|
||||
} catch (\Throwable $handlerException) {
|
||||
}
|
||||
}
|
||||
|
||||
// temporary until fatal error handlers rework
|
||||
$originalException = $exception;
|
||||
if (!$exception instanceof \Exception) {
|
||||
$exception = new FatalErrorException($exception->getMessage(), $exception->getCode(), $type, $exception->getFile(), $exception->getLine(), null, true, $exception->getTrace());
|
||||
}
|
||||
|
||||
if ($exception instanceof FatalErrorException && !$exception instanceof OutOfMemoryException && $error) {
|
||||
foreach ($this->getFatalErrorHandlers() as $handler) {
|
||||
if ($e = $handler->handleError($error, $exception)) {
|
||||
$exception = $e;
|
||||
$convertedException = $e;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$exception = $convertedException ?? $originalException;
|
||||
$exceptionHandler = $this->exceptionHandler;
|
||||
if ((!\is_array($exceptionHandler) || !$exceptionHandler[0] instanceof self || 'sendPhpResponse' !== $exceptionHandler[1]) && !\in_array(\PHP_SAPI, ['cli', 'phpdbg'], true)) {
|
||||
$this->exceptionHandler = [$this, 'sendPhpResponse'];
|
||||
|
@ -11,6 +11,8 @@
|
||||
|
||||
namespace Symfony\Component\ErrorHandler\Exception;
|
||||
|
||||
use Symfony\Component\ErrorHandler\ThrowableUtils;
|
||||
|
||||
/**
|
||||
* Fatal Throwable Error.
|
||||
*
|
||||
@ -24,18 +26,10 @@ class FatalThrowableError extends FatalErrorException
|
||||
{
|
||||
$this->originalClassName = \get_class($e);
|
||||
|
||||
if ($e instanceof \ParseError) {
|
||||
$severity = E_PARSE;
|
||||
} elseif ($e instanceof \TypeError) {
|
||||
$severity = E_RECOVERABLE_ERROR;
|
||||
} else {
|
||||
$severity = E_ERROR;
|
||||
}
|
||||
|
||||
\ErrorException::__construct(
|
||||
$e->getMessage(),
|
||||
$e->getCode(),
|
||||
$severity,
|
||||
ThrowableUtils::getSeverity($e),
|
||||
$e->getFile(),
|
||||
$e->getLine(),
|
||||
$e->getPrevious()
|
||||
|
@ -118,7 +118,7 @@ class DebugClassLoaderTest extends TestCase
|
||||
/**
|
||||
* @dataProvider provideDeprecatedSuper
|
||||
*/
|
||||
public function testDeprecatedSuper($class, $super, $type)
|
||||
public function testDeprecatedSuper(string $class, string $super, string $type)
|
||||
{
|
||||
set_error_handler(function () { return false; });
|
||||
$e = error_reporting(0);
|
||||
@ -140,7 +140,7 @@ class DebugClassLoaderTest extends TestCase
|
||||
$this->assertSame($xError, $lastError);
|
||||
}
|
||||
|
||||
public function provideDeprecatedSuper()
|
||||
public function provideDeprecatedSuper(): array
|
||||
{
|
||||
return [
|
||||
['DeprecatedInterfaceClass', 'DeprecatedInterface', 'implements'],
|
||||
|
@ -382,18 +382,19 @@ class ErrorHandlerTest extends TestCase
|
||||
restore_error_handler();
|
||||
}
|
||||
|
||||
public function testHandleException()
|
||||
/**
|
||||
* @dataProvider handleExceptionProvider
|
||||
*/
|
||||
public function testHandleException(string $expectedMessage, \Throwable $exception)
|
||||
{
|
||||
try {
|
||||
$logger = $this->getMockBuilder('Psr\Log\LoggerInterface')->getMock();
|
||||
$handler = ErrorHandler::register();
|
||||
|
||||
$exception = new \Exception('foo');
|
||||
|
||||
$logArgCheck = function ($level, $message, $context) {
|
||||
$this->assertSame('Uncaught Exception: foo', $message);
|
||||
$logArgCheck = function ($level, $message, $context) use ($expectedMessage, $exception) {
|
||||
$this->assertSame($expectedMessage, $message);
|
||||
$this->assertArrayHasKey('exception', $context);
|
||||
$this->assertInstanceOf(\Exception::class, $context['exception']);
|
||||
$this->assertInstanceOf(\get_class($exception), $context['exception']);
|
||||
};
|
||||
|
||||
$logger
|
||||
@ -407,7 +408,7 @@ class ErrorHandlerTest extends TestCase
|
||||
try {
|
||||
$handler->handleException($exception);
|
||||
$this->fail('Exception expected');
|
||||
} catch (\Exception $e) {
|
||||
} catch (\Throwable $e) {
|
||||
$this->assertSame($exception, $e);
|
||||
}
|
||||
|
||||
@ -422,6 +423,15 @@ class ErrorHandlerTest extends TestCase
|
||||
}
|
||||
}
|
||||
|
||||
public function handleExceptionProvider(): array
|
||||
{
|
||||
return [
|
||||
['Uncaught Exception: foo', new \Exception('foo')],
|
||||
['Uncaught Error: bar', new \Error('bar')],
|
||||
['Uncaught ccc', new \ErrorException('ccc')],
|
||||
];
|
||||
}
|
||||
|
||||
public function testBootstrappingLogger()
|
||||
{
|
||||
$bootLogger = new BufferingLogger();
|
||||
@ -572,7 +582,7 @@ class ErrorHandlerTest extends TestCase
|
||||
/**
|
||||
* @dataProvider errorHandlerWhenLoggingProvider
|
||||
*/
|
||||
public function testErrorHandlerWhenLogging($previousHandlerWasDefined, $loggerSetsAnotherHandler, $nextHandlerIsDefined)
|
||||
public function testErrorHandlerWhenLogging(bool $previousHandlerWasDefined, bool $loggerSetsAnotherHandler, bool $nextHandlerIsDefined)
|
||||
{
|
||||
try {
|
||||
if ($previousHandlerWasDefined) {
|
||||
@ -612,7 +622,7 @@ class ErrorHandlerTest extends TestCase
|
||||
}
|
||||
}
|
||||
|
||||
public function errorHandlerWhenLoggingProvider()
|
||||
public function errorHandlerWhenLoggingProvider(): iterable
|
||||
{
|
||||
foreach ([false, true] as $previousHandlerWasDefined) {
|
||||
foreach ([false, true] as $loggerSetsAnotherHandler) {
|
||||
|
@ -41,7 +41,7 @@ class ClassNotFoundFatalErrorHandlerTest extends TestCase
|
||||
/**
|
||||
* @dataProvider provideClassNotFoundData
|
||||
*/
|
||||
public function testHandleClassNotFound($error, $translatedMessage, $autoloader = null)
|
||||
public function testHandleClassNotFound(array $error, string $translatedMessage, callable $autoloader = null)
|
||||
{
|
||||
if ($autoloader) {
|
||||
// Unregister all autoloaders to ensure the custom provided
|
||||
@ -67,7 +67,7 @@ class ClassNotFoundFatalErrorHandlerTest extends TestCase
|
||||
$this->assertSame($error['line'], $exception->getLine());
|
||||
}
|
||||
|
||||
public function provideClassNotFoundData()
|
||||
public function provideClassNotFoundData(): array
|
||||
{
|
||||
$autoloader = new ComposerClassLoader();
|
||||
$autoloader->add('Symfony\Component\ErrorHandler\Exception\\', realpath(__DIR__.'/../../Exception'));
|
||||
|
@ -20,7 +20,7 @@ class UndefinedFunctionFatalErrorHandlerTest extends TestCase
|
||||
/**
|
||||
* @dataProvider provideUndefinedFunctionData
|
||||
*/
|
||||
public function testUndefinedFunction($error, $translatedMessage)
|
||||
public function testUndefinedFunction(array $error, string $translatedMessage)
|
||||
{
|
||||
$handler = new UndefinedFunctionFatalErrorHandler();
|
||||
$exception = $handler->handleError($error, new FatalErrorException('', 0, $error['type'], $error['file'], $error['line']));
|
||||
@ -33,7 +33,7 @@ class UndefinedFunctionFatalErrorHandlerTest extends TestCase
|
||||
$this->assertSame($error['line'], $exception->getLine());
|
||||
}
|
||||
|
||||
public function provideUndefinedFunctionData()
|
||||
public function provideUndefinedFunctionData(): array
|
||||
{
|
||||
return [
|
||||
[
|
||||
|
@ -20,7 +20,7 @@ class UndefinedMethodFatalErrorHandlerTest extends TestCase
|
||||
/**
|
||||
* @dataProvider provideUndefinedMethodData
|
||||
*/
|
||||
public function testUndefinedMethod($error, $translatedMessage)
|
||||
public function testUndefinedMethod(array $error, string $translatedMessage)
|
||||
{
|
||||
$handler = new UndefinedMethodFatalErrorHandler();
|
||||
$exception = $handler->handleError($error, new FatalErrorException('', 0, $error['type'], $error['file'], $error['line']));
|
||||
@ -32,7 +32,7 @@ class UndefinedMethodFatalErrorHandlerTest extends TestCase
|
||||
$this->assertSame($error['line'], $exception->getLine());
|
||||
}
|
||||
|
||||
public function provideUndefinedMethodData()
|
||||
public function provideUndefinedMethodData(): array
|
||||
{
|
||||
return [
|
||||
[
|
||||
|
35
src/Symfony/Component/ErrorHandler/ThrowableUtils.php
Normal file
35
src/Symfony/Component/ErrorHandler/ThrowableUtils.php
Normal file
@ -0,0 +1,35 @@
|
||||
<?php
|
||||
|
||||
/*
|
||||
* This file is part of the Symfony package.
|
||||
*
|
||||
* (c) Fabien Potencier <fabien@symfony.com>
|
||||
*
|
||||
* For the full copyright and license information, please view the LICENSE
|
||||
* file that was distributed with this source code.
|
||||
*/
|
||||
|
||||
namespace Symfony\Component\ErrorHandler;
|
||||
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
class ThrowableUtils
|
||||
{
|
||||
public static function getSeverity(\Throwable $throwable): int
|
||||
{
|
||||
if ($throwable instanceof \ErrorException) {
|
||||
return $throwable->getSeverity();
|
||||
}
|
||||
|
||||
if ($throwable instanceof \ParseError) {
|
||||
return E_PARSE;
|
||||
}
|
||||
|
||||
if ($throwable instanceof \TypeError) {
|
||||
return E_RECOVERABLE_ERROR;
|
||||
}
|
||||
|
||||
return E_ERROR;
|
||||
}
|
||||
}
|
@ -292,7 +292,7 @@ class FlattenException
|
||||
return $this;
|
||||
}
|
||||
|
||||
private function flattenArgs(array $args, int $level = 0, int &$count = 0)
|
||||
private function flattenArgs(array $args, int $level = 0, int &$count = 0): array
|
||||
{
|
||||
$result = [];
|
||||
foreach ($args as $key => $value) {
|
||||
@ -328,7 +328,7 @@ class FlattenException
|
||||
return $result;
|
||||
}
|
||||
|
||||
private function getClassNameFromIncomplete(\__PHP_Incomplete_Class $value)
|
||||
private function getClassNameFromIncomplete(\__PHP_Incomplete_Class $value): string
|
||||
{
|
||||
$array = new \ArrayObject($value);
|
||||
|
||||
|
@ -26,7 +26,7 @@ class HtmlErrorRendererTest extends TestCase
|
||||
$this->assertStringMatchesFormat($expected, $errorRenderer->render($exception));
|
||||
}
|
||||
|
||||
public function getRenderData()
|
||||
public function getRenderData(): iterable
|
||||
{
|
||||
$expectedDebug = <<<HTML
|
||||
<!-- Foo (500 Internal Server Error) -->
|
||||
|
@ -26,7 +26,7 @@ class JsonErrorRendererTest extends TestCase
|
||||
$this->assertStringMatchesFormat($expected, $errorRenderer->render($exception));
|
||||
}
|
||||
|
||||
public function getRenderData()
|
||||
public function getRenderData(): iterable
|
||||
{
|
||||
$expectedDebug = <<<JSON
|
||||
{
|
||||
|
@ -26,7 +26,7 @@ class TxtErrorRendererTest extends TestCase
|
||||
$this->assertStringMatchesFormat($expected, $errorRenderer->render($exception));
|
||||
}
|
||||
|
||||
public function getRenderData()
|
||||
public function getRenderData(): iterable
|
||||
{
|
||||
$expectedDebug = <<<TXT
|
||||
[title] Internal Server Error
|
||||
|
@ -26,7 +26,7 @@ class XmlErrorRendererTest extends TestCase
|
||||
$this->assertStringMatchesFormat($expected, $errorRenderer->render($exception));
|
||||
}
|
||||
|
||||
public function getRenderData()
|
||||
public function getRenderData(): iterable
|
||||
{
|
||||
$expectedDebug = <<<XML
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
|
@ -227,7 +227,7 @@ class FlattenExceptionTest extends TestCase
|
||||
);
|
||||
}
|
||||
|
||||
public function flattenDataProvider()
|
||||
public function flattenDataProvider(): array
|
||||
{
|
||||
return [
|
||||
[new \Exception('test', 123), 'Exception'],
|
||||
@ -381,7 +381,7 @@ class FlattenExceptionTest extends TestCase
|
||||
$this->assertSame($exception->__toString(), $flattened->getAsString());
|
||||
}
|
||||
|
||||
private function createException($foo)
|
||||
private function createException($foo): \Exception
|
||||
{
|
||||
return new \Exception();
|
||||
}
|
||||
|
@ -31,8 +31,6 @@ class LanguageTypeTest extends BaseTypeTest
|
||||
->createView()->vars['choices'];
|
||||
|
||||
$this->assertContainsEquals(new ChoiceView('en', 'en', 'English'), $choices);
|
||||
$this->assertContainsEquals(new ChoiceView('en_GB', 'en_GB', 'British English'), $choices);
|
||||
$this->assertContainsEquals(new ChoiceView('en_US', 'en_US', 'American English'), $choices);
|
||||
$this->assertContainsEquals(new ChoiceView('fr', 'fr', 'French'), $choices);
|
||||
$this->assertContainsEquals(new ChoiceView('my', 'my', 'Burmese'), $choices);
|
||||
}
|
||||
@ -50,7 +48,6 @@ class LanguageTypeTest extends BaseTypeTest
|
||||
|
||||
// Don't check objects for identity
|
||||
$this->assertContainsEquals(new ChoiceView('en', 'en', 'англійська'), $choices);
|
||||
$this->assertContainsEquals(new ChoiceView('en_US', 'en_US', 'англійська (США)'), $choices);
|
||||
$this->assertContainsEquals(new ChoiceView('fr', 'fr', 'французька'), $choices);
|
||||
$this->assertContainsEquals(new ChoiceView('my', 'my', 'бірманська'), $choices);
|
||||
}
|
||||
|
@ -18,6 +18,9 @@ namespace Symfony\Component\HttpFoundation;
|
||||
*/
|
||||
class HeaderBag implements \IteratorAggregate, \Countable
|
||||
{
|
||||
protected const UPPER = '_ABCDEFGHIJKLMNOPQRSTUVWXYZ';
|
||||
protected const LOWER = '-abcdefghijklmnopqrstuvwxyz';
|
||||
|
||||
protected $headers = [];
|
||||
protected $cacheControl = [];
|
||||
|
||||
@ -62,9 +65,7 @@ class HeaderBag implements \IteratorAggregate, \Countable
|
||||
public function all(string $key = null)
|
||||
{
|
||||
if (null !== $key) {
|
||||
$key = str_replace('_', '-', strtolower($key));
|
||||
|
||||
return $this->headers[$key] ?? [];
|
||||
return $this->headers[strtr($key, self::UPPER, self::LOWER)] ?? [];
|
||||
}
|
||||
|
||||
return $this->headers;
|
||||
@ -127,7 +128,7 @@ class HeaderBag implements \IteratorAggregate, \Countable
|
||||
*/
|
||||
public function set(string $key, $values, bool $replace = true)
|
||||
{
|
||||
$key = str_replace('_', '-', strtolower($key));
|
||||
$key = strtr($key, self::UPPER, self::LOWER);
|
||||
|
||||
if (\is_array($values)) {
|
||||
$values = array_values($values);
|
||||
@ -157,7 +158,7 @@ class HeaderBag implements \IteratorAggregate, \Countable
|
||||
*/
|
||||
public function has(string $key)
|
||||
{
|
||||
return \array_key_exists(str_replace('_', '-', strtolower($key)), $this->all());
|
||||
return \array_key_exists(strtr($key, self::UPPER, self::LOWER), $this->all());
|
||||
}
|
||||
|
||||
/**
|
||||
@ -175,7 +176,7 @@ class HeaderBag implements \IteratorAggregate, \Countable
|
||||
*/
|
||||
public function remove(string $key)
|
||||
{
|
||||
$key = str_replace('_', '-', strtolower($key));
|
||||
$key = strtr($key, self::UPPER, self::LOWER);
|
||||
|
||||
unset($this->headers[$key]);
|
||||
|
||||
|
@ -539,7 +539,7 @@ class Request
|
||||
|
||||
foreach ($this->headers->all() as $key => $value) {
|
||||
$key = strtoupper(str_replace('-', '_', $key));
|
||||
if (\in_array($key, ['CONTENT_TYPE', 'CONTENT_LENGTH'])) {
|
||||
if (\in_array($key, ['CONTENT_TYPE', 'CONTENT_LENGTH', 'CONTENT_MD5'], true)) {
|
||||
$_SERVER[$key] = implode(', ', $value);
|
||||
} else {
|
||||
$_SERVER['HTTP_'.$key] = implode(', ', $value);
|
||||
@ -565,14 +565,22 @@ class Request
|
||||
*
|
||||
* You should only list the reverse proxies that you manage directly.
|
||||
*
|
||||
* @param array $proxies A list of trusted proxies
|
||||
* @param array $proxies A list of trusted proxies, the string 'REMOTE_ADDR' will be replaced with $_SERVER['REMOTE_ADDR']
|
||||
* @param int $trustedHeaderSet A bit field of Request::HEADER_*, to set which headers to trust from your proxies
|
||||
*
|
||||
* @throws \InvalidArgumentException When $trustedHeaderSet is invalid
|
||||
*/
|
||||
public static function setTrustedProxies(array $proxies, int $trustedHeaderSet)
|
||||
{
|
||||
self::$trustedProxies = $proxies;
|
||||
self::$trustedProxies = array_reduce($proxies, function ($proxies, $proxy) {
|
||||
if ('REMOTE_ADDR' !== $proxy) {
|
||||
$proxies[] = $proxy;
|
||||
} elseif (isset($_SERVER['REMOTE_ADDR'])) {
|
||||
$proxies[] = $_SERVER['REMOTE_ADDR'];
|
||||
}
|
||||
|
||||
return $proxies;
|
||||
}, []);
|
||||
self::$trustedHeaderSet = $trustedHeaderSet;
|
||||
}
|
||||
|
||||
|
@ -51,7 +51,7 @@ class ResponseHeaderBag extends HeaderBag
|
||||
{
|
||||
$headers = [];
|
||||
foreach ($this->all() as $name => $value) {
|
||||
$headers[isset($this->headerNames[$name]) ? $this->headerNames[$name] : $name] = $value;
|
||||
$headers[$this->headerNames[$name] ?? $name] = $value;
|
||||
}
|
||||
|
||||
return $headers;
|
||||
@ -93,7 +93,7 @@ class ResponseHeaderBag extends HeaderBag
|
||||
$headers = parent::all();
|
||||
|
||||
if (null !== $key) {
|
||||
$key = str_replace('_', '-', strtolower($key));
|
||||
$key = strtr($key, self::UPPER, self::LOWER);
|
||||
|
||||
return 'set-cookie' !== $key ? $headers[$key] ?? [] : array_map('strval', $this->getCookies());
|
||||
}
|
||||
@ -110,7 +110,7 @@ class ResponseHeaderBag extends HeaderBag
|
||||
*/
|
||||
public function set(string $key, $values, bool $replace = true)
|
||||
{
|
||||
$uniqueKey = str_replace('_', '-', strtolower($key));
|
||||
$uniqueKey = strtr($key, self::UPPER, self::LOWER);
|
||||
|
||||
if ('set-cookie' === $uniqueKey) {
|
||||
if ($replace) {
|
||||
@ -141,7 +141,7 @@ class ResponseHeaderBag extends HeaderBag
|
||||
*/
|
||||
public function remove(string $key)
|
||||
{
|
||||
$uniqueKey = str_replace('_', '-', strtolower($key));
|
||||
$uniqueKey = strtr($key, self::UPPER, self::LOWER);
|
||||
unset($this->headerNames[$uniqueKey]);
|
||||
|
||||
if ('set-cookie' === $uniqueKey) {
|
||||
|
@ -28,13 +28,10 @@ class ServerBag extends ParameterBag
|
||||
public function getHeaders()
|
||||
{
|
||||
$headers = [];
|
||||
$contentHeaders = ['CONTENT_LENGTH' => true, 'CONTENT_MD5' => true, 'CONTENT_TYPE' => true];
|
||||
foreach ($this->parameters as $key => $value) {
|
||||
if (0 === strpos($key, 'HTTP_')) {
|
||||
$headers[substr($key, 5)] = $value;
|
||||
}
|
||||
// CONTENT_* are not prefixed with HTTP_
|
||||
elseif (isset($contentHeaders[$key])) {
|
||||
} elseif (\in_array($key, ['CONTENT_TYPE', 'CONTENT_LENGTH', 'CONTENT_MD5'], true)) {
|
||||
$headers[$key] = $value;
|
||||
}
|
||||
}
|
||||
|
@ -2307,6 +2307,26 @@ class RequestTest extends TestCase
|
||||
|
||||
$this->assertSame(80, $request->getPort());
|
||||
}
|
||||
|
||||
/**
|
||||
* @dataProvider trustedProxiesRemoteAddr
|
||||
*/
|
||||
public function testTrustedProxiesRemoteAddr($serverRemoteAddr, $trustedProxies, $result)
|
||||
{
|
||||
$_SERVER['REMOTE_ADDR'] = $serverRemoteAddr;
|
||||
Request::setTrustedProxies($trustedProxies, Request::HEADER_X_FORWARDED_ALL);
|
||||
$this->assertSame($result, Request::getTrustedProxies());
|
||||
}
|
||||
|
||||
public function trustedProxiesRemoteAddr()
|
||||
{
|
||||
return [
|
||||
['1.1.1.1', ['REMOTE_ADDR'], ['1.1.1.1']],
|
||||
['1.1.1.1', ['REMOTE_ADDR', '2.2.2.2'], ['1.1.1.1', '2.2.2.2']],
|
||||
[null, ['REMOTE_ADDR'], []],
|
||||
[null, ['REMOTE_ADDR', '2.2.2.2'], ['2.2.2.2']],
|
||||
];
|
||||
}
|
||||
}
|
||||
|
||||
class RequestContentProxy extends Request
|
||||
|
@ -40,6 +40,7 @@ CHANGELOG
|
||||
so you likely do not use those in any app based on the SF Standard or Flex edition.
|
||||
* Marked all dispatched event classes as `@final`
|
||||
* Added `ErrorController` to enable the preview and error rendering mechanism
|
||||
* Getting the container from a non-booted kernel is deprecated.
|
||||
|
||||
4.3.0
|
||||
-----
|
||||
|
@ -16,6 +16,7 @@ use Symfony\Component\Console\ConsoleEvents;
|
||||
use Symfony\Component\Console\Event\ConsoleEvent;
|
||||
use Symfony\Component\Console\Output\ConsoleOutputInterface;
|
||||
use Symfony\Component\ErrorHandler\ErrorHandler;
|
||||
use Symfony\Component\ErrorHandler\Exception\FatalThrowableError;
|
||||
use Symfony\Component\EventDispatcher\EventSubscriberInterface;
|
||||
use Symfony\Component\HttpKernel\Debug\FileLinkFormatter;
|
||||
use Symfony\Component\HttpKernel\Event\KernelEvent;
|
||||
@ -41,7 +42,7 @@ class DebugHandlersListener implements EventSubscriberInterface
|
||||
private $hasTerminatedWithException;
|
||||
|
||||
/**
|
||||
* @param callable|null $exceptionHandler A handler that will be called on Exception
|
||||
* @param callable|null $exceptionHandler A handler that must support \Throwable instances that will be called on Exception
|
||||
* @param array|int $levels An array map of E_* to LogLevel::* or an integer bit field of E_* constants
|
||||
* @param int|null $throwAt Thrown errors in a bit field of E_* constants, or null to keep the current value
|
||||
* @param bool $scream Enables/disables screaming mode, where even silenced errors are logged
|
||||
@ -105,10 +106,15 @@ class DebugHandlersListener implements EventSubscriberInterface
|
||||
if (method_exists($kernel = $event->getKernel(), 'terminateWithException')) {
|
||||
$request = $event->getRequest();
|
||||
$hasRun = &$this->hasTerminatedWithException;
|
||||
$this->exceptionHandler = static function (\Exception $e) use ($kernel, $request, &$hasRun) {
|
||||
$this->exceptionHandler = static function (\Throwable $e) use ($kernel, $request, &$hasRun) {
|
||||
if ($hasRun) {
|
||||
throw $e;
|
||||
}
|
||||
|
||||
if (!$e instanceof \Exception) {
|
||||
$e = new FatalThrowableError($e);
|
||||
}
|
||||
|
||||
$hasRun = true;
|
||||
$kernel->terminateWithException($e, $request);
|
||||
};
|
||||
|
@ -300,6 +300,10 @@ abstract class Kernel implements KernelInterface, RebootableInterface, Terminabl
|
||||
*/
|
||||
public function getContainer()
|
||||
{
|
||||
if (!$this->booted) {
|
||||
@trigger_error('Getting the container from a non-booted kernel is deprecated since Symfony 4.4.', E_USER_DEPRECATED);
|
||||
}
|
||||
|
||||
return $this->container;
|
||||
}
|
||||
|
||||
|
@ -107,7 +107,7 @@ interface KernelInterface extends HttpKernelInterface
|
||||
/**
|
||||
* Gets the current container.
|
||||
*
|
||||
* @return ContainerInterface|null A ContainerInterface instance or null when the Kernel is shutdown
|
||||
* @return ContainerInterface
|
||||
*/
|
||||
public function getContainer();
|
||||
|
||||
|
@ -45,6 +45,17 @@ class KernelTest extends TestCase
|
||||
$this->assertEquals($debug, $kernel->isDebug());
|
||||
$this->assertFalse($kernel->isBooted());
|
||||
$this->assertLessThanOrEqual(microtime(true), $kernel->getStartTime());
|
||||
}
|
||||
|
||||
/**
|
||||
* @group legacy
|
||||
* @expectedDeprecation Getting the container from a non-booted kernel is deprecated since Symfony 4.4.
|
||||
*/
|
||||
public function testGetContainerForANonBootedKernel()
|
||||
{
|
||||
$kernel = new KernelForTest('test_env', true);
|
||||
|
||||
$this->assertFalse($kernel->isBooted());
|
||||
$this->assertNull($kernel->getContainer());
|
||||
}
|
||||
|
||||
@ -60,7 +71,6 @@ class KernelTest extends TestCase
|
||||
$this->assertEquals($debug, $clone->isDebug());
|
||||
$this->assertFalse($clone->isBooted());
|
||||
$this->assertLessThanOrEqual(microtime(true), $clone->getStartTime());
|
||||
$this->assertNull($clone->getContainer());
|
||||
}
|
||||
|
||||
public function testClassNameValidityGetter()
|
||||
@ -397,6 +407,18 @@ EOF;
|
||||
$kernel->terminate(Request::create('/'), new Response());
|
||||
}
|
||||
|
||||
/**
|
||||
* @group legacy
|
||||
* @expectedDeprecation Getting the container from a non-booted kernel is deprecated since Symfony 4.4.
|
||||
*/
|
||||
public function testDeprecatedNullKernel()
|
||||
{
|
||||
$kernel = $this->getKernel();
|
||||
$kernel->shutdown();
|
||||
|
||||
$this->assertNull($kernel->getContainer());
|
||||
}
|
||||
|
||||
public function testTerminateDelegatesTerminationOnlyForTerminableInterface()
|
||||
{
|
||||
// does not implement TerminableInterface
|
||||
|
@ -11,6 +11,7 @@ CHANGELOG
|
||||
|
||||
* excluded language code `root`
|
||||
* added to both `Countries` and `Languages` the methods `getAlpha3Codes`, `getAlpha3Code`, `getAlpha2Code`, `alpha3CodeExists`, `getAlpha3Name` and `getAlpha3Names`
|
||||
* excluded localized languages (e.g. `en_US`) from `Languages` in `getLanguageCodes()` and `getNames()`
|
||||
|
||||
4.3.0
|
||||
-----
|
||||
|
@ -25,18 +25,14 @@ trait FallbackTrait
|
||||
private $generatingFallback = false;
|
||||
|
||||
/**
|
||||
* @return array|null
|
||||
*
|
||||
* @see AbstractDataGenerator::generateDataForLocale()
|
||||
*/
|
||||
abstract protected function generateDataForLocale(BundleEntryReaderInterface $reader, string $tempDir, string $displayLocale);
|
||||
abstract protected function generateDataForLocale(BundleEntryReaderInterface $reader, string $tempDir, string $displayLocale): ?array;
|
||||
|
||||
/**
|
||||
* @return array|null
|
||||
*
|
||||
* @see AbstractDataGenerator::generateDataForRoot()
|
||||
*/
|
||||
abstract protected function generateDataForRoot(BundleEntryReaderInterface $reader, string $tempDir);
|
||||
abstract protected function generateDataForRoot(BundleEntryReaderInterface $reader, string $tempDir): ?array;
|
||||
|
||||
private function generateFallbackData(BundleEntryReaderInterface $reader, string $tempDir, string $displayLocale): array
|
||||
{
|
||||
|
@ -132,13 +132,22 @@ class LanguageDataGenerator extends AbstractDataGenerator
|
||||
|
||||
// isset() on \ResourceBundle returns true even if the value is null
|
||||
if (isset($localeBundle['Languages']) && null !== $localeBundle['Languages']) {
|
||||
$names = [];
|
||||
$localizedNames = [];
|
||||
foreach (self::generateLanguageNames($localeBundle) as $language => $name) {
|
||||
if (false === strpos($language, '_')) {
|
||||
$this->languageCodes[] = $language;
|
||||
$names[$language] = $name;
|
||||
} else {
|
||||
$localizedNames[$language] = $name;
|
||||
}
|
||||
}
|
||||
$data = [
|
||||
'Version' => $localeBundle['Version'],
|
||||
'Names' => self::generateLanguageNames($localeBundle),
|
||||
'Names' => $names,
|
||||
'LocalizedNames' => $localizedNames,
|
||||
];
|
||||
|
||||
$this->languageCodes = array_merge($this->languageCodes, array_keys($data['Names']));
|
||||
|
||||
return $data;
|
||||
}
|
||||
|
||||
@ -150,6 +159,7 @@ class LanguageDataGenerator extends AbstractDataGenerator
|
||||
*/
|
||||
protected function generateDataForRoot(BundleEntryReaderInterface $reader, string $tempDir): ?array
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -135,6 +135,7 @@ class LocaleDataGenerator extends AbstractDataGenerator
|
||||
*/
|
||||
protected function generateDataForRoot(BundleEntryReaderInterface $reader, string $tempDir): ?array
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -133,6 +133,7 @@ class RegionDataGenerator extends AbstractDataGenerator
|
||||
*/
|
||||
protected function generateDataForRoot(BundleEntryReaderInterface $reader, string $tempDir): ?array
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -86,6 +86,7 @@ class ScriptDataGenerator extends AbstractDataGenerator
|
||||
*/
|
||||
protected function generateDataForRoot(BundleEntryReaderInterface $reader, string $tempDir): ?array
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -52,11 +52,25 @@ final class Languages extends ResourceBundle
|
||||
/**
|
||||
* Gets the language name from its alpha2 code.
|
||||
*
|
||||
* A full locale may be passed to obtain a more localized language name, e.g. "American English" for "en_US".
|
||||
*
|
||||
* @throws MissingResourceException if the language code does not exist
|
||||
*/
|
||||
public static function getName(string $language, string $displayLocale = null): string
|
||||
{
|
||||
return self::readEntry(['Names', $language], $displayLocale);
|
||||
try {
|
||||
return self::readEntry(['Names', $language], $displayLocale);
|
||||
} catch (MissingResourceException $e) {
|
||||
try {
|
||||
return self::readEntry(['LocalizedNames', $language], $displayLocale);
|
||||
} catch (MissingResourceException $e) {
|
||||
if (false !== $i = strrpos($language, '_')) {
|
||||
return self::getName(substr($language, 0, $i), $displayLocale);
|
||||
}
|
||||
|
||||
throw $e;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -17,7 +17,6 @@
|
||||
"an": "Aragonees",
|
||||
"anp": "Angika",
|
||||
"ar": "Arabies",
|
||||
"ar_001": "Moderne Standaardarabies",
|
||||
"arc": "Aramees",
|
||||
"arn": "Mapuche",
|
||||
"arp": "Arapaho",
|
||||
@ -71,7 +70,6 @@
|
||||
"dar": "Dakota",
|
||||
"dav": "Taita",
|
||||
"de": "Duits",
|
||||
"de_CH": "Switserse hoog-Duits",
|
||||
"dgr": "Dogrib",
|
||||
"dje": "Zarma",
|
||||
"dsb": "Benedesorbies",
|
||||
@ -87,8 +85,6 @@
|
||||
"eka": "Ekajuk",
|
||||
"el": "Grieks",
|
||||
"en": "Engels",
|
||||
"en_GB": "Engels (VK)",
|
||||
"en_US": "Engels (VSA)",
|
||||
"eo": "Esperanto",
|
||||
"es": "Spaans",
|
||||
"et": "Estnies",
|
||||
@ -252,14 +248,12 @@
|
||||
"nb": "Boeknoors",
|
||||
"nd": "Noord-Ndebele",
|
||||
"nds": "Lae Duits",
|
||||
"nds_NL": "Nedersaksies",
|
||||
"ne": "Nepalees",
|
||||
"new": "Newari",
|
||||
"ng": "Ndonga",
|
||||
"nia": "Nias",
|
||||
"niu": "Niueaans",
|
||||
"nl": "Nederlands",
|
||||
"nl_BE": "Vlaams",
|
||||
"nmg": "Kwasio",
|
||||
"nn": "Nuwe Noors",
|
||||
"nnh": "Ngiemboon",
|
||||
@ -394,10 +388,18 @@
|
||||
"yue": "Kantonees",
|
||||
"zgh": "Standaard Marokkaanse Tamazight",
|
||||
"zh": "Sjinees",
|
||||
"zh_Hans": "Chinees (Vereenvoudig)",
|
||||
"zh_Hant": "Chinees (Tradisioneel)",
|
||||
"zu": "Zoeloe",
|
||||
"zun": "Zuni",
|
||||
"zza": "Zaza"
|
||||
},
|
||||
"LocalizedNames": {
|
||||
"ar_001": "Moderne Standaardarabies",
|
||||
"de_CH": "Switserse hoog-Duits",
|
||||
"en_GB": "Engels (VK)",
|
||||
"en_US": "Engels (VSA)",
|
||||
"nds_NL": "Nedersaksies",
|
||||
"nl_BE": "Vlaams",
|
||||
"zh_Hans": "Chinees (Vereenvoudig)",
|
||||
"zh_Hant": "Chinees (Tradisioneel)"
|
||||
}
|
||||
}
|
||||
|
@ -45,5 +45,6 @@
|
||||
"yo": "Yoruba",
|
||||
"zh": "Kyaena kasa",
|
||||
"zu": "Zulu"
|
||||
}
|
||||
},
|
||||
"LocalizedNames": []
|
||||
}
|
||||
|
@ -21,7 +21,6 @@
|
||||
"an": "አራጎንስ",
|
||||
"anp": "አንጊካ",
|
||||
"ar": "ዓረብኛ",
|
||||
"ar_001": "ዘመናዊ መደበኛ ዓረብኛ",
|
||||
"arc": "አራማይክ",
|
||||
"arn": "ማፑቼ",
|
||||
"aro": "አራኦና",
|
||||
@ -107,8 +106,6 @@
|
||||
"dar": "ዳርግዋ",
|
||||
"dav": "ታይታኛ",
|
||||
"de": "ጀርመን",
|
||||
"de_AT": "የኦስትሪያ ጀርመን",
|
||||
"de_CH": "የስዊዝ ከፍተኛ ጀርመንኛ",
|
||||
"del": "ዳላዌር",
|
||||
"dgr": "ዶግሪብ",
|
||||
"din": "ዲንካ",
|
||||
@ -129,15 +126,8 @@
|
||||
"eka": "ኤካጁክ",
|
||||
"el": "ግሪክኛ",
|
||||
"en": "እንግሊዝኛ",
|
||||
"en_AU": "የአውስትራሊያ እንግሊዝኛ",
|
||||
"en_CA": "የካናዳ እንግሊዝኛ",
|
||||
"en_GB": "የብሪቲሽ እንግሊዝኛ",
|
||||
"en_US": "የአሜሪካ እንግሊዝኛ",
|
||||
"eo": "ኤስፐራንቶ",
|
||||
"es": "ስፓንሽኛ",
|
||||
"es_419": "የላቲን አሜሪካ ስፓኒሽ",
|
||||
"es_ES": "የአውሮፓ ስፓንሽኛ",
|
||||
"es_MX": "የሜክሲኮ ስፓንሽኛ",
|
||||
"esu": "ሴንተራል ዩፒክ",
|
||||
"et": "ኢስቶኒያንኛ",
|
||||
"eu": "ባስክኛ",
|
||||
@ -150,8 +140,6 @@
|
||||
"fo": "ፋሮኛ",
|
||||
"fon": "ፎን",
|
||||
"fr": "ፈረንሳይኛ",
|
||||
"fr_CA": "የካናዳ ፈረንሳይኛ",
|
||||
"fr_CH": "የስዊዝ ፈረንሳይኛ",
|
||||
"frc": "ካጁን ፍሬንች",
|
||||
"frp": "አርፒታን",
|
||||
"fur": "ፍሩሊያን",
|
||||
@ -303,7 +291,6 @@
|
||||
"nb": "የኖርዌይ ቦክማል",
|
||||
"nd": "ሰሜን ንዴብሌ",
|
||||
"nds": "የታችኛው ጀርመን",
|
||||
"nds_NL": "የታችኛው ሳክሰን",
|
||||
"ne": "ኔፓሊኛ",
|
||||
"new": "ኒዋሪ(ኔፓል)",
|
||||
"ng": "ንዶንጋ",
|
||||
@ -311,7 +298,6 @@
|
||||
"niu": "ኒዩአንኛ",
|
||||
"njo": "ኦ ናጋ",
|
||||
"nl": "ደች",
|
||||
"nl_BE": "ፍሌሚሽ",
|
||||
"nmg": "ክዋሲዮ",
|
||||
"nn": "የኖርዌይ ናይኖርስክ",
|
||||
"nnh": "ኒጊምቡን",
|
||||
@ -339,8 +325,6 @@
|
||||
"prg": "ፐሩሳንኛ",
|
||||
"ps": "ፓሽቶኛ",
|
||||
"pt": "ፖርቹጋልኛ",
|
||||
"pt_BR": "የብራዚል ፖርቹጋልኛ",
|
||||
"pt_PT": "የአውሮፓ ፖርቹጋልኛ",
|
||||
"qu": "ኵቿኛ",
|
||||
"quc": "ኪቼ",
|
||||
"qug": "ቺምቦራዞ ሃይላንድ ኩቹዋ",
|
||||
@ -349,7 +333,6 @@
|
||||
"rm": "ሮማንሽ",
|
||||
"rn": "ሩንዲኛ",
|
||||
"ro": "ሮማኒያን",
|
||||
"ro_MD": "ሞልዳቪያንኛ",
|
||||
"rof": "ሮምቦ",
|
||||
"ru": "ራሽያኛ",
|
||||
"rup": "አሮማንያን",
|
||||
@ -397,7 +380,6 @@
|
||||
"suk": "ሱኩማ",
|
||||
"sv": "ስዊድንኛ",
|
||||
"sw": "ስዋሂሊኛ",
|
||||
"sw_CD": "ኮንጎ ስዋሂሊ",
|
||||
"swb": "ኮሞሪያን",
|
||||
"syc": "ክላሲክ ኔይራ",
|
||||
"syr": "ሲሪያክ",
|
||||
@ -457,10 +439,30 @@
|
||||
"zbl": "ብሊስይምቦልስ",
|
||||
"zgh": "መደበኛ የሞሮኮ ታማዚግት",
|
||||
"zh": "ቻይንኛ",
|
||||
"zh_Hans": "ቀለል ያለ ቻይንኛ",
|
||||
"zh_Hant": "ባህላዊ ቻይንኛ",
|
||||
"zu": "ዙሉኛ",
|
||||
"zun": "ዙኒ",
|
||||
"zza": "ዛዛ"
|
||||
},
|
||||
"LocalizedNames": {
|
||||
"ar_001": "ዘመናዊ መደበኛ ዓረብኛ",
|
||||
"de_AT": "የኦስትሪያ ጀርመን",
|
||||
"de_CH": "የስዊዝ ከፍተኛ ጀርመንኛ",
|
||||
"en_AU": "የአውስትራሊያ እንግሊዝኛ",
|
||||
"en_CA": "የካናዳ እንግሊዝኛ",
|
||||
"en_GB": "የብሪቲሽ እንግሊዝኛ",
|
||||
"en_US": "የአሜሪካ እንግሊዝኛ",
|
||||
"es_419": "የላቲን አሜሪካ ስፓኒሽ",
|
||||
"es_ES": "የአውሮፓ ስፓንሽኛ",
|
||||
"es_MX": "የሜክሲኮ ስፓንሽኛ",
|
||||
"fr_CA": "የካናዳ ፈረንሳይኛ",
|
||||
"fr_CH": "የስዊዝ ፈረንሳይኛ",
|
||||
"nds_NL": "የታችኛው ሳክሰን",
|
||||
"nl_BE": "ፍሌሚሽ",
|
||||
"pt_BR": "የብራዚል ፖርቹጋልኛ",
|
||||
"pt_PT": "የአውሮፓ ፖርቹጋልኛ",
|
||||
"ro_MD": "ሞልዳቪያንኛ",
|
||||
"sw_CD": "ኮንጎ ስዋሂሊ",
|
||||
"zh_Hans": "ቀለል ያለ ቻይንኛ",
|
||||
"zh_Hant": "ባህላዊ ቻይንኛ"
|
||||
}
|
||||
}
|
||||
|
@ -21,7 +21,6 @@
|
||||
"ang": "الإنجليزية القديمة",
|
||||
"anp": "الأنجيكا",
|
||||
"ar": "العربية",
|
||||
"ar_001": "العربية الرسمية الحديثة",
|
||||
"arc": "الآرامية",
|
||||
"arn": "المابودونغونية",
|
||||
"arp": "الأراباهو",
|
||||
@ -100,8 +99,6 @@
|
||||
"dar": "الدارجوا",
|
||||
"dav": "تيتا",
|
||||
"de": "الألمانية",
|
||||
"de_AT": "الألمانية النمساوية",
|
||||
"de_CH": "الألمانية العليا السويسرية",
|
||||
"del": "الديلوير",
|
||||
"den": "السلافية",
|
||||
"dgr": "الدوجريب",
|
||||
@ -124,16 +121,9 @@
|
||||
"el": "اليونانية",
|
||||
"elx": "الإمايت",
|
||||
"en": "الإنجليزية",
|
||||
"en_AU": "الإنجليزية الأسترالية",
|
||||
"en_CA": "الإنجليزية الكندية",
|
||||
"en_GB": "الإنجليزية البريطانية",
|
||||
"en_US": "الإنجليزية الأمريكية",
|
||||
"enm": "الإنجليزية الوسطى",
|
||||
"eo": "الإسبرانتو",
|
||||
"es": "الإسبانية",
|
||||
"es_419": "الإسبانية أمريكا اللاتينية",
|
||||
"es_ES": "الإسبانية الأوروبية",
|
||||
"es_MX": "الإسبانية المكسيكية",
|
||||
"et": "الإستونية",
|
||||
"eu": "الباسكية",
|
||||
"ewo": "الإيوندو",
|
||||
@ -147,8 +137,6 @@
|
||||
"fo": "الفاروية",
|
||||
"fon": "الفون",
|
||||
"fr": "الفرنسية",
|
||||
"fr_CA": "الفرنسية الكندية",
|
||||
"fr_CH": "الفرنسية السويسرية",
|
||||
"frc": "الفرنسية الكاجونية",
|
||||
"frm": "الفرنسية الوسطى",
|
||||
"fro": "الفرنسية القديمة",
|
||||
@ -332,14 +320,12 @@
|
||||
"nb": "النرويجية بوكمال",
|
||||
"nd": "النديبيل الشمالية",
|
||||
"nds": "الألمانية السفلى",
|
||||
"nds_NL": "السكسونية السفلى",
|
||||
"ne": "النيبالية",
|
||||
"new": "النوارية",
|
||||
"ng": "الندونجا",
|
||||
"nia": "النياس",
|
||||
"niu": "النيوي",
|
||||
"nl": "الهولندية",
|
||||
"nl_BE": "الفلمنكية",
|
||||
"nmg": "كواسيو",
|
||||
"nn": "النرويجية نينورسك",
|
||||
"nnh": "لغة النجيمبون",
|
||||
@ -380,8 +366,6 @@
|
||||
"pro": "البروفانسية القديمة",
|
||||
"ps": "البشتو",
|
||||
"pt": "البرتغالية",
|
||||
"pt_BR": "البرتغالية البرازيلية",
|
||||
"pt_PT": "البرتغالية الأوروبية",
|
||||
"qu": "الكويتشوا",
|
||||
"quc": "الكيشية",
|
||||
"raj": "الراجاسثانية",
|
||||
@ -390,7 +374,6 @@
|
||||
"rm": "الرومانشية",
|
||||
"rn": "الرندي",
|
||||
"ro": "الرومانية",
|
||||
"ro_MD": "المولدوفية",
|
||||
"rof": "الرومبو",
|
||||
"rom": "الغجرية",
|
||||
"ru": "الروسية",
|
||||
@ -448,7 +431,6 @@
|
||||
"sux": "السومارية",
|
||||
"sv": "السويدية",
|
||||
"sw": "السواحلية",
|
||||
"sw_CD": "الكونغو السواحلية",
|
||||
"swb": "القمرية",
|
||||
"syc": "سريانية تقليدية",
|
||||
"syr": "السريانية",
|
||||
@ -522,10 +504,30 @@
|
||||
"zen": "الزيناجا",
|
||||
"zgh": "التمازيغية المغربية القياسية",
|
||||
"zh": "الصينية",
|
||||
"zh_Hans": "الصينية المبسطة",
|
||||
"zh_Hant": "الصينية التقليدية",
|
||||
"zu": "الزولو",
|
||||
"zun": "الزونية",
|
||||
"zza": "زازا"
|
||||
},
|
||||
"LocalizedNames": {
|
||||
"ar_001": "العربية الرسمية الحديثة",
|
||||
"de_AT": "الألمانية النمساوية",
|
||||
"de_CH": "الألمانية العليا السويسرية",
|
||||
"en_AU": "الإنجليزية الأسترالية",
|
||||
"en_CA": "الإنجليزية الكندية",
|
||||
"en_GB": "الإنجليزية البريطانية",
|
||||
"en_US": "الإنجليزية الأمريكية",
|
||||
"es_419": "الإسبانية أمريكا اللاتينية",
|
||||
"es_ES": "الإسبانية الأوروبية",
|
||||
"es_MX": "الإسبانية المكسيكية",
|
||||
"fr_CA": "الفرنسية الكندية",
|
||||
"fr_CH": "الفرنسية السويسرية",
|
||||
"nds_NL": "السكسونية السفلى",
|
||||
"nl_BE": "الفلمنكية",
|
||||
"pt_BR": "البرتغالية البرازيلية",
|
||||
"pt_PT": "البرتغالية الأوروبية",
|
||||
"ro_MD": "المولدوفية",
|
||||
"sw_CD": "الكونغو السواحلية",
|
||||
"zh_Hans": "الصينية المبسطة",
|
||||
"zh_Hant": "الصينية التقليدية"
|
||||
}
|
||||
}
|
||||
|
@ -2,5 +2,6 @@
|
||||
"Version": "2.1.49.36",
|
||||
"Names": {
|
||||
"da": "الدنماركية"
|
||||
}
|
||||
},
|
||||
"LocalizedNames": []
|
||||
}
|
||||
|
@ -8,7 +8,9 @@
|
||||
"sh": "الكرواتية الصربية",
|
||||
"sma": "سامي الجنوبية",
|
||||
"sw": "السواحيلية",
|
||||
"sw_CD": "السواحيلية الكونغولية",
|
||||
"ti": "التيغرينية"
|
||||
},
|
||||
"LocalizedNames": {
|
||||
"sw_CD": "السواحيلية الكونغولية"
|
||||
}
|
||||
}
|
||||
|
@ -8,8 +8,10 @@
|
||||
"sh": "الكرواتية الصربية",
|
||||
"sma": "سامي الجنوبية",
|
||||
"sw": "السواحيلية",
|
||||
"sw_CD": "السواحيلية الكونغولية",
|
||||
"te": "التيلوجو",
|
||||
"ti": "التيغرينية"
|
||||
},
|
||||
"LocalizedNames": {
|
||||
"sw_CD": "السواحيلية الكونغولية"
|
||||
}
|
||||
}
|
||||
|
@ -16,7 +16,6 @@
|
||||
"an": "আৰ্গোনিজ",
|
||||
"anp": "আঙ্গিকা",
|
||||
"ar": "আৰবী",
|
||||
"ar_001": "আধুনিক মানক আৰবী",
|
||||
"arn": "মাপুচে",
|
||||
"arp": "আৰাপাহো",
|
||||
"as": "অসমীয়া",
|
||||
@ -68,8 +67,6 @@
|
||||
"dar": "দাৰ্গৱা",
|
||||
"dav": "তেইতা",
|
||||
"de": "জাৰ্মান",
|
||||
"de_AT": "অষ্ট্ৰেলিয়ান জাৰ্মান",
|
||||
"de_CH": "ছুইচ হাই জাৰ্মান",
|
||||
"dgr": "ডোগ্ৰিব",
|
||||
"dje": "ঝাৰ্মা",
|
||||
"dsb": "ল’ৱাৰ ছোৰ্বিয়ান",
|
||||
@ -84,15 +81,8 @@
|
||||
"eka": "একাজুক",
|
||||
"el": "গ্ৰীক",
|
||||
"en": "ইংৰাজী",
|
||||
"en_AU": "অষ্ট্ৰেলিয়ান ইংৰাজী",
|
||||
"en_CA": "কানাডিয়ান ইংৰাজী",
|
||||
"en_GB": "ব্ৰিটিছ ইংৰাজী",
|
||||
"en_US": "আমেৰিকান ইংৰাজী",
|
||||
"eo": "এস্পেৰান্তো",
|
||||
"es": "স্পেনিচ",
|
||||
"es_419": "লেটিন আমেৰিকান স্পেনিচ",
|
||||
"es_ES": "ইউৰোপীয়ান স্পেনিচ",
|
||||
"es_MX": "মেক্সিকান স্পেনিচ",
|
||||
"et": "এষ্টোনিয়",
|
||||
"eu": "বাস্ক",
|
||||
"ewo": "ইওন্দো",
|
||||
@ -104,8 +94,6 @@
|
||||
"fo": "ফাৰোইজ",
|
||||
"fon": "ফ’ন",
|
||||
"fr": "ফ্ৰেন্স",
|
||||
"fr_CA": "কানাডিয়ান ফ্ৰেন্স",
|
||||
"fr_CH": "ছুইচ ফ্ৰেন্স",
|
||||
"fur": "ফ্ৰিউলিয়ান",
|
||||
"fy": "ৱেষ্টাৰ্ণ ফ্ৰিছিয়ান",
|
||||
"ga": "আইৰিচ",
|
||||
@ -251,7 +239,6 @@
|
||||
"nia": "নিয়াছ",
|
||||
"niu": "নিয়ুৱান",
|
||||
"nl": "ডাচ",
|
||||
"nl_BE": "ফ্লেমিচ",
|
||||
"nmg": "কোৱাছিঅ’",
|
||||
"nn": "নৰৱেজিয়ান নায়নোৰ্স্ক",
|
||||
"nnh": "নিয়েম্বোন",
|
||||
@ -277,8 +264,6 @@
|
||||
"prg": "প্ৰুছিয়ান",
|
||||
"ps": "পুস্ত",
|
||||
"pt": "পৰ্তুগীজ",
|
||||
"pt_BR": "ব্ৰাজিলিয়ান পৰ্তুগীজ",
|
||||
"pt_PT": "ইউৰোপীয়ান পৰ্তুগীজ",
|
||||
"qu": "কুৱেচুৱা",
|
||||
"quc": "কিচিয়ে",
|
||||
"rap": "ৰাপানুই",
|
||||
@ -286,7 +271,6 @@
|
||||
"rm": "ৰোমানচ",
|
||||
"rn": "ৰুন্দি",
|
||||
"ro": "ৰোমানীয়",
|
||||
"ro_MD": "মোল্ডাভিয়ান",
|
||||
"rof": "ৰোম্বো",
|
||||
"ru": "ৰাছিয়ান",
|
||||
"rup": "আৰোমানীয়",
|
||||
@ -330,7 +314,6 @@
|
||||
"suk": "ছুকুমা",
|
||||
"sv": "ছুইডিচ",
|
||||
"sw": "স্বাহিলি",
|
||||
"sw_CD": "কঙ্গো স্বাহিলি",
|
||||
"swb": "কোমোৰিয়ান",
|
||||
"syr": "চিৰিয়াক",
|
||||
"ta": "তামিল",
|
||||
@ -383,10 +366,29 @@
|
||||
"yue": "কেণ্টোনীজ",
|
||||
"zgh": "ষ্টেণ্ডাৰ্ড মোৰোক্কান তামাজাইট",
|
||||
"zh": "চীনা",
|
||||
"zh_Hans": "সৰলীকৃত চীনা",
|
||||
"zh_Hant": "পৰম্পৰাগত চীনা",
|
||||
"zu": "ঝুলু",
|
||||
"zun": "ঝুনি",
|
||||
"zza": "ঝাঝা"
|
||||
},
|
||||
"LocalizedNames": {
|
||||
"ar_001": "আধুনিক মানক আৰবী",
|
||||
"de_AT": "অষ্ট্ৰেলিয়ান জাৰ্মান",
|
||||
"de_CH": "ছুইচ হাই জাৰ্মান",
|
||||
"en_AU": "অষ্ট্ৰেলিয়ান ইংৰাজী",
|
||||
"en_CA": "কানাডিয়ান ইংৰাজী",
|
||||
"en_GB": "ব্ৰিটিছ ইংৰাজী",
|
||||
"en_US": "আমেৰিকান ইংৰাজী",
|
||||
"es_419": "লেটিন আমেৰিকান স্পেনিচ",
|
||||
"es_ES": "ইউৰোপীয়ান স্পেনিচ",
|
||||
"es_MX": "মেক্সিকান স্পেনিচ",
|
||||
"fr_CA": "কানাডিয়ান ফ্ৰেন্স",
|
||||
"fr_CH": "ছুইচ ফ্ৰেন্স",
|
||||
"nl_BE": "ফ্লেমিচ",
|
||||
"pt_BR": "ব্ৰাজিলিয়ান পৰ্তুগীজ",
|
||||
"pt_PT": "ইউৰোপীয়ান পৰ্তুগীজ",
|
||||
"ro_MD": "মোল্ডাভিয়ান",
|
||||
"sw_CD": "কঙ্গো স্বাহিলি",
|
||||
"zh_Hans": "সৰলীকৃত চীনা",
|
||||
"zh_Hant": "পৰম্পৰাগত চীনা"
|
||||
}
|
||||
}
|
||||
|
@ -21,7 +21,6 @@
|
||||
"ang": "qədim ingilis",
|
||||
"anp": "angika",
|
||||
"ar": "ərəb",
|
||||
"ar_001": "müasir standart ərəb",
|
||||
"arc": "aramik",
|
||||
"arn": "mapuçe",
|
||||
"arp": "arapaho",
|
||||
@ -33,7 +32,6 @@
|
||||
"awa": "avadhi",
|
||||
"ay": "aymara",
|
||||
"az": "azərbaycan",
|
||||
"az_Arab": "cənubi azərbaycan",
|
||||
"ba": "başqırd",
|
||||
"bal": "baluc",
|
||||
"ban": "bali",
|
||||
@ -93,8 +91,6 @@
|
||||
"dar": "darqva",
|
||||
"dav": "taita",
|
||||
"de": "alman",
|
||||
"de_AT": "Avstriya almancası",
|
||||
"de_CH": "İsveçrə yüksək almancası",
|
||||
"del": "delaver",
|
||||
"den": "slavey",
|
||||
"dgr": "doqrib",
|
||||
@ -117,16 +113,9 @@
|
||||
"el": "yunan",
|
||||
"elx": "elamit",
|
||||
"en": "ingilis",
|
||||
"en_AU": "Avstraliya ingiliscəsi",
|
||||
"en_CA": "Kanada ingiliscəsi",
|
||||
"en_GB": "Britaniya ingiliscəsi",
|
||||
"en_US": "Amerika ingiliscəsi",
|
||||
"enm": "orta ingilis",
|
||||
"eo": "esperanto",
|
||||
"es": "ispan",
|
||||
"es_419": "Latın Amerikası ispancası",
|
||||
"es_ES": "Kastiliya ispancası",
|
||||
"es_MX": "Meksika ispancası",
|
||||
"et": "eston",
|
||||
"eu": "bask",
|
||||
"ewo": "evondo",
|
||||
@ -140,8 +129,6 @@
|
||||
"fo": "farer",
|
||||
"fon": "fon",
|
||||
"fr": "fransız",
|
||||
"fr_CA": "Kanada fransızcası",
|
||||
"fr_CH": "İsveçrə fransızcası",
|
||||
"frm": "orta fransız",
|
||||
"fro": "qədim fransız",
|
||||
"frr": "şimali fris",
|
||||
@ -320,14 +307,12 @@
|
||||
"nb": "bokmal norveç",
|
||||
"nd": "şimali ndebele",
|
||||
"nds": "aşağı alman",
|
||||
"nds_NL": "aşağı sakson",
|
||||
"ne": "nepal",
|
||||
"new": "nevari",
|
||||
"ng": "ndonqa",
|
||||
"nia": "nias",
|
||||
"niu": "niyuan",
|
||||
"nl": "holland",
|
||||
"nl_BE": "flamand",
|
||||
"nmg": "kvasio",
|
||||
"nn": "nünorsk norveç",
|
||||
"nnh": "ngiemboon",
|
||||
@ -367,8 +352,6 @@
|
||||
"pro": "qədim provansal",
|
||||
"ps": "puştu",
|
||||
"pt": "portuqal",
|
||||
"pt_BR": "Braziliya portuqalcası",
|
||||
"pt_PT": "Portuqaliya portuqalcası",
|
||||
"qu": "keçua",
|
||||
"quc": "kiçe",
|
||||
"raj": "racastani",
|
||||
@ -377,7 +360,6 @@
|
||||
"rm": "romanş",
|
||||
"rn": "rundi",
|
||||
"ro": "rumın",
|
||||
"ro_MD": "moldav",
|
||||
"rof": "rombo",
|
||||
"rom": "roman",
|
||||
"ru": "rus",
|
||||
@ -433,7 +415,6 @@
|
||||
"sux": "sumeryan",
|
||||
"sv": "isveç",
|
||||
"sw": "suahili",
|
||||
"sw_CD": "Konqo suahilicəsi",
|
||||
"swb": "komor",
|
||||
"syr": "suriya",
|
||||
"ta": "tamil",
|
||||
@ -506,10 +487,31 @@
|
||||
"zen": "zenaqa",
|
||||
"zgh": "tamazi",
|
||||
"zh": "çin",
|
||||
"zh_Hans": "sadələşmiş çin",
|
||||
"zh_Hant": "ənənəvi çin",
|
||||
"zu": "zulu",
|
||||
"zun": "zuni",
|
||||
"zza": "zaza"
|
||||
},
|
||||
"LocalizedNames": {
|
||||
"ar_001": "müasir standart ərəb",
|
||||
"az_Arab": "cənubi azərbaycan",
|
||||
"de_AT": "Avstriya almancası",
|
||||
"de_CH": "İsveçrə yüksək almancası",
|
||||
"en_AU": "Avstraliya ingiliscəsi",
|
||||
"en_CA": "Kanada ingiliscəsi",
|
||||
"en_GB": "Britaniya ingiliscəsi",
|
||||
"en_US": "Amerika ingiliscəsi",
|
||||
"es_419": "Latın Amerikası ispancası",
|
||||
"es_ES": "Kastiliya ispancası",
|
||||
"es_MX": "Meksika ispancası",
|
||||
"fr_CA": "Kanada fransızcası",
|
||||
"fr_CH": "İsveçrə fransızcası",
|
||||
"nds_NL": "aşağı sakson",
|
||||
"nl_BE": "flamand",
|
||||
"pt_BR": "Braziliya portuqalcası",
|
||||
"pt_PT": "Portuqaliya portuqalcası",
|
||||
"ro_MD": "moldav",
|
||||
"sw_CD": "Konqo suahilicəsi",
|
||||
"zh_Hans": "sadələşmiş çin",
|
||||
"zh_Hant": "ənənəvi çin"
|
||||
}
|
||||
}
|
||||
|
@ -16,7 +16,6 @@
|
||||
"an": "арагон",
|
||||
"anp": "анҝика",
|
||||
"ar": "әрәб",
|
||||
"ar_001": "мүасир стандарт әрәб",
|
||||
"arn": "арауканҹа",
|
||||
"arp": "арапаһо",
|
||||
"as": "ассам",
|
||||
@ -67,8 +66,6 @@
|
||||
"dar": "даргва",
|
||||
"dav": "таита",
|
||||
"de": "алман",
|
||||
"de_AT": "Австрија алманҹасы",
|
||||
"de_CH": "Исвечрә јүксәк алманҹасы",
|
||||
"dgr": "догриб",
|
||||
"dje": "зарма",
|
||||
"dsb": "ашағы сорб",
|
||||
@ -83,15 +80,8 @@
|
||||
"eka": "екаҹук",
|
||||
"el": "јунан",
|
||||
"en": "инҝилис",
|
||||
"en_AU": "Австралија инҝилисҹәси",
|
||||
"en_CA": "Канада инҝилисҹәси",
|
||||
"en_GB": "Британија инҝилисҹәси",
|
||||
"en_US": "Америка инҝилисҹәси",
|
||||
"eo": "есперанто",
|
||||
"es": "испан",
|
||||
"es_419": "Латын Америкасы испанҹасы",
|
||||
"es_ES": "Кастилија испанҹасы",
|
||||
"es_MX": "Мексика испанҹасы",
|
||||
"et": "естон",
|
||||
"eu": "баск",
|
||||
"ewo": "евондо",
|
||||
@ -103,8 +93,6 @@
|
||||
"fo": "фарер",
|
||||
"fon": "фон",
|
||||
"fr": "франсыз",
|
||||
"fr_CA": "Канада франсызҹасы",
|
||||
"fr_CH": "Исвечрә франсызҹасы",
|
||||
"fur": "фриул",
|
||||
"fy": "гәрби фриз",
|
||||
"ga": "ирланд",
|
||||
@ -242,14 +230,12 @@
|
||||
"naq": "нама",
|
||||
"nb": "бокмал норвеч",
|
||||
"nd": "шимали ндебеле",
|
||||
"nds_NL": "ашағы саксон",
|
||||
"ne": "непал",
|
||||
"new": "невари",
|
||||
"ng": "ндонга",
|
||||
"nia": "ниас",
|
||||
"niu": "нијуан",
|
||||
"nl": "һолланд",
|
||||
"nl_BE": "фламанд",
|
||||
"nmg": "квасио",
|
||||
"nn": "нүнорск норвеч",
|
||||
"nnh": "нҝиембоон",
|
||||
@ -275,8 +261,6 @@
|
||||
"prg": "прусс",
|
||||
"ps": "пушту",
|
||||
"pt": "португал",
|
||||
"pt_BR": "Бразилија португалҹасы",
|
||||
"pt_PT": "Португалија португалҹасы",
|
||||
"qu": "кечуа",
|
||||
"quc": "киче",
|
||||
"rap": "рапануи",
|
||||
@ -327,7 +311,6 @@
|
||||
"suk": "сукума",
|
||||
"sv": "исвеч",
|
||||
"sw": "суаһили",
|
||||
"sw_CD": "Конго суаһилиҹәси",
|
||||
"swb": "комор",
|
||||
"syr": "сурија",
|
||||
"ta": "тамил",
|
||||
@ -380,10 +363,29 @@
|
||||
"yue": "кантон",
|
||||
"zgh": "тамази",
|
||||
"zh": "чин",
|
||||
"zh_Hans": "садәләшмиш чин",
|
||||
"zh_Hant": "әнәнәви чин",
|
||||
"zu": "зулу",
|
||||
"zun": "зуни",
|
||||
"zza": "заза"
|
||||
},
|
||||
"LocalizedNames": {
|
||||
"ar_001": "мүасир стандарт әрәб",
|
||||
"de_AT": "Австрија алманҹасы",
|
||||
"de_CH": "Исвечрә јүксәк алманҹасы",
|
||||
"en_AU": "Австралија инҝилисҹәси",
|
||||
"en_CA": "Канада инҝилисҹәси",
|
||||
"en_GB": "Британија инҝилисҹәси",
|
||||
"en_US": "Америка инҝилисҹәси",
|
||||
"es_419": "Латын Америкасы испанҹасы",
|
||||
"es_ES": "Кастилија испанҹасы",
|
||||
"es_MX": "Мексика испанҹасы",
|
||||
"fr_CA": "Канада франсызҹасы",
|
||||
"fr_CH": "Исвечрә франсызҹасы",
|
||||
"nds_NL": "ашағы саксон",
|
||||
"nl_BE": "фламанд",
|
||||
"pt_BR": "Бразилија португалҹасы",
|
||||
"pt_PT": "Португалија португалҹасы",
|
||||
"sw_CD": "Конго суаһилиҹәси",
|
||||
"zh_Hans": "садәләшмиш чин",
|
||||
"zh_Hant": "әнәнәви чин"
|
||||
}
|
||||
}
|
||||
|
@ -247,7 +247,6 @@
|
||||
"nb": "нарвежская (букмол)",
|
||||
"nd": "паўночная ндэбеле",
|
||||
"nds": "ніжненямецкая",
|
||||
"nds_NL": "ніжнесаксонская",
|
||||
"ne": "непальская",
|
||||
"new": "неўары",
|
||||
"ng": "ндонга",
|
||||
@ -285,8 +284,6 @@
|
||||
"pro": "стараправансальская",
|
||||
"ps": "пушту",
|
||||
"pt": "партугальская",
|
||||
"pt_BR": "бразільская партугальская",
|
||||
"pt_PT": "еўрапейская партугальская",
|
||||
"qu": "кечуа",
|
||||
"quc": "кічэ",
|
||||
"raj": "раджастханская",
|
||||
@ -295,7 +292,6 @@
|
||||
"rm": "рэтараманская",
|
||||
"rn": "рундзі",
|
||||
"ro": "румынская",
|
||||
"ro_MD": "малдаўская",
|
||||
"rof": "ромба",
|
||||
"ru": "руская",
|
||||
"rup": "арумунская",
|
||||
@ -343,7 +339,6 @@
|
||||
"sux": "шумерская",
|
||||
"sv": "шведская",
|
||||
"sw": "суахілі",
|
||||
"sw_CD": "кангалезская суахілі",
|
||||
"swb": "каморская",
|
||||
"syr": "сірыйская",
|
||||
"ta": "тамільская",
|
||||
@ -398,10 +393,17 @@
|
||||
"zap": "сапатэк",
|
||||
"zgh": "стандартная мараканская тамазіхт",
|
||||
"zh": "кітайская",
|
||||
"zh_Hans": "кітайская (спрошчаныя іерогліфы)",
|
||||
"zh_Hant": "кітайская (традыцыйныя іерогліфы)",
|
||||
"zu": "зулу",
|
||||
"zun": "зуні",
|
||||
"zza": "зазакі"
|
||||
},
|
||||
"LocalizedNames": {
|
||||
"nds_NL": "ніжнесаксонская",
|
||||
"pt_BR": "бразільская партугальская",
|
||||
"pt_PT": "еўрапейская партугальская",
|
||||
"ro_MD": "малдаўская",
|
||||
"sw_CD": "кангалезская суахілі",
|
||||
"zh_Hans": "кітайская (спрошчаныя іерогліфы)",
|
||||
"zh_Hant": "кітайская (традыцыйныя іерогліфы)"
|
||||
}
|
||||
}
|
||||
|
@ -21,7 +21,6 @@
|
||||
"ang": "староанглийски",
|
||||
"anp": "ангика",
|
||||
"ar": "арабски",
|
||||
"ar_001": "съвременен стандартен арабски",
|
||||
"arc": "арамейски",
|
||||
"arn": "мапуче",
|
||||
"arp": "арапахо",
|
||||
@ -113,7 +112,6 @@
|
||||
"el": "гръцки",
|
||||
"elx": "еламитски",
|
||||
"en": "английски",
|
||||
"en_US": "английски (САЩ)",
|
||||
"enm": "средновековен английски",
|
||||
"eo": "есперанто",
|
||||
"es": "испански",
|
||||
@ -305,14 +303,12 @@
|
||||
"nb": "норвежки (букмол)",
|
||||
"nd": "северен ндебеле",
|
||||
"nds": "долнонемски",
|
||||
"nds_NL": "долносаксонски",
|
||||
"ne": "непалски",
|
||||
"new": "неварски",
|
||||
"ng": "ндонга",
|
||||
"nia": "ниас",
|
||||
"niu": "ниуеан",
|
||||
"nl": "нидерландски",
|
||||
"nl_BE": "фламандски",
|
||||
"nmg": "квасио",
|
||||
"nn": "норвежки (нюношк)",
|
||||
"nnh": "нгиембун",
|
||||
@ -361,7 +357,6 @@
|
||||
"rm": "реторомански",
|
||||
"rn": "рунди",
|
||||
"ro": "румънски",
|
||||
"ro_MD": "молдовски",
|
||||
"rof": "ромбо",
|
||||
"rom": "ромски",
|
||||
"ru": "руски",
|
||||
@ -417,7 +412,6 @@
|
||||
"sux": "шумерски",
|
||||
"sv": "шведски",
|
||||
"sw": "суахили",
|
||||
"sw_CD": "конгоански суахили",
|
||||
"swb": "коморски",
|
||||
"syc": "класически сирийски",
|
||||
"syr": "сирийски",
|
||||
@ -490,9 +484,17 @@
|
||||
"zen": "зенага",
|
||||
"zgh": "стандартен марокански тамазигт",
|
||||
"zh": "китайски",
|
||||
"zh_Hans": "китайски (опростен)",
|
||||
"zu": "зулуски",
|
||||
"zun": "зуни",
|
||||
"zza": "заза"
|
||||
},
|
||||
"LocalizedNames": {
|
||||
"ar_001": "съвременен стандартен арабски",
|
||||
"en_US": "английски (САЩ)",
|
||||
"nds_NL": "долносаксонски",
|
||||
"nl_BE": "фламандски",
|
||||
"ro_MD": "молдовски",
|
||||
"sw_CD": "конгоански суахили",
|
||||
"zh_Hans": "китайски (опростен)"
|
||||
}
|
||||
}
|
||||
|
@ -46,5 +46,6 @@
|
||||
"yo": "yorubakan",
|
||||
"zh": "siniwakan",
|
||||
"zu": "zulukan"
|
||||
}
|
||||
},
|
||||
"LocalizedNames": []
|
||||
}
|
||||
|
@ -21,7 +21,6 @@
|
||||
"ang": "প্রাচীন ইংরেজী",
|
||||
"anp": "আঙ্গিকা",
|
||||
"ar": "আরবী",
|
||||
"ar_001": "আধুনিক আদর্শ আরবী",
|
||||
"arc": "আরামাইক",
|
||||
"arn": "মাপুচি",
|
||||
"arp": "আরাপাহো",
|
||||
@ -91,8 +90,6 @@
|
||||
"dar": "দার্গওয়া",
|
||||
"dav": "তাইতা",
|
||||
"de": "জার্মান",
|
||||
"de_AT": "অস্ট্রিয়ান জার্মান",
|
||||
"de_CH": "সুইস হাই জার্মান",
|
||||
"del": "ডেলাওয়ের",
|
||||
"den": "স্ল্যাভ",
|
||||
"dgr": "দোগ্রীব",
|
||||
@ -115,16 +112,9 @@
|
||||
"el": "গ্রিক",
|
||||
"elx": "এলামাইট",
|
||||
"en": "ইংরেজি",
|
||||
"en_AU": "অস্ট্রেলীয় ইংরেজি",
|
||||
"en_CA": "কানাডীয় ইংরেজি",
|
||||
"en_GB": "ব্রিটিশ ইংরেজি",
|
||||
"en_US": "আমেরিকার ইংরেজি",
|
||||
"enm": "মধ্য ইংরেজি",
|
||||
"eo": "এস্পেরান্তো",
|
||||
"es": "স্প্যানিশ",
|
||||
"es_419": "ল্যাটিন আমেরিকান স্প্যানিশ",
|
||||
"es_ES": "ইউরোপীয় স্প্যানিশ",
|
||||
"es_MX": "ম্যাক্সিকান স্প্যানিশ",
|
||||
"et": "এস্তোনীয়",
|
||||
"eu": "বাস্ক",
|
||||
"ewo": "ইওন্ডো",
|
||||
@ -138,8 +128,6 @@
|
||||
"fo": "ফারোস",
|
||||
"fon": "ফন",
|
||||
"fr": "ফরাসি",
|
||||
"fr_CA": "কানাডীয় ফরাসি",
|
||||
"fr_CH": "সুইস ফরাসি",
|
||||
"frc": "কাজুন ফরাসি",
|
||||
"frm": "মধ্য ফরাসি",
|
||||
"fro": "প্রাচীন ফরাসি",
|
||||
@ -321,14 +309,12 @@
|
||||
"nb": "নরওয়েজিয়ান বোকমাল",
|
||||
"nd": "উত্তর এন্দেবিলি",
|
||||
"nds": "নিম্ন জার্মানি",
|
||||
"nds_NL": "লো স্যাক্সন",
|
||||
"ne": "নেপালী",
|
||||
"new": "নেওয়ারি",
|
||||
"ng": "এন্দোঙ্গা",
|
||||
"nia": "নিয়াস",
|
||||
"niu": "নিউয়ান",
|
||||
"nl": "ওলন্দাজ",
|
||||
"nl_BE": "ফ্লেমিশ",
|
||||
"nmg": "কোয়াসিও",
|
||||
"nn": "নরওয়েজীয়ান নিনর্স্ক",
|
||||
"nnh": "নিঙ্গেম্বুন",
|
||||
@ -369,8 +355,6 @@
|
||||
"pro": "প্রাচীন প্রোভেনসাল",
|
||||
"ps": "পুশতু",
|
||||
"pt": "পর্তুগীজ",
|
||||
"pt_BR": "ব্রাজিলের পর্তুগীজ",
|
||||
"pt_PT": "ইউরোপের পর্তুগীজ",
|
||||
"qu": "কেচুয়া",
|
||||
"quc": "কি‘চে",
|
||||
"raj": "রাজস্থানী",
|
||||
@ -379,7 +363,6 @@
|
||||
"rm": "রোমান্স",
|
||||
"rn": "রুন্দি",
|
||||
"ro": "রোমানীয়",
|
||||
"ro_MD": "মলদাভিয়",
|
||||
"rof": "রম্বো",
|
||||
"rom": "রোমানি",
|
||||
"ru": "রুশ",
|
||||
@ -435,7 +418,6 @@
|
||||
"sux": "সুমেরীয়",
|
||||
"sv": "সুইডিশ",
|
||||
"sw": "সোয়াহিলি",
|
||||
"sw_CD": "কঙ্গো সোয়াহিলি",
|
||||
"swb": "কমোরিয়ান",
|
||||
"syc": "প্রাচীন সিরিও",
|
||||
"syr": "সিরিয়াক",
|
||||
@ -509,10 +491,30 @@
|
||||
"zen": "জেনাগা",
|
||||
"zgh": "আদর্শ মরক্কোন তামাজিগাত",
|
||||
"zh": "চীনা",
|
||||
"zh_Hans": "সরলীকৃত চীনা",
|
||||
"zh_Hant": "ঐতিহ্যবাহি চীনা",
|
||||
"zu": "জুলু",
|
||||
"zun": "জুনি",
|
||||
"zza": "জাজা"
|
||||
},
|
||||
"LocalizedNames": {
|
||||
"ar_001": "আধুনিক আদর্শ আরবী",
|
||||
"de_AT": "অস্ট্রিয়ান জার্মান",
|
||||
"de_CH": "সুইস হাই জার্মান",
|
||||
"en_AU": "অস্ট্রেলীয় ইংরেজি",
|
||||
"en_CA": "কানাডীয় ইংরেজি",
|
||||
"en_GB": "ব্রিটিশ ইংরেজি",
|
||||
"en_US": "আমেরিকার ইংরেজি",
|
||||
"es_419": "ল্যাটিন আমেরিকান স্প্যানিশ",
|
||||
"es_ES": "ইউরোপীয় স্প্যানিশ",
|
||||
"es_MX": "ম্যাক্সিকান স্প্যানিশ",
|
||||
"fr_CA": "কানাডীয় ফরাসি",
|
||||
"fr_CH": "সুইস ফরাসি",
|
||||
"nds_NL": "লো স্যাক্সন",
|
||||
"nl_BE": "ফ্লেমিশ",
|
||||
"pt_BR": "ব্রাজিলের পর্তুগীজ",
|
||||
"pt_PT": "ইউরোপের পর্তুগীজ",
|
||||
"ro_MD": "মলদাভিয়",
|
||||
"sw_CD": "কঙ্গো সোয়াহিলি",
|
||||
"zh_Hans": "সরলীকৃত চীনা",
|
||||
"zh_Hant": "ঐতিহ্যবাহি চীনা"
|
||||
}
|
||||
}
|
||||
|
@ -2,5 +2,6 @@
|
||||
"Version": "2.1.47.69",
|
||||
"Names": {
|
||||
"ksh": "কোলোনিয়ান"
|
||||
}
|
||||
},
|
||||
"LocalizedNames": []
|
||||
}
|
||||
|
@ -4,14 +4,16 @@
|
||||
"bo": "བོད་སྐད་",
|
||||
"dz": "རྫོང་ཁ",
|
||||
"en": "དབྱིན་ཇིའི་སྐད།",
|
||||
"en_CA": "དབྱིན་ཇིའི་སྐད། (ཁེ་ན་ཌ་)",
|
||||
"en_GB": "དབྱིན་ཇིའི་སྐད། (དབྱིན་ལན་)",
|
||||
"en_US": "དབྱིན་ཇིའི་སྐད། (ཨ་རི་)",
|
||||
"hi": "ཧིན་དི",
|
||||
"ja": "ཉི་ཧོང་སྐད་",
|
||||
"ne": "ནེ་པ་ལི",
|
||||
"ru": "ཨུ་རུ་སུ་སྐད་",
|
||||
"zh": "རྒྱ་སྐད་",
|
||||
"zza": "ཟ་ཟའ་སྐད།"
|
||||
},
|
||||
"LocalizedNames": {
|
||||
"en_CA": "དབྱིན་ཇིའི་སྐད། (ཁེ་ན་ཌ་)",
|
||||
"en_GB": "དབྱིན་ཇིའི་སྐད། (དབྱིན་ལན་)",
|
||||
"en_US": "དབྱིན་ཇིའི་སྐད། (ཨ་རི་)"
|
||||
}
|
||||
}
|
||||
|
@ -24,7 +24,6 @@
|
||||
"ang": "hensaozneg",
|
||||
"anp": "angika",
|
||||
"ar": "arabeg",
|
||||
"ar_001": "arabeg modern",
|
||||
"arc": "arameeg",
|
||||
"arn": "araoukaneg",
|
||||
"aro": "araona",
|
||||
@ -100,8 +99,6 @@
|
||||
"dar": "dargwa",
|
||||
"dav": "taita",
|
||||
"de": "alamaneg",
|
||||
"de_AT": "alamaneg Aostria",
|
||||
"de_CH": "alamaneg uhel Suis",
|
||||
"del": "delaware",
|
||||
"dgr": "dogrib",
|
||||
"din": "dinka",
|
||||
@ -123,16 +120,9 @@
|
||||
"el": "gresianeg",
|
||||
"elx": "elameg",
|
||||
"en": "saozneg",
|
||||
"en_AU": "saozneg Aostralia",
|
||||
"en_CA": "saozneg Kanada",
|
||||
"en_GB": "saozneg Breizh-Veur",
|
||||
"en_US": "saozneg Amerika",
|
||||
"enm": "krennsaozneg",
|
||||
"eo": "esperanteg",
|
||||
"es": "spagnoleg",
|
||||
"es_419": "spagnoleg Amerika latin",
|
||||
"es_ES": "spagnoleg Europa",
|
||||
"es_MX": "spagnoleg Mecʼhiko",
|
||||
"et": "estoneg",
|
||||
"eu": "euskareg",
|
||||
"ewo": "ewondo",
|
||||
@ -147,8 +137,6 @@
|
||||
"fo": "faeroeg",
|
||||
"fon": "fon",
|
||||
"fr": "galleg",
|
||||
"fr_CA": "galleg Kanada",
|
||||
"fr_CH": "galleg Suis",
|
||||
"frc": "galleg cajun",
|
||||
"frm": "krenncʼhalleg",
|
||||
"fro": "hencʼhalleg",
|
||||
@ -331,7 +319,6 @@
|
||||
"nb": "norvegeg bokmål",
|
||||
"nd": "ndebele an Norzh",
|
||||
"nds": "alamaneg izel",
|
||||
"nds_NL": "saksoneg izel",
|
||||
"ne": "nepaleg",
|
||||
"new": "newari",
|
||||
"ng": "ndonga",
|
||||
@ -339,7 +326,6 @@
|
||||
"niu": "niue",
|
||||
"njo": "aoeg",
|
||||
"nl": "nederlandeg",
|
||||
"nl_BE": "flandrezeg",
|
||||
"nmg": "ngoumbeg",
|
||||
"nn": "norvegeg nynorsk",
|
||||
"nnh": "ngiemboon",
|
||||
@ -384,8 +370,6 @@
|
||||
"pro": "henbrovañseg",
|
||||
"ps": "pachto",
|
||||
"pt": "portugaleg",
|
||||
"pt_BR": "portugaleg Brazil",
|
||||
"pt_PT": "portugaleg Europa",
|
||||
"qu": "kechuaeg",
|
||||
"quc": "kʼicheʼ",
|
||||
"qug": "kichuaeg Chimborazo",
|
||||
@ -396,7 +380,6 @@
|
||||
"rm": "romañcheg",
|
||||
"rn": "rundi",
|
||||
"ro": "roumaneg",
|
||||
"ro_MD": "moldoveg",
|
||||
"rof": "rombo",
|
||||
"rom": "romanieg",
|
||||
"ru": "rusianeg",
|
||||
@ -451,7 +434,6 @@
|
||||
"sux": "sumereg",
|
||||
"sv": "svedeg",
|
||||
"sw": "swahili",
|
||||
"sw_CD": "swahili Kongo",
|
||||
"swb": "komoreg",
|
||||
"syc": "sirieg klasel",
|
||||
"syr": "sirieg",
|
||||
@ -533,10 +515,30 @@
|
||||
"zen": "zenaga",
|
||||
"zgh": "tamacheg Maroko standart",
|
||||
"zh": "sinaeg",
|
||||
"zh_Hans": "sinaeg eeunaet",
|
||||
"zh_Hant": "sinaeg hengounel",
|
||||
"zu": "zouloueg",
|
||||
"zun": "zuni",
|
||||
"zza": "zazakeg"
|
||||
},
|
||||
"LocalizedNames": {
|
||||
"ar_001": "arabeg modern",
|
||||
"de_AT": "alamaneg Aostria",
|
||||
"de_CH": "alamaneg uhel Suis",
|
||||
"en_AU": "saozneg Aostralia",
|
||||
"en_CA": "saozneg Kanada",
|
||||
"en_GB": "saozneg Breizh-Veur",
|
||||
"en_US": "saozneg Amerika",
|
||||
"es_419": "spagnoleg Amerika latin",
|
||||
"es_ES": "spagnoleg Europa",
|
||||
"es_MX": "spagnoleg Mecʼhiko",
|
||||
"fr_CA": "galleg Kanada",
|
||||
"fr_CH": "galleg Suis",
|
||||
"nds_NL": "saksoneg izel",
|
||||
"nl_BE": "flandrezeg",
|
||||
"pt_BR": "portugaleg Brazil",
|
||||
"pt_PT": "portugaleg Europa",
|
||||
"ro_MD": "moldoveg",
|
||||
"sw_CD": "swahili Kongo",
|
||||
"zh_Hans": "sinaeg eeunaet",
|
||||
"zh_Hant": "sinaeg hengounel"
|
||||
}
|
||||
}
|
||||
|
@ -21,7 +21,6 @@
|
||||
"ang": "staroengleski",
|
||||
"anp": "angika",
|
||||
"ar": "arapski",
|
||||
"ar_001": "moderni standardni arapski",
|
||||
"arc": "aramejski",
|
||||
"arn": "mapuški",
|
||||
"arp": "arapaho",
|
||||
@ -99,7 +98,6 @@
|
||||
"dar": "dargva",
|
||||
"dav": "taita",
|
||||
"de": "njemački",
|
||||
"de_CH": "gornjonjemački (Švicarska)",
|
||||
"del": "delaver",
|
||||
"den": "slave",
|
||||
"dgr": "dogrib",
|
||||
@ -318,14 +316,12 @@
|
||||
"nb": "norveški (Bokmal)",
|
||||
"nd": "sjeverni ndebele",
|
||||
"nds": "donjonjemački",
|
||||
"nds_NL": "donjosaksonski",
|
||||
"ne": "nepalski",
|
||||
"new": "nevari",
|
||||
"ng": "ndonga",
|
||||
"nia": "nias",
|
||||
"niu": "niue",
|
||||
"nl": "holandski",
|
||||
"nl_BE": "flamanski",
|
||||
"nmg": "kvasio",
|
||||
"nn": "norveški (Nynorsk)",
|
||||
"nnh": "ngiembon",
|
||||
@ -374,7 +370,6 @@
|
||||
"rm": "retoromanski",
|
||||
"rn": "rundi",
|
||||
"ro": "rumunski",
|
||||
"ro_MD": "moldavski",
|
||||
"rof": "rombo",
|
||||
"rom": "romani",
|
||||
"ru": "ruski",
|
||||
@ -504,10 +499,17 @@
|
||||
"zen": "zenaga",
|
||||
"zgh": "standardni marokanski tamazigt",
|
||||
"zh": "kineski",
|
||||
"zh_Hans": "kineski (pojednostavljeni)",
|
||||
"zh_Hant": "kineski (tradicionalni)",
|
||||
"zu": "zulu",
|
||||
"zun": "zuni",
|
||||
"zza": "zaza"
|
||||
},
|
||||
"LocalizedNames": {
|
||||
"ar_001": "moderni standardni arapski",
|
||||
"de_CH": "gornjonjemački (Švicarska)",
|
||||
"nds_NL": "donjosaksonski",
|
||||
"nl_BE": "flamanski",
|
||||
"ro_MD": "moldavski",
|
||||
"zh_Hans": "kineski (pojednostavljeni)",
|
||||
"zh_Hant": "kineski (tradicionalni)"
|
||||
}
|
||||
}
|
||||
|
@ -81,7 +81,6 @@
|
||||
"dak": "дакота",
|
||||
"dar": "даргва",
|
||||
"de": "њемачки",
|
||||
"de_CH": "Швајцарски високи немачки",
|
||||
"del": "делавер",
|
||||
"den": "славски",
|
||||
"dgr": "догриб",
|
||||
@ -274,7 +273,6 @@
|
||||
"nia": "ниас",
|
||||
"niu": "ниуеан",
|
||||
"nl": "холандски",
|
||||
"nl_BE": "фламански",
|
||||
"nn": "норвешки њорск",
|
||||
"no": "норвешки",
|
||||
"nog": "ногаи",
|
||||
@ -317,7 +315,6 @@
|
||||
"rm": "рето-романски",
|
||||
"rn": "рунди",
|
||||
"ro": "румунски",
|
||||
"ro_MD": "молдавски",
|
||||
"rom": "романи",
|
||||
"ru": "руски",
|
||||
"rup": "ароманијски",
|
||||
@ -425,10 +422,15 @@
|
||||
"zen": "зенага",
|
||||
"zgh": "стандардни марокански тамазигт",
|
||||
"zh": "кинески",
|
||||
"zh_Hans": "кинески (поједностављен)",
|
||||
"zh_Hant": "кинески (традиционални)",
|
||||
"zu": "зулу",
|
||||
"zun": "зуни",
|
||||
"zza": "заза"
|
||||
},
|
||||
"LocalizedNames": {
|
||||
"de_CH": "Швајцарски високи немачки",
|
||||
"nl_BE": "фламански",
|
||||
"ro_MD": "молдавски",
|
||||
"zh_Hans": "кинески (поједностављен)",
|
||||
"zh_Hant": "кинески (традиционални)"
|
||||
}
|
||||
}
|
||||
|
@ -23,7 +23,6 @@
|
||||
"ang": "anglès antic",
|
||||
"anp": "angika",
|
||||
"ar": "àrab",
|
||||
"ar_001": "àrab estàndard modern",
|
||||
"arc": "arameu",
|
||||
"arn": "mapudungu",
|
||||
"aro": "araona",
|
||||
@ -109,8 +108,6 @@
|
||||
"dar": "darguà",
|
||||
"dav": "taita",
|
||||
"de": "alemany",
|
||||
"de_AT": "alemany austríac",
|
||||
"de_CH": "alemany estàndard suís",
|
||||
"del": "delaware",
|
||||
"den": "slavi",
|
||||
"dgr": "dogrib",
|
||||
@ -134,16 +131,9 @@
|
||||
"el": "grec",
|
||||
"elx": "elamita",
|
||||
"en": "anglès",
|
||||
"en_AU": "anglès australià",
|
||||
"en_CA": "anglès canadenc",
|
||||
"en_GB": "anglès britànic",
|
||||
"en_US": "anglès americà",
|
||||
"enm": "anglès mitjà",
|
||||
"eo": "esperanto",
|
||||
"es": "espanyol",
|
||||
"es_419": "espanyol hispanoamericà",
|
||||
"es_ES": "espanyol europeu",
|
||||
"es_MX": "espanyol de Mèxic",
|
||||
"et": "estonià",
|
||||
"eu": "basc",
|
||||
"ewo": "ewondo",
|
||||
@ -158,8 +148,6 @@
|
||||
"fo": "feroès",
|
||||
"fon": "fon",
|
||||
"fr": "francès",
|
||||
"fr_CA": "francès canadenc",
|
||||
"fr_CH": "francès suís",
|
||||
"frc": "francès cajun",
|
||||
"frm": "francès mitjà",
|
||||
"fro": "francès antic",
|
||||
@ -358,14 +346,12 @@
|
||||
"nb": "noruec bokmål",
|
||||
"nd": "ndebele septentrional",
|
||||
"nds": "baix alemany",
|
||||
"nds_NL": "baix saxó",
|
||||
"ne": "nepalès",
|
||||
"new": "newari",
|
||||
"ng": "ndonga",
|
||||
"nia": "nias",
|
||||
"niu": "niueà",
|
||||
"nl": "neerlandès",
|
||||
"nl_BE": "flamenc",
|
||||
"nmg": "bissio",
|
||||
"nn": "noruec nynorsk",
|
||||
"nnh": "ngiemboon",
|
||||
@ -412,8 +398,6 @@
|
||||
"pro": "provençal antic",
|
||||
"ps": "paixtu",
|
||||
"pt": "portuguès",
|
||||
"pt_BR": "portuguès del Brasil",
|
||||
"pt_PT": "portuguès de Portugal",
|
||||
"qu": "quítxua",
|
||||
"quc": "k’iche’",
|
||||
"raj": "rajasthani",
|
||||
@ -423,7 +407,6 @@
|
||||
"rm": "retoromànic",
|
||||
"rn": "rundi",
|
||||
"ro": "romanès",
|
||||
"ro_MD": "moldau",
|
||||
"rof": "rombo",
|
||||
"rom": "romaní",
|
||||
"ru": "rus",
|
||||
@ -482,7 +465,6 @@
|
||||
"sux": "sumeri",
|
||||
"sv": "suec",
|
||||
"sw": "suahili",
|
||||
"sw_CD": "suahili del Congo",
|
||||
"swb": "comorià",
|
||||
"syc": "siríac clàssic",
|
||||
"syr": "siríac",
|
||||
@ -565,10 +547,30 @@
|
||||
"zen": "zenaga",
|
||||
"zgh": "amazic estàndard marroquí",
|
||||
"zh": "xinès",
|
||||
"zh_Hans": "xinès simplificat",
|
||||
"zh_Hant": "xinès tradicional",
|
||||
"zu": "zulu",
|
||||
"zun": "zuni",
|
||||
"zza": "zaza"
|
||||
},
|
||||
"LocalizedNames": {
|
||||
"ar_001": "àrab estàndard modern",
|
||||
"de_AT": "alemany austríac",
|
||||
"de_CH": "alemany estàndard suís",
|
||||
"en_AU": "anglès australià",
|
||||
"en_CA": "anglès canadenc",
|
||||
"en_GB": "anglès britànic",
|
||||
"en_US": "anglès americà",
|
||||
"es_419": "espanyol hispanoamericà",
|
||||
"es_ES": "espanyol europeu",
|
||||
"es_MX": "espanyol de Mèxic",
|
||||
"fr_CA": "francès canadenc",
|
||||
"fr_CH": "francès suís",
|
||||
"nds_NL": "baix saxó",
|
||||
"nl_BE": "flamenc",
|
||||
"pt_BR": "portuguès del Brasil",
|
||||
"pt_PT": "portuguès de Portugal",
|
||||
"ro_MD": "moldau",
|
||||
"sw_CD": "suahili del Congo",
|
||||
"zh_Hans": "xinès simplificat",
|
||||
"zh_Hant": "xinès tradicional"
|
||||
}
|
||||
}
|
||||
|
@ -16,7 +16,6 @@
|
||||
"an": "арагонойн",
|
||||
"anp": "ангика",
|
||||
"ar": "Ӏаьрбийн",
|
||||
"ar_001": "ХӀинца болу стандартан Ӏаьрбийн",
|
||||
"arn": "арауканхойн",
|
||||
"arp": "арапахо",
|
||||
"as": "ассамийн",
|
||||
@ -68,8 +67,6 @@
|
||||
"dar": "даьргӀойн",
|
||||
"dav": "таита",
|
||||
"de": "немцойн",
|
||||
"de_AT": "австрин немцойн",
|
||||
"de_CH": "швейцарин литературин немцойн",
|
||||
"dgr": "догриб",
|
||||
"dje": "зарма",
|
||||
"dsb": "сорбийн",
|
||||
@ -84,15 +81,8 @@
|
||||
"eka": "экаджук",
|
||||
"el": "грекийн",
|
||||
"en": "ингалсан",
|
||||
"en_AU": "Австралин ингалсан",
|
||||
"en_CA": "канадан ингалсан",
|
||||
"en_GB": "британин ингалсан",
|
||||
"en_US": "американ ингалсан",
|
||||
"eo": "эсперанто",
|
||||
"es": "испанхойн",
|
||||
"es_419": "латинан американ испанхойн",
|
||||
"es_ES": "европан испанхойн",
|
||||
"es_MX": "мексикан испанхойн",
|
||||
"et": "эстонийн",
|
||||
"eu": "баскийн",
|
||||
"ewo": "эвондо",
|
||||
@ -104,8 +94,6 @@
|
||||
"fo": "фарерийн",
|
||||
"fon": "фон",
|
||||
"fr": "французийн",
|
||||
"fr_CA": "канадан французийн",
|
||||
"fr_CH": "швейцарин французийн",
|
||||
"fur": "фриулийн",
|
||||
"fy": "малхбузен-фризийн",
|
||||
"ga": "ирландхойн",
|
||||
@ -247,14 +235,12 @@
|
||||
"nb": "норвегийн букмол",
|
||||
"nd": "къилбаседа ндебели",
|
||||
"nds": "лахара германхойн",
|
||||
"nds_NL": "лахара саксонийн",
|
||||
"ne": "непалхойн",
|
||||
"new": "неваройн",
|
||||
"ng": "ндонга",
|
||||
"nia": "ниас",
|
||||
"niu": "ниуэ",
|
||||
"nl": "голландхойн",
|
||||
"nl_BE": "фламандийн",
|
||||
"nmg": "квасио",
|
||||
"nn": "норвегийн нюнорск",
|
||||
"nnh": "нгиембунд",
|
||||
@ -280,8 +266,6 @@
|
||||
"prg": "пруссийн",
|
||||
"ps": "пушту",
|
||||
"pt": "португалихойн",
|
||||
"pt_BR": "бразилин португалихойн",
|
||||
"pt_PT": "европан португалихойн",
|
||||
"qu": "кечуа",
|
||||
"quc": "киче",
|
||||
"rap": "рапануйн",
|
||||
@ -289,7 +273,6 @@
|
||||
"rm": "романшийн",
|
||||
"rn": "рунди",
|
||||
"ro": "румынийн",
|
||||
"ro_MD": "молдавийн",
|
||||
"rof": "ромбо",
|
||||
"ru": "оьрсийн",
|
||||
"rup": "аруминийн",
|
||||
@ -333,7 +316,6 @@
|
||||
"suk": "сукума",
|
||||
"sv": "шведийн",
|
||||
"sw": "суахили",
|
||||
"sw_CD": "суахили (Конго)",
|
||||
"swb": "коморийн",
|
||||
"syr": "шемахойн",
|
||||
"ta": "тамилхойн",
|
||||
@ -387,10 +369,30 @@
|
||||
"yue": "кантонийн",
|
||||
"zgh": "мороккон стандартан тамазигхтийн",
|
||||
"zh": "цийн",
|
||||
"zh_Hans": "атта цийн",
|
||||
"zh_Hant": "ламастан цийн",
|
||||
"zu": "зулу",
|
||||
"zun": "зуньи",
|
||||
"zza": "заза"
|
||||
},
|
||||
"LocalizedNames": {
|
||||
"ar_001": "ХӀинца болу стандартан Ӏаьрбийн",
|
||||
"de_AT": "австрин немцойн",
|
||||
"de_CH": "швейцарин литературин немцойн",
|
||||
"en_AU": "Австралин ингалсан",
|
||||
"en_CA": "канадан ингалсан",
|
||||
"en_GB": "британин ингалсан",
|
||||
"en_US": "американ ингалсан",
|
||||
"es_419": "латинан американ испанхойн",
|
||||
"es_ES": "европан испанхойн",
|
||||
"es_MX": "мексикан испанхойн",
|
||||
"fr_CA": "канадан французийн",
|
||||
"fr_CH": "швейцарин французийн",
|
||||
"nds_NL": "лахара саксонийн",
|
||||
"nl_BE": "фламандийн",
|
||||
"pt_BR": "бразилин португалихойн",
|
||||
"pt_PT": "европан португалихойн",
|
||||
"ro_MD": "молдавийн",
|
||||
"sw_CD": "суахили (Конго)",
|
||||
"zh_Hans": "атта цийн",
|
||||
"zh_Hant": "ламастан цийн"
|
||||
}
|
||||
}
|
||||
|
@ -24,7 +24,6 @@
|
||||
"ang": "staroangličtina",
|
||||
"anp": "angika",
|
||||
"ar": "arabština",
|
||||
"ar_001": "arabština (moderní standardní)",
|
||||
"arc": "aramejština",
|
||||
"arn": "mapudungun",
|
||||
"aro": "araonština",
|
||||
@ -119,7 +118,6 @@
|
||||
"dar": "dargština",
|
||||
"dav": "taita",
|
||||
"de": "němčina",
|
||||
"de_CH": "němčina standardní (Švýcarsko)",
|
||||
"del": "delawarština",
|
||||
"den": "slejvština (athabaský jazyk)",
|
||||
"dgr": "dogrib",
|
||||
@ -144,12 +142,9 @@
|
||||
"el": "řečtina",
|
||||
"elx": "elamitština",
|
||||
"en": "angličtina",
|
||||
"en_GB": "angličtina (Velká Británie)",
|
||||
"en_US": "angličtina (USA)",
|
||||
"enm": "angličtina (středověká)",
|
||||
"eo": "esperanto",
|
||||
"es": "španělština",
|
||||
"es_ES": "španělština (Evropa)",
|
||||
"esu": "jupikština (středoaljašská)",
|
||||
"et": "estonština",
|
||||
"eu": "baskičtina",
|
||||
@ -376,7 +371,6 @@
|
||||
"nb": "norština (bokmål)",
|
||||
"nd": "ndebele (Zimbabwe)",
|
||||
"nds": "dolnoněmčina",
|
||||
"nds_NL": "dolnosaština",
|
||||
"ne": "nepálština",
|
||||
"new": "névárština",
|
||||
"ng": "ndondština",
|
||||
@ -384,7 +378,6 @@
|
||||
"niu": "niueština",
|
||||
"njo": "ao (jazyky Nágálandu)",
|
||||
"nl": "nizozemština",
|
||||
"nl_BE": "vlámština",
|
||||
"nmg": "kwasio",
|
||||
"nn": "norština (nynorsk)",
|
||||
"nnh": "ngiemboon",
|
||||
@ -432,7 +425,6 @@
|
||||
"pro": "provensálština",
|
||||
"ps": "paštština",
|
||||
"pt": "portugalština",
|
||||
"pt_PT": "portugalština (Evropa)",
|
||||
"qu": "kečuánština",
|
||||
"quc": "kičé",
|
||||
"qug": "kečuánština (chimborazo)",
|
||||
@ -444,7 +436,6 @@
|
||||
"rm": "rétorománština",
|
||||
"rn": "kirundština",
|
||||
"ro": "rumunština",
|
||||
"ro_MD": "moldavština",
|
||||
"rof": "rombo",
|
||||
"rom": "romština",
|
||||
"rtm": "rotumanština",
|
||||
@ -512,7 +503,6 @@
|
||||
"sux": "sumerština",
|
||||
"sv": "švédština",
|
||||
"sw": "svahilština",
|
||||
"sw_CD": "svahilština (Kongo)",
|
||||
"swb": "komorština",
|
||||
"syc": "syrština (klasická)",
|
||||
"syr": "syrština",
|
||||
@ -601,9 +591,21 @@
|
||||
"zen": "zenaga",
|
||||
"zgh": "tamazight (standardní marocký)",
|
||||
"zh": "čínština",
|
||||
"zh_Hans": "čínština (zjednodušená)",
|
||||
"zu": "zuluština",
|
||||
"zun": "zunijština",
|
||||
"zza": "zaza"
|
||||
},
|
||||
"LocalizedNames": {
|
||||
"ar_001": "arabština (moderní standardní)",
|
||||
"de_CH": "němčina standardní (Švýcarsko)",
|
||||
"en_GB": "angličtina (Velká Británie)",
|
||||
"en_US": "angličtina (USA)",
|
||||
"es_ES": "španělština (Evropa)",
|
||||
"nds_NL": "dolnosaština",
|
||||
"nl_BE": "vlámština",
|
||||
"pt_PT": "portugalština (Evropa)",
|
||||
"ro_MD": "moldavština",
|
||||
"sw_CD": "svahilština (Kongo)",
|
||||
"zh_Hans": "čínština (zjednodušená)"
|
||||
}
|
||||
}
|
||||
|
@ -24,7 +24,6 @@
|
||||
"ang": "Hen Saesneg",
|
||||
"anp": "Angika",
|
||||
"ar": "Arabeg",
|
||||
"ar_001": "Arabeg Modern Safonol",
|
||||
"arc": "Aramaeg",
|
||||
"arn": "Arawcaneg",
|
||||
"aro": "Araonaeg",
|
||||
@ -41,7 +40,6 @@
|
||||
"awa": "Awadhi",
|
||||
"ay": "Aymareg",
|
||||
"az": "Aserbaijaneg",
|
||||
"az_Arab": "Aserbaijaneg Deheuol",
|
||||
"ba": "Bashcorteg",
|
||||
"bal": "Balwtsi",
|
||||
"ban": "Balïeg",
|
||||
@ -101,8 +99,6 @@
|
||||
"dar": "Dargwa",
|
||||
"dav": "Taita",
|
||||
"de": "Almaeneg",
|
||||
"de_AT": "Almaeneg Awstria",
|
||||
"de_CH": "Almaeneg Safonol y Swistir",
|
||||
"dgr": "Dogrib",
|
||||
"din": "Dinca",
|
||||
"dje": "Sarmaeg",
|
||||
@ -122,16 +118,9 @@
|
||||
"el": "Groeg",
|
||||
"elx": "Elameg",
|
||||
"en": "Saesneg",
|
||||
"en_AU": "Saesneg Awstralia",
|
||||
"en_CA": "Saesneg Canada",
|
||||
"en_GB": "Saesneg Prydain",
|
||||
"en_US": "Saesneg America",
|
||||
"enm": "Saesneg Canol",
|
||||
"eo": "Esperanto",
|
||||
"es": "Sbaeneg",
|
||||
"es_419": "Sbaeneg America Ladin",
|
||||
"es_ES": "Sbaeneg Ewrop",
|
||||
"es_MX": "Sbaeneg Mecsico",
|
||||
"et": "Estoneg",
|
||||
"eu": "Basgeg",
|
||||
"ewo": "Ewondo",
|
||||
@ -146,8 +135,6 @@
|
||||
"fo": "Ffaröeg",
|
||||
"fon": "Fon",
|
||||
"fr": "Ffrangeg",
|
||||
"fr_CA": "Ffrangeg Canada",
|
||||
"fr_CH": "Ffrangeg y Swistir",
|
||||
"frc": "Ffrangeg Cajwn",
|
||||
"frm": "Ffrangeg Canol",
|
||||
"fro": "Hen Ffrangeg",
|
||||
@ -322,7 +309,6 @@
|
||||
"nb": "Norwyeg Bokmål",
|
||||
"nd": "Ndebele Gogleddol",
|
||||
"nds": "Almaeneg Isel",
|
||||
"nds_NL": "Sacsoneg Isel",
|
||||
"ne": "Nepaleg",
|
||||
"new": "Newaeg",
|
||||
"ng": "Ndonga",
|
||||
@ -330,7 +316,6 @@
|
||||
"niu": "Niuean",
|
||||
"njo": "Ao Naga",
|
||||
"nl": "Iseldireg",
|
||||
"nl_BE": "Fflemeg",
|
||||
"nmg": "Kwasio",
|
||||
"nn": "Norwyeg Nynorsk",
|
||||
"nnh": "Ngiemboon",
|
||||
@ -376,8 +361,6 @@
|
||||
"pro": "Hen Brofensaleg",
|
||||
"ps": "Pashto",
|
||||
"pt": "Portiwgeeg",
|
||||
"pt_BR": "Portiwgeeg Brasil",
|
||||
"pt_PT": "Portiwgeeg Ewrop",
|
||||
"qu": "Quechua",
|
||||
"quc": "K’iche’",
|
||||
"raj": "Rajasthaneg",
|
||||
@ -386,7 +369,6 @@
|
||||
"rm": "Románsh",
|
||||
"rn": "Rwndi",
|
||||
"ro": "Rwmaneg",
|
||||
"ro_MD": "Moldofeg",
|
||||
"rof": "Rombo",
|
||||
"rom": "Romani",
|
||||
"rtm": "Rotumaneg",
|
||||
@ -450,7 +432,6 @@
|
||||
"sux": "Swmereg",
|
||||
"sv": "Swedeg",
|
||||
"sw": "Swahili",
|
||||
"sw_CD": "Swahili’r Congo",
|
||||
"swb": "Comoreg",
|
||||
"syc": "Hen Syrieg",
|
||||
"syr": "Syrieg",
|
||||
@ -526,10 +507,31 @@
|
||||
"zea": "Zêlandeg",
|
||||
"zgh": "Tamaseit Safonol",
|
||||
"zh": "Tsieineeg",
|
||||
"zh_Hans": "Tsieineeg Symledig",
|
||||
"zh_Hant": "Tsieineeg Traddodiadol",
|
||||
"zu": "Swlw",
|
||||
"zun": "Swni",
|
||||
"zza": "Sasäeg"
|
||||
},
|
||||
"LocalizedNames": {
|
||||
"ar_001": "Arabeg Modern Safonol",
|
||||
"az_Arab": "Aserbaijaneg Deheuol",
|
||||
"de_AT": "Almaeneg Awstria",
|
||||
"de_CH": "Almaeneg Safonol y Swistir",
|
||||
"en_AU": "Saesneg Awstralia",
|
||||
"en_CA": "Saesneg Canada",
|
||||
"en_GB": "Saesneg Prydain",
|
||||
"en_US": "Saesneg America",
|
||||
"es_419": "Sbaeneg America Ladin",
|
||||
"es_ES": "Sbaeneg Ewrop",
|
||||
"es_MX": "Sbaeneg Mecsico",
|
||||
"fr_CA": "Ffrangeg Canada",
|
||||
"fr_CH": "Ffrangeg y Swistir",
|
||||
"nds_NL": "Sacsoneg Isel",
|
||||
"nl_BE": "Fflemeg",
|
||||
"pt_BR": "Portiwgeeg Brasil",
|
||||
"pt_PT": "Portiwgeeg Ewrop",
|
||||
"ro_MD": "Moldofeg",
|
||||
"sw_CD": "Swahili’r Congo",
|
||||
"zh_Hans": "Tsieineeg Symledig",
|
||||
"zh_Hant": "Tsieineeg Traddodiadol"
|
||||
}
|
||||
}
|
||||
|
@ -21,7 +21,6 @@
|
||||
"ang": "oldengelsk",
|
||||
"anp": "angika",
|
||||
"ar": "arabisk",
|
||||
"ar_001": "moderne standardarabisk",
|
||||
"arc": "aramæisk",
|
||||
"arn": "mapudungun",
|
||||
"arp": "arapaho",
|
||||
@ -100,8 +99,6 @@
|
||||
"dar": "dargwa",
|
||||
"dav": "taita",
|
||||
"de": "tysk",
|
||||
"de_AT": "østrigsk tysk",
|
||||
"de_CH": "schweizerhøjtysk",
|
||||
"del": "delaware",
|
||||
"den": "athapaskisk",
|
||||
"dgr": "dogrib",
|
||||
@ -124,16 +121,9 @@
|
||||
"el": "græsk",
|
||||
"elx": "elamitisk",
|
||||
"en": "engelsk",
|
||||
"en_AU": "australsk engelsk",
|
||||
"en_CA": "canadisk engelsk",
|
||||
"en_GB": "britisk engelsk",
|
||||
"en_US": "amerikansk engelsk",
|
||||
"enm": "middelengelsk",
|
||||
"eo": "esperanto",
|
||||
"es": "spansk",
|
||||
"es_419": "latinamerikansk spansk",
|
||||
"es_ES": "europæisk spansk",
|
||||
"es_MX": "mexicansk spansk",
|
||||
"et": "estisk",
|
||||
"eu": "baskisk",
|
||||
"ewo": "ewondo",
|
||||
@ -147,8 +137,6 @@
|
||||
"fo": "færøsk",
|
||||
"fon": "fon",
|
||||
"fr": "fransk",
|
||||
"fr_CA": "canadisk fransk",
|
||||
"fr_CH": "schweizisk fransk",
|
||||
"frc": "cajunfransk",
|
||||
"frm": "middelfransk",
|
||||
"fro": "oldfransk",
|
||||
@ -340,7 +328,6 @@
|
||||
"nia": "nias",
|
||||
"niu": "niueansk",
|
||||
"nl": "hollandsk",
|
||||
"nl_BE": "flamsk",
|
||||
"nmg": "kwasio",
|
||||
"nn": "nynorsk",
|
||||
"nnh": "ngiemboon",
|
||||
@ -381,8 +368,6 @@
|
||||
"pro": "oldprovencalsk",
|
||||
"ps": "pashto",
|
||||
"pt": "portugisisk",
|
||||
"pt_BR": "brasiliansk portugisisk",
|
||||
"pt_PT": "europæisk portugisisk",
|
||||
"qu": "quechua",
|
||||
"quc": "quiché",
|
||||
"raj": "rajasthani",
|
||||
@ -391,7 +376,6 @@
|
||||
"rm": "rætoromansk",
|
||||
"rn": "rundi",
|
||||
"ro": "rumænsk",
|
||||
"ro_MD": "moldovisk",
|
||||
"rof": "rombo",
|
||||
"rom": "romani",
|
||||
"ru": "russisk",
|
||||
@ -449,7 +433,6 @@
|
||||
"sux": "sumerisk",
|
||||
"sv": "svensk",
|
||||
"sw": "swahili",
|
||||
"sw_CD": "congolesisk swahili",
|
||||
"swb": "shimaore",
|
||||
"syc": "klassisk syrisk",
|
||||
"syr": "syrisk",
|
||||
@ -523,10 +506,29 @@
|
||||
"zen": "zenaga",
|
||||
"zgh": "tamazight",
|
||||
"zh": "kinesisk",
|
||||
"zh_Hans": "forenklet kinesisk",
|
||||
"zh_Hant": "traditionelt kinesisk",
|
||||
"zu": "zulu",
|
||||
"zun": "zuni",
|
||||
"zza": "zaza"
|
||||
},
|
||||
"LocalizedNames": {
|
||||
"ar_001": "moderne standardarabisk",
|
||||
"de_AT": "østrigsk tysk",
|
||||
"de_CH": "schweizerhøjtysk",
|
||||
"en_AU": "australsk engelsk",
|
||||
"en_CA": "canadisk engelsk",
|
||||
"en_GB": "britisk engelsk",
|
||||
"en_US": "amerikansk engelsk",
|
||||
"es_419": "latinamerikansk spansk",
|
||||
"es_ES": "europæisk spansk",
|
||||
"es_MX": "mexicansk spansk",
|
||||
"fr_CA": "canadisk fransk",
|
||||
"fr_CH": "schweizisk fransk",
|
||||
"nl_BE": "flamsk",
|
||||
"pt_BR": "brasiliansk portugisisk",
|
||||
"pt_PT": "europæisk portugisisk",
|
||||
"ro_MD": "moldovisk",
|
||||
"sw_CD": "congolesisk swahili",
|
||||
"zh_Hans": "forenklet kinesisk",
|
||||
"zh_Hant": "traditionelt kinesisk"
|
||||
}
|
||||
}
|
||||
|
@ -24,7 +24,6 @@
|
||||
"ang": "Altenglisch",
|
||||
"anp": "Angika",
|
||||
"ar": "Arabisch",
|
||||
"ar_001": "Modernes Hocharabisch",
|
||||
"arc": "Aramäisch",
|
||||
"arn": "Mapudungun",
|
||||
"aro": "Araona",
|
||||
@ -118,8 +117,6 @@
|
||||
"dar": "Darginisch",
|
||||
"dav": "Taita",
|
||||
"de": "Deutsch",
|
||||
"de_AT": "Österreichisches Deutsch",
|
||||
"de_CH": "Schweizer Hochdeutsch",
|
||||
"del": "Delaware",
|
||||
"den": "Slave",
|
||||
"dgr": "Dogrib",
|
||||
@ -373,7 +370,6 @@
|
||||
"nb": "Norwegisch Bokmål",
|
||||
"nd": "Nord-Ndebele",
|
||||
"nds": "Niederdeutsch",
|
||||
"nds_NL": "Niedersächsisch",
|
||||
"ne": "Nepalesisch",
|
||||
"new": "Newari",
|
||||
"ng": "Ndonga",
|
||||
@ -381,7 +377,6 @@
|
||||
"niu": "Niue",
|
||||
"njo": "Ao-Naga",
|
||||
"nl": "Niederländisch",
|
||||
"nl_BE": "Flämisch",
|
||||
"nmg": "Kwasio",
|
||||
"nn": "Norwegisch Nynorsk",
|
||||
"nnh": "Ngiemboon",
|
||||
@ -440,7 +435,6 @@
|
||||
"rm": "Rätoromanisch",
|
||||
"rn": "Rundi",
|
||||
"ro": "Rumänisch",
|
||||
"ro_MD": "Moldauisch",
|
||||
"rof": "Rombo",
|
||||
"rom": "Romani",
|
||||
"rtm": "Rotumanisch",
|
||||
@ -508,7 +502,6 @@
|
||||
"sux": "Sumerisch",
|
||||
"sv": "Schwedisch",
|
||||
"sw": "Suaheli",
|
||||
"sw_CD": "Kongo-Swahili",
|
||||
"swb": "Komorisch",
|
||||
"syc": "Altsyrisch",
|
||||
"syr": "Syrisch",
|
||||
@ -597,10 +590,19 @@
|
||||
"zen": "Zenaga",
|
||||
"zgh": "Tamazight",
|
||||
"zh": "Chinesisch",
|
||||
"zh_Hans": "Chinesisch (vereinfacht)",
|
||||
"zh_Hant": "Chinesisch (traditionell)",
|
||||
"zu": "Zulu",
|
||||
"zun": "Zuni",
|
||||
"zza": "Zaza"
|
||||
},
|
||||
"LocalizedNames": {
|
||||
"ar_001": "Modernes Hocharabisch",
|
||||
"de_AT": "Österreichisches Deutsch",
|
||||
"de_CH": "Schweizer Hochdeutsch",
|
||||
"nds_NL": "Niedersächsisch",
|
||||
"nl_BE": "Flämisch",
|
||||
"ro_MD": "Moldauisch",
|
||||
"sw_CD": "Kongo-Swahili",
|
||||
"zh_Hans": "Chinesisch (vereinfacht)",
|
||||
"zh_Hant": "Chinesisch (traditionell)"
|
||||
}
|
||||
}
|
||||
|
@ -1,7 +1,6 @@
|
||||
{
|
||||
"Version": "2.1.47.69",
|
||||
"Names": {
|
||||
"ar_001": "modernes Hocharabisch",
|
||||
"car": "karibische Sprache",
|
||||
"chb": "Chibcha-Sprache",
|
||||
"del": "Delawarisch",
|
||||
@ -14,5 +13,8 @@
|
||||
"pag": "Pangasinensisch",
|
||||
"sh": "Serbokroatisch",
|
||||
"szl": "Schlesisch"
|
||||
},
|
||||
"LocalizedNames": {
|
||||
"ar_001": "modernes Hocharabisch"
|
||||
}
|
||||
}
|
||||
|
@ -15,5 +15,6 @@
|
||||
"kmb": "Kimbundu-Sprache",
|
||||
"mus": "Muskogee-Sprache",
|
||||
"prg": "Altpreussisch"
|
||||
}
|
||||
},
|
||||
"LocalizedNames": []
|
||||
}
|
||||
|
@ -2,5 +2,6 @@
|
||||
"Version": "2.1.47.69",
|
||||
"Names": {
|
||||
"be": "Belarussisch"
|
||||
}
|
||||
},
|
||||
"LocalizedNames": []
|
||||
}
|
||||
|
@ -19,20 +19,12 @@
|
||||
"da": "ཌེ་ནིཤ་ཁ",
|
||||
"dak": "ད་ཀོ་ཏ་ཁ",
|
||||
"de": "ཇཱར་མཱན་ཁ",
|
||||
"de_AT": "ཨཱོས་ཊྲི་ཡཱན་ཇཱར་མཱན་ཁ",
|
||||
"de_CH": "སུ་ཡིས་གི་མཐོ་སའི་ཇཱར་མཱན་ཁ",
|
||||
"dv": "དི་བེ་ཧི་ཁ",
|
||||
"dz": "རྫོང་ཁ",
|
||||
"el": "གྲིཀ་ཁ",
|
||||
"en": "ཨིང་ལིཤ་ཁ",
|
||||
"en_AU": "ཨཱོས་ཊྲེ་ལི་ཡཱན་ཨིང་ལིཤ་ཁ",
|
||||
"en_CA": "ཀེ་ན་ཌི་ཡཱན་ཨིང་ལིཤ་ཁ",
|
||||
"en_GB": "བྲི་ཊིཤ་ཨིང་ལིཤ་ཁ",
|
||||
"en_US": "ཡུ་ཨེས་ཨིང་ལིཤ་ཁ",
|
||||
"eo": "ཨེས་པ་རཱན་ཏོ་ཁ",
|
||||
"es": "ཨིས་པེ་ནིཤ་ཁ",
|
||||
"es_419": "ལེ་ཊིན་ཨ་མེ་རི་ཀཱན་གི་ཨིས་པེ་ནིཤ་ཁ",
|
||||
"es_ES": "ཡུ་རོབ་ཀྱི་ཨིས་པེ་ནིཤ་ཁ",
|
||||
"et": "ཨེས་ཊོ་ནི་ཡཱན་ཁ",
|
||||
"eu": "བཱསཀ་ཁ",
|
||||
"fa": "པར་ཤི་ཡཱན་ཁ",
|
||||
@ -41,8 +33,6 @@
|
||||
"fj": "ཕི་ཇི་ཡཱན་ཁ",
|
||||
"fo": "ཕཱ་རོ་ཨིས་ཁ",
|
||||
"fr": "ཕྲནཅ་ཁ",
|
||||
"fr_CA": "ཀེ་ན་ཌི་ཡཱན་ཕྲནཅ་ཁ",
|
||||
"fr_CH": "སུ་ཡིས་ཕྲནཅ་ཁ",
|
||||
"fy": "ནུབ་ཕྼི་སི་ཡན་ཁ",
|
||||
"ga": "ཨཱའི་རིཤ་ཁ",
|
||||
"gl": "གལ་ཨིས་ཨི་ཡན་ཁ",
|
||||
@ -90,7 +80,6 @@
|
||||
"nb": "ནོར་ཝེ་ཇི་ཡཱན་བོཀ་མཱལ་ཁ",
|
||||
"ne": "ནེ་པཱལི་ཁ",
|
||||
"nl": "ཌཆ་ཁ",
|
||||
"nl_BE": "ཕྷེལེ་མིཤ་ཁ",
|
||||
"nn": "ནོར་ཝེ་ཇི་ཡཱན་ནོརསཀ་ཁ",
|
||||
"no": "ནོར་ཝི་ཇི་ཡན་ཁ",
|
||||
"or": "ཨོ་རི་ཡ་ཁ",
|
||||
@ -98,8 +87,6 @@
|
||||
"pl": "པོ་ལིཤ་ཁ",
|
||||
"ps": "པཱཤ་ཏོ་ཁ",
|
||||
"pt": "པོར་ཅུ་གིས་ཁ",
|
||||
"pt_BR": "བྲ་ཛི་ལི་ཡཱན་པོར་ཅུ་གིས་ཁ",
|
||||
"pt_PT": "ཨི་བེ་རི་ཡཱན་པོར་ཅུ་གིས་ཁ",
|
||||
"qu": "ཀྭེ་ཆུ་ཨ་ཁ",
|
||||
"rm": "རོ་མེ་ནིཤ་ཁ",
|
||||
"ro": "རོ་མེ་ནི་ཡཱན་ཁ",
|
||||
@ -134,8 +121,23 @@
|
||||
"xh": "ཞོ་ས་ཁ",
|
||||
"yo": "ཡོ་རུ་བ་ཁ",
|
||||
"zh": "རྒྱ་མི་ཁ",
|
||||
"zh_Hans": "རྒྱ་མི་ཁ་འཇམ་སངམ",
|
||||
"zh_Hant": "སྔ་དུས་ཀྱི་རྒྱ་མི་ཁ",
|
||||
"zu": "ཟུ་ལུ་ཁ"
|
||||
},
|
||||
"LocalizedNames": {
|
||||
"de_AT": "ཨཱོས་ཊྲི་ཡཱན་ཇཱར་མཱན་ཁ",
|
||||
"de_CH": "སུ་ཡིས་གི་མཐོ་སའི་ཇཱར་མཱན་ཁ",
|
||||
"en_AU": "ཨཱོས་ཊྲེ་ལི་ཡཱན་ཨིང་ལིཤ་ཁ",
|
||||
"en_CA": "ཀེ་ན་ཌི་ཡཱན་ཨིང་ལིཤ་ཁ",
|
||||
"en_GB": "བྲི་ཊིཤ་ཨིང་ལིཤ་ཁ",
|
||||
"en_US": "ཡུ་ཨེས་ཨིང་ལིཤ་ཁ",
|
||||
"es_419": "ལེ་ཊིན་ཨ་མེ་རི་ཀཱན་གི་ཨིས་པེ་ནིཤ་ཁ",
|
||||
"es_ES": "ཡུ་རོབ་ཀྱི་ཨིས་པེ་ནིཤ་ཁ",
|
||||
"fr_CA": "ཀེ་ན་ཌི་ཡཱན་ཕྲནཅ་ཁ",
|
||||
"fr_CH": "སུ་ཡིས་ཕྲནཅ་ཁ",
|
||||
"nl_BE": "ཕྷེལེ་མིཤ་ཁ",
|
||||
"pt_BR": "བྲ་ཛི་ལི་ཡཱན་པོར་ཅུ་གིས་ཁ",
|
||||
"pt_PT": "ཨི་བེ་རི་ཡཱན་པོར་ཅུ་གིས་ཁ",
|
||||
"zh_Hans": "རྒྱ་མི་ཁ་འཇམ་སངམ",
|
||||
"zh_Hant": "སྔ་དུས་ཀྱི་རྒྱ་མི་ཁ"
|
||||
}
|
||||
}
|
||||
|
@ -26,8 +26,6 @@
|
||||
"cy": "walesgbe",
|
||||
"da": "denmarkgbe",
|
||||
"de": "Germaniagbe",
|
||||
"de_AT": "Germaniagbe (Austria)",
|
||||
"de_CH": "Germaniagbe (Switzerland)",
|
||||
"dv": "divehgbe",
|
||||
"dz": "dzongkhagbe",
|
||||
"ebu": "embugbe",
|
||||
@ -35,15 +33,8 @@
|
||||
"efi": "efigbe",
|
||||
"el": "grisigbe",
|
||||
"en": "Yevugbe",
|
||||
"en_AU": "Yevugbe (Australia)",
|
||||
"en_CA": "Yevugbe (Canada)",
|
||||
"en_GB": "Yevugbe (Britain)",
|
||||
"en_US": "Yevugbe (America)",
|
||||
"eo": "esperantogbe",
|
||||
"es": "Spanishgbe",
|
||||
"es_419": "Spanishgbe (Latin America)",
|
||||
"es_ES": "Spanishgbe (Europe)",
|
||||
"es_MX": "Spanishgbe (Mexico)",
|
||||
"et": "estoniagbe",
|
||||
"eu": "basqugbe",
|
||||
"fa": "persiagbe",
|
||||
@ -51,8 +42,6 @@
|
||||
"fil": "filipingbe",
|
||||
"fj": "fidzigbe",
|
||||
"fr": "Fransegbe",
|
||||
"fr_CA": "Fransegbe (Canada)",
|
||||
"fr_CH": "Fransegbe (Switzerland)",
|
||||
"ga": "irelanɖgbe",
|
||||
"gl": "galatagbe",
|
||||
"gn": "guarangbe",
|
||||
@ -102,7 +91,6 @@
|
||||
"nd": "dziehe ndebelegbe",
|
||||
"ne": "nepalgbe",
|
||||
"nl": "Hollandgbe",
|
||||
"nl_BE": "Flemishgbe",
|
||||
"nn": "nɔweigbe ninɔsk",
|
||||
"no": "nɔweigbe",
|
||||
"nso": "dziehe sothogbe",
|
||||
@ -113,8 +101,6 @@
|
||||
"pl": "Polishgbe",
|
||||
"ps": "pashtogbe",
|
||||
"pt": "Portuguesegbe",
|
||||
"pt_BR": "Portuguesegbe (Brazil)",
|
||||
"pt_PT": "Portuguesegbe (Europe)",
|
||||
"qu": "kwetsuagbe",
|
||||
"rm": "romanshgbe",
|
||||
"rn": "rundigbe",
|
||||
@ -168,8 +154,24 @@
|
||||
"yo": "yorubagbe",
|
||||
"yue": "cantongbe",
|
||||
"zh": "Chinagbe",
|
||||
"zh_Hans": "tsainagbe",
|
||||
"zh_Hant": "blema tsainagbe",
|
||||
"zu": "zulugbe"
|
||||
},
|
||||
"LocalizedNames": {
|
||||
"de_AT": "Germaniagbe (Austria)",
|
||||
"de_CH": "Germaniagbe (Switzerland)",
|
||||
"en_AU": "Yevugbe (Australia)",
|
||||
"en_CA": "Yevugbe (Canada)",
|
||||
"en_GB": "Yevugbe (Britain)",
|
||||
"en_US": "Yevugbe (America)",
|
||||
"es_419": "Spanishgbe (Latin America)",
|
||||
"es_ES": "Spanishgbe (Europe)",
|
||||
"es_MX": "Spanishgbe (Mexico)",
|
||||
"fr_CA": "Fransegbe (Canada)",
|
||||
"fr_CH": "Fransegbe (Switzerland)",
|
||||
"nl_BE": "Flemishgbe",
|
||||
"pt_BR": "Portuguesegbe (Brazil)",
|
||||
"pt_PT": "Portuguesegbe (Europe)",
|
||||
"zh_Hans": "tsainagbe",
|
||||
"zh_Hant": "blema tsainagbe"
|
||||
}
|
||||
}
|
||||
|
@ -21,7 +21,6 @@
|
||||
"ang": "Παλαιά Αγγλικά",
|
||||
"anp": "Ανγκικά",
|
||||
"ar": "Αραβικά",
|
||||
"ar_001": "Σύγχρονα Τυπικά Αραβικά",
|
||||
"arc": "Αραμαϊκά",
|
||||
"arn": "Αραουκανικά",
|
||||
"arp": "Αραπάχο",
|
||||
@ -101,8 +100,6 @@
|
||||
"dar": "Ντάργκουα",
|
||||
"dav": "Τάιτα",
|
||||
"de": "Γερμανικά",
|
||||
"de_AT": "Γερμανικά Αυστρίας",
|
||||
"de_CH": "Υψηλά Γερμανικά Ελβετίας",
|
||||
"del": "Ντέλαγουερ",
|
||||
"den": "Σλαβικά",
|
||||
"dgr": "Ντόγκριμπ",
|
||||
@ -125,16 +122,9 @@
|
||||
"el": "Ελληνικά",
|
||||
"elx": "Ελαμάιτ",
|
||||
"en": "Αγγλικά",
|
||||
"en_AU": "Αγγλικά Αυστραλίας",
|
||||
"en_CA": "Αγγλικά Καναδά",
|
||||
"en_GB": "Αγγλικά Βρετανίας",
|
||||
"en_US": "Αγγλικά Αμερικής",
|
||||
"enm": "Μέσα Αγγλικά",
|
||||
"eo": "Εσπεράντο",
|
||||
"es": "Ισπανικά",
|
||||
"es_419": "Ισπανικά Λατινικής Αμερικής",
|
||||
"es_ES": "Ισπανικά Ευρώπης",
|
||||
"es_MX": "Ισπανικά Μεξικού",
|
||||
"et": "Εσθονικά",
|
||||
"eu": "Βασκικά",
|
||||
"ewo": "Εγουόντο",
|
||||
@ -148,8 +138,6 @@
|
||||
"fo": "Φεροϊκά",
|
||||
"fon": "Φον",
|
||||
"fr": "Γαλλικά",
|
||||
"fr_CA": "Γαλλικά Καναδά",
|
||||
"fr_CH": "Γαλλικά Ελβετίας",
|
||||
"frc": "Γαλλικά (Λουιζιάνα)",
|
||||
"frm": "Μέσα Γαλλικά",
|
||||
"fro": "Παλαιά Γαλλικά",
|
||||
@ -331,14 +319,12 @@
|
||||
"nb": "Νορβηγικά Μποκμάλ",
|
||||
"nd": "Βόρεια Ντεμπέλε",
|
||||
"nds": "Κάτω Γερμανικά",
|
||||
"nds_NL": "Κάτω Γερμανικά Ολλανδίας",
|
||||
"ne": "Νεπαλικά",
|
||||
"new": "Νεγουάρι",
|
||||
"ng": "Ντόνγκα",
|
||||
"nia": "Νίας",
|
||||
"niu": "Νιούε",
|
||||
"nl": "Ολλανδικά",
|
||||
"nl_BE": "Φλαμανδικά",
|
||||
"nmg": "Κβάσιο",
|
||||
"nn": "Νορβηγικά Νινόρσκ",
|
||||
"nnh": "Νγκιεμπούν",
|
||||
@ -379,8 +365,6 @@
|
||||
"pro": "Παλαιά Προβανσάλ",
|
||||
"ps": "Πάστο",
|
||||
"pt": "Πορτογαλικά",
|
||||
"pt_BR": "Πορτογαλικά Βραζιλίας",
|
||||
"pt_PT": "Πορτογαλικά Ευρώπης",
|
||||
"qu": "Κέτσουα",
|
||||
"quc": "Κιτσέ",
|
||||
"raj": "Ραζασθάνι",
|
||||
@ -389,7 +373,6 @@
|
||||
"rm": "Ρομανικά",
|
||||
"rn": "Ρούντι",
|
||||
"ro": "Ρουμανικά",
|
||||
"ro_MD": "Μολδαβικά",
|
||||
"rof": "Ρόμπο",
|
||||
"rom": "Ρομανί",
|
||||
"ru": "Ρωσικά",
|
||||
@ -447,7 +430,6 @@
|
||||
"sux": "Σουμερικά",
|
||||
"sv": "Σουηδικά",
|
||||
"sw": "Σουαχίλι",
|
||||
"sw_CD": "Κονγκό Σουαχίλι",
|
||||
"swb": "Κομοριανά",
|
||||
"syc": "Κλασικά Συριακά",
|
||||
"syr": "Συριακά",
|
||||
@ -521,10 +503,30 @@
|
||||
"zen": "Ζενάγκα",
|
||||
"zgh": "Τυπικά Ταμαζίτ Μαρόκου",
|
||||
"zh": "Κινεζικά",
|
||||
"zh_Hans": "Απλοποιημένα Κινεζικά",
|
||||
"zh_Hant": "Παραδοσιακά Κινεζικά",
|
||||
"zu": "Ζουλού",
|
||||
"zun": "Ζούνι",
|
||||
"zza": "Ζάζα"
|
||||
},
|
||||
"LocalizedNames": {
|
||||
"ar_001": "Σύγχρονα Τυπικά Αραβικά",
|
||||
"de_AT": "Γερμανικά Αυστρίας",
|
||||
"de_CH": "Υψηλά Γερμανικά Ελβετίας",
|
||||
"en_AU": "Αγγλικά Αυστραλίας",
|
||||
"en_CA": "Αγγλικά Καναδά",
|
||||
"en_GB": "Αγγλικά Βρετανίας",
|
||||
"en_US": "Αγγλικά Αμερικής",
|
||||
"es_419": "Ισπανικά Λατινικής Αμερικής",
|
||||
"es_ES": "Ισπανικά Ευρώπης",
|
||||
"es_MX": "Ισπανικά Μεξικού",
|
||||
"fr_CA": "Γαλλικά Καναδά",
|
||||
"fr_CH": "Γαλλικά Ελβετίας",
|
||||
"nds_NL": "Κάτω Γερμανικά Ολλανδίας",
|
||||
"nl_BE": "Φλαμανδικά",
|
||||
"pt_BR": "Πορτογαλικά Βραζιλίας",
|
||||
"pt_PT": "Πορτογαλικά Ευρώπης",
|
||||
"ro_MD": "Μολδαβικά",
|
||||
"sw_CD": "Κονγκό Σουαχίλι",
|
||||
"zh_Hans": "Απλοποιημένα Κινεζικά",
|
||||
"zh_Hant": "Παραδοσιακά Κινεζικά"
|
||||
}
|
||||
}
|
||||
|
@ -24,7 +24,6 @@
|
||||
"ang": "Old English",
|
||||
"anp": "Angika",
|
||||
"ar": "Arabic",
|
||||
"ar_001": "Modern Standard Arabic",
|
||||
"arc": "Aramaic",
|
||||
"arn": "Mapuche",
|
||||
"aro": "Araona",
|
||||
@ -119,8 +118,6 @@
|
||||
"dar": "Dargwa",
|
||||
"dav": "Taita",
|
||||
"de": "German",
|
||||
"de_AT": "Austrian German",
|
||||
"de_CH": "Swiss High German",
|
||||
"del": "Delaware",
|
||||
"den": "Slave",
|
||||
"dgr": "Dogrib",
|
||||
@ -145,23 +142,15 @@
|
||||
"el": "Greek",
|
||||
"elx": "Elamite",
|
||||
"en": "English",
|
||||
"en_AU": "Australian English",
|
||||
"en_CA": "Canadian English",
|
||||
"en_GB": "British English",
|
||||
"en_US": "American English",
|
||||
"enm": "Middle English",
|
||||
"eo": "Esperanto",
|
||||
"es": "Spanish",
|
||||
"es_419": "Latin American Spanish",
|
||||
"es_ES": "European Spanish",
|
||||
"es_MX": "Mexican Spanish",
|
||||
"esu": "Central Yupik",
|
||||
"et": "Estonian",
|
||||
"eu": "Basque",
|
||||
"ewo": "Ewondo",
|
||||
"ext": "Extremaduran",
|
||||
"fa": "Persian",
|
||||
"fa_AF": "Dari",
|
||||
"fan": "Fang",
|
||||
"fat": "Fanti",
|
||||
"ff": "Fulah",
|
||||
@ -172,8 +161,6 @@
|
||||
"fo": "Faroese",
|
||||
"fon": "Fon",
|
||||
"fr": "French",
|
||||
"fr_CA": "Canadian French",
|
||||
"fr_CH": "Swiss French",
|
||||
"frc": "Cajun French",
|
||||
"frm": "Middle French",
|
||||
"fro": "Old French",
|
||||
@ -384,7 +371,6 @@
|
||||
"nb": "Norwegian Bokmål",
|
||||
"nd": "North Ndebele",
|
||||
"nds": "Low German",
|
||||
"nds_NL": "Low Saxon",
|
||||
"ne": "Nepali",
|
||||
"new": "Newari",
|
||||
"ng": "Ndonga",
|
||||
@ -392,7 +378,6 @@
|
||||
"niu": "Niuean",
|
||||
"njo": "Ao Naga",
|
||||
"nl": "Dutch",
|
||||
"nl_BE": "Flemish",
|
||||
"nmg": "Kwasio",
|
||||
"nn": "Norwegian Nynorsk",
|
||||
"nnh": "Ngiemboon",
|
||||
@ -440,8 +425,6 @@
|
||||
"pro": "Old Provençal",
|
||||
"ps": "Pashto",
|
||||
"pt": "Portuguese",
|
||||
"pt_BR": "Brazilian Portuguese",
|
||||
"pt_PT": "European Portuguese",
|
||||
"qu": "Quechua",
|
||||
"quc": "Kʼicheʼ",
|
||||
"qug": "Chimborazo Highland Quichua",
|
||||
@ -453,7 +436,6 @@
|
||||
"rm": "Romansh",
|
||||
"rn": "Rundi",
|
||||
"ro": "Romanian",
|
||||
"ro_MD": "Moldavian",
|
||||
"rof": "Rombo",
|
||||
"rom": "Romany",
|
||||
"rtm": "Rotuman",
|
||||
@ -509,7 +491,6 @@
|
||||
"sog": "Sogdien",
|
||||
"sq": "Albanian",
|
||||
"sr": "Serbian",
|
||||
"sr_ME": "Montenegrin",
|
||||
"srn": "Sranan Tongo",
|
||||
"srr": "Serer",
|
||||
"ss": "Swati",
|
||||
@ -522,7 +503,6 @@
|
||||
"sux": "Sumerian",
|
||||
"sv": "Swedish",
|
||||
"sw": "Swahili",
|
||||
"sw_CD": "Congo Swahili",
|
||||
"swb": "Comorian",
|
||||
"syc": "Classical Syriac",
|
||||
"syr": "Syriac",
|
||||
@ -611,10 +591,32 @@
|
||||
"zen": "Zenaga",
|
||||
"zgh": "Standard Moroccan Tamazight",
|
||||
"zh": "Chinese",
|
||||
"zh_Hans": "Simplified Chinese",
|
||||
"zh_Hant": "Traditional Chinese",
|
||||
"zu": "Zulu",
|
||||
"zun": "Zuni",
|
||||
"zza": "Zaza"
|
||||
},
|
||||
"LocalizedNames": {
|
||||
"ar_001": "Modern Standard Arabic",
|
||||
"de_AT": "Austrian German",
|
||||
"de_CH": "Swiss High German",
|
||||
"en_AU": "Australian English",
|
||||
"en_CA": "Canadian English",
|
||||
"en_GB": "British English",
|
||||
"en_US": "American English",
|
||||
"es_419": "Latin American Spanish",
|
||||
"es_ES": "European Spanish",
|
||||
"es_MX": "Mexican Spanish",
|
||||
"fa_AF": "Dari",
|
||||
"fr_CA": "Canadian French",
|
||||
"fr_CH": "Swiss French",
|
||||
"nds_NL": "Low Saxon",
|
||||
"nl_BE": "Flemish",
|
||||
"pt_BR": "Brazilian Portuguese",
|
||||
"pt_PT": "European Portuguese",
|
||||
"ro_MD": "Moldavian",
|
||||
"sr_ME": "Montenegrin",
|
||||
"sw_CD": "Congo Swahili",
|
||||
"zh_Hans": "Simplified Chinese",
|
||||
"zh_Hant": "Traditional Chinese"
|
||||
}
|
||||
}
|
||||
|
@ -2,9 +2,11 @@
|
||||
"Version": "2.1.48.43",
|
||||
"Names": {
|
||||
"bn": "Bengali",
|
||||
"en_US": "United States English",
|
||||
"frc": "frc",
|
||||
"lou": "lou",
|
||||
"lou": "lou"
|
||||
},
|
||||
"LocalizedNames": {
|
||||
"en_US": "United States English",
|
||||
"ro_MD": "Moldovan"
|
||||
}
|
||||
}
|
||||
|
@ -3,7 +3,9 @@
|
||||
"Names": {
|
||||
"bn": "Bengali",
|
||||
"mfe": "Mauritian",
|
||||
"ro_MD": "Moldovan",
|
||||
"tvl": "Tuvaluan"
|
||||
},
|
||||
"LocalizedNames": {
|
||||
"ro_MD": "Moldovan"
|
||||
}
|
||||
}
|
||||
|
@ -1,6 +1,7 @@
|
||||
{
|
||||
"Version": "2.1.47.86",
|
||||
"Names": {
|
||||
"Names": [],
|
||||
"LocalizedNames": {
|
||||
"nds_NL": "West Low German"
|
||||
}
|
||||
}
|
||||
|
@ -2,5 +2,6 @@
|
||||
"Version": "2.1.49.14",
|
||||
"Names": {
|
||||
"bn": "Bengali"
|
||||
}
|
||||
},
|
||||
"LocalizedNames": []
|
||||
}
|
||||
|
@ -2,5 +2,6 @@
|
||||
"Version": "2.1.47.86",
|
||||
"Names": {
|
||||
"mi": "Māori"
|
||||
}
|
||||
},
|
||||
"LocalizedNames": []
|
||||
}
|
||||
|
@ -98,8 +98,6 @@
|
||||
"pl": "pola",
|
||||
"ps": "paŝtoa",
|
||||
"pt": "portugala",
|
||||
"pt_BR": "brazilportugala",
|
||||
"pt_PT": "eŭropportugala",
|
||||
"qu": "keĉua",
|
||||
"rm": "romanĉa",
|
||||
"rn": "burunda",
|
||||
@ -149,8 +147,12 @@
|
||||
"yo": "joruba",
|
||||
"za": "ĝuanga",
|
||||
"zh": "ĉina",
|
||||
"zh_Hans": "ĉina simpligita",
|
||||
"zh_Hant": "ĉina tradicia",
|
||||
"zu": "zulua"
|
||||
},
|
||||
"LocalizedNames": {
|
||||
"pt_BR": "brazilportugala",
|
||||
"pt_PT": "eŭropportugala",
|
||||
"zh_Hans": "ĉina simpligita",
|
||||
"zh_Hant": "ĉina tradicia"
|
||||
}
|
||||
}
|
||||
|
@ -21,7 +21,6 @@
|
||||
"ang": "inglés antiguo",
|
||||
"anp": "angika",
|
||||
"ar": "árabe",
|
||||
"ar_001": "árabe estándar moderno",
|
||||
"arc": "arameo",
|
||||
"arn": "mapuche",
|
||||
"arp": "arapaho",
|
||||
@ -100,8 +99,6 @@
|
||||
"dar": "dargva",
|
||||
"dav": "taita",
|
||||
"de": "alemán",
|
||||
"de_AT": "alemán austríaco",
|
||||
"de_CH": "alto alemán suizo",
|
||||
"del": "delaware",
|
||||
"den": "slave",
|
||||
"dgr": "dogrib",
|
||||
@ -124,16 +121,9 @@
|
||||
"el": "griego",
|
||||
"elx": "elamita",
|
||||
"en": "inglés",
|
||||
"en_AU": "inglés australiano",
|
||||
"en_CA": "inglés canadiense",
|
||||
"en_GB": "inglés británico",
|
||||
"en_US": "inglés estadounidense",
|
||||
"enm": "inglés medio",
|
||||
"eo": "esperanto",
|
||||
"es": "español",
|
||||
"es_419": "español latinoamericano",
|
||||
"es_ES": "español de España",
|
||||
"es_MX": "español de México",
|
||||
"et": "estonio",
|
||||
"eu": "euskera",
|
||||
"ewo": "ewondo",
|
||||
@ -147,8 +137,6 @@
|
||||
"fo": "feroés",
|
||||
"fon": "fon",
|
||||
"fr": "francés",
|
||||
"fr_CA": "francés canadiense",
|
||||
"fr_CH": "francés suizo",
|
||||
"frc": "francés cajún",
|
||||
"frm": "francés medio",
|
||||
"fro": "francés antiguo",
|
||||
@ -334,14 +322,12 @@
|
||||
"nb": "noruego bokmal",
|
||||
"nd": "ndebele septentrional",
|
||||
"nds": "bajo alemán",
|
||||
"nds_NL": "bajo sajón",
|
||||
"ne": "nepalí",
|
||||
"new": "newari",
|
||||
"ng": "ndonga",
|
||||
"nia": "nias",
|
||||
"niu": "niueano",
|
||||
"nl": "neerlandés",
|
||||
"nl_BE": "flamenco",
|
||||
"nmg": "kwasio",
|
||||
"nn": "noruego nynorsk",
|
||||
"nnh": "ngiemboon",
|
||||
@ -382,8 +368,6 @@
|
||||
"pro": "provenzal antiguo",
|
||||
"ps": "pastún",
|
||||
"pt": "portugués",
|
||||
"pt_BR": "portugués de Brasil",
|
||||
"pt_PT": "portugués de Portugal",
|
||||
"qu": "quechua",
|
||||
"quc": "quiché",
|
||||
"raj": "rajasthani",
|
||||
@ -392,7 +376,6 @@
|
||||
"rm": "romanche",
|
||||
"rn": "kirundi",
|
||||
"ro": "rumano",
|
||||
"ro_MD": "moldavo",
|
||||
"rof": "rombo",
|
||||
"rom": "romaní",
|
||||
"ru": "ruso",
|
||||
@ -450,7 +433,6 @@
|
||||
"sux": "sumerio",
|
||||
"sv": "sueco",
|
||||
"sw": "suajili",
|
||||
"sw_CD": "suajili del Congo",
|
||||
"swb": "comorense",
|
||||
"syc": "siríaco clásico",
|
||||
"syr": "siriaco",
|
||||
@ -524,10 +506,30 @@
|
||||
"zen": "zenaga",
|
||||
"zgh": "tamazight estándar marroquí",
|
||||
"zh": "chino",
|
||||
"zh_Hans": "chino simplificado",
|
||||
"zh_Hant": "chino tradicional",
|
||||
"zu": "zulú",
|
||||
"zun": "zuñi",
|
||||
"zza": "zazaki"
|
||||
},
|
||||
"LocalizedNames": {
|
||||
"ar_001": "árabe estándar moderno",
|
||||
"de_AT": "alemán austríaco",
|
||||
"de_CH": "alto alemán suizo",
|
||||
"en_AU": "inglés australiano",
|
||||
"en_CA": "inglés canadiense",
|
||||
"en_GB": "inglés británico",
|
||||
"en_US": "inglés estadounidense",
|
||||
"es_419": "español latinoamericano",
|
||||
"es_ES": "español de España",
|
||||
"es_MX": "español de México",
|
||||
"fr_CA": "francés canadiense",
|
||||
"fr_CH": "francés suizo",
|
||||
"nds_NL": "bajo sajón",
|
||||
"nl_BE": "flamenco",
|
||||
"pt_BR": "portugués de Brasil",
|
||||
"pt_PT": "portugués de Portugal",
|
||||
"ro_MD": "moldavo",
|
||||
"sw_CD": "suajili del Congo",
|
||||
"zh_Hans": "chino simplificado",
|
||||
"zh_Hant": "chino tradicional"
|
||||
}
|
||||
}
|
||||
|
@ -25,7 +25,6 @@
|
||||
"sma": "sami del sur",
|
||||
"st": "sesotho del sur",
|
||||
"sw": "swahili",
|
||||
"sw_CD": "swahili (Congo)",
|
||||
"syr": "siríaco",
|
||||
"tet": "tetun",
|
||||
"tyv": "tuvano",
|
||||
@ -35,5 +34,8 @@
|
||||
"wuu": "wu",
|
||||
"xal": "calmuco",
|
||||
"zun": "zuni"
|
||||
},
|
||||
"LocalizedNames": {
|
||||
"sw_CD": "swahili (Congo)"
|
||||
}
|
||||
}
|
||||
|
@ -11,9 +11,11 @@
|
||||
"pa": "punyabí",
|
||||
"ss": "siswati",
|
||||
"sw": "suajili",
|
||||
"sw_CD": "suajili del Congo",
|
||||
"tn": "setswana",
|
||||
"wo": "wolof",
|
||||
"zgh": "tamazight marroquí estándar"
|
||||
},
|
||||
"LocalizedNames": {
|
||||
"sw_CD": "suajili del Congo"
|
||||
}
|
||||
}
|
||||
|
@ -11,9 +11,11 @@
|
||||
"pa": "punyabí",
|
||||
"ss": "siswati",
|
||||
"sw": "suajili",
|
||||
"sw_CD": "suajili del Congo",
|
||||
"tn": "setswana",
|
||||
"wo": "wolof",
|
||||
"zgh": "tamazight marroquí estándar"
|
||||
},
|
||||
"LocalizedNames": {
|
||||
"sw_CD": "suajili del Congo"
|
||||
}
|
||||
}
|
||||
|
@ -11,9 +11,11 @@
|
||||
"pa": "punyabí",
|
||||
"ss": "siswati",
|
||||
"sw": "suajili",
|
||||
"sw_CD": "suajili del Congo",
|
||||
"tn": "setswana",
|
||||
"wo": "wolof",
|
||||
"zgh": "tamazight marroquí estándar"
|
||||
},
|
||||
"LocalizedNames": {
|
||||
"sw_CD": "suajili del Congo"
|
||||
}
|
||||
}
|
||||
|
@ -11,9 +11,11 @@
|
||||
"pa": "punyabí",
|
||||
"ss": "siswati",
|
||||
"sw": "suajili",
|
||||
"sw_CD": "suajili del Congo",
|
||||
"tn": "setswana",
|
||||
"wo": "wolof",
|
||||
"zgh": "tamazight marroquí estándar"
|
||||
},
|
||||
"LocalizedNames": {
|
||||
"sw_CD": "suajili del Congo"
|
||||
}
|
||||
}
|
||||
|
@ -11,9 +11,11 @@
|
||||
"pa": "punyabí",
|
||||
"ss": "siswati",
|
||||
"sw": "suajili",
|
||||
"sw_CD": "suajili del Congo",
|
||||
"tn": "setswana",
|
||||
"wo": "wolof",
|
||||
"zgh": "tamazight marroquí estándar"
|
||||
},
|
||||
"LocalizedNames": {
|
||||
"sw_CD": "suajili del Congo"
|
||||
}
|
||||
}
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user