{
	"$schema": "http://json-schema.org/draft-04/schema#",
	"type": "object",
	"definitions": {
		"configurations": {
			"type": "array",
			"items": {
				"type": "object",
				"required": [
					"name"
				],
				"properties": {
					"name": {
						"markdownDescription": "Identyfikator konfiguracji. `Mac`, `Linux` oraz `Win32` są specjalnymi identyfikatorami dla konfiguracji, które zostaną wybrane automatycznie na tych platformach, aczkolwiek ten identyfikator może być dowolny.",
						"descriptionHint": "Markdown text between `` should not be translated or localized (they represent literal text) and the capitalization, spacing, and punctuation (including the ``) should not be altered.",
						"type": "string"
					},
					"compilerPath": {
						"markdownDescription": "Pełna ścieżka używanego kompilatora, na przykład `/usr/bin/gcc`, umożliwiająca dokładniejsze działanie funkcji IntelliSense.",
						"descriptionHint": "Markdown text between `` should not be translated or localized (they represent literal text) and the capitalization, spacing, and punctuation (including the ``) should not be altered.",
						"type": [
							"null",
							"string"
						]
					},
					"compilerArgs": {
						"markdownDescription": "Argumenty kompilatora do modyfikowania użytych dołączeń lub definicji, np. `-nostdinc++`, `-m32` itp. Argumenty, które przyjmują dodatkowe argumenty rozdzielone spacjami, powinny być wprowadzane jako osobne argumenty w tablicy, na przykład dla argumentu `--sysroot <arg>` należy użyć `\"--sysroot\", \"<arg>\"`.",
						"descriptionHint": "Markdown text between `` should not be translated or localized (they represent literal text) and the capitalization, spacing, and punctuation (including the ``) should not be altered, except potentially the `arg` text which is a placeholder and not literal text, i.e. an abbreviation for `argument`.",
						"type": "array",
						"items": {
							"type": "string"
						}
					},
					"cStandard": {
						"description": "Wersja standardu języka C, która ma być używana na potrzeby funkcji IntelliSense. Uwaga: standardy GNU są używane tylko do wykonywania zapytań względem kompilatora w celu pobrania dyrektyw define systemu GNU, a funkcja IntelliSense będzie emulować odpowiednią wersję standardu języka C.",
						"type": "string",
						"enum": [
							"c89",
							"c99",
							"c11",
							"c17",
							"c23",
							"gnu89",
							"gnu99",
							"gnu11",
							"gnu17",
							"gnu23",
							"${default}"
						]
					},
					"cppStandard": {
						"description": "Wersja standardu języka C++, która ma być używana na potrzeby funkcji IntelliSense. Uwaga: standardy GNU są używane tylko do wykonywania zapytań względem kompilatora w celu pobrania dyrektyw define systemu GNU, a funkcja IntelliSense będzie emulować odpowiednią wersję standardu języka C++.",
						"type": "string",
						"enum": [
							"c++98",
							"c++03",
							"c++11",
							"c++14",
							"c++17",
							"c++20",
							"c++23",
							"c++26",
							"gnu++98",
							"gnu++03",
							"gnu++11",
							"gnu++14",
							"gnu++17",
							"gnu++20",
							"gnu++23",
							"gnu++26",
							"${default}"
						]
					},
					"compileCommands": {
						"oneOf": [
							{
								"type": "string"
							},
							{
								"type": "array",
								"items": {
									"type": "string"
								},
								"uniqueItems": true
							}
						],
						"markdownDescription": "Pełna ścieżka lub lista pełnych ścieżek do plików `compile_commands.json` dla obszaru roboczego.",
						"descriptionHint": "Markdown text between `` should not be translated or localized (they represent literal text) and the capitalization, spacing, and punctuation (including the ``) should not be altered."
					},
					"includePath": {
						"markdownDescription": "Lista ścieżek na potrzeby aparatu funkcji IntelliSense, która ma być używana podczas wyszukiwania dołączanych nagłówków. Wyszukiwanie w tych ścieżkach nie jest rekurencyjne. Uściślij za pomocą znaku `**`, aby wskazać wyszukiwanie rekurencyjne. Na przykład wyrażenie `${workspaceFolder}/**` powoduje przeszukiwanie wszystkich podkatalogów, podczas gdy wyrażenie `${workspaceFolder}` tego nie robi. Zazwyczaj nie powinno to zawierać elementów dołączanych systemu; zamiast tego ustaw `C_Cpp.default.compilerPath`.",
						"descriptionHint": "Markdown text between `` should not be translated or localized (they represent literal text) and the capitalization, spacing, and punctuation (including the ``) should not be altered.",
						"type": "array",
						"items": {
							"type": "string"
						}
					},
					"macFrameworkPath": {
						"description": "Lista ścieżek, których aparat IntelliSense ma używać podczas wyszukiwania dołączanych nagłówków ze struktur na komputerach Mac. Obsługiwane tylko w konfiguracji dla komputerów Mac.",
						"type": "array",
						"items": {
							"type": "string"
						}
					},
					"windowsSdkVersion": {
						"markdownDescription": "Wersja ścieżki dołączania zestawu Microsoft Windows SDK do użycia w systemie Windows, np. `10.0.17134.0`.",
						"descriptionHint": "Markdown text between `` should not be translated or localized (they represent literal text) and the capitalization, spacing, and punctuation (including the ``) should not be altered.",
						"type": "string",
						"pattern": "^\\d{2}\\.\\d{1}\\.\\d{5}\\.\\d{1}$|^8\\.1$"
					},
					"dotConfig": {
						"description": "Ścieżka do pliku .config utworzonego przez system Kconfig. System Kconfig generuje plik ze wszystkimi definicjami na potrzeby kompilowania projektu. Przykłady projektów używających systemu Kconfig to jądro systemu Linux i system NuttX RTOS.",
						"type": "string"
					},
					"defines": {
						"markdownDescription": "Lista definicji preprocesora na potrzeby aparatu funkcji IntelliSense, które mają być używane do analizowania plików. Opcjonalnie można użyć operatora `=`, aby ustawić wartość, np. `VERSION=1`.",
						"descriptionHint": "Markdown text between `` should not be translated or localized (they represent literal text) and the capitalization, spacing, and punctuation (including the ``) should not be altered.",
						"type": "array",
						"items": {
							"type": "string"
						}
					},
					"intelliSenseMode": {
						"markdownDescription": "Tryb funkcji IntelliSense umożliwiający użycie tych map na wariancie platformy lub architektury programu MSVC, gcc lub Clang. Jeśli nie jest to ustawione, lub jeśli jest ustawione na wartość `${default}`, rozszerzenie wybierze wartość domyślną dla danej platformy. Wprzypadku systemu Windows wartością domyślną jest `windows-msvc-x64`, dla Linuksa – `linux-gcc-x64`, a dla systemu macOS – `macos-clang-x64`. Tryby funkcji IntelliSense, które określają jedynie warianty `<kompilator>-<architektura>` (np. `gcc-x64`), są trybami przestarzałymi i są one automatycznie konwertowane na warianty `<platforma>-<kompilator>-<architektura>` na podstawie platformy hosta.",
						"descriptionHint": "Uses of words 'platform', 'compiler', and 'architecture' are meant to be descriptive placeholders for literal values, so they should be translated, but without changing the surrounding `<>-<>` symbols. All other text inside `` should not be translated or localized (they represent literal text) and the capitalization, spacing, and punctuation (including the ``) should not be altered.",
						"type": "string",
						"enum": [
							"macos-clang-x86",
							"macos-clang-x64",
							"macos-clang-arm",
							"macos-clang-arm64",
							"macos-gcc-x86",
							"macos-gcc-x64",
							"macos-gcc-arm",
							"macos-gcc-arm64",
							"linux-clang-x86",
							"linux-clang-x64",
							"linux-clang-arm",
							"linux-clang-arm64",
							"linux-gcc-x86",
							"linux-gcc-x64",
							"linux-gcc-arm",
							"linux-gcc-arm64",
							"windows-clang-x86",
							"windows-clang-x64",
							"windows-clang-arm",
							"windows-clang-arm64",
							"windows-gcc-x86",
							"windows-gcc-x64",
							"windows-gcc-arm",
							"windows-gcc-arm64",
							"windows-msvc-x86",
							"windows-msvc-x64",
							"windows-msvc-arm",
							"windows-msvc-arm64",
							"clang-x86",
							"clang-x64",
							"clang-arm",
							"clang-arm64",
							"gcc-x86",
							"gcc-x64",
							"gcc-arm",
							"gcc-arm64",
							"msvc-x86",
							"msvc-x64",
							"msvc-arm",
							"msvc-arm64",
							"${default}"
						]
					},
					"forcedInclude": {
						"description": "Lista plików, które powinny być dołączane przed wszelkimi dołączanymi plikami w jednostce translacji.",
						"type": "array",
						"items": {
							"type": "string"
						}
					},
					"configurationProvider": {
						"description": "Identyfikator rozszerzenia programu VS Code, które może udostępnić informacje o konfiguracji funkcji IntelliSense dla plików źródłowych.",
						"type": "string"
					},
					"mergeConfigurations": {
						"markdownDescription": "Ustaw wartość `true`, aby scalić elementy `includePath`, `defines`, `forcedInclude` i `browse.path` z elementami otrzymanymi od dostawcy konfiguracji.",
						"descriptionHint": "{Locked=\"`true`\"} {Locked=\"`includePath`\"} {Locked=\"`defines`\"} {Locked=\"`forcedInclude`\"} {Locked=\"`browse.path`\"}",
						"type": "boolean"
					},
					"browse": {
						"type": "object",
						"properties": {
							"limitSymbolsToIncludedHeaders": {
								"markdownDescription": "Ustaw na wartość `true`, aby przetwarzać tylko pliki bezpośrednio lub pośrednio dołączone w postaci nagłówków. Ustaw na wartość `false`, aby przetwarzać wszystkie pliki w określonych ścieżkach dołączania.",
								"descriptionHint": "Markdown text between `` should not be translated or localized (they represent literal text) and the capitalization, spacing, and punctuation (including the ``) should not be altered.",
								"type": [
									"boolean",
									"string"
								]
							},
							"databaseFilename": {
								"description": "Ścieżka do generowanej bazy danych symboli. Jeśli zostanie określona ścieżka względna, będzie to ścieżka względem domyślnej lokalizacji magazynowania obszaru roboczego.",
								"type": "string"
							},
							"path": {
								"markdownDescription": "Lista ścieżek, która ma być używana do indeksowania i analizowania symboli obszaru roboczego (używana przez funkcje „Przejdź do definicji”, „Znajdź wszystkie odwołania”). Wyszukiwanie na tych ścieżkach jest domyślnie rekursywne. Za pomocą znaku `*` możesz określić wyszukiwanie jako nierekursywne. Na przykład `${workspaceFolder}` przeszukuje wszystkie podkatalogi, podczas gdy `${workspaceFolder}/*` już tego nie robi.",
								"descriptionHint": "Text in '' is a command and should be translated in the same way that VS Code itself translates it. Markdown text between `` should not be translated or localized (they represent literal text) and the capitalization, spacing, and punctuation (including the ``) should not be altered.",
								"type": "array",
								"items": {
									"type": "string"
								}
							}
						},
						"additionalProperties": false
					},
					"recursiveIncludes": {
						"type": "object",
						"properties": {
							"reduce": {
								"markdownDescription": "Ustaw na wartość `always`, aby zawsze zmniejszać liczbę ścieżek rekursywnego dołączania dostarczanych do funkcji IntelliSense tylko do tych ścieżek, do których obecnie odwołują się instrukcje #include. Wymaga to najpierw przeanalizowania plików w celu określenia, które nagłówki są dołączane. Ustaw na wartość `never`, aby zapewnić wszystkie ścieżki rekursywnego dołączania do funkcji IntelliSense. Zmniejszenie liczby ścieżek rekursywnego dołączania może zwiększyć wydajność funkcji IntelliSense w przypadku dużej liczby ścieżek rekursywnego dołączania. Brak zmniejszenia liczby ścieżek rekursywnego dołączania może zwiększyć wydajność funkcji IntelliSense, unikając konieczności analizowania plików w celu określenia, które ścieżki dołączane należy podać. Wartość `default` służy obecnie do zmniejszania liczby ścieżek rekursywnego dołączania dostarczonych do funkcji IntelliSense.",
								"descriptionHint": "Markdown text between `` should not be translated or localized (they represent literal text) and the capitalization, spacing, and punctuation (including the ``) should not be altered.",
								"type": "string",
								"enum": [
									"always",
									"never",
									"default",
									"${default}"
								]
							},
							"priority": {
								"markdownDescription": "Priorytet ścieżek rekursywnego dołączania. W przypadku ustawienia na wartość `beforeSystemIncludes` ścieżki rekursywnego dołączania będą przeszukiwane przed ścieżkami systemowego dołączania. W przypadku ustawienia na wartość `afterSystemIncludes` ścieżki rekursywnego dołączania będą przeszukiwane po ścieżkach systemowego dołączania. Wartość `beforeSystemIncludes` będzie dokładniej odzwierciedlać kolejność wyszukiwania kompilatora, podczas gdy wartość `afterSystemIncludes` może przyczynić się do zwiększenia wydajności.",
								"descriptionHint": "Markdown text between `` should not be translated or localized (they represent literal text) and the capitalization, spacing, and punctuation (including the ``) should not be altered.",
								"type": "string",
								"enum": [
									"beforeSystemIncludes",
									"afterSystemIncludes",
									"${default}"
								]
							},
							"order": {
								"markdownDescription": "Kolejność przeszukiwania podkatalogów rekursywnych dołączeń.",
								"type": "string",
								"enum": [
									"depthFirst",
									"breadthFirst",
									"${default}"
								]
							}
						},
						"additionalProperties": false
					},
					"customConfigurationVariables": {
						"type": "object",
						"markdownDescription": "Zmienne niestandardowe, względem których można wykonywać zapytania za pomocą polecenia `${cpptools:activeConfigCustomVariable}`, aby użyć ich na potrzeby zmiennych wejściowych w plikach `launch.json` lub `tasks.json`.",
						"descriptionHint": "Markdown text between `` should not be translated or localized (they represent literal text) and the capitalization, spacing, and punctuation (including the ``) should not be altered.",
						"patternProperties": {
							"(^.+$)": {
								"type": "string"
							}
						},
						"additionalProperties": false
					}
				},
				"additionalProperties": false
			}
		},
		"env": {
			"type": "object",
			"markdownDescription": "Zmienne niestandardowe, których można używać ponownie w dowolnym miejscu tego pliku przy użyciu składni `${zmienna}` lub `${env:zmienna}`.",
			"descriptionHint": "The word 'variable' within curly braces should be translated. The \"env\" should not be translated, and the capitalization, spacing, and punctuation (\"${:}\", including the ``) should be preserved.",
			"patternProperties": {
				"(?!^workspaceFolder$)(?!^workspaceRoot$)(?!^workspaceFolderBasename$)(?!^execPath$)(?!^pathSeparator$)(?!^default$)(^.+$)": {
					"oneOf": [
						{
							"type": "string"
						},
						{
							"type": "array",
							"items": {
								"type": "string"
							}
						}
					]
				}
			},
			"additionalProperties": false
		},
		"version": {
			"type": "integer",
			"description": "Wersja pliku konfiguracji. Tą właściwością zarządza rozszerzenie. Nie zmieniaj jej."
		},
		"enableConfigurationSquiggles": {
			"type": "boolean",
			"markdownDescription": "Określa, czy rozszerzenie będzie raportować błędy wykryte w pliku `c_cpp_properties.json`.",
			"descriptionHint": "Markdown text between `` should not be translated or localized (they represent literal text) and the capitalization, spacing, and punctuation (including the ``) should not be altered."
		}
	},
	"properties": {
		"configurations": {
			"$ref": "#/definitions/configurations"
		},
		"env": {
			"$ref": "#/definitions/env"
		},
		"version": {
			"$ref": "#/definitions/version"
		},
		"enableConfigurationSquiggles": {
			"$ref": "#/definitions/enableConfigurationSquiggles"
		}
	},
	"required": [
		"configurations",
		"version"
	],
	"additionalProperties": false
}