diff --git a/cmake/QtCreatorAPI.cmake b/cmake/QtCreatorAPI.cmake
index df497f70e93..aefae6f7298 100644
--- a/cmake/QtCreatorAPI.cmake
+++ b/cmake/QtCreatorAPI.cmake
@@ -247,6 +247,8 @@ function(add_qtc_library name)
set_target_properties(${name} PROPERTIES
SUFFIX "${IDE_VERSION_MAJOR}${CMAKE_SHARED_LIBRARY_SUFFIX}"
PREFIX ""
+ IMPORT_SUFFIX "${IDE_VERSION_MAJOR}${CMAKE_IMPORT_LIBRARY_SUFFIX}"
+ IMPORT_PREFIX ""
)
endif()
@@ -500,6 +502,8 @@ function(add_qtc_plugin target_name)
set_target_properties(${target_name} PROPERTIES
SUFFIX "${IDE_VERSION_MAJOR}${CMAKE_SHARED_LIBRARY_SUFFIX}"
PREFIX ""
+ IMPORT_SUFFIX "${IDE_VERSION_MAJOR}${CMAKE_IMPORT_LIBRARY_SUFFIX}"
+ IMPORT_PREFIX ""
)
endif()
enable_pch(${target_name})
diff --git a/doc/qtcreator/images/qmldesigner-mcu-support.png b/doc/qtcreator/images/qmldesigner-mcu-support.png
index e2dc8fd4d18..23d3c0ce3d4 100644
Binary files a/doc/qtcreator/images/qmldesigner-mcu-support.png and b/doc/qtcreator/images/qmldesigner-mcu-support.png differ
diff --git a/doc/qtcreator/src/mcu/qtquick-mcu-support.qdocinc b/doc/qtcreator/src/mcu/qtquick-mcu-support.qdocinc
index c5ce96b9d72..124f2cad227 100644
--- a/doc/qtcreator/src/mcu/qtquick-mcu-support.qdocinc
+++ b/doc/qtcreator/src/mcu/qtquick-mcu-support.qdocinc
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2020 The Qt Company Ltd.
+** Copyright (C) 2021 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the Qt Creator documentation.
@@ -28,22 +28,22 @@
\section1 Creating UIs for MCUs
- \l{Qt for MCUs} enables you to use subsets of QML and Qt Quick Controls
- types to create UIs for devices that are powered by microcontroller units
- (MCU). The subset of supported types depends on the Qt for MCUs version
- that you use for development. In this manual, we indicate which components
- are supported at the time of writing.
+ \l{Qt for MCUs} enables you to use subsets of components to create UIs for
+ devices that are powered by microcontroller units (MCU). The subset of
+ supported components depends on the Qt for MCUs version that you use for
+ development. In this manual, we indicate which components are supported at
+ the time of writing.
To develop for MCUs, \l{Using Project Wizards}{create an MCU project}. Only
- the types available on MCUs are displayed in the \uicontrol {QML Types} tab
- in \uicontrol Library. Only a subset of properties is supported for the
- supported types. The properties that are not available on MCUs are marked
- in the \uicontrol Properties view by enclosing them in square brackets.
+ the components available on MCUs are displayed in the \uicontrol Components
+ tab in \l Library. Only a subset of properties is supported for the
+ supported components. The properties that are not available on MCUs are
+ marked in the \l Properties view by enclosing them in square brackets.
- \image qmldesigner-mcu-support.png "QML types and Image type properties supported for MCUs"
+ \image qmldesigner-mcu-support.png "Components and Image properties supported for MCUs"
- For more information about the supported QML types and their properties, see
- \l{Qt for MCUs - All QML Types}.
+ For more information about the supported components and their properties,
+ see \l{Qt for MCUs - All QML Types}.
//! [mcu qtquick components]
*/
diff --git a/share/qtcreator/qml/qmlpuppet/qmlprivategate/qmlprivategate_56.cpp b/share/qtcreator/qml/qmlpuppet/qmlprivategate/qmlprivategate_56.cpp
index 467e85c3b15..7e5af01944c 100644
--- a/share/qtcreator/qml/qmlpuppet/qmlprivategate/qmlprivategate_56.cpp
+++ b/share/qtcreator/qml/qmlpuppet/qmlprivategate/qmlprivategate_56.cpp
@@ -58,6 +58,8 @@ bool isPropertyBlackListed(const QmlDesigner::PropertyName &propertyName)
return QQuickDesignerSupportProperties::isPropertyBlackListed(propertyName);
}
+#if (QT_VERSION < QT_VERSION_CHECK(6, 0, 0)) && (QT_VERSION >= QT_VERSION_CHECK(5, 15, 0))
+
static void addToPropertyNameListIfNotBlackListed(
PropertyNameList *propertyNameList, const QQuickDesignerSupport::PropertyName &propertyName)
{
@@ -132,12 +134,19 @@ PropertyNameList allPropertyNamesInline(QObject *object,
return propertyNameList;
}
+#endif
PropertyNameList allPropertyNames(QObject *object,
const PropertyName &baseName,
QObjectList *inspectedObjects)
{
+#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)
+ return QQuickDesignerSupportProperties::allPropertyNames(object, baseName, inspectedObjects);
+#elif QT_VERSION >= QT_VERSION_CHECK(5, 15, 0)
return allPropertyNamesInline(object, baseName, inspectedObjects);
+#else
+ return QQuickDesignerSupportProperties::allPropertyNames(object, baseName, inspectedObjects);
+#endif
}
PropertyNameList propertyNameListForWritableProperties(QObject *object,
diff --git a/share/qtcreator/templates/wizards/projects/qtquickapplication/CMakeLists.txt b/share/qtcreator/templates/wizards/projects/qtquickapplication/CMakeLists.txt
index 067ecb4f0a8..ab941e27a65 100644
--- a/share/qtcreator/templates/wizards/projects/qtquickapplication/CMakeLists.txt
+++ b/share/qtcreator/templates/wizards/projects/qtquickapplication/CMakeLists.txt
@@ -44,6 +44,7 @@ set(PROJECT_SOURCES
if(${QT_VERSION_MAJOR} GREATER_EQUAL 6)
qt_add_executable(%{ProjectName}
+ MANUAL_FINALIZATION
${PROJECT_SOURCES}
)
@if %{HasTranslation}
@@ -79,4 +80,5 @@ set_target_properties(%{ProjectName} PROPERTIES
if(QT_VERSION_MAJOR EQUAL 6)
qt_import_qml_plugins(%{ProjectName})
+ qt_finalize_executable(%{ProjectName})
endif()
diff --git a/share/qtcreator/templates/wizards/projects/qtwidgetsapplication/CMakeLists.txt b/share/qtcreator/templates/wizards/projects/qtwidgetsapplication/CMakeLists.txt
index 8edfe2de599..c4e7f757dd1 100644
--- a/share/qtcreator/templates/wizards/projects/qtwidgetsapplication/CMakeLists.txt
+++ b/share/qtcreator/templates/wizards/projects/qtwidgetsapplication/CMakeLists.txt
@@ -48,6 +48,7 @@ set(PROJECT_SOURCES
if(${QT_VERSION_MAJOR} GREATER_EQUAL 6)
qt_add_executable(%{ProjectName}
+ MANUAL_FINALIZATION
${PROJECT_SOURCES}
)
@if %{HasTranslation}
@@ -77,3 +78,7 @@ set_target_properties(%{ProjectName} PROPERTIES
MACOSX_BUNDLE_BUNDLE_VERSION ${PROJECT_VERSION}
MACOSX_BUNDLE_SHORT_VERSION_STRING ${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}
)
+
+if(QT_VERSION_MAJOR EQUAL 6)
+ qt_finalize_executable(%{ProjectName})
+endif()
diff --git a/share/qtcreator/themes/default.creatortheme b/share/qtcreator/themes/default.creatortheme
index dcca311d9e7..6b856d7f34e 100644
--- a/share/qtcreator/themes/default.creatortheme
+++ b/share/qtcreator/themes/default.creatortheme
@@ -96,7 +96,7 @@ DSdockWidgetSplitter=ff595959
DSdockWidgetTitleBar=ffeaeaea
DStitleBarText=ffdadada
-DStitleBarIcon=f4f5052
+DStitleBarIcon=ff4f5052
DStitleBarButtonHover=40ffffff
DStitleBarButtonPress=60ffffff
diff --git a/share/qtcreator/themes/design-light.creatortheme b/share/qtcreator/themes/design-light.creatortheme
index 44b4109dd24..17783db3c0c 100644
--- a/share/qtcreator/themes/design-light.creatortheme
+++ b/share/qtcreator/themes/design-light.creatortheme
@@ -110,7 +110,7 @@ DSdockWidgetSplitter=ff595959
DSdockWidgetTitleBar=ffeaeaea
DStitleBarText=ffdadada
-DStitleBarIcon=f4f5052
+DStitleBarIcon=ff4f5052
DStitleBarButtonHover=40ffffff
DStitleBarButtonPress=60ffffff
diff --git a/share/qtcreator/themes/flat-light.creatortheme b/share/qtcreator/themes/flat-light.creatortheme
index 21be06f7eef..123c680fc6a 100644
--- a/share/qtcreator/themes/flat-light.creatortheme
+++ b/share/qtcreator/themes/flat-light.creatortheme
@@ -105,7 +105,7 @@ DSdockWidgetSplitter=ff595959
DSdockWidgetTitleBar=ffeaeaea
DStitleBarText=ffdadada
-DStitleBarIcon=f4f5052
+DStitleBarIcon=ff4f5052
DStitleBarButtonHover=40ffffff
DStitleBarButtonPress=60ffffff
diff --git a/src/libs/3rdparty/syntax-highlighting/.gitignore b/src/libs/3rdparty/syntax-highlighting/.gitignore
index 7df2675d19f..4d50e82c2dc 100644
--- a/src/libs/3rdparty/syntax-highlighting/.gitignore
+++ b/src/libs/3rdparty/syntax-highlighting/.gitignore
@@ -11,3 +11,4 @@ heaptrack.*
*.unc-backup*
.clang-format
.cmake/
+*.code-workspace
\ No newline at end of file
diff --git a/src/libs/3rdparty/syntax-highlighting/README.md b/src/libs/3rdparty/syntax-highlighting/README.md
index c090d061635..2acff73b185 100644
--- a/src/libs/3rdparty/syntax-highlighting/README.md
+++ b/src/libs/3rdparty/syntax-highlighting/README.md
@@ -6,12 +6,15 @@ Syntax highlighting engine for Kate syntax definitions
1. [Introduction](#introduction)
2. [Out of scope](#out-of-scope)
-3. [Syntax Definition Files](#syntax-definition-files)
-4. [Build it](#build-it)
-5. [How to contribute](#how-to-contribute)
-6. [Adding unit tests for a syntax definition](#adding-unit-tests-for-a-syntax-definition)
+3. [Syntax definition files](#syntax-definition-files)
+4. [Color theme files](#color-theme-files)
+5. [Build it](#build-it)
+6. [How to contribute](#how-to-contribute)
+ * [Licensing](#licensing)
+ * [Tips for contributing to syntax definition files](#tips-for-contributing-to-syntax-definition-files)
+ * [Adding unit tests for a syntax definition](#adding-unit-tests-for-a-syntax-definition)
7. [Report bug or help to fix them](#report-bug-or-help-to-fix-them)
-8. [Updating the kate-editor.org/syntax website](#updating-the-kate-editororgsyntax-website)
+8. [Updating the syntax & themes pages of the kate-editor.org website](#updating-the-kate-editororgsyntax-website)
## Introduction
@@ -33,7 +36,7 @@ out of scope:
If you need any of this, check out [KTextEditor](https://api.kde.org/frameworks/ktexteditor/html/).
-## Syntax Definition Files
+## Syntax definition files
This library uses Kate syntax definition files for the actual highlighting,
the file format is documented [here](https://docs.kde.org/?application=katepart&branch=trunk5&path=highlight.html).
@@ -62,7 +65,7 @@ Usually it is:
On Windows® |
- %USERPROFILE%\AppData\Local\org.kde.syntax-highlighting\syntax\ |
+ %USERPROFILE%\AppData\Local\org.kde.syntax-highlighting\syntax\ |
@@ -71,6 +74,30 @@ For more details, see ["The Highlight Definition XML Format" (Working with Synta
Also, in **data/schema/** there is a script to validate the syntax definiton XML
files. Use the command `validatehl.sh mySyntax.xml`.
+## Color theme files
+
+This library includes the color themes, the theme files use the **JSON**
+format and are located in **data/themes/** with the **.theme** extension.
+
+Additional ones are also picked up from the file system if present,
+in the **org.kde.syntax-highlighting/themes/** folder of your user directory,
+allowing you to easily add custom color theme files.
+The location of **org.kde.syntax-highlighting/themes/** is the same
+as shown in the table of the [previous section](#syntax-definition-files),
+replacing the **syntax** folder with **themes**.
+
+The [KTextEditor](https://api.kde.org/frameworks/ktexteditor/html/) library
+(used by Kate, Kile and KDevelop, for example) provides
+a user interface for editing and creating KSyntaxHighlighting color themes, including
+a tool for exporting and importing the JSON theme files.
+The tool **utils/schema-converter/** and the script **utils/kateschema_to_theme_converter.py**
+convert the old Kate schemas to KSyntaxHighlighting themes.
+
+For more information, see:
+
+* [Kate - Color Themes with Frameworks 5.75 (Kate Editor Website)](https://kate-editor.org/post/2020/2020-09-13-kate-color-themes-5.75/)
+* [Submit a KSyntaxHighlighting Color Theme (Kate Editor Website)](https://kate-editor.org/post/2020/2020-09-18-submit-a-ksyntaxhighlighting-color-theme/)
+
## Build it
1. Create and change into a build directory. Usually, a folder called **build**
@@ -88,6 +115,16 @@ files. Use the command `validatehl.sh mySyntax.xml`.
make
```
+ For example:
+
+ ```bash
+ git clone git@invent.kde.org:frameworks/syntax-highlighting.git
+ mkdir ./syntax-highlighting/build
+ cd ./syntax-highlighting/build
+ cmake ../
+ make
+ ```
+
For more details see ["Building Kate from Sources on Linux" (Kate Editor Website)](https://kate-editor.org/build-it/).
**NOTE:** If running *cmake* shows an error related to your version of KDE
@@ -126,7 +163,7 @@ All files shall contain a proper "SPDX-License-Identifier: MIT" identifier insid
*/
```
-### What you should know before working with syntax definition files and sending a patch
+### Tips for contributing to syntax definition files
* If you are modifying an existing syntax definition XML file, you must increase
the version number of the language.
@@ -139,15 +176,15 @@ All files shall contain a proper "SPDX-License-Identifier: MIT" identifier insid
* [Available Default Styles (Working with Syntax Highlighting, KDE Documentation)](https://docs.kde.org/?application=katepart&branch=trunk5&path=highlight.html#kate-highlight-default-styles)
* [Kate Part (KF5): New Default Styles for better Color Schemes (Kate Editor Website)](https://kate-editor.org/2014/03/07/kate-part-kf5-new-default-styles-for-better-color-schemes/)
-* Important: add test files, these are found in **autotests/input/**.
+* Add test files, these are found in **autotests/input/**.
If you are going to add a new syntax XML file, create a new test file; if you
are going to modify a XML file, adds examples to existing test files.
Then, it is necessary to generate and update the files in **autotests/folding/**,
**autotests/html/** and **autotests/reference/**, which must be included in the
- patches. The instructions are in the [next section](#adding-unit-tests-for-a-syntax-definition).
+ patches. Instructions are [below](#adding-unit-tests-for-a-syntax-definition).
-## Adding unit tests for a syntax definition
+### Adding unit tests for a syntax definition
1. Add an input file into the **autotests/input/** folder, lets call it
**test.<language-extension>**.
@@ -184,9 +221,10 @@ However, some users often report bugs related to syntax highlighting in
[kate/syntax](https://bugs.kde.org/buglist.cgi?component=syntax&product=kate&resolution=---)
and [kile/editor](https://bugs.kde.org/buglist.cgi?component=editor&product=kile&resolution=---).
-## Updating the kate-editor.org/syntax website
+## Updating the syntax & themes pages of the kate-editor.org website
-To update the [kate-editor.org/syntax](https://kate-editor.org/syntax/) website
+To update the [kate-editor.org/syntax](https://kate-editor.org/syntax/) and
+[kate-editor.org/themes](https://kate-editor.org/themes/) websites
including the update site & all linked examples/files,
please run after successful **build** & **test** the following make target:
diff --git a/src/libs/3rdparty/syntax-highlighting/autogenerated/ksyntaxhighlighting_version.h b/src/libs/3rdparty/syntax-highlighting/autogenerated/ksyntaxhighlighting_version.h
index df0317ed7cf..32e5aa62a75 100644
--- a/src/libs/3rdparty/syntax-highlighting/autogenerated/ksyntaxhighlighting_version.h
+++ b/src/libs/3rdparty/syntax-highlighting/autogenerated/ksyntaxhighlighting_version.h
@@ -3,10 +3,10 @@
#ifndef SyntaxHighlighting_VERSION_H
#define SyntaxHighlighting_VERSION_H
-#define SyntaxHighlighting_VERSION_STRING "5.75.0"
+#define SyntaxHighlighting_VERSION_STRING "5.80.0"
#define SyntaxHighlighting_VERSION_MAJOR 5
-#define SyntaxHighlighting_VERSION_MINOR 75
+#define SyntaxHighlighting_VERSION_MINOR 80
#define SyntaxHighlighting_VERSION_PATCH 0
-#define SyntaxHighlighting_VERSION ((5<<16)|(75<<8)|(0))
+#define SyntaxHighlighting_VERSION ((5<<16)|(80<<8)|(0))
#endif
diff --git a/src/libs/3rdparty/syntax-highlighting/data/CMakeLists.txt b/src/libs/3rdparty/syntax-highlighting/data/CMakeLists.txt
index cab8c885dcd..8b923c47952 100644
--- a/src/libs/3rdparty/syntax-highlighting/data/CMakeLists.txt
+++ b/src/libs/3rdparty/syntax-highlighting/data/CMakeLists.txt
@@ -1,9 +1,27 @@
+# create a directory for generated definitions
+execute_process(COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_CURRENT_BINARY_DIR}/generated/syntax)
+
+macro(generate_syntax_definition generator targetFile srcFile)
+ add_custom_target(
+ ${targetFile} ALL
+ DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/generated/syntax/${targetFile}
+ )
+ add_custom_command(
+ OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/generated/syntax/${targetFile}
+ COMMAND ${PERL_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/generators/${generator}
+ ${CMAKE_CURRENT_SOURCE_DIR}/syntax/${srcFile}
+ ${CMAKE_CURRENT_BINARY_DIR}/generated/syntax/${targetFile}
+ DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/generators/${generator}
+ ${CMAKE_CURRENT_SOURCE_DIR}/syntax/${srcFile}
+ ${ARGN}
+ VERBATIM
+ )
+ set(gen_defs ${gen_defs} ${CMAKE_CURRENT_BINARY_DIR}/generated/syntax/${targetFile})
+endmacro()
+
# generate PHP definitions
macro(generate_php_syntax_definition targetFile srcFile)
- execute_process(COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_CURRENT_BINARY_DIR}/generated/syntax)
- execute_process(COMMAND ${PERL_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/generators/generate-php.pl
- INPUT_FILE ${CMAKE_CURRENT_SOURCE_DIR}/syntax/${srcFile}
- OUTPUT_FILE ${CMAKE_CURRENT_BINARY_DIR}/generated/syntax/${targetFile})
+ generate_syntax_definition(generate-php.pl ${targetFile} ${srcFile} ${CMAKE_CURRENT_SOURCE_DIR}/syntax/php.xml)
endmacro()
generate_php_syntax_definition(javascript-php.xml javascript.xml)
@@ -13,17 +31,12 @@ generate_php_syntax_definition(javascript-react-php.xml javascript-react.xml)
generate_php_syntax_definition(typescript-php.xml typescript.xml)
generate_php_syntax_definition(mustache-php.xml mustache.xml)
+# generate DoxygenLua definition
+generate_syntax_definition(generate-doxygenlua.pl doxygenlua.xml doxygen.xml)
+
# find all definitions
file(GLOB src_defs "${CMAKE_CURRENT_SOURCE_DIR}/syntax/*.xml")
-set(defs
- ${src_defs}
- ${CMAKE_CURRENT_BINARY_DIR}/generated/syntax/html-php.xml
- ${CMAKE_CURRENT_BINARY_DIR}/generated/syntax/css-php.xml
- ${CMAKE_CURRENT_BINARY_DIR}/generated/syntax/javascript-php.xml
- ${CMAKE_CURRENT_BINARY_DIR}/generated/syntax/javascript-react-php.xml
- ${CMAKE_CURRENT_BINARY_DIR}/generated/syntax/typescript-php.xml
- ${CMAKE_CURRENT_BINARY_DIR}/generated/syntax/mustache-php.xml
-)
+set(defs ${src_defs} ${gen_defs})
# theme data resource
qt5_add_resources(themes_QRC ${CMAKE_CURRENT_SOURCE_DIR}/themes/theme-data.qrc)
@@ -43,7 +56,7 @@ if (QRC_SYNTAX)
# generate the index file
add_custom_command(OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/index.katesyntax"
COMMAND katehighlightingindexer "${CMAKE_CURRENT_BINARY_DIR}/index.katesyntax" "${CMAKE_CURRENT_SOURCE_DIR}/schema/language.xsd" "${CMAKE_CURRENT_BINARY_DIR}/syntax-data.qrc"
- DEPENDS ${defs} ${CMAKE_CURRENT_SOURCE_DIR}/schema/language.xsd ${CMAKE_CURRENT_BINARY_DIR}/syntax-data.qrc
+ DEPENDS katehighlightingindexer ${defs} ${CMAKE_CURRENT_SOURCE_DIR}/schema/language.xsd ${CMAKE_CURRENT_BINARY_DIR}/syntax-data.qrc
)
# generate the qrc file manually, to make dependencies on generated files work...
@@ -57,7 +70,7 @@ if (QRC_SYNTAX)
add_library(SyntaxHighlightingData OBJECT ${themes_QRC} ${CMAKE_CURRENT_BINARY_DIR}/qrc_syntax-data.cpp)
else()
# install the syntax files as normal files into the prefix
- install (FILES ${defs} DESTINATION share/org.kde.syntax-highlighting/syntax)
+ install (FILES ${defs} DESTINATION ${KDE_INSTALL_DATADIR}/org.kde.syntax-highlighting/syntax)
# object library to make cross-folder dependencies work, only themes
add_library(SyntaxHighlightingData OBJECT ${themes_QRC})
diff --git a/src/libs/3rdparty/syntax-highlighting/data/generators/cmake.xml.tpl b/src/libs/3rdparty/syntax-highlighting/data/generators/cmake.xml.tpl
index be60d199595..8e8d37d266c 100644
--- a/src/libs/3rdparty/syntax-highlighting/data/generators/cmake.xml.tpl
+++ b/src/libs/3rdparty/syntax-highlighting/data/generators/cmake.xml.tpl
@@ -14,9 +14,15 @@
SPDX-License-Identifier: LGPL-2.0-or-later
-->
+
+
- {%- for command in commands %}
- - {{command.name}}
- {%- endfor %}
+
+
+
- {% for command in commands -%}
- {%- if command.named_args and command.named_args.kw %}
-
- {%- for arg in command.named_args.kw %}
- - {{arg}}
- {%- endfor %}
+
+
+
+
+
+
- {%- endif %}
- {%- if command.special_args and command.special_args.kw %}
-
- {%- for arg in command.special_args.kw %}
- - {{arg}}
- {%- endfor %}
+
+
+
+
+
+
- {%- endif %}
- {%- endfor %}
+
+
- {%- for var in variables.kw %}
- - {{var}}
- {%- endfor %}
+
+
+
- {%- for var in deprecated_or_internal_variables.kw %}
- - {{var}}
- {%- endfor %}
+
+
+
- {%- for var in environment_variables.kw %}
- - {{var}}
- {%- endfor %}
+
+
+
- {%- for kind in properties.kinds %}
-
- {%- for prop in properties[kind].kw %}
- - {{prop}}
- {%- endfor %}
+
+
+
+
+
- {%- endfor %}
+
- {%- for expr in generator_expressions %}
- - {{ expr }}
- {%- endfor %}
+
+
+
- {% for command in commands -%}
-
- {% endfor -%}
+
+ beginRegion="" endRegion="" />
+
@@ -95,71 +101,64 @@
- {% for command in commands -%}
- {#
-
- -#}
-
-
+
+
+
-
- {%- if command.nested_parentheses %}
-
- {%- endif %}
+
+
+
+
- {%- if command.named_args and command.named_args.kw %}
-
- {%- endif %}
- {%- if command.special_args and command.special_args.kw %}
-
- {%- endif %}
- {%- if command.property_args and command.property_args.kw %}
- {%- for kind in command.property_args.kw %}
-
- {%- if properties[kind|replace('-', '_')].re %}
-
- {%- endif %}
- {%- endfor %}
- {%- endif %}
- {%- if command is not nulary %}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
- {%- if command.name == 'cmake_policy' %}
+
- {%- endif %}
- {%- endif %}
+
+
- {%- if command.nested_parentheses %}
-
+
+
- {%- if command.named_args and command.named_args.kw %}
-
- {%- endif %}
- {%- if command.special_args and command.special_args.kw %}
-
- {%- endif %}
- {%- if command.property_args and command.property_args.kw %}
- {%- for kind in command.property_args.kw %}
-
- {%- if properties[kind|replace('-', '_')].re %}
-
- {%- endif %}
- {%- endfor %}
- {%- endif %}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
- {%- endif %}
- {% endfor -%}
+
+
- {% for kind in properties.kinds if properties[kind].re -%}
-
- {%- for prop in properties[kind].re %}
-
- {%- endfor %}
- {{ '\n' }}
- {% endfor -%}
+
+
+
+
+
@@ -187,12 +186,12 @@
- {%- for var in deprecated_or_internal_variables.re %}
-
- {%- endfor %}
- {%- for var in variables.re %}
-
- {%- endfor %}
+
+
+
+
+
+
@@ -204,9 +203,9 @@
- {%- for var in environment_variables.re %}
-
- {%- endfor %}
+
+
+
@@ -248,10 +247,20 @@
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -273,8 +282,7 @@
-
-
+
@@ -286,8 +294,7 @@
-
-
+
@@ -331,6 +338,7 @@
+
@@ -354,7 +362,7 @@
-
+
diff --git a/src/libs/3rdparty/syntax-highlighting/data/generators/cmake.yaml b/src/libs/3rdparty/syntax-highlighting/data/generators/cmake.yaml
index e776c2508f6..7d4f113cba7 100644
--- a/src/libs/3rdparty/syntax-highlighting/data/generators/cmake.yaml
+++ b/src/libs/3rdparty/syntax-highlighting/data/generators/cmake.yaml
@@ -232,6 +232,9 @@ target-properties:
- INTERPROCEDURAL_OPTIMIZATION_
- INTERPROCEDURAL_OPTIMIZATION
- IOS_INSTALL_COMBINED
+ - ISPC_HEADER_DIRECTORY # Since 3.19
+ - ISPC_HEADER_SUFFIX # Since 3.19.2
+ - ISPC_INSTRUCTION_SETS # Since 3.19
- JOB_POOL_COMPILE
- JOB_POOL_LINK
- LABELS
@@ -274,6 +277,14 @@ target-properties:
- NAME
- NO_SONAME
- NO_SYSTEM_FROM_IMPORTED
+ - OBJC_EXTENSIONS # Since 3.16
+ - OBJC_STANDARD # Since 3.16
+ - OBJC_STANDARD_REQUIRED # Since 3.16
+ - OBJCXX_EXTENSIONS # Since 3.16
+ - OBJCXX_STANDARD # Since 3.16
+ - OBJCXX_STANDARD_REQUIRED # Since 3.16
+ - OPTIMIZE_DEPENDENCIES # Since 3.19
+ - OBJC_STANDARD
- OSX_ARCHITECTURES_
- OSX_ARCHITECTURES
- OSX_CURRENT_VERSION # Since 3.17
@@ -281,6 +292,7 @@ target-properties:
- OUTPUT_NAME_
- OUTPUT_NAME
- PCH_WARN_INVALID # Since 3.18
+ - PCH_INSTANTIATE_TEMPLATES # Since 3.19
- PDB_NAME_
- PDB_NAME
- PDB_OUTPUT_DIRECTORY_
@@ -362,6 +374,7 @@ target-properties:
- XCODE_ATTRIBUTE_
- XCODE_EXPLICIT_FILE_TYPE
- XCODE_GENERATE_SCHEME # Since 3.15
+ - XCODE_LINK_BUILD_PHASE_MODE # Since 3.19
- XCODE_PRODUCT_TYPE
- XCODE_SCHEME_ADDRESS_SANITIZER # Since 3.13
- XCODE_SCHEME_ADDRESS_SANITIZER_USE_AFTER_RETURN # Since 3.13
@@ -669,9 +682,12 @@ variables:
- CMAKE_VS_PLATFORM_TOOLSET_CUDA
- CMAKE_VS_PLATFORM_TOOLSET_HOST_ARCHITECTURE
- CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION
- - CMAKE_XCODE_GENERATE_SCHEME
+ - CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION_MAXIMUM # Since 3.19
+ - CMAKE_XCODE_BUILD_SYSTEM # Since 3.19
- CMAKE_XCODE_PLATFORM_TOOLSET
- _BINARY_DIR
+ - _DESCRIPTION # Since 3.12
+ - _HOMEPAGE_URL # Since 3.12
- _SOURCE_DIR
- _VERSION
- _VERSION_MAJOR
@@ -679,7 +695,7 @@ variables:
- _VERSION_PATCH
- _VERSION_TWEAK
- PROJECT_BINARY_DIR
- - PROJECT_DESCRIPTION
+ - PROJECT_DESCRIPTION # Since 3.9
- PROJECT_HOMEPAGE_URL # Since 3.12
- PROJECT_NAME
- PROJECT_SOURCE_DIR
@@ -695,6 +711,7 @@ variables:
- CMAKE_AUTOMOC_RELAXED_MODE
- CMAKE_BACKWARDS_COMPATIBILITY
- CMAKE_BUILD_TYPE
+ - CMAKE_CLANG_VFS_OVERLAY # Since 3.19
- CMAKE_CODEBLOCKS_COMPILER_ID # Since 3.11
- CMAKE_CODEBLOCKS_EXCLUDE_EXTERNAL_FILES # Since 3.10
- CMAKE_CODELITE_USE_TARGETS
@@ -777,7 +794,9 @@ variables:
- CMAKE_USER_MAKE_RULES_OVERRIDE
- CMAKE_WARN_DEPRECATED
- CMAKE_WARN_ON_ABSOLUTE_INSTALL_DESTINATION
+ - CMAKE_XCODE_GENERATE_SCHEME
- CMAKE_XCODE_GENERATE_TOP_LEVEL_PROJECT_ONLY # Since 3.13
+ - CMAKE_XCODE_LINK_BUILD_PHASE_MODE # Since 3.19
- CMAKE_XCODE_SCHEME_ADDRESS_SANITIZER # Since 3.13
- CMAKE_XCODE_SCHEME_ADDRESS_SANITIZER_USE_AFTER_RETURN # Since 3.13
- CMAKE_XCODE_SCHEME_WORKING_DIRECTORY # Since 3.17
@@ -869,6 +888,7 @@ variables:
- CMAKE_ANDROID_SKIP_ANT_STEP
- CMAKE_ANDROID_STANDALONE_TOOLCHAIN
- CMAKE_ANDROID_STL_TYPE
+ - CMAKE_APPLE_SILICON_PROCESSOR # Since 3.19.2
- CMAKE_ARCHIVE_OUTPUT_DIRECTORY
- CMAKE_ARCHIVE_OUTPUT_DIRECTORY_
- CMAKE_AUTOGEN_ORIGIN_DEPENDS # Since 3.14
@@ -951,10 +971,12 @@ variables:
- CMAKE_NINJA_OUTPUT_PATH_PREFIX
- CMAKE_NO_BUILTIN_CHRPATH
- CMAKE_NO_SYSTEM_FROM_IMPORTED
+ - CMAKE_OPTIMIZE_DEPENDENCIES # Since 3.19
- CMAKE_OSX_ARCHITECTURES
- CMAKE_OSX_DEPLOYMENT_TARGET
- CMAKE_OSX_SYSROOT
- CMAKE_PCH_WARN_INVALID # Since 3.18
+ - CMAKE_PCH_INSTANTIATE_TEMPLATES # Since 3.19
- CMAKE_PDB_OUTPUT_DIRECTORY
- CMAKE_PDB_OUTPUT_DIRECTORY_
- CMAKE_POSITION_INDEPENDENT_CODE
@@ -1015,6 +1037,9 @@ variables:
- CMAKE_Fortran_MODDIR_DEFAULT
- CMAKE_Fortran_MODDIR_FLAG
- CMAKE_Fortran_MODOUT_FLAG
+ - CMAKE_ISPC_HEADER_DIRECTORY # Since 3.19
+ - CMAKE_ISPC_HEADER_SUFFIX # Since 3.19.2
+ - CMAKE_ISPC_INSTRUCTION_SETS # Since 3.19
- CMAKE__ANDROID_TOOLCHAIN_MACHINE
- CMAKE__ANDROID_TOOLCHAIN_PREFIX
- CMAKE__ANDROID_TOOLCHAIN_SUFFIX
@@ -1063,6 +1088,12 @@ variables:
- CMAKE__SOURCE_FILE_EXTENSIONS
- CMAKE__STANDARD_INCLUDE_DIRECTORIES
- CMAKE__STANDARD_LIBRARIES
+ - CMAKE_OBJC_EXTENSIONS # Since 3.16
+ - CMAKE_OBJC_STANDARD # Since 3.16
+ - CMAKE_OBJC_STANDARD_REQUIRED # Since 3.16
+ - CMAKE_OBJCXX_EXTENSIONS # Since 3.16
+ - CMAKE_OBJCXX_STANDARD # Since 3.16
+ - CMAKE_OBJCXX_STANDARD_REQUIRED # Since 3.16
- CMAKE_Swift_LANGUAGE_VERSION
- CMAKE_USER_MAKE_RULES_OVERRIDE_
# Variables for CTest
@@ -1190,8 +1221,11 @@ variables:
- _UNPARSED_ARGUMENTS
- _KEYWORDS_MISSING_VALUES
# Well known CMake's official module's variables
+ # - CheckCompilerFlag
# - CheckCCompilerFlag
+ # - CheckSourceCompiles
# - CheckCSourceCompiles
+ # - CheckSourceRuns
# - CheckCSourceRuns
# - CheckCxxCompilerFlag
# - CheckCxxSourceCompiles
@@ -1337,6 +1371,7 @@ variables:
- CPACK_EXTERNAL_REQUESTED_VERSIONS
- CPACK_EXTERNAL_ENABLE_STAGING
- CPACK_EXTERNAL_PACKAGE_SCRIPT
+ - CPACK_EXTERNAL_BUILT_PACKAGES # Since 3.19
# - CPackIFW
- CPACK_IFW_ROOT
- QTIFWDIR
@@ -1597,6 +1632,9 @@ variables:
- CPACK_PACKAGE_INSTALL_REGISTRY_KEY
- CPACK_CREATE_DESKTOP_LINKS
- CPACK_BINARY_
+ - CPACK_PRE_BUILD_SCRIPTS # Since 3.19
+ - CPACK_POST_BUILD_SCRIPTS # Since 3.19
+ - CPACK_PACKAGE_FILES # Since 3.19
# - CPackWIX
- CPACK_WIX_UPGRADE_GUID
- CPACK_WIX_PRODUCT_GUID
@@ -1621,6 +1659,7 @@ variables:
- CPACK_WIX_SKIP_PROGRAM_FOLDER
- CPACK_WIX_ROOT_FOLDER_ID
- CPACK_WIX_ROOT
+ - CPACK_WIX_CUSTOM_XMLNS # Since 3.19
# - CTest
# - Dart
- BUILD_TESTING
@@ -1750,6 +1789,7 @@ deprecated-or-internal-variables:
# NOTE Added to syntax file version 14 at 3.15.0 version of CMake
environment-variables:
# Environment Variables that Control the Build
+ - CMAKE_APPLE_SILICON_PROCESSOR # Since 3.19.2
- CMAKE_BUILD_PARALLEL_LEVEL
- CMAKE_CONFIG_TYPE
- CMAKE_EXPORT_COMPILE_COMMANDS # Since 3.17
@@ -1837,7 +1877,19 @@ scripting-commands:
]
-
name: cmake_language
- named-args: [CALL, EVAL, CODE]
+ named-args: [
+ CALL
+ , EVAL
+ , CODE
+ # Since 3.19
+ , DEFER
+ , DIRECTORY
+ , ID
+ , ID_VAR
+ , GET_CALL_IDS
+ , GET_CALL
+ , CANCEL_CALL
+ ]
-
name: cmake_minimum_required
named-args: [VERSION, FATAL_ERROR]
@@ -1850,7 +1902,13 @@ scripting-commands:
special-args: [OLD, NEW]
-
name: configure_file
- named-args: [COPYONLY, ESCAPE_QUOTES, "@ONLY", NEWLINE_STYLE]
+ named-args: [
+ COPYONLY
+ , ESCAPE_QUOTES
+ , NO_SOURCE_PERMISSIONS # Since 3.19
+ , "@ONLY"
+ , NEWLINE_STYLE
+ ]
special-args: [UNIX, DOS, WIN32, LF, CRLF]
-
name: continue
@@ -1934,6 +1992,7 @@ scripting-commands:
, ENCODING
, ECHO_OUTPUT_VARIABLE # Since 3.18
, ECHO_ERROR_VARIABLE # Since 3.18
+ , COMMAND_ERROR_IS_FATAL # Since 3.19
]
special-args: [
NONE
@@ -1943,6 +2002,8 @@ scripting-commands:
, UTF8
, STDERR # Since 3.15: the value for `COMMAND_ECHO`
, STDOUT # Since 3.15: the value for `COMMAND_ECHO`
+ , ANY # Since 3.19: the value for `COMMAND_ERROR_IS_FATAL`
+ , LAST # Since 3.19: the value for `COMMAND_ERROR_IS_FATAL`
]
nested-parentheses?: true
-
@@ -2009,6 +2070,7 @@ scripting-commands:
, INPUT
, CONTENT
, CONDITION
+ , TARGET # Since 3.19
, COPY
, INSTALL
, DESTINATION
@@ -2040,7 +2102,8 @@ scripting-commands:
, ARCHIVE_CREATE
, FILES
, FORMAT
- , TYPE
+ , COMPRESSION
+ , COMPRESSION_LEVEL # Since 3.19
, MTIME
, VERBOSE
, ARCHIVE_EXTRACT
@@ -2049,6 +2112,10 @@ scripting-commands:
, ESCAPE_QUOTES
, "@ONLY"
, NEWLINE_STYLE
+ , CHMOD # Since 3.19
+ , CHMOD_RECURSE # Since 3.19
+ , REAL_PATH # Since 3.19
+ , BASE_DIRECTORY # Since 3.19
]
special-args: [
UTF-8
@@ -2345,7 +2412,13 @@ scripting-commands:
nulary?: true
-
name: separate_arguments
- named-args: [NATIVE_COMMAND, UNIX_COMMAND, WINDOWS_COMMAND]
+ named-args: [
+ NATIVE_COMMAND
+ , UNIX_COMMAND
+ , WINDOWS_COMMAND
+ , PROGRAM # Since 3.19
+ , SEPARATE_ARGS # Since 3.19
+ ]
-
name: set_directory_properties
named-args: [PROPERTIES]
@@ -2429,6 +2502,16 @@ scripting-commands:
, NAME
, TYPE
, UPPER
+ # Since 3.19
+ , JSON
+ , ERROR_VARIABLE
+ , GET
+ , TYPE
+ , MEMBER
+ , LENGTH
+ , REMOVE
+ , SET
+ , EQUAL
]
-
name: unset
@@ -2532,6 +2615,7 @@ project-commands:
, CSharp
, CXX
, CUDA
+ , ISPC # Since 3.19
, Java
, OBJC # Since 3.16
, OBJCXX # Since 3.16
@@ -2656,6 +2740,7 @@ project-commands:
, CSharp
, CXX
, CUDA
+ , ISPC # Since 3.19
, Java
, OBJC # Since 3.16
, OBJCXX # Since 3.16
diff --git a/src/libs/3rdparty/syntax-highlighting/data/generators/generate-cmake-syntax.py b/src/libs/3rdparty/syntax-highlighting/data/generators/generate-cmake-syntax.py
index 0dd04a44be2..24b1eb0d7cc 100644
--- a/src/libs/3rdparty/syntax-highlighting/data/generators/generate-cmake-syntax.py
+++ b/src/libs/3rdparty/syntax-highlighting/data/generators/generate-cmake-syntax.py
@@ -3,7 +3,7 @@
#
# Generate Kate syntax file for CMake
#
-# SPDX-FileCopyrightText: 2017-2019 Alex Turbov
+# SPDX-FileCopyrightText: 2017-2020 Alex Turbov
#
# To install prerequisites:
#
@@ -43,21 +43,29 @@ def try_transform_placeholder_string_to_regex(name):
'''
m = _TEMPLATED_NAME.split(name)
if 'CMAKE_MATCH_' in m:
- return '\\bCMAKE_MATCH_[0-9]+\\b'
+ return 'CMAKE_MATCH_[0-9]+'
if 'CMAKE_ARGV' in m:
- return '\\bCMAKE_ARGV[0-9]+\\b'
+ return 'CMAKE_ARGV[0-9]+'
if 'CMAKE_POLICY_DEFAULT_CMP' in m:
- return '\\bCMAKE_POLICY_DEFAULT_CMP[0-9]{4}\\b'
+ return 'CMAKE_POLICY_DEFAULT_CMP[0-9]{4}'
if 'CMAKE_POLICY_WARNING_CMP' in m:
- return '\\bCMAKE_POLICY_WARNING_CMP[0-9]{4}\\b'
+ return 'CMAKE_POLICY_WARNING_CMP[0-9]{4}'
if 'ARGV' in m:
- return '\\bARGV[0-9]+\\b'
+ return 'ARGV[0-9]+'
- return '\\b{}\\b'.format('&id_re;'.join(list(m))) if 1 < len(m) else name
+ return '&id_re;'.join(m) if 1 < len(m) else name
+
+
+def try_placeholders_to_regex(names):
+ if not names:
+ return None
+ l = map(try_transform_placeholder_string_to_regex, names)
+ l = sorted(l, reverse=True)
+ return '\\b(?:' + '|'.join(l) + ')\\b'
def partition_iterable(fn, iterable):
@@ -73,7 +81,7 @@ def _transform_command_set(cmd, list_name):
list_name = list_name.replace('-', '_')
cmd[list_name] = {k: sorted(set(v)) for k, v in zip(_KW_RE_LIST, [args, args_re])}
- cmd[list_name]['re'] = [*map(lambda x: try_transform_placeholder_string_to_regex(x), args_re)]
+ cmd[list_name]['re'] = try_placeholders_to_regex(args_re)
return cmd
@@ -136,12 +144,7 @@ def cli(input_yaml, template):
, [*partition_iterable(lambda x: _TEMPLATED_NAME.search(x) is None, data[var_key])]
)
}
- data[var_key]['re'] = [
- *map(
- lambda x: try_transform_placeholder_string_to_regex(x)
- , data[var_key]['re']
- )
- ]
+ data[var_key]['re'] = try_placeholders_to_regex(data[var_key]['re'])
# Transform properties and make all-properties list
data['properties'] = {}
@@ -153,18 +156,16 @@ def cli(input_yaml, template):
data['properties'][python_prop_list_name] = {
k: sorted(set(v)) for k, v in zip(_KW_RE_LIST, [props, props_re])
}
- data['properties'][python_prop_list_name]['re'] = [
- *map(lambda x: try_transform_placeholder_string_to_regex(x), props_re)
- ]
+ data['properties'][python_prop_list_name]['re'] = try_placeholders_to_regex(props_re)
- data['properties']['kinds'] = [*map(lambda name: name.replace('-', '_'), _PROPERTY_KEYS)]
+ data['properties']['kinds'] = list(map(lambda name: name.replace('-', '_'), _PROPERTY_KEYS))
# Make all commands list
- data['commands'] = [
- *map(
- lambda cmd: transform_command(cmd)
+ data['commands'] = list(
+ map(
+ transform_command
, data['scripting-commands'] + data['project-commands'] + data['ctest-commands'])
- ]
+ )
# Fix node names to be accessible from Jinja template
data['generator_expressions'] = data['generator-expressions']
@@ -177,6 +178,12 @@ def cli(input_yaml, template):
env = jinja2.Environment(
keep_trailing_newline=True
)
+ env.block_start_string = ''
+ env.variable_start_string = ''
+ env.comment_start_string = ''
# Register convenience filters
env.tests['nulary'] = cmd_is_nulary
diff --git a/src/libs/3rdparty/syntax-highlighting/data/generators/generate-php.pl b/src/libs/3rdparty/syntax-highlighting/data/generators/generate-php.pl
index 04c9fcdb360..a3b20fb5546 100644
--- a/src/libs/3rdparty/syntax-highlighting/data/generators/generate-php.pl
+++ b/src/libs/3rdparty/syntax-highlighting/data/generators/generate-php.pl
@@ -19,7 +19,13 @@
my $file = "";
-while (<>)
+open(my $input, '<:encoding(UTF-8)', $ARGV[0])
+ or die "Could not open file '$ARGV[0]': $!";
+
+open(my $output, '>:encoding(UTF-8)', $ARGV[1])
+ or die "Could not open file '$ARGV[1]': $!";
+
+while (<$input>)
{
$file .= $_;
}
@@ -55,12 +61,17 @@ else
$file =~ s/]+)mimetype="[^"]*"/\n\n\n";
+if ($root == 1 || $ARGV[0] =~ /mustache.xml$/)
+{
+ $file =~ s/<(?:RegExpr (attribute="Processing Instruction" context="PI"|context="PI" attribute="Processing Instruction")|itemData name="Processing Instruction")[^\/]+\/>|//gs;
+}
-$file =~ s/]*)context="([^"#]*)##(?!Alerts|Doxygen|Modelines)([^"]+)"/\n\n\n";
+
+$file =~ s/]*)context="([^"#]*)##(?!Alerts|Comments|Doxygen|Modelines)([^"]+)"/]*[^>\/]>)/$1\n/g;
$file =~ s/(]*[^>\/])\s*\/>/$1>\n\n<\/context>/g;
$file =~ s/(?=<\/contexts\s*>)/$findphp/;
-print $file;
-print $warning;
+print $output $file;
+print $output $warning;
diff --git a/src/libs/3rdparty/syntax-highlighting/data/schema/language.xsd b/src/libs/3rdparty/syntax-highlighting/data/schema/language.xsd
index 5fdbbb07dfd..fa510e0d147 100644
--- a/src/libs/3rdparty/syntax-highlighting/data/schema/language.xsd
+++ b/src/libs/3rdparty/syntax-highlighting/data/schema/language.xsd
@@ -395,49 +395,61 @@
commonAttributes: Common attributes
insensitive: Is this list case-insensitive? [boolean, optional, see note]
String: Name of the list
- weakDelimiter: Use weak deliminator
+ weakDeliminator: Add weak deliminators [optional, see note]
+ additionalDeliminator: Add deliminators [optional, see note]
By default, case sensitivity is determined from in
(default=true), but can be overridden per-list with 'insensitive'.
- TODO:
- - Should be weakDeliminator
- - Explain deliminator
- - Doesn't seem to be supported in highligh.cpp
+ weakDeliminator and additionalDeliminator are accumulated to those defined in
+ in .
-->
-
+
+
+
+
+
+
+
+
+
+
-
-
-
-
+
+ |&;])">
+
+
+ |&;()">
+
+
+
+
+
+
+
+
+
+ |&;{}\\`'"$">
+
+
+
+
+
+
+
+
+
]>
-
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
+
-
-
+
-
-
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
+
+
+
+
+
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
+
+
+
-
-
-
-
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
-
-
-
-
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
+
+
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
+
+
+
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
+
+
+
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
-
-
+
+
+
+
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/libs/3rdparty/syntax-highlighting/data/syntax/cmake.xml b/src/libs/3rdparty/syntax-highlighting/data/syntax/cmake.xml
index 6f3b3dc862b..7f3920bfb64 100644
--- a/src/libs/3rdparty/syntax-highlighting/data/syntax/cmake.xml
+++ b/src/libs/3rdparty/syntax-highlighting/data/syntax/cmake.xml
@@ -14,9 +14,15 @@
SPDX-License-Identifier: LGPL-2.0-or-later
-->
+
+
- CALL
+ - CANCEL_CALL
- CODE
+ - DEFER
+ - DIRECTORY
- EVAL
+ - GET_CALL
+ - GET_CALL_IDS
+ - ID
+ - ID_VAR
- FATAL_ERROR
@@ -199,6 +212,7 @@
- COPYONLY
- ESCAPE_QUOTES
- NEWLINE_STYLE
+ - NO_SOURCE_PERMISSIONS
- CRLF
@@ -242,6 +256,7 @@
- COMMAND
- COMMAND_ECHO
+ - COMMAND_ERROR_IS_FATAL
- ECHO_ERROR_VARIABLE
- ECHO_OUTPUT_VARIABLE
- ENCODING
@@ -261,7 +276,9 @@
- ANSI
+ - ANY
- AUTO
+ - LAST
- NONE
- OEM
- STDERR
@@ -273,6 +290,11 @@
- APPEND
- ARCHIVE_CREATE
- ARCHIVE_EXTRACT
+ - BASE_DIRECTORY
+ - CHMOD
+ - CHMOD_RECURSE
+ - COMPRESSION
+ - COMPRESSION_LEVEL
- CONDITION
- CONFIGURE
- CONFIGURE_DEPENDS
@@ -328,6 +350,7 @@
- PERMISSIONS
- READ
- READ_SYMLINK
+ - REAL_PATH
- REGEX
- RELATIVE
- RELATIVE_PATH
@@ -349,6 +372,7 @@
- SIZE
- STATUS
- STRINGS
+ - TARGET
- TIMEOUT
- TIMESTAMP
- TLS_CAINFO
@@ -357,7 +381,6 @@
- TOUCH_NOCREATE
- TO_CMAKE_PATH
- TO_NATIVE_PATH
- - TYPE
- UPLOAD
- USERPWD
- USE_SOURCE_PERMISSIONS
@@ -662,6 +685,8 @@
- NATIVE_COMMAND
+ - PROGRAM
+ - SEPARATE_ARGS
- UNIX_COMMAND
- WINDOWS_COMMAND
@@ -704,13 +729,16 @@
- CONCAT
- CONFIGURE
- EQUAL
+ - ERROR_VARIABLE
- ESCAPE_QUOTES
- FIND
- GENEX_STRIP
+ - GET
- GREATER
- GREATER_EQUAL
- HEX
- JOIN
+ - JSON
- LENGTH
- LESS
- LESS_EQUAL
@@ -718,6 +746,7 @@
- MATCH
- MATCHALL
- MD5
+ - MEMBER
- NAME
- NAMESPACE
- NOTEQUAL
@@ -725,9 +754,11 @@
- RANDOM
- RANDOM_SEED
- REGEX
+ - REMOVE
- REPEAT
- REPLACE
- REVERSE
+ - SET
- SHA1
- SHA224
- SHA256
@@ -883,6 +914,7 @@
- CUDA
- CXX
- Fortran
+ - ISPC
- Java
- OBJC
- OBJCXX
@@ -996,6 +1028,7 @@
- CUDA
- CXX
- Fortran
+ - ISPC
- Java
- NONE
- OBJC
@@ -1318,6 +1351,7 @@
- CMAKE_ANDROID_STL_TYPE
- CMAKE_ANSI_CXXFLAGS
- CMAKE_APPBUNDLE_PATH
+ - CMAKE_APPLE_SILICON_PROCESSOR
- CMAKE_AR
- CMAKE_ARCHIVE_OUTPUT_DIRECTORY
- CMAKE_ARGC
@@ -1347,6 +1381,7 @@
- CMAKE_CACHE_MINOR_VERSION
- CMAKE_CACHE_PATCH_VERSION
- CMAKE_CFG_INTDIR
+ - CMAKE_CLANG_VFS_OVERLAY
- CMAKE_CL_64
- CMAKE_CODEBLOCKS_COMPILER_ID
- CMAKE_CODEBLOCKS_EXCLUDE_EXTERNAL_FILES
@@ -1538,6 +1573,9 @@
- CMAKE_INSTALL_UCRT_LIBRARIES
- CMAKE_INTERPROCEDURAL_OPTIMIZATION
- CMAKE_IOS_INSTALL_COMBINED
+ - CMAKE_ISPC_HEADER_DIRECTORY
+ - CMAKE_ISPC_HEADER_SUFFIX
+ - CMAKE_ISPC_INSTRUCTION_SETS
- CMAKE_JOB_POOLS
- CMAKE_JOB_POOL_COMPILE
- CMAKE_JOB_POOL_LINK
@@ -1583,12 +1621,20 @@
- CMAKE_NO_BUILTIN_CHRPATH
- CMAKE_NO_STD_NAMESPACE
- CMAKE_NO_SYSTEM_FROM_IMPORTED
+ - CMAKE_OBJCXX_EXTENSIONS
+ - CMAKE_OBJCXX_STANDARD
+ - CMAKE_OBJCXX_STANDARD_REQUIRED
+ - CMAKE_OBJC_EXTENSIONS
+ - CMAKE_OBJC_STANDARD
+ - CMAKE_OBJC_STANDARD_REQUIRED
- CMAKE_OBJECT_PATH_MAX
+ - CMAKE_OPTIMIZE_DEPENDENCIES
- CMAKE_OSX_ARCHITECTURES
- CMAKE_OSX_DEPLOYMENT_TARGET
- CMAKE_OSX_SYSROOT
- CMAKE_PARENT_LIST_FILE
- CMAKE_PATCH_VERSION
+ - CMAKE_PCH_INSTANTIATE_TEMPLATES
- CMAKE_PCH_WARN_INVALID
- CMAKE_PDB_OUTPUT_DIRECTORY
- CMAKE_POSITION_INDEPENDENT_CODE
@@ -1689,12 +1735,15 @@
- CMAKE_VS_SDK_REFERENCE_DIRECTORIES
- CMAKE_VS_SDK_SOURCE_DIRECTORIES
- CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION
+ - CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION_MAXIMUM
- CMAKE_WARN_DEPRECATED
- CMAKE_WARN_ON_ABSOLUTE_INSTALL_DESTINATION
- CMAKE_WIN32_EXECUTABLE
- CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS
+ - CMAKE_XCODE_BUILD_SYSTEM
- CMAKE_XCODE_GENERATE_SCHEME
- CMAKE_XCODE_GENERATE_TOP_LEVEL_PROJECT_ONLY
+ - CMAKE_XCODE_LINK_BUILD_PHASE_MODE
- CMAKE_XCODE_PLATFORM_TOOLSET
- CMAKE_XCODE_SCHEME_ADDRESS_SANITIZER
- CMAKE_XCODE_SCHEME_ADDRESS_SANITIZER_USE_AFTER_RETURN
@@ -1782,6 +1831,7 @@
- CPACK_DMG_SLA_LANGUAGES
- CPACK_DMG_VOLUME_NAME
- CPACK_ERROR_ON_ABSOLUTE_INSTALL_DESTINATION
+ - CPACK_EXTERNAL_BUILT_PACKAGES
- CPACK_EXTERNAL_ENABLE_STAGING
- CPACK_EXTERNAL_PACKAGE_SCRIPT
- CPACK_EXTERNAL_REQUESTED_VERSIONS
@@ -1883,6 +1933,7 @@
- CPACK_PACKAGE_DESCRIPTION_SUMMARY
- CPACK_PACKAGE_DIRECTORY
- CPACK_PACKAGE_EXECUTABLES
+ - CPACK_PACKAGE_FILES
- CPACK_PACKAGE_FILE_NAME
- CPACK_PACKAGE_HOMEPAGE_URL
- CPACK_PACKAGE_ICON
@@ -1897,6 +1948,8 @@
- CPACK_PACKAGING_INSTALL_PREFIX
- CPACK_PKGBUILD_IDENTITY_NAME
- CPACK_PKGBUILD_KEYCHAIN_PATH
+ - CPACK_POST_BUILD_SCRIPTS
+ - CPACK_PRE_BUILD_SCRIPTS
- CPACK_PRODUCTBUILD_BACKGROUND
- CPACK_PRODUCTBUILD_BACKGROUND_ALIGNMENT
- CPACK_PRODUCTBUILD_BACKGROUND_DARKAQUA
@@ -1989,6 +2042,7 @@
- CPACK_WARN_ON_ABSOLUTE_INSTALL_DESTINATION
- CPACK_WIX_CMAKE_PACKAGE_REGISTRY
- CPACK_WIX_CULTURES
+ - CPACK_WIX_CUSTOM_XMLNS
- CPACK_WIX_EXTENSIONS
- CPACK_WIX_EXTRA_OBJECTS
- CPACK_WIX_EXTRA_SOURCES
@@ -2181,6 +2235,7 @@
- CC
- CFLAGS
- CMAKE_APPBUNDLE_PATH
+ - CMAKE_APPLE_SILICON_PROCESSOR
- CMAKE_BUILD_PARALLEL_LEVEL
- CMAKE_CONFIG_TYPE
- CMAKE_EXPORT_COMPILE_COMMANDS
@@ -2423,6 +2478,9 @@
- INTERFACE_SYSTEM_INCLUDE_DIRECTORIES
- INTERPROCEDURAL_OPTIMIZATION
- IOS_INSTALL_COMBINED
+ - ISPC_HEADER_DIRECTORY
+ - ISPC_HEADER_SUFFIX
+ - ISPC_INSTRUCTION_SETS
- JOB_POOL_COMPILE
- JOB_POOL_LINK
- LABELS
@@ -2452,10 +2510,18 @@
- NAME
- NO_SONAME
- NO_SYSTEM_FROM_IMPORTED
+ - OBJCXX_EXTENSIONS
+ - OBJCXX_STANDARD
+ - OBJCXX_STANDARD_REQUIRED
+ - OBJC_EXTENSIONS
+ - OBJC_STANDARD
+ - OBJC_STANDARD_REQUIRED
+ - OPTIMIZE_DEPENDENCIES
- OSX_ARCHITECTURES
- OSX_COMPATIBILITY_VERSION
- OSX_CURRENT_VERSION
- OUTPUT_NAME
+ - PCH_INSTANTIATE_TEMPLATES
- PCH_WARN_INVALID
- PDB_NAME
- PDB_OUTPUT_DIRECTORY
@@ -2528,6 +2594,7 @@
- WINDOWS_EXPORT_ALL_SYMBOLS
- XCODE_EXPLICIT_FILE_TYPE
- XCODE_GENERATE_SCHEME
+ - XCODE_LINK_BUILD_PHASE_MODE
- XCODE_PRODUCT_TYPE
- XCODE_SCHEME_ADDRESS_SANITIZER
- XCODE_SCHEME_ADDRESS_SANITIZER_USE_AFTER_RETURN
@@ -3785,64 +3852,19 @@
-
+
-
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
-
+
@@ -3871,210 +3893,8 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
@@ -4086,11 +3906,7 @@
-
-
-
-
-
+
@@ -4132,10 +3948,20 @@
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -4157,8 +3983,7 @@
-
-
+
@@ -4170,8 +3995,7 @@
-
-
+
@@ -4215,6 +4039,7 @@
+
@@ -4238,7 +4063,7 @@
-
+
diff --git a/src/libs/3rdparty/syntax-highlighting/data/syntax/css.xml b/src/libs/3rdparty/syntax-highlighting/data/syntax/css.xml
index 3a2aa3dc91d..37da5ea3746 100644
--- a/src/libs/3rdparty/syntax-highlighting/data/syntax/css.xml
+++ b/src/libs/3rdparty/syntax-highlighting/data/syntax/css.xml
@@ -38,7 +38,7 @@ Changelog:
-->
-
+
@@ -822,6 +822,7 @@ Changelog:
- static
- static-position
- status-bar
+ - sticky
- thick
- thin
- ultra-condensed
@@ -1584,8 +1585,7 @@ Changelog:
-
-
+
diff --git a/src/libs/3rdparty/syntax-highlighting/data/syntax/doxygen.xml b/src/libs/3rdparty/syntax-highlighting/data/syntax/doxygen.xml
index 6f3172570c7..d7a53a167c0 100644
--- a/src/libs/3rdparty/syntax-highlighting/data/syntax/doxygen.xml
+++ b/src/libs/3rdparty/syntax-highlighting/data/syntax/doxygen.xml
@@ -1,12 +1,12 @@
+
]>
-
+
-
-
+
-
+
-
-
+
@@ -335,7 +333,7 @@
-
+
@@ -354,7 +352,7 @@
-
+
@@ -498,7 +496,7 @@
-
+
@@ -590,8 +588,7 @@
-
-
+
diff --git a/src/libs/3rdparty/syntax-highlighting/data/syntax/dtd.xml b/src/libs/3rdparty/syntax-highlighting/data/syntax/dtd.xml
index be6bed734e5..8093b1c4e81 100644
--- a/src/libs/3rdparty/syntax-highlighting/data/syntax/dtd.xml
+++ b/src/libs/3rdparty/syntax-highlighting/data/syntax/dtd.xml
@@ -3,7 +3,7 @@
]>
-
+
@@ -45,8 +45,7 @@
-
-
+
@@ -78,7 +77,7 @@
-
+
diff --git a/src/libs/3rdparty/syntax-highlighting/data/syntax/html.xml b/src/libs/3rdparty/syntax-highlighting/data/syntax/html.xml
index 2a9a3bc4f44..312c91c5aa8 100644
--- a/src/libs/3rdparty/syntax-highlighting/data/syntax/html.xml
+++ b/src/libs/3rdparty/syntax-highlighting/data/syntax/html.xml
@@ -5,7 +5,7 @@
]>
-
+
@@ -79,8 +79,7 @@
-
-
+
@@ -92,8 +91,7 @@
-
-
+
@@ -195,7 +193,7 @@
-
+
@@ -206,8 +204,7 @@
-
-
+
diff --git a/src/libs/3rdparty/syntax-highlighting/data/syntax/ini.xml b/src/libs/3rdparty/syntax-highlighting/data/syntax/ini.xml
index 0a6730977f0..8b36a562907 100644
--- a/src/libs/3rdparty/syntax-highlighting/data/syntax/ini.xml
+++ b/src/libs/3rdparty/syntax-highlighting/data/syntax/ini.xml
@@ -1,6 +1,6 @@
-
+
@@ -36,8 +36,7 @@
-
-
+
@@ -48,8 +47,7 @@
-
-
+
diff --git a/src/libs/3rdparty/syntax-highlighting/data/syntax/java.xml b/src/libs/3rdparty/syntax-highlighting/data/syntax/java.xml
index 273e899f739..6091cd4ee29 100644
--- a/src/libs/3rdparty/syntax-highlighting/data/syntax/java.xml
+++ b/src/libs/3rdparty/syntax-highlighting/data/syntax/java.xml
@@ -1,10 +1,13 @@
-
+
+
+
+
+
]>
-
+
- ACTIVE
@@ -3704,21 +3707,11 @@
- abstract
- - break
- - case
- - catch
- class
- - continue
- default
- - do
- - else
- enum
- extends
- false
- - finally
- - for
- - goto
- - if
- implements
- instanceof
- @interface
@@ -3729,18 +3722,30 @@
- private
- protected
- public
- - return
- super
- strictfp
- - switch
- synchronized
- this
- throws
- - throw
- transient
- true
- - try
- volatile
+
+
+ - break
+ - case
+ - catch
+ - continue
+ - do
+ - else
+ - finally
+ - for
+ - goto
+ - if
+ - return
+ - switch
+ - throw
+ - try
- while
@@ -3759,87 +3764,127 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
-
-
-
-
-
-
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
+
-
-
+
+
+
+
+
+
+
+
-
+
-
-
-
-
-
-
+
+
-
-
+
+
+
+
+
-
-
+
+
+
+
+
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
-
-
+
+
+
@@ -3855,8 +3900,9 @@
-
+
+
diff --git a/src/libs/3rdparty/syntax-highlighting/data/syntax/javadoc.xml b/src/libs/3rdparty/syntax-highlighting/data/syntax/javadoc.xml
index e72488b2214..336fedd53c1 100644
--- a/src/libs/3rdparty/syntax-highlighting/data/syntax/javadoc.xml
+++ b/src/libs/3rdparty/syntax-highlighting/data/syntax/javadoc.xml
@@ -1,6 +1,6 @@
-
+
@@ -12,74 +12,52 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
diff --git a/src/libs/3rdparty/syntax-highlighting/data/syntax/json.xml b/src/libs/3rdparty/syntax-highlighting/data/syntax/json.xml
index a7ab85e0bb0..686a1758c67 100644
--- a/src/libs/3rdparty/syntax-highlighting/data/syntax/json.xml
+++ b/src/libs/3rdparty/syntax-highlighting/data/syntax/json.xml
@@ -12,7 +12,7 @@
** http://tools.ietf.org/html/rfc4627
***************************************************************************
-->
-
+
- null
@@ -46,8 +46,7 @@
-
-
+
diff --git a/src/libs/3rdparty/syntax-highlighting/data/syntax/makefile.xml b/src/libs/3rdparty/syntax-highlighting/data/syntax/makefile.xml
index 7df18db5df7..257aac57410 100644
--- a/src/libs/3rdparty/syntax-highlighting/data/syntax/makefile.xml
+++ b/src/libs/3rdparty/syntax-highlighting/data/syntax/makefile.xml
@@ -12,7 +12,7 @@
@@ -384,6 +384,8 @@
TODO :[range]
-->
+
+
-
-
@@ -417,12 +417,11 @@
:Dnewval If the variable is defined newval is the value.
:Unewval If the variable is undefined newval is the value.
-->
-
-
+
@@ -477,8 +476,7 @@
-
-
+
diff --git a/src/libs/3rdparty/syntax-highlighting/data/syntax/markdown.xml b/src/libs/3rdparty/syntax-highlighting/data/syntax/markdown.xml
index d836d1c3f4c..b35397af9c9 100644
--- a/src/libs/3rdparty/syntax-highlighting/data/syntax/markdown.xml
+++ b/src/libs/3rdparty/syntax-highlighting/data/syntax/markdown.xml
@@ -90,14 +90,14 @@
]>
-
+
-
+
-
+
@@ -109,12 +109,12 @@
-
+
-
+
@@ -130,9 +130,9 @@
NOTE: The indentation of the lists is captured. -->
-
-
-
+
+
+
@@ -142,33 +142,30 @@
-
+
-
-
+
-
-
-
-
-
-
+
+
+
+
+
+
-
-
+
-
-
+
@@ -195,7 +192,7 @@
-
+
@@ -206,16 +203,10 @@
-
-
-
-
-
-
-
-
-
-
+
+
+
+
@@ -223,40 +214,40 @@
-
+
-
-
-
+
+
+
-
+
-
+
-
-
-
+
+
+
-
+
-
+
-
-
-
+
+
+
-
+
@@ -268,7 +259,7 @@
-
+
@@ -277,24 +268,17 @@
-
-
-
-
-
-
-
-
-
-
+
+
+
+
-
-
+
@@ -337,7 +321,7 @@
-
+
@@ -465,14 +449,9 @@
-
-
-
-
-
+
-
-
+
@@ -508,13 +487,13 @@
-
+
-
+
@@ -552,25 +531,23 @@
-
+
-
+
-
+
-
+
-
-
-
+
diff --git a/src/libs/3rdparty/syntax-highlighting/data/syntax/perl.xml b/src/libs/3rdparty/syntax-highlighting/data/syntax/perl.xml
index 1b5ca943bed..fdf2266558a 100644
--- a/src/libs/3rdparty/syntax-highlighting/data/syntax/perl.xml
+++ b/src/libs/3rdparty/syntax-highlighting/data/syntax/perl.xml
@@ -39,7 +39,7 @@
Enhance tr/// and y/// support.
-->
-
+
- if
@@ -339,7 +339,7 @@
-
+
@@ -347,7 +347,7 @@
-
+
@@ -384,8 +384,7 @@
-
-
+
@@ -428,15 +427,7 @@
-
-
-
-
-
-
-
-
-
+
@@ -465,7 +456,7 @@
-
+
@@ -508,7 +499,7 @@
-
+
@@ -605,10 +596,7 @@
-
-
-
-
+
@@ -629,7 +617,6 @@
-
@@ -663,13 +650,7 @@
-
-
-
-
-
-
-
+
@@ -713,17 +694,10 @@
-
-
-
-
-
-
-
+
+
-
-
-
+
@@ -732,17 +706,11 @@
-
-
-
-
-
-
-
+
+
+
-
-
-
+
@@ -767,7 +735,7 @@
-
+
@@ -791,26 +759,24 @@
-
-
-
+
-
+
-
+
-
+
@@ -841,14 +807,13 @@
-
+
-
-
+
diff --git a/src/libs/3rdparty/syntax-highlighting/data/syntax/powershell.xml b/src/libs/3rdparty/syntax-highlighting/data/syntax/powershell.xml
index 29ec21e286e..7754c6cf340 100644
--- a/src/libs/3rdparty/syntax-highlighting/data/syntax/powershell.xml
+++ b/src/libs/3rdparty/syntax-highlighting/data/syntax/powershell.xml
@@ -1,9 +1,9 @@
-
-
+
-
-
+
@@ -908,14 +906,12 @@
-
-
+
-
-
+
@@ -931,7 +927,7 @@
-
+
diff --git a/src/libs/3rdparty/syntax-highlighting/data/syntax/python.xml b/src/libs/3rdparty/syntax-highlighting/data/syntax/python.xml
index 2cdde881c9a..f1c89a54e41 100644
--- a/src/libs/3rdparty/syntax-highlighting/data/syntax/python.xml
+++ b/src/libs/3rdparty/syntax-highlighting/data/syntax/python.xml
@@ -4,6 +4,35 @@
+
+
+
+
+
]>
@@ -19,7 +48,7 @@
-
+
- import
@@ -355,8 +384,7 @@
-
-
+
@@ -393,20 +421,20 @@
-
-
-
-
+
+
+
+
-
-
-
-
+
+
+
+
@@ -417,10 +445,10 @@
-
-
-
-
+
+
+
+
@@ -448,66 +476,38 @@
-
-
+
-
+
-
+
-
+
-
+
-
-
-
-
+
@@ -517,12 +517,7 @@
-
-
-
-
-
-
+
@@ -532,7 +527,7 @@
-
+
@@ -552,50 +547,50 @@
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
@@ -603,50 +598,50 @@
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
diff --git a/src/libs/3rdparty/syntax-highlighting/data/syntax/qdocconf.xml b/src/libs/3rdparty/syntax-highlighting/data/syntax/qdocconf.xml
index 4504016d0af..b735ca9f4a9 100644
--- a/src/libs/3rdparty/syntax-highlighting/data/syntax/qdocconf.xml
+++ b/src/libs/3rdparty/syntax-highlighting/data/syntax/qdocconf.xml
@@ -1,7 +1,7 @@
-
-
+
diff --git a/src/libs/3rdparty/syntax-highlighting/data/syntax/ruby.xml b/src/libs/3rdparty/syntax-highlighting/data/syntax/ruby.xml
index a6d44b4246f..dc6444e7476 100644
--- a/src/libs/3rdparty/syntax-highlighting/data/syntax/ruby.xml
+++ b/src/libs/3rdparty/syntax-highlighting/data/syntax/ruby.xml
@@ -31,7 +31,7 @@
-
+
-
+
-
-
-
+
+
-
@@ -236,8 +234,7 @@
-
-
+
@@ -269,21 +266,16 @@
-
-
-
-
-
+
+
-
-
+
-
-
+
@@ -291,14 +283,12 @@
-
-
+
+
-
-
@@ -320,20 +310,20 @@
-
+
-
+
-
+
@@ -345,7 +335,7 @@
-
+
@@ -355,8 +345,7 @@
-
-
+
@@ -390,7 +379,7 @@
-
+
@@ -433,8 +422,7 @@
-
-
+
-
-
-
+
-
-
-
+
@@ -463,11 +447,11 @@
-
+
-
+
@@ -481,8 +465,8 @@
-
-
+
+
@@ -602,7 +586,7 @@
-->
-
+
@@ -667,7 +651,7 @@
-->
-
+
@@ -731,7 +715,7 @@
-->
-
+
@@ -795,7 +779,7 @@
-->
-
+
@@ -861,7 +845,7 @@
-->
-
+
diff --git a/src/libs/3rdparty/syntax-highlighting/data/syntax/valgrind-suppression.xml b/src/libs/3rdparty/syntax-highlighting/data/syntax/valgrind-suppression.xml
index d30fc775826..46d8c646f7d 100644
--- a/src/libs/3rdparty/syntax-highlighting/data/syntax/valgrind-suppression.xml
+++ b/src/libs/3rdparty/syntax-highlighting/data/syntax/valgrind-suppression.xml
@@ -1,6 +1,6 @@
-
+
@@ -9,7 +9,7 @@
-
+
@@ -25,8 +25,7 @@
-
-
+
diff --git a/src/libs/3rdparty/syntax-highlighting/data/syntax/xml.xml b/src/libs/3rdparty/syntax-highlighting/data/syntax/xml.xml
index bb88366c865..fbefcb6dad0 100644
--- a/src/libs/3rdparty/syntax-highlighting/data/syntax/xml.xml
+++ b/src/libs/3rdparty/syntax-highlighting/data/syntax/xml.xml
@@ -6,7 +6,7 @@
]>
-
+
@@ -17,10 +17,10 @@
-
-
-
-
+
+
+
+
@@ -41,37 +41,67 @@
-
-
+
+
+
+
+
+
-
+
+
+
+
+
+
+
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
-
+
+
-
+
+
+
+
+
+
+
+
-
+
@@ -86,25 +116,31 @@
+
+
+
-
-
+
+
-
+
+
+
+
-
+
-
+
@@ -115,29 +151,34 @@
-
+
-
+
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/libs/3rdparty/syntax-highlighting/data/syntax/yacc.xml b/src/libs/3rdparty/syntax-highlighting/data/syntax/yacc.xml
index 996d36df627..478dc396d8c 100644
--- a/src/libs/3rdparty/syntax-highlighting/data/syntax/yacc.xml
+++ b/src/libs/3rdparty/syntax-highlighting/data/syntax/yacc.xml
@@ -32,7 +32,7 @@ This code is released under the LGPL as part of kdelibs/kate.
========================================================================
-->
-
+
@@ -139,9 +139,9 @@ This code is released under the LGPL as part of kdelibs/kate.
-
+
-
+
@@ -201,13 +201,11 @@ This code is released under the LGPL as part of kdelibs/kate.
-
-
+
-
-
+
diff --git a/src/libs/3rdparty/syntax-highlighting/data/themes/atom-one-dark.theme b/src/libs/3rdparty/syntax-highlighting/data/themes/atom-one-dark.theme
new file mode 100644
index 00000000000..dcd95114025
--- /dev/null
+++ b/src/libs/3rdparty/syntax-highlighting/data/themes/atom-one-dark.theme
@@ -0,0 +1,352 @@
+{
+ "custom-styles": {
+ "Go": {
+ "Predeclared Identifier": {
+ "selected-text-color": "#d19a66",
+ "text-color": "#d19a66"
+ }
+ },
+ "INI Files": {
+ "Assignment": {
+ "selected-text-color": "#abb2bf",
+ "text-color": "#abb2bf"
+ },
+ "Section": {
+ "selected-text-color": "#56b6c2",
+ "text-color": "#56b6c2"
+ }
+ },
+ "JavaScript": {
+ "Built-in Objects": {
+ "selected-text-color": "#d19a66",
+ "text-color": "#d19a66"
+ },
+ "Function Declaration": {
+ "selected-text-color": "#56b6c2",
+ "text-color": "#56b6c2"
+ },
+ "Function Name": {
+ "selected-text-color": "#56b6c2",
+ "text-color": "#56b6c2"
+ },
+ "Module": {
+ "selected-text-color": "#c678dd",
+ "text-color": "#c678dd"
+ },
+ "Object Member": {
+ "selected-text-color": "#e06c75",
+ "text-color": "#e06c75"
+ },
+ "Object Method (Built-in)": {
+ "selected-text-color": "#56b6c2",
+ "text-color": "#56b6c2"
+ }
+ },
+ "Markdown": {
+ "Code": {
+ "selected-text-color": "#d19a66",
+ "text-color": "#d19a66"
+ },
+ "Emphasis Text": {
+ "selected-text-color": "#c678dd",
+ "text-color": "#c678dd"
+ },
+ "Fenced Code": {
+ "selected-text-color": "#d19a66",
+ "text-color": "#d19a66"
+ },
+ "Header H1": {
+ "selected-text-color": "#e06c75",
+ "text-color": "#e06c75"
+ },
+ "Header H2": {
+ "selected-text-color": "#e06c75",
+ "text-color": "#e06c75"
+ },
+ "Header H3": {
+ "selected-text-color": "#e06c75",
+ "text-color": "#e06c75"
+ },
+ "Header H4": {
+ "selected-text-color": "#e06c75",
+ "text-color": "#e06c75"
+ },
+ "Header H5": {
+ "selected-text-color": "#e06c75",
+ "text-color": "#e06c75"
+ },
+ "Header H6": {
+ "selected-text-color": "#e06c75",
+ "text-color": "#e06c75"
+ },
+ "Link": {
+ "selected-text-color": "#c678dd",
+ "text-color": "#c678dd"
+ },
+ "Reference-Link Name": {
+ "selected-text-color": "#56b6c2",
+ "text-color": "#56b6c2"
+ },
+ "Reference-Link Target": {
+ "selected-text-color": "#56b6c2",
+ "text-color": "#56b6c2"
+ },
+ "Reference-Link Target: Link": {
+ "selected-text-color": "#c678dd",
+ "text-color": "#c678dd"
+ },
+ "Reference-Link: Email": {
+ "selected-text-color": "#c678dd",
+ "text-color": "#c678dd"
+ },
+ "Reference-Link: Link": {
+ "selected-text-color": "#c678dd",
+ "text-color": "#c678dd"
+ },
+ "Strong Text": {
+ "selected-text-color": "#d19a66",
+ "text-color": "#d19a66"
+ }
+ },
+ "Python": {
+ "Builtin Function": {
+ "selected-text-color": "#56b6c2",
+ "text-color": "#56b6c2"
+ },
+ "String Substitution": {
+ "selected-text-color": "#d19a66",
+ "text-color": "#d19a66"
+ }
+ },
+ "Rust": {
+ "Lifetime": {
+ "selected-text-color": "#d19a66",
+ "text-color": "#d19a66"
+ },
+ "Macro": {
+ "selected-text-color": "#56b6c2",
+ "text-color": "#56b6c2"
+ },
+ "Self": {
+ "selected-text-color": "#e06c75",
+ "text-color": "#e06c75"
+ },
+ "Trait": {
+ "selected-text-color": "#d19a66",
+ "text-color": "#d19a66"
+ },
+ "Type": {
+ "selected-text-color": "#56b6c2",
+ "text-color": "#56b6c2"
+ }
+ },
+ "TypeScript": {
+ "Built-in Objects": {
+ "selected-text-color": "#d19a66",
+ "text-color": "#d19a66"
+ },
+ "Module": {
+ "selected-text-color": "#c678dd",
+ "text-color": "#c678dd"
+ },
+ "Object Member": {
+ "selected-text-color": "#e06c75",
+ "text-color": "#e06c75"
+ },
+ "Object Method (Built-in)": {
+ "italic": false,
+ "selected-text-color": "#56b6c2",
+ "text-color": "#56b6c2"
+ },
+ "Reserved": {
+ "italic": false
+ },
+ "Types": {
+ "selected-text-color": "#56b6c2",
+ "text-color": "#56b6c2"
+ }
+ },
+ "XML": {
+ "Attribute": {
+ "selected-text-color": "#d19a66",
+ "text-color": "#d19a66"
+ },
+ "Element": {
+ "selected-text-color": "#e06c75",
+ "text-color": "#e06c75"
+ }
+ }
+ },
+ "editor-colors": {
+ "BackgroundColor": "#282c34",
+ "BracketMatching": "#8e44ad",
+ "CodeFolding": "#363c4a",
+ "CurrentLine": "#0A99BBFF",
+ "CurrentLineNumber": "#abb2bf",
+ "IconBorder": "#282c34",
+ "IndentationLine": "#3a3f44",
+ "LineNumbers": "#636D83",
+ "MarkBookmark": "#0404bf",
+ "MarkBreakpointActive": "#8b0607",
+ "MarkBreakpointDisabled": "#820683",
+ "MarkBreakpointReached": "#6d6e07",
+ "MarkError": "#c24038",
+ "MarkExecution": "#4d4e50",
+ "MarkWarning": "#d19a66",
+ "ModifiedLines": "#e06c75",
+ "ReplaceHighlight": "#a34f56",
+ "SavedLines": "#98c379",
+ "SearchHighlight": "#3D528BFF",
+ "Separator": "#3f4347",
+ "SpellChecking": "#c24038",
+ "TabMarker": "#21252B",
+ "TemplateBackground": "#31363b",
+ "TemplateFocusedPlaceholder": "#123723",
+ "TemplatePlaceholder": "#123723",
+ "TemplateReadOnlyPlaceholder": "#4d1f24",
+ "TextSelection": "#363c4a",
+ "WordWrapMarker": "#3a3f44"
+ },
+ "metadata": {
+ "copyright": [
+ "SPDX-FileCopyrightText: 2016 GitHub Inc.",
+ "SPDX-FileCopyrightText: 2020 Waqar Ahmed "
+ ],
+ "license": "SPDX-License-Identifier: MIT",
+ "name": "Atom One Dark",
+ "revision": 2
+ },
+ "text-styles": {
+ "Alert": {
+ "background-color": "#4d1f24",
+ "bold": true,
+ "selected-text-color": "#95da4c",
+ "text-color": "#95da4c"
+ },
+ "Annotation": {
+ "selected-text-color": "#98c379",
+ "text-color": "#98c379"
+ },
+ "Attribute": {
+ "selected-text-color": "#c678dd",
+ "text-color": "#c678dd"
+ },
+ "BaseN": {
+ "selected-text-color": "#d19a66",
+ "text-color": "#d19a66"
+ },
+ "BuiltIn": {
+ "selected-text-color": "#c678dd",
+ "text-color": "#c678dd"
+ },
+ "Char": {
+ "selected-text-color": "#98c379",
+ "text-color": "#98c379"
+ },
+ "Comment": {
+ "italic": true,
+ "selected-text-color": "#5c6370",
+ "text-color": "#5c6370"
+ },
+ "CommentVar": {
+ "italic": true,
+ "selected-text-color": "#e06c75",
+ "text-color": "#e06c75"
+ },
+ "Constant": {
+ "selected-text-color": "#d19a66",
+ "text-color": "#d19a66"
+ },
+ "ControlFlow": {
+ "selected-text-color": "#c678dd",
+ "text-color": "#c678dd"
+ },
+ "DataType": {
+ "selected-text-color": "#c678dd",
+ "text-color": "#c678dd"
+ },
+ "DecVal": {
+ "selected-text-color": "#d19a66",
+ "text-color": "#d19a66"
+ },
+ "Documentation": {
+ "selected-text-color": "#da4453",
+ "text-color": "#a43340"
+ },
+ "Error": {
+ "selected-text-color": "#f44747",
+ "text-color": "#f44747",
+ "underline": true
+ },
+ "Extension": {
+ "bold": true,
+ "selected-text-color": "#61afef",
+ "text-color": "#61afef"
+ },
+ "Float": {
+ "selected-text-color": "#d19a66",
+ "text-color": "#d19a66"
+ },
+ "Function": {
+ "selected-text-color": "#61afef",
+ "text-color": "#61afef"
+ },
+ "Import": {
+ "selected-text-color": "#98c379",
+ "text-color": "#98c379"
+ },
+ "Information": {
+ "selected-text-color": "#e46700",
+ "text-color": "#c45b00"
+ },
+ "Keyword": {
+ "selected-text-color": "#c678dd",
+ "text-color": "#c678dd"
+ },
+ "Normal": {
+ "selected-text-color": "#abb2bf",
+ "text-color": "#abb2bf"
+ },
+ "Operator": {
+ "selected-text-color": "#c678dd",
+ "text-color": "#c678dd"
+ },
+ "Others": {
+ "selected-text-color": "#27ae60",
+ "text-color": "#27ae60"
+ },
+ "Preprocessor": {
+ "selected-text-color": "#c678dd",
+ "text-color": "#c678dd"
+ },
+ "RegionMarker": {
+ "background-color": "#153042",
+ "selected-text-color": "#3daee9",
+ "text-color": "#2980b9"
+ },
+ "SpecialChar": {
+ "selected-text-color": "#56b6c2",
+ "text-color": "#56b6c2"
+ },
+ "SpecialString": {
+ "selected-text-color": "#da4453",
+ "text-color": "#da4453"
+ },
+ "String": {
+ "selected-text-color": "#98c379",
+ "text-color": "#98c379"
+ },
+ "Variable": {
+ "selected-text-color": "#e06c75",
+ "text-color": "#e06c75"
+ },
+ "VerbatimString": {
+ "selected-text-color": "#da4453",
+ "text-color": "#da4453"
+ },
+ "Warning": {
+ "selected-text-color": "#da4453",
+ "text-color": "#da4453"
+ }
+ }
+}
diff --git a/src/libs/3rdparty/syntax-highlighting/data/themes/atom-one-light.theme b/src/libs/3rdparty/syntax-highlighting/data/themes/atom-one-light.theme
new file mode 100644
index 00000000000..69ce7cb2b0f
--- /dev/null
+++ b/src/libs/3rdparty/syntax-highlighting/data/themes/atom-one-light.theme
@@ -0,0 +1,359 @@
+{
+ "custom-styles": {
+ "Go": {
+ "Predeclared Identifier": {
+ "selected-text-color": "#986801",
+ "text-color": "#986801"
+ }
+ },
+ "INI Files": {
+ "Assignment": {
+ "selected-text-color": "#383a42",
+ "text-color": "#383a42"
+ },
+ "Section": {
+ "selected-text-color": "#4078f2",
+ "text-color": "#4078f2"
+ }
+ },
+ "JavaScript": {
+ "Built-in Objects": {
+ "selected-text-color": "#986801",
+ "text-color": "#986801"
+ },
+ "Function Declaration": {
+ "selected-text-color": "#0184bc",
+ "text-color": "#0184bc"
+ },
+ "Function Name": {
+ "selected-text-color": "#0184bc",
+ "text-color": "#0184bc"
+ },
+ "Module": {
+ "selected-text-color": "#a626a4",
+ "text-color": "#a626a4"
+ },
+ "Object Member": {
+ "selected-text-color": "#e45649",
+ "text-color": "#e45649"
+ },
+ "Object Method (Built-in)": {
+ "selected-text-color": "#0184bc",
+ "text-color": "#0184bc"
+ }
+ },
+ "Markdown": {
+ "Code": {
+ "selected-text-color": "#d19a66",
+ "text-color": "#d19a66"
+ },
+ "Emphasis Text": {
+ "selected-text-color": "#a626a4",
+ "text-color": "#a626a4"
+ },
+ "Fenced Code": {
+ "selected-text-color": "#d19a66",
+ "text-color": "#d19a66"
+ },
+ "Header H1": {
+ "selected-text-color": "#e45649",
+ "text-color": "#e45649"
+ },
+ "Header H2": {
+ "selected-text-color": "#e45649",
+ "text-color": "#e45649"
+ },
+ "Header H3": {
+ "selected-text-color": "#e45649",
+ "text-color": "#e45649"
+ },
+ "Header H4": {
+ "selected-text-color": "#e45649",
+ "text-color": "#e45649"
+ },
+ "Header H5": {
+ "selected-text-color": "#e45649",
+ "text-color": "#e45649"
+ },
+ "Header H6": {
+ "selected-text-color": "#e45649",
+ "text-color": "#e45649"
+ },
+ "Line Break": {
+ "text-color": "#383a42"
+ },
+ "Link": {
+ "selected-text-color": "#a626a4",
+ "text-color": "#a626a4"
+ },
+ "Reference-Link Name": {
+ "selected-text-color": "#4078f2",
+ "text-color": "#4078f2"
+ },
+ "Reference-Link Target": {
+ "selected-text-color": "#4078f2",
+ "text-color": "#4078f2"
+ },
+ "Reference-Link Target: Link": {
+ "selected-text-color": "#a626a4",
+ "text-color": "#a626a4"
+ },
+ "Reference-Link: Email": {
+ "selected-text-color": "#a626a4",
+ "text-color": "#a626a4"
+ },
+ "Reference-Link: Link": {
+ "selected-text-color": "#a626a4",
+ "text-color": "#a626a4"
+ },
+ "Strong Text": {
+ "selected-text-color": "#986801",
+ "text-color": "#986801"
+ }
+ },
+ "Python": {
+ "Builtin Function": {
+ "selected-text-color": "#0184bc",
+ "text-color": "#0184bc"
+ },
+ "Import": {
+ "selected-text-color": "#a626a4",
+ "text-color": "#a626a4"
+ },
+ "String Substitution": {
+ "selected-text-color": "#986801",
+ "text-color": "#986801"
+ }
+ },
+ "Rust": {
+ "Lifetime": {
+ "selected-text-color": "#986801",
+ "text-color": "#986801"
+ },
+ "Macro": {
+ "selected-text-color": "#4078f2",
+ "text-color": "#4078f2"
+ },
+ "Self": {
+ "selected-text-color": "#e45649",
+ "text-color": "#e45649"
+ },
+ "Trait": {
+ "selected-text-color": "#986801",
+ "text-color": "#986801"
+ },
+ "Type": {
+ "selected-text-color": "#0184bc",
+ "text-color": "#0184bc"
+ }
+ },
+ "TypeScript": {
+ "Built-in Objects": {
+ "selected-text-color": "#986801",
+ "text-color": "#986801"
+ },
+ "Module": {
+ "selected-text-color": "#a626a4",
+ "text-color": "#a626a4"
+ },
+ "Object Member": {
+ "selected-text-color": "#e45649",
+ "text-color": "#e45649"
+ },
+ "Object Method (Built-in)": {
+ "italic": false,
+ "selected-text-color": "#0184bc",
+ "text-color": "#0184bc"
+ },
+ "Reserved": {
+ "italic": false
+ },
+ "Types": {
+ "selected-text-color": "#4078f2",
+ "text-color": "#4078f2"
+ }
+ },
+ "XML": {
+ "Attribute": {
+ "selected-text-color": "#986801",
+ "text-color": "#986801"
+ },
+ "Element": {
+ "selected-text-color": "#e45649",
+ "text-color": "#e45649"
+ }
+ }
+ },
+ "editor-colors": {
+ "BackgroundColor": "#fafafa",
+ "BracketMatching": "#ff6e6e",
+ "CodeFolding": "#e5e5e6",
+ "CurrentLine": "#0C383A42",
+ "CurrentLineNumber": "#383a42",
+ "IconBorder": "#fafafa",
+ "IndentationLine": "#626772",
+ "LineNumbers": "#9D9D9F",
+ "MarkBookmark": "#0404bf",
+ "MarkBreakpointActive": "#8b0607",
+ "MarkBreakpointDisabled": "#820683",
+ "MarkBreakpointReached": "#6d6e07",
+ "MarkError": "#c24038",
+ "MarkExecution": "#4d4e50",
+ "MarkWarning": "#ce7c2b",
+ "ModifiedLines": "#e06c75",
+ "ReplaceHighlight": "#ef747e",
+ "SavedLines": "#98c379",
+ "SearchHighlight": "#33526FFF",
+ "Separator": "#a6b0ba",
+ "SpellChecking": "#c24038",
+ "TabMarker": "#8894a6",
+ "TemplateBackground": "#31363b",
+ "TemplateFocusedPlaceholder": "#123723",
+ "TemplatePlaceholder": "#123723",
+ "TemplateReadOnlyPlaceholder": "#4d1f24",
+ "TextSelection": "#e5e5e6",
+ "WordWrapMarker": "#cddff1"
+ },
+ "metadata": {
+ "copyright": [
+ "SPDX-FileCopyrightText: 2016 GitHub Inc.",
+ "SPDX-FileCopyrightText: 2020 Waqar Ahmed "
+ ],
+ "license": "SPDX-License-Identifier: MIT",
+ "name": "Atom One Light",
+ "revision": 3
+ },
+ "text-styles": {
+ "Alert": {
+ "background-color": "#4d1f24",
+ "bold": true,
+ "selected-text-color": "#95da4c",
+ "text-color": "#95da4c"
+ },
+ "Annotation": {
+ "selected-text-color": "#50a14f",
+ "text-color": "#50a14f"
+ },
+ "Attribute": {
+ "selected-text-color": "#a626a4",
+ "text-color": "#a626a4"
+ },
+ "BaseN": {
+ "selected-text-color": "#986801",
+ "text-color": "#986801"
+ },
+ "BuiltIn": {
+ "selected-text-color": "#a626a4",
+ "text-color": "#a626a4"
+ },
+ "Char": {
+ "selected-text-color": "#50a14f",
+ "text-color": "#50a14f"
+ },
+ "Comment": {
+ "italic": true,
+ "selected-text-color": "#a0a1a7",
+ "text-color": "#a0a1a7"
+ },
+ "CommentVar": {
+ "italic": true,
+ "selected-text-color": "#e45649",
+ "text-color": "#e45649"
+ },
+ "Constant": {
+ "selected-text-color": "#986801",
+ "text-color": "#986801"
+ },
+ "ControlFlow": {
+ "selected-text-color": "#a626a4",
+ "text-color": "#a626a4"
+ },
+ "DataType": {
+ "selected-text-color": "#a626a4",
+ "text-color": "#a626a4"
+ },
+ "DecVal": {
+ "selected-text-color": "#986801",
+ "text-color": "#986801"
+ },
+ "Documentation": {
+ "selected-text-color": "#da4453",
+ "text-color": "#e45649"
+ },
+ "Error": {
+ "selected-text-color": "#f44747",
+ "text-color": "#f44747",
+ "underline": true
+ },
+ "Extension": {
+ "bold": true,
+ "selected-text-color": "#4078f2",
+ "text-color": "#4078f2"
+ },
+ "Float": {
+ "selected-text-color": "#986801",
+ "text-color": "#986801"
+ },
+ "Function": {
+ "selected-text-color": "#4078f2",
+ "text-color": "#4078f2"
+ },
+ "Import": {
+ "selected-text-color": "#50a14f",
+ "text-color": "#50a14f"
+ },
+ "Information": {
+ "selected-text-color": "#e46700",
+ "text-color": "#c45b00"
+ },
+ "Keyword": {
+ "selected-text-color": "#a626a4",
+ "text-color": "#a626a4"
+ },
+ "Normal": {
+ "selected-text-color": "#383a42",
+ "text-color": "#383a42"
+ },
+ "Operator": {
+ "selected-text-color": "#a626a4",
+ "text-color": "#a626a4"
+ },
+ "Others": {
+ "selected-text-color": "#27ae60",
+ "text-color": "#27ae60"
+ },
+ "Preprocessor": {
+ "selected-text-color": "#a626a4",
+ "text-color": "#a626a4"
+ },
+ "RegionMarker": {
+ "background-color": "#153042",
+ "selected-text-color": "#3daee9",
+ "text-color": "#2980b9"
+ },
+ "SpecialChar": {
+ "selected-text-color": "#0184bc",
+ "text-color": "#0184bc"
+ },
+ "SpecialString": {
+ "selected-text-color": "#da4453",
+ "text-color": "#da4453"
+ },
+ "String": {
+ "selected-text-color": "#50a14f",
+ "text-color": "#50a14f"
+ },
+ "Variable": {
+ "selected-text-color": "#e45649",
+ "text-color": "#e45649"
+ },
+ "VerbatimString": {
+ "selected-text-color": "#da4453",
+ "text-color": "#da4453"
+ },
+ "Warning": {
+ "selected-text-color": "#da4453",
+ "text-color": "#da4453"
+ }
+ }
+}
diff --git a/src/libs/3rdparty/syntax-highlighting/data/themes/ayu-dark.theme b/src/libs/3rdparty/syntax-highlighting/data/themes/ayu-dark.theme
index 9c84e5af5d5..ebfde027973 100644
--- a/src/libs/3rdparty/syntax-highlighting/data/themes/ayu-dark.theme
+++ b/src/libs/3rdparty/syntax-highlighting/data/themes/ayu-dark.theme
@@ -1,6 +1,6 @@
{
"_comments": [
- "Last update: Sep 21, 2020 (revision 2)",
+ "Last update: Feb 22, 2021 (revision 3)",
"This file has been converted from: https://github.com/dempfi/ayu",
"Also see: https://github.com/ayu-theme"
],
@@ -11,7 +11,7 @@
],
"license": "SPDX-License-Identifier: MIT",
"name": "ayu Dark",
- "revision": 2
+ "revision": 3
},
"editor-colors": {
"BackgroundColor": "#0a0e14",
@@ -176,5 +176,30 @@
"selected-text-color": "#f07178",
"text-color": "#f07178"
}
+ },
+ "custom-styles": {
+ "XML": {
+ "Attribute": {
+ "selected-text-color": "#ffb454",
+ "text-color": "#ffb454"
+ },
+ "Element": {
+ "selected-text-color": "#39bae6",
+ "text-color": "#39bae6",
+ "bold": false
+ },
+ "Element Symbols": {
+ "selected-text-color": "#307896",
+ "text-color": "#22647d"
+ },
+ "EntityRef": {
+ "selected-text-color": "#95e6cb",
+ "text-color": "#95e6cb"
+ },
+ "PEntityRef": {
+ "selected-text-color": "#95e6cb",
+ "text-color": "#95e6cb"
+ }
+ }
}
}
diff --git a/src/libs/3rdparty/syntax-highlighting/data/themes/ayu-mirage.theme b/src/libs/3rdparty/syntax-highlighting/data/themes/ayu-mirage.theme
index cd9ff7488e8..e389ecf2981 100644
--- a/src/libs/3rdparty/syntax-highlighting/data/themes/ayu-mirage.theme
+++ b/src/libs/3rdparty/syntax-highlighting/data/themes/ayu-mirage.theme
@@ -1,6 +1,6 @@
{
"_comments": [
- "Last update: Sep 21, 2020 (revision 2)",
+ "Last update: Feb 22, 2021 (revision 3)",
"This file has been converted from: https://github.com/dempfi/ayu",
"Also see: https://github.com/ayu-theme"
],
@@ -11,7 +11,7 @@
],
"license": "SPDX-License-Identifier: MIT",
"name": "ayu Mirage",
- "revision": 2
+ "revision": 3
},
"editor-colors": {
"BackgroundColor": "#1f2430",
@@ -176,5 +176,30 @@
"selected-text-color": "#f28779",
"text-color": "#f28779"
}
+ },
+ "custom-styles": {
+ "XML": {
+ "Attribute": {
+ "selected-text-color": "#ffd580",
+ "text-color": "#ffd580"
+ },
+ "Element": {
+ "selected-text-color": "#5ccfe6",
+ "text-color": "#5ccfe6",
+ "bold": false
+ },
+ "Element Symbols": {
+ "selected-text-color": "#4788a2",
+ "text-color": "#3d7a8b"
+ },
+ "EntityRef": {
+ "selected-text-color": "#95e6cb",
+ "text-color": "#95e6cb"
+ },
+ "PEntityRef": {
+ "selected-text-color": "#95e6cb",
+ "text-color": "#95e6cb"
+ }
+ }
}
}
diff --git a/src/libs/3rdparty/syntax-highlighting/data/themes/breeze-dark.theme b/src/libs/3rdparty/syntax-highlighting/data/themes/breeze-dark.theme
index 93f8fa9cac7..712da4acc4a 100644
--- a/src/libs/3rdparty/syntax-highlighting/data/themes/breeze-dark.theme
+++ b/src/libs/3rdparty/syntax-highlighting/data/themes/breeze-dark.theme
@@ -5,7 +5,7 @@
"SPDX-FileCopyrightText: 2016 Dominik Haumann "
],
"license": "SPDX-License-Identifier: MIT",
- "revision" : 2,
+ "revision" : 6,
"name" : "Breeze Dark"
},
"text-styles": {
@@ -36,8 +36,8 @@
"bold" : true
},
"Operator" : {
- "text-color" : "#cfcfc2",
- "selected-text-color" : "#cfcfc2"
+ "text-color" : "#3f8058",
+ "selected-text-color" : "#54aa75"
},
"BuiltIn" : {
"text-color" : "#7f8c8d",
@@ -149,7 +149,7 @@
"editor-colors": {
"BackgroundColor" : "#232629",
"CodeFolding" : "#224e65",
- "BracketMatching" : "#8e44ad",
+ "BracketMatching" : "#323030",
"CurrentLine" : "#2A2E32",
"IconBorder" : "#31363b",
"IndentationLine" : "#3a3f44",
@@ -167,7 +167,7 @@
"SavedLines" : "#1c8042",
"SearchHighlight" : "#218058",
"TextSelection" : "#2d5c76",
- "Separator" : "#7a7c7d",
+ "Separator" : "#3f4347",
"SpellChecking" : "#c0392b",
"TabMarker" : "#4d4d4d",
"TemplateBackground" : "#31363b",
diff --git a/src/libs/3rdparty/syntax-highlighting/data/themes/breeze-light.theme b/src/libs/3rdparty/syntax-highlighting/data/themes/breeze-light.theme
index 0a27e2d3548..7d0116bea95 100644
--- a/src/libs/3rdparty/syntax-highlighting/data/themes/breeze-light.theme
+++ b/src/libs/3rdparty/syntax-highlighting/data/themes/breeze-light.theme
@@ -5,7 +5,7 @@
"SPDX-FileCopyrightText: 2016 Dominik Haumann "
],
"license": "SPDX-License-Identifier: MIT",
- "revision" : 4,
+ "revision" : 8,
"name" : "Breeze Light"
},
"text-styles": {
@@ -36,8 +36,8 @@
"bold" : true
},
"Operator" : {
- "text-color" : "#1f1c1b",
- "selected-text-color" : "#ffffff"
+ "text-color" : "#ca60ca",
+ "selected-text-color" : "#a44ea4"
},
"BuiltIn" : {
"text-color" : "#644a9b",
@@ -167,7 +167,7 @@
"SavedLines" : "#2ecc71",
"SearchHighlight" : "#ffff00",
"TextSelection" : "#94caef",
- "Separator" : "#a0a0a0",
+ "Separator" : "#d5d5d5",
"SpellChecking" : "#bf0303",
"TabMarker" : "#d2d2d2",
"TemplateBackground" : "#d6d2d0",
diff --git a/src/libs/3rdparty/syntax-highlighting/data/themes/dracula.theme b/src/libs/3rdparty/syntax-highlighting/data/themes/dracula.theme
index 82786160b8f..93b1833334f 100644
--- a/src/libs/3rdparty/syntax-highlighting/data/themes/dracula.theme
+++ b/src/libs/3rdparty/syntax-highlighting/data/themes/dracula.theme
@@ -1,13 +1,547 @@
{
+ "custom-styles": {
+ "Alerts": {
+ "Region Marker": {
+ "selected-text-color": "#6db8c7",
+ "text-color": "#6db8c7"
+ }
+ },
+ "Apache Configuration": {
+ "Directives": {
+ "bold": false
+ }
+ },
+ "Bash": {
+ "Path": {
+ "selected-text-color": "#f1fa8c",
+ "text-color": "#f1fa8c"
+ },
+ "Redirection": {
+ "selected-text-color": "#ff79c6",
+ "text-color": "#ff79c6"
+ },
+ "Variable": {
+ "selected-text-color": "#bd93f9",
+ "text-color": "#bd93f9"
+ }
+ },
+ "C": {
+ "Prep. Lib": {
+ "selected-text-color": "#f1fa8c",
+ "text-color": "#f1fa8c"
+ }
+ },
+ "C++": {
+ "Qt Macros": {
+ "bold": false,
+ "selected-text-color": "#50fa7b",
+ "text-color": "#50fa7b"
+ }
+ },
+ "CMake": {
+ "Builtin Variable": {
+ "selected-text-color": "#ffb86c",
+ "text-color": "#ffb86c"
+ }
+ },
+ "CSS": {
+ "Color": {
+ "bold": false
+ },
+ "Property": {
+ "selected-text-color": "#8be9fd",
+ "text-color": "#8be9fd"
+ },
+ "Selector Class": {
+ "italic": true
+ },
+ "Selector Id": {
+ "bold": false,
+ "selected-text-color": "#50fa7b",
+ "text-color": "#50fa7b"
+ },
+ "Selector Pseudo": {
+ "selected-text-color": "#50fa7b",
+ "text-color": "#50fa7b"
+ },
+ "Selector Tag": {
+ "selected-text-color": "#ff79c6",
+ "text-color": "#ff79c6"
+ },
+ "Unit": {
+ "selected-text-color": "#ff79c6",
+ "text-color": "#ff79c6"
+ }
+ },
+ "D": {
+ "Attribute": {
+ "bold": false
+ },
+ "Declarator": {
+ "bold": false
+ },
+ "Deprecated": {
+ "bold": false
+ },
+ "Expression": {
+ "bold": false
+ },
+ "Module": {
+ "bold": false
+ },
+ "Property": {
+ "bold": false
+ },
+ "Template": {
+ "bold": false
+ }
+ },
+ "Diff": {
+ "Added line": {
+ "selected-text-color": "#5fde38",
+ "text-color": "#50fa7b"
+ },
+ "Changed line (new)": {
+ "background-color": "#50fa7b",
+ "selected-text-color": "#5fde38",
+ "text-color": "#50fa7b"
+ },
+ "Changed line (old)": {
+ "selected-text-color": "#e66eb4",
+ "text-color": "#ff79c6"
+ },
+ "Removed line": {
+ "selected-text-color": "#e66eb4",
+ "text-color": "#ff79c6"
+ }
+ },
+ "Doxygen": {
+ "Custom Tags": {
+ "selected-text-color": "#d465a7",
+ "text-color": "#d465a7"
+ },
+ "Description": {
+ "selected-text-color": "#c58e53",
+ "text-color": "#c58e53"
+ },
+ "Entities": {
+ "bold": false
+ },
+ "HTML Tag": {
+ "bold": false,
+ "selected-text-color": "#d465a7",
+ "text-color": "#d465a7"
+ },
+ "Region": {
+ "selected-text-color": "#6db8c7",
+ "text-color": "#6db8c7"
+ },
+ "Tags": {
+ "bold": false,
+ "selected-text-color": "#d465a7",
+ "text-color": "#d465a7"
+ },
+ "Word": {
+ "bold": false,
+ "selected-text-color": "#c58e53",
+ "text-color": "#c58e53"
+ }
+ },
+ "GNU Assembler": {
+ "Label": {
+ "underline": true
+ }
+ },
+ "Go": {
+ "Builtin Function": {
+ "selected-text-color": "#50fa7b",
+ "text-color": "#50fa7b"
+ }
+ },
+ "HTML": {
+ "Doctype": {
+ "bold": false,
+ "italic": false,
+ "selected-text-color": "#ff79c6",
+ "text-color": "#ff79c6"
+ }
+ },
+ "ISO C++": {
+ "Prep. Lib": {
+ "selected-text-color": "#f1fa8c",
+ "text-color": "#f1fa8c"
+ },
+ "Standard Suffix": {
+ "selected-text-color": "#ff79c6",
+ "text-color": "#ff79c6"
+ },
+ "UDL Numeric Suffix": {
+ "selected-text-color": "#ff79c6",
+ "text-color": "#ff79c6"
+ },
+ "UDL String Suffix": {
+ "selected-text-color": "#ff79c6",
+ "text-color": "#ff79c6"
+ }
+ },
+ "Intel x86 (NASM)": {
+ "Label": {
+ "underline": true
+ },
+ "Registers": {
+ "selected-text-color": "#ffb86c",
+ "text-color": "#ffb86c"
+ }
+ },
+ "JSON": {
+ "Style_Keyword": {
+ "selected-text-color": "#bd93f9",
+ "text-color": "#bd93f9"
+ },
+ "Style_String_Key": {
+ "italic": false
+ }
+ },
+ "JavaScript": {
+ "Built-in Objects": {
+ "italic": true
+ },
+ "Function (Built-in)": {
+ "selected-text-color": "#50fa7b",
+ "text-color": "#50fa7b"
+ },
+ "Object Member": {
+ "selected-text-color": "#f8f8f2",
+ "text-color": "#f8f8f2"
+ }
+ },
+ "JavaScript React (JSX)": {
+ "Attribute": {
+ "italic": true
+ },
+ "Component Tag": {
+ "bold": false,
+ "selected-text-color": "#8be9fd",
+ "text-color": "#8be9fd"
+ }
+ },
+ "Makefile": {
+ "Operator": {
+ "selected-text-color": "#ff79c6",
+ "text-color": "#ff79c6"
+ },
+ "Prereq": {
+ "italic": false,
+ "selected-text-color": "#f1fa8c",
+ "text-color": "#f1fa8c"
+ },
+ "Target": {
+ "selected-text-color": "#8be9fd",
+ "text-color": "#8be9fd"
+ },
+ "Variable": {
+ "selected-text-color": "#ffb86c",
+ "text-color": "#ffb86c"
+ }
+ },
+ "Markdown": {
+ "Blockquote: Link": {
+ "selected-text-color": "#8be9fd",
+ "text-color": "#8be9fd"
+ },
+ "Email": {
+ "selected-text-color": "#8be9fd",
+ "text-color": "#8be9fd"
+ },
+ "Emphasis Text": {
+ "selected-text-color": "#f1fa8c",
+ "text-color": "#f1fa8c"
+ },
+ "Header H1": {
+ "selected-text-color": "#bd93f9",
+ "text-color": "#bd93f9"
+ },
+ "Header H2": {
+ "selected-text-color": "#bd93f9",
+ "text-color": "#bd93f9"
+ },
+ "Header H3": {
+ "selected-text-color": "#bd93f9",
+ "text-color": "#bd93f9"
+ },
+ "Header H4": {
+ "selected-text-color": "#bd93f9",
+ "text-color": "#bd93f9"
+ },
+ "Header H5": {
+ "selected-text-color": "#bd93f9",
+ "text-color": "#bd93f9"
+ },
+ "Header H6": {
+ "selected-text-color": "#bd93f9",
+ "text-color": "#bd93f9"
+ },
+ "Inline Image": {
+ "selected-text-color": "#ffb86c",
+ "text-color": "#ffb86c"
+ },
+ "Inline Image: Link": {
+ "selected-text-color": "#8be9fd",
+ "text-color": "#8be9fd"
+ },
+ "Link": {
+ "selected-text-color": "#8be9fd",
+ "text-color": "#8be9fd"
+ },
+ "List: Emphasis Text": {
+ "selected-text-color": "#f1fa8c",
+ "text-color": "#f1fa8c"
+ },
+ "List: Link": {
+ "selected-text-color": "#8be9fd",
+ "text-color": "#8be9fd"
+ },
+ "List: Strong Text": {
+ "selected-text-color": "#ffb86c",
+ "text-color": "#ffb86c"
+ },
+ "Normal Text: Link": {
+ "selected-text-color": "#8be9fd",
+ "text-color": "#8be9fd"
+ },
+ "Reference Image": {
+ "selected-text-color": "#ffb86c",
+ "text-color": "#ffb86c"
+ },
+ "Reference-Link": {
+ "selected-text-color": "#8be9fd",
+ "text-color": "#8be9fd"
+ },
+ "Reference-Link Name": {
+ "selected-text-color": "#ff79c6",
+ "text-color": "#ff79c6",
+ "underline": false
+ },
+ "Reference-Link Target": {
+ "selected-text-color": "#ff79c6",
+ "text-color": "#ff79c6"
+ },
+ "Reference-Link Target: Link": {
+ "selected-text-color": "#8be9fd",
+ "text-color": "#8be9fd"
+ },
+ "Reference-Link: Link": {
+ "selected-text-color": "#8be9fd",
+ "text-color": "#8be9fd"
+ },
+ "Strong Text": {
+ "selected-text-color": "#ffb86c",
+ "text-color": "#ffb86c"
+ }
+ },
+ "Modelines": {
+ "Variable": {
+ "selected-text-color": "#c58e53",
+ "text-color": "#c58e53"
+ }
+ },
+ "PHP/PHP": {
+ "Backslash Code": {
+ "bold": false,
+ "selected-text-color": "#ff79c6",
+ "text-color": "#ff79c6"
+ },
+ "Control Structures": {
+ "selected-text-color": "#ff79c6",
+ "text-color": "#ff79c6"
+ },
+ "Library Constant": {
+ "bold": false,
+ "selected-text-color": "#bd93f9",
+ "text-color": "#bd93f9"
+ },
+ "Special Variable": {
+ "bold": false,
+ "selected-text-color": "#f8f8f2",
+ "text-color": "#f8f8f2"
+ },
+ "Variable": {
+ "selected-text-color": "#f8f8f2",
+ "text-color": "#f8f8f2"
+ }
+ },
+ "Python": {
+ "Builtin Function": {
+ "selected-text-color": "#50fa7b",
+ "text-color": "#50fa7b"
+ },
+ "Special Variable": {
+ "selected-text-color": "#bd93f9",
+ "text-color": "#bd93f9"
+ }
+ },
+ "QMake": {
+ "Backslash Code": {
+ "bold": false
+ },
+ "Predefined Variable": {
+ "bold": false,
+ "selected-text-color": "#ffb86c",
+ "text-color": "#ffb86c"
+ }
+ },
+ "Ruby": {
+ "Access Control": {
+ "bold": false,
+ "selected-text-color": "#50fa7b",
+ "text-color": "#50fa7b"
+ },
+ "Default globals": {
+ "bold": false
+ },
+ "Definition": {
+ "selected-text-color": "#50fa7b",
+ "text-color": "#50fa7b"
+ },
+ "Global Constant": {
+ "bold": false,
+ "italic": true,
+ "selected-text-color": "#8be9fd",
+ "text-color": "#8be9fd"
+ },
+ "Kernel methods": {
+ "bold": false,
+ "selected-text-color": "#8be9fd",
+ "text-color": "#8be9fd"
+ },
+ "Message": {
+ "selected-text-color": "#50fa7b",
+ "text-color": "#50fa7b"
+ },
+ "Module mixin methods": {
+ "bold": false
+ },
+ "Pseudo variable": {
+ "selected-text-color": "#50fa7b",
+ "text-color": "#50fa7b"
+ }
+ },
+ "Rust": {
+ "Attribute": {
+ "selected-text-color": "#f8f8f2",
+ "text-color": "#f8f8f2"
+ },
+ "CConstant": {
+ "bold": false
+ },
+ "CType": {
+ "italic": true,
+ "selected-text-color": "#8be9fd",
+ "text-color": "#8be9fd"
+ },
+ "Constant": {
+ "bold": false
+ },
+ "Definition": {
+ "selected-text-color": "#50fa7b",
+ "text-color": "#50fa7b"
+ },
+ "Lifetime": {
+ "selected-text-color": "#ff79c6",
+ "text-color": "#ff79c6"
+ },
+ "Macro": {
+ "selected-text-color": "#8be9fd",
+ "text-color": "#8be9fd"
+ },
+ "Scope": {
+ "selected-text-color": "#f8f8f2",
+ "text-color": "#f8f8f2"
+ },
+ "Self": {
+ "italic": true,
+ "selected-text-color": "#bd93f9",
+ "text-color": "#bd93f9"
+ },
+ "Trait": {
+ "selected-text-color": "#f8f8f2",
+ "text-color": "#f8f8f2"
+ }
+ },
+ "SPDX-Comments": {
+ "SPDX Deprecated License": {
+ "selected-text-color": "#d465a7",
+ "text-color": "#d465a7"
+ },
+ "SPDX Deprecated License Exception": {
+ "selected-text-color": "#d465a7",
+ "text-color": "#d465a7"
+ },
+ "SPDX License": {
+ "selected-text-color": "#d465a7",
+ "text-color": "#d465a7"
+ },
+ "SPDX License Exception": {
+ "selected-text-color": "#d465a7",
+ "text-color": "#d465a7"
+ },
+ "SPDX Tag": {
+ "selected-text-color": "#d465a7",
+ "text-color": "#d465a7"
+ },
+ "SPDX Value": {
+ "selected-text-color": "#d465a7",
+ "text-color": "#d465a7"
+ }
+ },
+ "TypeScript": {
+ "Built-in Objects": {
+ "italic": true
+ },
+ "Function (Built-in)": {
+ "selected-text-color": "#50fa7b",
+ "text-color": "#50fa7b"
+ },
+ "Object Member": {
+ "selected-text-color": "#f8f8f2",
+ "text-color": "#f8f8f2"
+ }
+ },
+ "TypeScript React (TSX)": {
+ "Attribute": {
+ "italic": true
+ },
+ "Component Tag": {
+ "bold": false,
+ "selected-text-color": "#8be9fd",
+ "text-color": "#8be9fd"
+ }
+ },
+ "YAML": {
+ "Attribute": {
+ "selected-text-color": "#f1fa8c",
+ "text-color": "#f1fa8c"
+ },
+ "Key": {
+ "bold": false,
+ "selected-text-color": "#8be9fd",
+ "text-color": "#8be9fd"
+ },
+ "List": {
+ "selected-text-color": "#f1fa8c",
+ "text-color": "#f1fa8c"
+ }
+ }
+ },
"editor-colors": {
"BackgroundColor": "#282a36",
- "BracketMatching": "#55007f",
- "CodeFolding": "#8be9fd",
- "CurrentLine": "#282a36",
+ "BracketMatching": "#7c62a5",
+ "CodeFolding": "#44475a",
+ "CurrentLine": "#44475a",
"CurrentLineNumber": "#f8f8f2",
"IconBorder": "#282a36",
"IndentationLine": "#6272a4",
- "LineNumbers": "#909194",
+ "LineNumbers": "#6272a4",
"MarkBookmark": "#8be9fd",
"MarkBreakpointActive": "#ff5555",
"MarkBreakpointDisabled": "#bd93f9",
@@ -16,10 +550,10 @@
"MarkExecution": "#44475a",
"MarkWarning": "#ffb86c",
"ModifiedLines": "#ff79c6",
- "ReplaceHighlight": "#50fa7b",
+ "ReplaceHighlight": "#2c8843",
"SavedLines": "#50fa7b",
- "SearchHighlight": "#b39800",
- "Separator": "#909194",
+ "SearchHighlight": "#566591",
+ "Separator": "#45474e",
"SpellChecking": "#ff5555",
"TabMarker": "#6272a4",
"TemplateBackground": "#282a36",
@@ -36,7 +570,7 @@
],
"license": "SPDX-License-Identifier: MIT",
"name": "Dracula",
- "revision": 1
+ "revision": 7
},
"text-styles": {
"Alert": {
@@ -49,20 +583,20 @@
"text-color": "#ff79c6"
},
"Attribute": {
- "selected-text-color": "#8be9fd",
- "text-color": "#8be9fd"
+ "selected-text-color": "#ff79c6",
+ "text-color": "#ff79c6"
},
"BaseN": {
- "selected-text-color": "#ffb86c",
- "text-color": "#ffb86c"
+ "selected-text-color": "#bd93f9",
+ "text-color": "#bd93f9"
},
"BuiltIn": {
"selected-text-color": "#8be9fd",
"text-color": "#8be9fd"
},
"Char": {
- "selected-text-color": "#ff79c6",
- "text-color": "#ff79c6"
+ "selected-text-color": "#f1fa8c",
+ "text-color": "#f1fa8c"
},
"Comment": {
"selected-text-color": "#6272a4",
@@ -78,17 +612,17 @@
"text-color": "#bd93f9"
},
"ControlFlow": {
- "bold": true,
- "selected-text-color": "#ffb86c",
- "text-color": "#ffb86c"
+ "selected-text-color": "#ff79c6",
+ "text-color": "#ff79c6"
},
"DataType": {
+ "italic": true,
"selected-text-color": "#8be9fd",
"text-color": "#8be9fd"
},
"DecVal": {
- "selected-text-color": "#ffb86c",
- "text-color": "#ffb86c"
+ "selected-text-color": "#bd93f9",
+ "text-color": "#bd93f9"
},
"Documentation": {
"selected-text-color": "#ffb86c",
@@ -100,13 +634,12 @@
"underline": true
},
"Extension": {
- "bold": true,
- "selected-text-color": "#0095ff",
- "text-color": "#0095ff"
+ "selected-text-color": "#8be9fd",
+ "text-color": "#8be9fd"
},
"Float": {
- "selected-text-color": "#ffb86c",
- "text-color": "#ffb86c"
+ "selected-text-color": "#bd93f9",
+ "text-color": "#bd93f9"
},
"Function": {
"selected-text-color": "#50fa7b",
@@ -117,11 +650,10 @@
"text-color": "#ff79c6"
},
"Information": {
- "selected-text-color": "#f67400",
- "text-color": "#f67400"
+ "selected-text-color": "#f1fa8c",
+ "text-color": "#f1fa8c"
},
"Keyword": {
- "bold": true,
"selected-text-color": "#ff79c6",
"text-color": "#ff79c6"
},
@@ -138,8 +670,8 @@
"text-color": "#50fa7b"
},
"Preprocessor": {
- "selected-text-color": "#50fa7b",
- "text-color": "#50fa7b"
+ "selected-text-color": "#ff79c6",
+ "text-color": "#ff79c6"
},
"RegionMarker": {
"selected-text-color": "#8be9fd",
diff --git a/src/libs/3rdparty/syntax-highlighting/data/themes/github-dark.theme b/src/libs/3rdparty/syntax-highlighting/data/themes/github-dark.theme
new file mode 100644
index 00000000000..313e99f0529
--- /dev/null
+++ b/src/libs/3rdparty/syntax-highlighting/data/themes/github-dark.theme
@@ -0,0 +1,216 @@
+{
+ "custom-styles": {
+ "INI Files": {
+ "Section": {
+ "selected-text-color": "#b392f0",
+ "text-color": "#b392f0"
+ }
+ },
+ "Python": {
+ "Builtin Function": {
+ "selected-text-color": "#b392f0",
+ "text-color": "#b392f0"
+ },
+ "Import": {
+ "selected-text-color": "#f97583",
+ "text-color": "#f97583"
+ },
+ "Special Variable": {
+ "selected-text-color": "#79b8ff",
+ "text-color": "#79b8ff"
+ }
+ },
+ "Rust": {
+ "Attribute": {
+ "selected-text-color": "#e1e4e8",
+ "text-color": "#e1e4e8"
+ },
+ "Macro": {
+ "selected-text-color": "#79b8ff",
+ "text-color": "#79b8ff"
+ },
+ "Self": {
+ "selected-text-color": "#79b8ff",
+ "text-color": "#79b8ff"
+ },
+ "Trait": {
+ "selected-text-color": "#e1e4e8",
+ "text-color": "#e1e4e8"
+ }
+ },
+ "XML": {
+ "Element": {
+ "selected-text-color": "#85e89d",
+ "text-color": "#85e89d"
+ }
+ }
+ },
+ "editor-colors": {
+ "BackgroundColor": "#24292e",
+ "BracketMatching": "#65676a",
+ "CodeFolding": "#253749",
+ "CurrentLine": "#2b3036",
+ "CurrentLineNumber": "#e1e4e8",
+ "IconBorder": "#24292e",
+ "IndentationLine": "#d7dbe0",
+ "LineNumbers": "#444d56",
+ "MarkBookmark": "#8be9fd",
+ "MarkBreakpointActive": "#ff5555",
+ "MarkBreakpointDisabled": "#bd93f9",
+ "MarkBreakpointReached": "#f1fa8c",
+ "MarkError": "#b31d28",
+ "MarkExecution": "#44475a",
+ "MarkWarning": "#ffab70",
+ "ModifiedLines": "#f97583",
+ "ReplaceHighlight": "#40c661",
+ "SavedLines": "#28a745",
+ "SearchHighlight": "#404030",
+ "Separator": "#1b1f23",
+ "SpellChecking": "#ff5555",
+ "TabMarker": "#444d56",
+ "TemplateBackground": "#23241e",
+ "TemplateFocusedPlaceholder": "#22231d",
+ "TemplatePlaceholder": "#22231d",
+ "TemplateReadOnlyPlaceholder": "#262721",
+ "TextSelection": "#253749",
+ "WordWrapMarker": "#2f3031"
+ },
+ "metadata": {
+ "copyright": [
+ "SPDX-FileCopyrightText: 2020 GitHub Inc.",
+ "SPDX-FileCopyrightText: 2020 Waqar Ahmed "
+ ],
+ "license": "SPDX-License-Identifier: MIT",
+ "name": "GitHub Dark",
+ "revision": 2
+ },
+ "text-styles": {
+ "Alert": {
+ "bold": true,
+ "selected-text-color": "#ff5555",
+ "text-color": "#ff5555"
+ },
+ "Annotation": {
+ "selected-text-color": "#6a737d",
+ "text-color": "#6a737d"
+ },
+ "Attribute": {
+ "selected-text-color": "#f97583",
+ "text-color": "#f97583"
+ },
+ "BaseN": {
+ "selected-text-color": "#79b8ff",
+ "text-color": "#79b8ff"
+ },
+ "BuiltIn": {
+ "selected-text-color": "#f97583",
+ "text-color": "#f97583"
+ },
+ "Char": {
+ "selected-text-color": "#9ecbff",
+ "text-color": "#9ecbff"
+ },
+ "Comment": {
+ "selected-text-color": "#6a737d",
+ "text-color": "#6a737d"
+ },
+ "CommentVar": {
+ "selected-text-color": "#6a737d",
+ "text-color": "#6a737d"
+ },
+ "Constant": {
+ "selected-text-color": "#79b8ff",
+ "text-color": "#79b8ff"
+ },
+ "ControlFlow": {
+ "selected-text-color": "#f97583",
+ "text-color": "#f97583"
+ },
+ "DataType": {
+ "selected-text-color": "#f97583",
+ "text-color": "#f97583"
+ },
+ "DecVal": {
+ "selected-text-color": "#79b8ff",
+ "text-color": "#79b8ff"
+ },
+ "Documentation": {
+ "selected-text-color": "#6a737d",
+ "text-color": "#6a737d"
+ },
+ "Error": {
+ "selected-text-color": "#ff5555",
+ "text-color": "#ff5555",
+ "underline": true
+ },
+ "Extension": {
+ "bold": true,
+ "selected-text-color": "#f97583",
+ "text-color": "#f97583"
+ },
+ "Float": {
+ "selected-text-color": "#79b8ff",
+ "text-color": "#79b8ff"
+ },
+ "Function": {
+ "selected-text-color": "#b392f0",
+ "text-color": "#b392f0"
+ },
+ "Import": {
+ "selected-text-color": "#9ecbff",
+ "text-color": "#9ecbff"
+ },
+ "Information": {
+ "selected-text-color": "#6a737d",
+ "text-color": "#6a737d"
+ },
+ "Keyword": {
+ "selected-text-color": "#f97583",
+ "text-color": "#f97583"
+ },
+ "Normal": {
+ "selected-text-color": "#e1e4e8",
+ "text-color": "#e1e4e8"
+ },
+ "Operator": {
+ "selected-text-color": "#e1e4e8",
+ "text-color": "#e1e4e8"
+ },
+ "Others": {
+ "selected-text-color": "#b392f0",
+ "text-color": "#b392f0"
+ },
+ "Preprocessor": {
+ "selected-text-color": "#f97583",
+ "text-color": "#f97583"
+ },
+ "RegionMarker": {
+ "selected-text-color": "#6a737d",
+ "text-color": "#6a737d"
+ },
+ "SpecialChar": {
+ "selected-text-color": "#79b8ff",
+ "text-color": "#79b8ff"
+ },
+ "SpecialString": {
+ "selected-text-color": "#9ecbff",
+ "text-color": "#9ecbff"
+ },
+ "String": {
+ "selected-text-color": "#9ecbff",
+ "text-color": "#9ecbff"
+ },
+ "Variable": {
+ "selected-text-color": "#ffab70",
+ "text-color": "#ffab70"
+ },
+ "VerbatimString": {
+ "selected-text-color": "#9ecbff",
+ "text-color": "#9ecbff"
+ },
+ "Warning": {
+ "selected-text-color": "#ff5555",
+ "text-color": "#ff5555"
+ }
+ }
+}
diff --git a/src/libs/3rdparty/syntax-highlighting/data/themes/github-light.theme b/src/libs/3rdparty/syntax-highlighting/data/themes/github-light.theme
new file mode 100644
index 00000000000..5f465c653ce
--- /dev/null
+++ b/src/libs/3rdparty/syntax-highlighting/data/themes/github-light.theme
@@ -0,0 +1,216 @@
+{
+ "custom-styles": {
+ "INI Files": {
+ "Section": {
+ "selected-text-color": "#6f42c1",
+ "text-color": "#6f42c1"
+ }
+ },
+ "Python": {
+ "Builtin Function": {
+ "selected-text-color": "#6f42c1",
+ "text-color": "#6f42c1"
+ },
+ "Import": {
+ "selected-text-color": "#d73a49",
+ "text-color": "#d73a49"
+ },
+ "Special Variable": {
+ "selected-text-color": "#005cc5",
+ "text-color": "#005cc5"
+ }
+ },
+ "Rust": {
+ "Attribute": {
+ "selected-text-color": "#24292e",
+ "text-color": "#24292e"
+ },
+ "Macro": {
+ "selected-text-color": "#005cc5",
+ "text-color": "#005cc5"
+ },
+ "Self": {
+ "selected-text-color": "#005cc5",
+ "text-color": "#005cc5"
+ },
+ "Trait": {
+ "selected-text-color": "#24292e",
+ "text-color": "#24292e"
+ }
+ },
+ "XML": {
+ "Element": {
+ "selected-text-color": "#22863a",
+ "text-color": "#22863a"
+ }
+ }
+ },
+ "editor-colors": {
+ "BackgroundColor": "#ffffff",
+ "BracketMatching": "#bef5cb",
+ "CodeFolding": "#f6f8fa",
+ "CurrentLine": "#f6f8fa",
+ "CurrentLineNumber": "#24292e",
+ "IconBorder": "#ffffff",
+ "IndentationLine": "#d7dbe0",
+ "LineNumbers": "#c7c2bc",
+ "MarkBookmark": "#8be9fd",
+ "MarkBreakpointActive": "#ff5555",
+ "MarkBreakpointDisabled": "#bd93f9",
+ "MarkBreakpointReached": "#f1fa8c",
+ "MarkError": "#b31d28",
+ "MarkExecution": "#44475a",
+ "MarkWarning": "#e36209",
+ "ModifiedLines": "#d73a49",
+ "ReplaceHighlight": "#50fa7b",
+ "SavedLines": "#28a745",
+ "SearchHighlight": "#ffea7f",
+ "Separator": "#e1e4e8",
+ "SpellChecking": "#ff5555",
+ "TabMarker": "#d1d5da",
+ "TemplateBackground": "#23241e",
+ "TemplateFocusedPlaceholder": "#22231d",
+ "TemplatePlaceholder": "#22231d",
+ "TemplateReadOnlyPlaceholder": "#262721",
+ "TextSelection": "#dee6fc",
+ "WordWrapMarker": "#e1e4e8"
+ },
+ "metadata": {
+ "copyright": [
+ "SPDX-FileCopyrightText: 2020 GitHub Inc.",
+ "SPDX-FileCopyrightText: 2020 Waqar Ahmed "
+ ],
+ "license": "SPDX-License-Identifier: MIT",
+ "name": "GitHub Light",
+ "revision": 2
+ },
+ "text-styles": {
+ "Alert": {
+ "bold": true,
+ "selected-text-color": "#ff5555",
+ "text-color": "#ff5555"
+ },
+ "Annotation": {
+ "selected-text-color": "#6a737d",
+ "text-color": "#6a737d"
+ },
+ "Attribute": {
+ "selected-text-color": "#d73a49",
+ "text-color": "#d73a49"
+ },
+ "BaseN": {
+ "selected-text-color": "#005cc5",
+ "text-color": "#005cc5"
+ },
+ "BuiltIn": {
+ "selected-text-color": "#d73a49",
+ "text-color": "#d73a49"
+ },
+ "Char": {
+ "selected-text-color": "#032f62",
+ "text-color": "#032f62"
+ },
+ "Comment": {
+ "selected-text-color": "#6a737d",
+ "text-color": "#6a737d"
+ },
+ "CommentVar": {
+ "selected-text-color": "#6a737d",
+ "text-color": "#6a737d"
+ },
+ "Constant": {
+ "selected-text-color": "#005cc5",
+ "text-color": "#005cc5"
+ },
+ "ControlFlow": {
+ "selected-text-color": "#d73a49",
+ "text-color": "#d73a49"
+ },
+ "DataType": {
+ "selected-text-color": "#d73a49",
+ "text-color": "#d73a49"
+ },
+ "DecVal": {
+ "selected-text-color": "#005cc5",
+ "text-color": "#005cc5"
+ },
+ "Documentation": {
+ "selected-text-color": "#6a737d",
+ "text-color": "#6a737d"
+ },
+ "Error": {
+ "selected-text-color": "#ff5555",
+ "text-color": "#ff5555",
+ "underline": true
+ },
+ "Extension": {
+ "bold": true,
+ "selected-text-color": "#d73a49",
+ "text-color": "#d73a49"
+ },
+ "Float": {
+ "selected-text-color": "#005cc5",
+ "text-color": "#005cc5"
+ },
+ "Function": {
+ "selected-text-color": "#6f42c1",
+ "text-color": "#6f42c1"
+ },
+ "Import": {
+ "selected-text-color": "#032f62",
+ "text-color": "#032f62"
+ },
+ "Information": {
+ "selected-text-color": "#6a737d",
+ "text-color": "#6a737d"
+ },
+ "Keyword": {
+ "selected-text-color": "#d73a49",
+ "text-color": "#d73a49"
+ },
+ "Normal": {
+ "selected-text-color": "#24292e",
+ "text-color": "#24292e"
+ },
+ "Operator": {
+ "selected-text-color": "#24292e",
+ "text-color": "#24292e"
+ },
+ "Others": {
+ "selected-text-color": "#6f42c1",
+ "text-color": "#6f42c1"
+ },
+ "Preprocessor": {
+ "selected-text-color": "#d73a49",
+ "text-color": "#d73a49"
+ },
+ "RegionMarker": {
+ "selected-text-color": "#6a737d",
+ "text-color": "#6a737d"
+ },
+ "SpecialChar": {
+ "selected-text-color": "#005cc5",
+ "text-color": "#005cc5"
+ },
+ "SpecialString": {
+ "selected-text-color": "#032f62",
+ "text-color": "#032f62"
+ },
+ "String": {
+ "selected-text-color": "#032f62",
+ "text-color": "#032f62"
+ },
+ "Variable": {
+ "selected-text-color": "#e36209",
+ "text-color": "#e36209"
+ },
+ "VerbatimString": {
+ "selected-text-color": "#032f62",
+ "text-color": "#032f62"
+ },
+ "Warning": {
+ "selected-text-color": "#ff5555",
+ "text-color": "#ff5555"
+ }
+ }
+}
diff --git a/src/libs/3rdparty/syntax-highlighting/data/themes/monokai.theme b/src/libs/3rdparty/syntax-highlighting/data/themes/monokai.theme
new file mode 100644
index 00000000000..3df8e66c005
--- /dev/null
+++ b/src/libs/3rdparty/syntax-highlighting/data/themes/monokai.theme
@@ -0,0 +1,394 @@
+{
+ "custom-styles": {
+ "C": {
+ "Prep. Lib": {
+ "selected-text-color": "#e6db74",
+ "text-color": "#e6db74"
+ }
+ },
+ "C++": {
+ "Qt Classes": {
+ "bold": false,
+ "selected-text-color": "#66d9ef",
+ "text-color": "#66d9ef"
+ },
+ "Qt Macros": {
+ "bold": false,
+ "selected-text-color": "#f92672",
+ "text-color": "#f92672"
+ },
+ "Qt Types": {
+ "bold": false,
+ "selected-text-color": "#66D9EF",
+ "text-color": "#66D9EF"
+ }
+ },
+ "CMake": {
+ "Builtin Variable": {
+ "selected-text-color": "#f8f8f2",
+ "text-color": "#f8f8f2"
+ },
+ "False Special Arg": {
+ "selected-text-color": "#e03232",
+ "text-color": "#e03232"
+ },
+ "True Special Arg": {
+ "selected-text-color": "#38bd38",
+ "text-color": "#38bd38"
+ }
+ },
+ "Doxygen": {
+ "Tags": {
+ "bold": false,
+ "selected-text-color": "#52afbf",
+ "text-color": "#52afbf"
+ },
+ "Word": {
+ "bold": false,
+ "selected-text-color": "#7ba822",
+ "text-color": "#7ba822",
+ "underline": true
+ }
+ },
+ "Diff": {
+ "Added line": {
+ "selected-text-color": "#a6e22e",
+ "text-color": "#a6e22e"
+ },
+ "Changed line (new)": {
+ "selected-text-color": "#a6e22e",
+ "text-color": "#a6e22e"
+ },
+ "Changed line (old)": {
+ "selected-text-color": "#f92672",
+ "text-color": "#f92672"
+ },
+ "Removed line": {
+ "selected-text-color": "#f92672",
+ "text-color": "#f92672"
+ }
+ },
+ "Go": {
+ "Builtin Function": {
+ "selected-text-color": "#a6e22e",
+ "text-color": "#a6e22e"
+ },
+ "Predeclared Identifier": {
+ "selected-text-color": "#ae81ff",
+ "text-color": "#ae81ff"
+ }
+ },
+ "ISO C++": {
+ "Attribute": {
+ "selected-text-color": "#f8f8f2",
+ "text-color": "#f8f8f2"
+ },
+ "Boost Stuff": {
+ "bold": false
+ },
+ "Prep. Lib": {
+ "selected-text-color": "#e6db74",
+ "text-color": "#e6db74"
+ },
+ "Standard Attribute": {
+ "selected-text-color": "#f8f8f2",
+ "text-color": "#f8f8f2"
+ },
+ "Standard Macros": {
+ "selected-text-color": "#f92672",
+ "text-color": "#f92672"
+ },
+ "Standard Suffix": {
+ "selected-text-color": "#f92672",
+ "text-color": "#f92672"
+ },
+ "UDL Numeric Suffix": {
+ "selected-text-color": "#f92672",
+ "text-color": "#f92672"
+ },
+ "UDL String Suffix": {
+ "selected-text-color": "#f92672",
+ "text-color": "#f92672"
+ }
+ },
+ "JSON": {
+ "Style_String_Key": {
+ "italic": false,
+ "selected-text-color": "#f92672",
+ "text-color": "#f92672"
+ }
+ },
+ "JavaScript": {
+ "Object Member": {
+ "selected-text-color": "#f8f8f2",
+ "text-color": "#f8f8f2"
+ },
+ "Substitution": {
+ "selected-text-color": "#f92672",
+ "text-color": "#f92672"
+ }
+ },
+ "JavaScript React (JSX)": {
+ "Component Tag": {
+ "bold": false,
+ "selected-text-color": "#66d9ef",
+ "text-color": "#66d9ef"
+ }
+ },
+ "Makefile": {
+ "FuncParam": {
+ "selected-text-color": "#fd971f",
+ "text-color": "#fd971f"
+ },
+ "Target": {
+ "selected-text-color": "#a6e22e",
+ "text-color": "#a6e22e"
+ },
+ "Variable": {
+ "italic": false,
+ "selected-text-color": "#f8f8f2",
+ "text-color": "#f8f8f2"
+ }
+ },
+ "Markdown": {
+ "Emphasis Text": {
+ "selected-text-color": "#66D9EF",
+ "text-color": "#66D9EF"
+ },
+ "Reference-Link ID": {
+ "selected-text-color": "#ae81ff",
+ "text-color": "#ae81ff"
+ },
+ "Reference-Link Name": {
+ "selected-text-color": "#ae81ff",
+ "text-color": "#ae81ff"
+ },
+ "Reference-Link Target": {
+ "selected-text-color": "#ae81ff",
+ "text-color": "#ae81ff"
+ },
+ "Strong Text": {
+ "selected-text-color": "#66d9ef",
+ "text-color": "#66d9ef"
+ }
+ },
+ "Python": {
+ "Import": {
+ "selected-text-color": "#f92672",
+ "text-color": "#f92672"
+ }
+ },
+ "Rust": {
+ "Definition": {
+ "selected-text-color": "#a6e22e",
+ "text-color": "#a6e22e"
+ },
+ "Lifetime": {
+ "selected-text-color": "#f92672",
+ "text-color": "#f92672"
+ },
+ "Macro": {
+ "selected-text-color": "#a6e22e",
+ "text-color": "#a6e22e"
+ },
+ "Self": {
+ "selected-text-color": "#fd971f",
+ "text-color": "#fd971f"
+ }
+ },
+ "TypeScript": {
+ "Function (Built-in)": {
+ "selected-text-color": "#a6e22e",
+ "text-color": "#a6e22e"
+ },
+ "Object Member": {
+ "selected-text-color": "#f8f8f2",
+ "text-color": "#f8f8f2"
+ },
+ "Substitution": {
+ "selected-text-color": "#f92672",
+ "text-color": "#f92672"
+ }
+ },
+ "TypeScript React (TSX)": {
+ "Component Tag": {
+ "bold": false,
+ "selected-text-color": "#66d9ef",
+ "text-color": "#66d9ef"
+ },
+ "Substitution": {
+ "selected-text-color": "#f92672",
+ "text-color": "#f92672"
+ }
+ }
+ },
+ "editor-colors": {
+ "BackgroundColor": "#272822",
+ "BracketMatching": "#5b5a4a",
+ "CodeFolding": "#3a3b32",
+ "CurrentLine": "#3e3d32",
+ "CurrentLineNumber": "#d1d931",
+ "IconBorder": "#272822",
+ "IndentationLine": "#6272a4",
+ "LineNumbers": "#909194",
+ "MarkBookmark": "#66D9EF",
+ "MarkBreakpointActive": "#ff5555",
+ "MarkBreakpointDisabled": "#bd93f9",
+ "MarkBreakpointReached": "#f1fa8c",
+ "MarkError": "#ff5555",
+ "MarkExecution": "#44475a",
+ "MarkWarning": "#ffb86c",
+ "ModifiedLines": "#ff473d",
+ "ReplaceHighlight": "#735d16",
+ "SavedLines": "#20e852",
+ "SearchHighlight": "#245676",
+ "Separator": "#45474e",
+ "SpellChecking": "#ff5555",
+ "TabMarker": "#6272a4",
+ "TemplateBackground": "#23241e",
+ "TemplateFocusedPlaceholder": "#22231d",
+ "TemplatePlaceholder": "#22231d",
+ "TemplateReadOnlyPlaceholder": "#262721",
+ "TextSelection": "#3f413e",
+ "WordWrapMarker": "#282a36"
+ },
+ "metadata": {
+ "copyright": [
+ "SPDX-FileCopyrightText: 2006 Wimer Hazenberg",
+ "SPDX-FileCopyrightText: 2020 Waqar Ahmed "
+ ],
+ "license": "SPDX-License-Identifier: MIT",
+ "name": "Monokai",
+ "revision": 5
+ },
+ "text-styles": {
+ "Alert": {
+ "bold": true,
+ "selected-text-color": "#ff5555",
+ "text-color": "#ff5555"
+ },
+ "Annotation": {
+ "selected-text-color": "#75715e",
+ "text-color": "#75715e"
+ },
+ "Attribute": {
+ "selected-text-color": "#f92672",
+ "text-color": "#f92672"
+ },
+ "BaseN": {
+ "selected-text-color": "#ae81ff",
+ "text-color": "#ae81ff"
+ },
+ "BuiltIn": {
+ "selected-text-color": "#66D9EF",
+ "text-color": "#66D9EF"
+ },
+ "Char": {
+ "selected-text-color": "#e6db74",
+ "text-color": "#e6db74"
+ },
+ "Comment": {
+ "selected-text-color": "#75715e",
+ "text-color": "#75715e"
+ },
+ "CommentVar": {
+ "selected-text-color": "#75715e",
+ "text-color": "#75715e"
+ },
+ "Constant": {
+ "selected-text-color": "#ae81ff",
+ "text-color": "#ae81ff"
+ },
+ "ControlFlow": {
+ "selected-text-color": "#f92672",
+ "text-color": "#f92672"
+ },
+ "DataType": {
+ "italic": true,
+ "selected-text-color": "#66d9ef",
+ "text-color": "#66d9ef"
+ },
+ "DecVal": {
+ "selected-text-color": "#ae81ff",
+ "text-color": "#ae81ff"
+ },
+ "Documentation": {
+ "selected-text-color": "#75715e",
+ "text-color": "#75715e"
+ },
+ "Error": {
+ "selected-text-color": "#ff5555",
+ "text-color": "#ff5555",
+ "underline": true
+ },
+ "Extension": {
+ "bold": true,
+ "selected-text-color": "#a6e22e",
+ "text-color": "#a6e22e"
+ },
+ "Float": {
+ "selected-text-color": "#ae81ff",
+ "text-color": "#ae81ff"
+ },
+ "Function": {
+ "selected-text-color": "#a6e22e",
+ "text-color": "#a6e22e"
+ },
+ "Import": {
+ "selected-text-color": "#f92672",
+ "text-color": "#f92672"
+ },
+ "Information": {
+ "selected-text-color": "#f1fa8c",
+ "text-color": "#f1fa8c"
+ },
+ "Keyword": {
+ "selected-text-color": "#f92672",
+ "text-color": "#f92672"
+ },
+ "Normal": {
+ "selected-text-color": "#f8f8f2",
+ "text-color": "#f8f8f2"
+ },
+ "Operator": {
+ "selected-text-color": "#f8f8f2",
+ "text-color": "#f8f8f2"
+ },
+ "Others": {
+ "selected-text-color": "#a6e22e",
+ "text-color": "#a6e22e"
+ },
+ "Preprocessor": {
+ "selected-text-color": "#f92672",
+ "text-color": "#f92672"
+ },
+ "RegionMarker": {
+ "selected-text-color": "#75715e",
+ "text-color": "#75715e"
+ },
+ "SpecialChar": {
+ "selected-text-color": "#ae81ff",
+ "text-color": "#ae81ff"
+ },
+ "SpecialString": {
+ "selected-text-color": "#e6db74",
+ "text-color": "#e6db74"
+ },
+ "String": {
+ "selected-text-color": "#e6db74",
+ "text-color": "#e6db74"
+ },
+ "Variable": {
+ "selected-text-color": "#f8f8f2",
+ "text-color": "#f8f8f2"
+ },
+ "VerbatimString": {
+ "selected-text-color": "#e6db74",
+ "text-color": "#e6db74"
+ },
+ "Warning": {
+ "selected-text-color": "#ff5555",
+ "text-color": "#ff5555"
+ }
+ }
+}
diff --git a/src/libs/3rdparty/syntax-highlighting/data/themes/oblivion.theme b/src/libs/3rdparty/syntax-highlighting/data/themes/oblivion.theme
new file mode 100644
index 00000000000..a433fb883a4
--- /dev/null
+++ b/src/libs/3rdparty/syntax-highlighting/data/themes/oblivion.theme
@@ -0,0 +1,179 @@
+{
+ "_comments": [
+ "This theme has been adapted from the GtkSourceView Oblivion theme"
+ ],
+ "metadata": {
+ "copyright": [
+ "SPDX-FileCopyrightText: 2007 Paolo Borelli , GtkSourceView team",
+ "SPDX-FileCopyrightText: 2020 Alexander Schlarb "
+ ],
+ "name": "Oblivion",
+ "revision": 2,
+ "license": "SPDX-License-Identifier: MIT"
+ },
+ "text-styles": {
+ "Alert": {
+ "background-color": "#451e1a",
+ "bold": true,
+ "selected-text-color": "#e85848",
+ "text-color": "#e85848"
+ },
+ "Annotation": {
+ "selected-text-color": "#ad7fa8",
+ "text-color": "#ad7fa8"
+ },
+ "Attribute": {
+ "selected-text-color": "#ad7fa8",
+ "text-color": "#ad7fa8"
+ },
+ "BaseN": {
+ "selected-text-color": "#fce94f",
+ "text-color": "#edd400"
+ },
+ "BuiltIn": {
+ "selected-text-color": "#729fcf",
+ "text-color": "#729fcf"
+ },
+ "Char": {
+ "selected-text-color": "#fcaf3e",
+ "text-color": "#ce5c00"
+ },
+ "Comment": {
+ "selected-text-color": "#8ae234",
+ "text-color": "#30a100"
+ },
+ "CommentVar": {
+ "selected-text-color": "#ad7fa8",
+ "text-color": "#ad7fa8"
+ },
+ "Constant": {
+ "bold": true,
+ "selected-text-color": "#ffffff",
+ "text-color": "#edd400"
+ },
+ "ControlFlow": {
+ "bold": true,
+ "selected-text-color": "#ffffff",
+ "text-color": "#ffffff"
+ },
+ "DataType": {
+ "selected-text-color": "#508ed8",
+ "text-color": "#508ed8"
+ },
+ "DecVal": {
+ "selected-text-color": "#fce94f",
+ "text-color": "#edd400"
+ },
+ "Documentation": {
+ "selected-text-color": "#8ae234",
+ "text-color": "#4e9a06"
+ },
+ "Error": {
+ "selected-text-color": "#e85848",
+ "text-color": "#e85848",
+ "underline": true
+ },
+ "Extension": {
+ "bold": true,
+ "selected-text-color": "#508ed8",
+ "text-color": "#508ed8"
+ },
+ "Float": {
+ "selected-text-color": "#fcaf3e",
+ "text-color": "#ce5c00"
+ },
+ "Function": {
+ "bold": true,
+ "selected-text-color": "#729fcf",
+ "text-color": "#729fcf"
+ },
+ "Import": {
+ "selected-text-color": "#ad7fa8",
+ "text-color": "#ad7fa8"
+ },
+ "Information": {
+ "selected-text-color": "#c0a25f",
+ "text-color": "#c0a25f"
+ },
+ "Keyword": {
+ "bold": true,
+ "selected-text-color": "#ffffff",
+ "text-color": "#ffffff"
+ },
+ "Normal": {
+ "selected-text-color": "#eeeeec",
+ "text-color": "#d3d7c1"
+ },
+ "Operator": {
+ "selected-text-color": "#eeeeec",
+ "text-color": "#eeeeec"
+ },
+ "Others": {
+ "selected-text-color": "#fce94f",
+ "text-color": "#edd400"
+ },
+ "Preprocessor": {
+ "selected-text-color": "#ad7fa8",
+ "text-color": "#ad7fa8"
+ },
+ "RegionMarker": {
+ "background-color": "#1c2c3f",
+ "selected-text-color": "#508ed8",
+ "text-color": "#508ed8"
+ },
+ "SpecialChar": {
+ "selected-text-color": "#fcaf3e",
+ "text-color": "#ce5c00"
+ },
+ "SpecialString": {
+ "selected-text-color": "#fce94f",
+ "text-color": "#fce94f"
+ },
+ "String": {
+ "selected-text-color": "#fce94f",
+ "text-color": "#edd400"
+ },
+ "Variable": {
+ "selected-text-color": "#ce5c00",
+ "text-color": "#ce5c00"
+ },
+ "VerbatimString": {
+ "selected-text-color": "#fce94f",
+ "text-color": "#c4a000"
+ },
+ "Warning": {
+ "selected-text-color": "#e85848",
+ "text-color": "#e85848"
+ }
+ },
+ "editor-colors": {
+ "BackgroundColor": "#201f1f",
+ "BracketMatching": "#8f5902",
+ "CodeFolding": "#19395f",
+ "CurrentLine": "#2e3436",
+ "CurrentLineNumber": "#ffffff",
+ "IconBorder": "#302f2f",
+ "IndentationLine": "#989595",
+ "LineNumbers": "#e0dedb",
+ "MarkBookmark": "#0000cc",
+ "MarkBreakpointActive": "#cc0000",
+ "MarkBreakpointDisabled": "#cc00cc",
+ "MarkBreakpointReached": "#00cc00",
+ "MarkError": "#cc0000",
+ "MarkExecution": "#888a85",
+ "MarkWarning": "#ad7fa8",
+ "ModifiedLines": "#451e1a",
+ "ReplaceHighlight": "#356703",
+ "SavedLines": "#23321a",
+ "SearchHighlight": "#4e9a06",
+ "Separator": "#787775",
+ "SpellChecking": "#e85848",
+ "TabMarker": "#555753",
+ "TemplateBackground": "#302f2f",
+ "TemplateFocusedPlaceholder": "#23321a",
+ "TemplatePlaceholder": "#23321a",
+ "TemplateReadOnlyPlaceholder": "#451e1a",
+ "TextSelection": "#184880",
+ "WordWrapMarker": "#3c3a3a"
+ }
+}
diff --git a/src/libs/3rdparty/syntax-highlighting/data/themes/solarized-dark.theme b/src/libs/3rdparty/syntax-highlighting/data/themes/solarized-dark.theme
index 035e1db9c06..b8d13b31d3c 100644
--- a/src/libs/3rdparty/syntax-highlighting/data/themes/solarized-dark.theme
+++ b/src/libs/3rdparty/syntax-highlighting/data/themes/solarized-dark.theme
@@ -9,7 +9,7 @@
"SPDX-FileCopyrightText: 2018 Andrew Crouthamel "
],
"license": "SPDX-License-Identifier: MIT",
- "revision" : 2,
+ "revision" : 5,
"name" : "Solarized Dark"
},
"text-styles": {
@@ -23,8 +23,7 @@
},
"Keyword" : {
"text-color" : "#859900",
- "selected-text-color" : "#859900",
- "bold" : true
+ "selected-text-color" : "#859900"
},
"Function" : {
"text-color" : "#268bd2",
@@ -36,8 +35,7 @@
},
"ControlFlow" : {
"text-color" : "#859900",
- "selected-text-color" : "#859900",
- "bold" : true
+ "selected-text-color" : "#859900"
},
"Operator" : {
"text-color" : "#859900",
@@ -49,8 +47,7 @@
},
"Extension" : {
"text-color" : "#268bd2",
- "selected-text-color" : "#268bd2",
- "bold" : true
+ "selected-text-color" : "#268bd2"
},
"Preprocessor" : {
"text-color" : "#cb4b16",
@@ -86,8 +83,7 @@
},
"DataType" : {
"text-color" : "#b58900",
- "selected-text-color" : "#b58900",
- "bold" : true
+ "selected-text-color" : "#b58900"
},
"DecVal" : {
"text-color" : "#2aa198",
@@ -153,13 +149,13 @@
},
"editor-colors": {
"BackgroundColor" : "#002b36",
- "CodeFolding" : "#6c71c4",
- "BracketMatching" : "#073642",
+ "CodeFolding": "#083d4a",
+ "BracketMatching" : "#083d4a",
"CurrentLine" : "#073642",
"IconBorder" : "#073642",
- "IndentationLine" : "#073642",
+ "IndentationLine" : "#083d4a",
"LineNumbers" : "#586e75",
- "CurrentLineNumber" : "#586e75",
+ "CurrentLineNumber": "#93a1a1",
"MarkBookmark" : "#268bd2",
"MarkBreakpointActive" : "#dc322f",
"MarkBreakpointReached" : "#b58900",
@@ -168,11 +164,11 @@
"MarkWarning" : "#cb4b16",
"MarkError" : "#dc322f",
"ModifiedLines" : "#cb4b16",
- "ReplaceHighlight" : "#859900",
+ "ReplaceHighlight": "#3c4300",
"SavedLines" : "#2aa198",
- "SearchHighlight" : "#b58900",
- "TextSelection" : "#eee8d5",
- "Separator" : "#002b36",
+ "SearchHighlight": "#0a4d5e",
+ "TextSelection": "#083d4a",
+ "Separator" : "#1c3e49",
"SpellChecking" : "#dc322f",
"TabMarker" : "#586e75",
"TemplateBackground" : "#073642",
@@ -180,5 +176,17 @@
"TemplateFocusedPlaceholder" : "#073642",
"TemplateReadOnlyPlaceholder" : "#073642",
"WordWrapMarker" : "#586e75"
+ },
+ "custom-styles": {
+ "XML": {
+ "Element": {
+ "selected-text-color": "#839496",
+ "text-color": "#268bd2"
+ },
+ "Element Symbols": {
+ "selected-text-color": "#586e75",
+ "text-color": "#657b83"
+ }
+ }
}
}
diff --git a/src/libs/3rdparty/syntax-highlighting/data/themes/solarized-light.theme b/src/libs/3rdparty/syntax-highlighting/data/themes/solarized-light.theme
index 8cab40db480..a532b128f8d 100644
--- a/src/libs/3rdparty/syntax-highlighting/data/themes/solarized-light.theme
+++ b/src/libs/3rdparty/syntax-highlighting/data/themes/solarized-light.theme
@@ -9,7 +9,7 @@
"SPDX-FileCopyrightText: 2018 Andrew Crouthamel "
],
"license": "SPDX-License-Identifier: MIT",
- "revision" : 2,
+ "revision" : 4,
"name" : "Solarized Light"
},
"text-styles": {
@@ -172,7 +172,7 @@
"SavedLines" : "#2aa198",
"SearchHighlight" : "#b58900",
"TextSelection" : "#073642",
- "Separator" : "#fdf6e3",
+ "Separator" : "#e0dccc",
"SpellChecking" : "#dc322f",
"TabMarker" : "#93a1a1",
"TemplateBackground" : "#eee8d5",
@@ -180,5 +180,17 @@
"TemplateFocusedPlaceholder" : "#eee8d5",
"TemplateReadOnlyPlaceholder" : "#eee8d5",
"WordWrapMarker" : "#93a1a1"
+ },
+ "custom-styles": {
+ "XML": {
+ "Element": {
+ "selected-text-color": "#268bd2",
+ "text-color": "#268bd2"
+ },
+ "Element Symbols": {
+ "selected-text-color": "#93a1a1",
+ "text-color": "#839496"
+ }
+ }
}
}
diff --git a/src/libs/3rdparty/syntax-highlighting/data/themes/theme-data.qrc b/src/libs/3rdparty/syntax-highlighting/data/themes/theme-data.qrc
index 0a6f24385ac..fe0a1627be6 100644
--- a/src/libs/3rdparty/syntax-highlighting/data/themes/theme-data.qrc
+++ b/src/libs/3rdparty/syntax-highlighting/data/themes/theme-data.qrc
@@ -1,15 +1,21 @@
+ atom-one-dark.theme
+ atom-one-light.theme
breeze-dark.theme
breeze-light.theme
ayu-dark.theme
ayu-light.theme
ayu-mirage.theme
dracula.theme
+ github-dark.theme
+ github-light.theme
gruvbox-dark.theme
gruvbox-light.theme
+ monokai.theme
nord.theme
+ oblivion.theme
printing.theme
radical.theme
solarized-dark.theme
diff --git a/src/libs/3rdparty/syntax-highlighting/src/cli/CMakeLists.txt b/src/libs/3rdparty/syntax-highlighting/src/cli/CMakeLists.txt
index 113115359e2..1a4d24d8284 100644
--- a/src/libs/3rdparty/syntax-highlighting/src/cli/CMakeLists.txt
+++ b/src/libs/3rdparty/syntax-highlighting/src/cli/CMakeLists.txt
@@ -2,4 +2,4 @@ add_executable(kate-syntax-highlighter kate-syntax-highlighter.cpp)
ecm_mark_nongui_executable(kate-syntax-highlighter)
target_link_libraries(kate-syntax-highlighter KF5SyntaxHighlighting)
-install(TARGETS kate-syntax-highlighter ${INSTALL_TARGETS_DEFAULT_ARGS})
+install(TARGETS kate-syntax-highlighter ${KDE_INSTALL_TARGETS_DEFAULT_ARGS})
diff --git a/src/libs/3rdparty/syntax-highlighting/src/cli/kate-syntax-highlighter.cpp b/src/libs/3rdparty/syntax-highlighting/src/cli/kate-syntax-highlighter.cpp
index a178c1ba277..a009c4f2591 100644
--- a/src/libs/3rdparty/syntax-highlighting/src/cli/kate-syntax-highlighter.cpp
+++ b/src/libs/3rdparty/syntax-highlighting/src/cli/kate-syntax-highlighter.cpp
@@ -6,10 +6,10 @@
#include "ksyntaxhighlighting_version.h"
+#include
#include
#include
#include
-#include
#include
#include
@@ -21,8 +21,14 @@
using namespace KSyntaxHighlighting;
-template
-static void applyHighlighter(Highlighter &highlighter, QCommandLineParser &parser, bool fromFileName, const QString &inFileName, const QCommandLineOption &stdinOption, const QCommandLineOption &outputName, const Ts &...highlightParams)
+template
+static void applyHighlighter(Highlighter &highlighter,
+ QCommandLineParser &parser,
+ bool fromFileName,
+ const QString &inFileName,
+ const QCommandLineOption &stdinOption,
+ const QCommandLineOption &outputName,
+ const Ts &...highlightParams)
{
if (parser.isSet(outputName))
highlighter.setOutputFile(parser.value(outputName));
@@ -56,16 +62,19 @@ int main(int argc, char **argv)
parser.addVersionOption();
parser.addPositionalArgument(app.translate("SyntaxHighlightingCLI", "source"), app.translate("SyntaxHighlightingCLI", "The source file to highlight."));
- QCommandLineOption listDefs(QStringList() << QStringLiteral("l") << QStringLiteral("list"), app.translate("SyntaxHighlightingCLI", "List all available syntax definitions."));
+ QCommandLineOption listDefs(QStringList() << QStringLiteral("l") << QStringLiteral("list"),
+ app.translate("SyntaxHighlightingCLI", "List all available syntax definitions."));
parser.addOption(listDefs);
QCommandLineOption listThemes(QStringList() << QStringLiteral("list-themes"), app.translate("SyntaxHighlightingCLI", "List all available themes."));
parser.addOption(listThemes);
- QCommandLineOption updateDefs(QStringList() << QStringLiteral("u") << QStringLiteral("update"), app.translate("SyntaxHighlightingCLI", "Download new/updated syntax definitions."));
+ QCommandLineOption updateDefs(QStringList() << QStringLiteral("u") << QStringLiteral("update"),
+ app.translate("SyntaxHighlightingCLI", "Download new/updated syntax definitions."));
parser.addOption(updateDefs);
- QCommandLineOption outputName(
- QStringList() << QStringLiteral("o") << QStringLiteral("output"), app.translate("SyntaxHighlightingCLI", "File to write HTML output to (default: stdout)."), app.translate("SyntaxHighlightingCLI", "output"));
+ QCommandLineOption outputName(QStringList() << QStringLiteral("o") << QStringLiteral("output"),
+ app.translate("SyntaxHighlightingCLI", "File to write HTML output to (default: stdout)."),
+ app.translate("SyntaxHighlightingCLI", "output"));
parser.addOption(outputName);
QCommandLineOption syntaxName(QStringList() << QStringLiteral("s") << QStringLiteral("syntax"),
@@ -73,18 +82,23 @@ int main(int argc, char **argv)
app.translate("SyntaxHighlightingCLI", "syntax"));
parser.addOption(syntaxName);
- QCommandLineOption themeName(
- QStringList() << QStringLiteral("t") << QStringLiteral("theme"), app.translate("SyntaxHighlightingCLI", "Color theme to use for highlighting."), app.translate("SyntaxHighlightingCLI", "theme"), repo.defaultTheme(Repository::LightTheme).name());
+ QCommandLineOption themeName(QStringList() << QStringLiteral("t") << QStringLiteral("theme"),
+ app.translate("SyntaxHighlightingCLI", "Color theme to use for highlighting."),
+ app.translate("SyntaxHighlightingCLI", "theme"),
+ repo.defaultTheme(Repository::LightTheme).name());
parser.addOption(themeName);
- QCommandLineOption outputFormatOption(QStringList() << QStringLiteral("f") << QStringLiteral("output-format"),
- app.translate("SyntaxHighlightingCLI", "Use the specified format instead of html. Must be html, ansi or ansi256Colors."),
- app.translate("SyntaxHighlightingCLI", "format"),
- QStringLiteral("html"));
+ QCommandLineOption outputFormatOption(
+ QStringList() << QStringLiteral("f") << QStringLiteral("output-format"),
+ app.translate("SyntaxHighlightingCLI", "Use the specified format instead of html. Must be html, ansi or ansi256Colors."),
+ app.translate("SyntaxHighlightingCLI", "format"),
+ QStringLiteral("html"));
parser.addOption(outputFormatOption);
QCommandLineOption traceOption(QStringList() << QStringLiteral("syntax-trace"),
- app.translate("SyntaxHighlightingCLI", "Add information to debug a syntax file. Only works with --output-format=ansi or ansi256Colors. Possible values are format, region and context."),
+ app.translate("SyntaxHighlightingCLI",
+ "Add information to debug a syntax file. Only works with --output-format=ansi or ansi256Colors. Possible "
+ "values are format, region, context and stackSize."),
app.translate("SyntaxHighlightingCLI", "type"));
parser.addOption(traceOption);
@@ -92,12 +106,14 @@ int main(int argc, char **argv)
app.translate("SyntaxHighlightingCLI", "Disable ANSI background for the default color."));
parser.addOption(noAnsiEditorBg);
- QCommandLineOption titleOption(QStringList() << QStringLiteral("T") << QStringLiteral("title"),
- app.translate("SyntaxHighlightingCLI", "Set HTML page's title\n(default: the filename or \"Kate Syntax Highlighter\" if reading from stdin)."),
- app.translate("SyntaxHighlightingCLI", "title"));
+ QCommandLineOption titleOption(
+ QStringList() << QStringLiteral("T") << QStringLiteral("title"),
+ app.translate("SyntaxHighlightingCLI", "Set HTML page's title\n(default: the filename or \"Kate Syntax Highlighter\" if reading from stdin)."),
+ app.translate("SyntaxHighlightingCLI", "title"));
parser.addOption(titleOption);
- QCommandLineOption stdinOption(QStringList() << QStringLiteral("stdin"), app.translate("SyntaxHighlightingCLI", "Read file from stdin. The -s option must also be used."));
+ QCommandLineOption stdinOption(QStringList() << QStringLiteral("stdin"),
+ app.translate("SyntaxHighlightingCLI", "Read file from stdin. The -s option must also be used."));
parser.addOption(stdinOption);
parser.process(app);
@@ -117,7 +133,9 @@ int main(int argc, char **argv)
if (parser.isSet(updateDefs)) {
DefinitionDownloader downloader(&repo);
- QObject::connect(&downloader, &DefinitionDownloader::informationMessage, [](const QString &msg) { std::cout << qPrintable(msg) << std::endl; });
+ QObject::connect(&downloader, &DefinitionDownloader::informationMessage, [](const QString &msg) {
+ std::cout << qPrintable(msg) << std::endl;
+ });
QObject::connect(&downloader, &DefinitionDownloader::done, &app, &QCoreApplication::quit);
downloader.start();
return app.exec();
@@ -139,7 +157,7 @@ int main(int argc, char **argv)
def = repo.definitionForMimeType(syntax);
if (!def.isValid()) {
/* see if it's a extension instead */
- def = repo.definitionForFileName(QLatin1String("f.")+syntax);
+ def = repo.definitionForFileName(QLatin1String("f.") + syntax);
if (!def.isValid())
/* see if it's a filename instead */
def = repo.definitionForFileName(syntax);
@@ -178,13 +196,15 @@ int main(int argc, char **argv)
auto debugOptions = AnsiHighlighter::TraceOptions();
if (parser.isSet(traceOption)) {
const auto options = parser.values(traceOption);
- for (auto const& option : options) {
+ for (auto const &option : options) {
if (option == QStringLiteral("format")) {
debugOptions |= AnsiHighlighter::TraceOption::Format;
} else if (option == QStringLiteral("region")) {
debugOptions |= AnsiHighlighter::TraceOption::Region;
} else if (option == QStringLiteral("context")) {
debugOptions |= AnsiHighlighter::TraceOption::Context;
+ } else if (option == QStringLiteral("stackSize")) {
+ debugOptions |= AnsiHighlighter::TraceOption::StackSize;
} else {
std::cerr << "Unknown trace name." << std::endl;
return 2;
diff --git a/src/libs/3rdparty/syntax-highlighting/src/indexer/CMakeLists.txt b/src/libs/3rdparty/syntax-highlighting/src/indexer/CMakeLists.txt
index 9fa26b27cef..508cd276cc3 100644
--- a/src/libs/3rdparty/syntax-highlighting/src/indexer/CMakeLists.txt
+++ b/src/libs/3rdparty/syntax-highlighting/src/indexer/CMakeLists.txt
@@ -27,7 +27,7 @@ elseif(CMAKE_CROSSCOMPILING)
${CMAKE_CURRENT_BINARY_DIR}/native_katehighlightingindexer-prefix/src/native_katehighlightingindexer-build/bin/katehighlightingindexer)
else()
# host build
- add_executable(katehighlightingindexer katehighlightingindexer.cpp)
+ add_executable(katehighlightingindexer katehighlightingindexer.cpp ../lib/worddelimiters.cpp)
if(Qt5XmlPatterns_FOUND)
target_link_libraries(katehighlightingindexer Qt5::XmlPatterns)
else()
diff --git a/src/libs/3rdparty/syntax-highlighting/src/indexer/katehighlightingindexer.cpp b/src/libs/3rdparty/syntax-highlighting/src/indexer/katehighlightingindexer.cpp
index b5d04934e6b..86b3a38b12d 100644
--- a/src/libs/3rdparty/syntax-highlighting/src/indexer/katehighlightingindexer.cpp
+++ b/src/libs/3rdparty/syntax-highlighting/src/indexer/katehighlightingindexer.cpp
@@ -1,14 +1,16 @@
/*
SPDX-FileCopyrightText: 2014 Christoph Cullmann
+ SPDX-FileCopyrightText: 2020 Jonathan Poelen
SPDX-License-Identifier: MIT
*/
+#include
#include
#include
#include
#include
-#include
+#include
#include
#include
#include
@@ -18,10 +20,2300 @@
#include
#endif
+#include "../lib/worddelimiters_p.h"
#include "../lib/xml_p.h"
+#include
+
+using KSyntaxHighlighting::WordDelimiters;
using KSyntaxHighlighting::Xml::attrToBool;
+class HlFilesChecker
+{
+public:
+ void setDefinition(const QStringRef &verStr, const QString &filename, const QString &name)
+ {
+ m_currentDefinition = &*m_definitions.insert(name, Definition{});
+ m_currentDefinition->languageName = name;
+ m_currentDefinition->filename = filename;
+ m_currentDefinition->kateVersionStr = verStr.toString();
+ m_currentKeywords = nullptr;
+ m_currentContext = nullptr;
+
+ const auto idx = verStr.indexOf(QLatin1Char('.'));
+ if (idx <= 0) {
+ qWarning() << filename << "invalid kateversion" << verStr;
+ m_success = false;
+ } else {
+ m_currentDefinition->kateVersion = {verStr.left(idx).toInt(), verStr.mid(idx + 1).toInt()};
+ }
+ }
+
+ void processElement(QXmlStreamReader &xml)
+ {
+ if (xml.isStartElement()) {
+ if (m_currentContext) {
+ m_currentContext->rules.append(Context::Rule{});
+ auto &rule = m_currentContext->rules.back();
+ m_success = rule.parseElement(m_currentDefinition->filename, xml) && m_success;
+ } else if (m_currentKeywords) {
+ m_success = m_currentKeywords->items.parseElement(m_currentDefinition->filename, xml) && m_success;
+ } else if (xml.name() == QStringLiteral("context")) {
+ processContextElement(xml);
+ } else if (xml.name() == QStringLiteral("list")) {
+ processListElement(xml);
+ } else if (xml.name() == QStringLiteral("keywords")) {
+ m_success = m_currentDefinition->parseKeywords(xml) && m_success;
+ } else if (xml.name() == QStringLiteral("emptyLine")) {
+ m_success = parseEmptyLine(m_currentDefinition->filename, xml) && m_success;
+ } else if (xml.name() == QStringLiteral("itemData")) {
+ m_success = m_currentDefinition->itemDatas.parseElement(m_currentDefinition->filename, xml) && m_success;
+ }
+ } else if (xml.isEndElement()) {
+ if (m_currentContext && xml.name() == QStringLiteral("context")) {
+ m_currentContext = nullptr;
+ } else if (m_currentKeywords && xml.name() == QStringLiteral("list")) {
+ m_currentKeywords = nullptr;
+ }
+ }
+ }
+
+ //! Resolve context attribute and include tag
+ void resolveContexts()
+ {
+ QMutableMapIterator def(m_definitions);
+ while (def.hasNext()) {
+ def.next();
+ auto &definition = def.value();
+ auto &contexts = definition.contexts;
+
+ if (contexts.isEmpty()) {
+ qWarning() << definition.filename << "has no context";
+ m_success = false;
+ continue;
+ }
+
+ QMutableMapIterator contextIt(contexts);
+ while (contextIt.hasNext()) {
+ contextIt.next();
+ auto &context = contextIt.value();
+ resolveContextName(definition, context, context.lineEndContext, context.line);
+ resolveContextName(definition, context, context.lineEmptyContext, context.line);
+ resolveContextName(definition, context, context.fallthroughContext, context.line);
+ for (auto &rule : context.rules) {
+ resolveContextName(definition, context, rule.context, rule.line);
+ }
+ }
+
+ definition.firstContext = &*definition.contexts.find(definition.firstContextName);
+ }
+
+ resolveIncludeRules();
+ }
+
+ bool check() const
+ {
+ bool success = m_success;
+
+ const auto usedContexts = extractUsedContexts();
+
+ QMap maxVersionByDefinitions;
+
+ QMapIterator def(m_definitions);
+ while (def.hasNext()) {
+ def.next();
+ const auto &definition = def.value();
+ const auto &filename = definition.filename;
+
+ auto *maxDef = maxKateVersionDefinition(definition, maxVersionByDefinitions);
+ if (maxDef != &definition) {
+ qWarning() << definition.filename << "depends on a language" << maxDef->languageName << "in version" << maxDef->kateVersionStr
+ << ". Please, increase kateversion.";
+ success = false;
+ }
+
+ QSet referencedKeywords;
+ QSet usedAttributeNames;
+ success = checkKeywordsList(definition, referencedKeywords) && success;
+ success = checkContexts(definition, referencedKeywords, usedAttributeNames, usedContexts) && success;
+
+ // search for non-existing or unreferenced keyword lists.
+ for (const auto &keywords : definition.keywordsList) {
+ if (!referencedKeywords.contains(&keywords)) {
+ qWarning() << filename << "line" << keywords.line << "unused keyword:" << keywords.name;
+ }
+ }
+
+ // search for non-existing itemDatas.
+ const auto invalidNames = usedAttributeNames - definition.itemDatas.styleNames;
+ for (const auto &styleName : invalidNames) {
+ qWarning() << filename << "line" << styleName.line << "reference of non-existing itemData attributes:" << styleName.name;
+ success = false;
+ }
+
+ // search for unused itemDatas.
+ const auto unusedNames = definition.itemDatas.styleNames - usedAttributeNames;
+ for (const auto &styleName : unusedNames) {
+ qWarning() << filename << "line" << styleName.line << "unused itemData:" << styleName.name;
+ success = false;
+ }
+ }
+
+ return success;
+ }
+
+private:
+ enum class XmlBool {
+ Unspecified,
+ False,
+ True,
+ };
+
+ struct Context;
+
+ struct ContextName {
+ QString name;
+ int popCount = 0;
+ bool stay = false;
+
+ const Context *context = nullptr;
+ };
+
+ struct Parser {
+ const QString &filename;
+ QXmlStreamReader &xml;
+ QXmlStreamAttribute &attr;
+ bool success;
+
+ //! Read a string type attribute, \c sucess = \c false when \p str is not empty
+ //! \return \c true when attr.name() == attrName, otherwise false
+ bool extractString(QString &str, const QString &attrName)
+ {
+ if (attr.name() != attrName)
+ return false;
+
+ str = attr.value().toString();
+ if (str.isEmpty()) {
+ qWarning() << filename << "line" << xml.lineNumber() << attrName << "attribute is empty";
+ success = false;
+ }
+
+ return true;
+ }
+
+ //! Read a bool type attribute, \c sucess = \c false when \p xmlBool is not \c XmlBool::Unspecified.
+ //! \return \c true when attr.name() == attrName, otherwise false
+ bool extractXmlBool(XmlBool &xmlBool, const QString &attrName)
+ {
+ if (attr.name() != attrName)
+ return false;
+
+ xmlBool = attr.value().isNull() ? XmlBool::Unspecified : attrToBool(attr.value()) ? XmlBool::True : XmlBool::False;
+
+ return true;
+ }
+
+ //! Read a positive integer type attribute, \c sucess = \c false when \p positive is already greater than or equal to 0
+ //! \return \c true when attr.name() == attrName, otherwise false
+ bool extractPositive(int &positive, const QString &attrName)
+ {
+ if (attr.name() != attrName)
+ return false;
+
+ bool ok = true;
+ positive = attr.value().toInt(&ok);
+
+ if (!ok || positive < 0) {
+ qWarning() << filename << "line" << xml.lineNumber() << attrName << "should be a positive integer:" << attr.value();
+ success = false;
+ }
+
+ return true;
+ }
+
+ //! Read a color, \c sucess = \c false when \p color is already greater than or equal to 0
+ //! \return \c true when attr.name() == attrName, otherwise false
+ bool checkColor(const QString &attrName)
+ {
+ if (attr.name() != attrName)
+ return false;
+
+ const auto value = attr.value().toString();
+ if (value.isEmpty() /*|| QColor(value).isValid()*/) {
+ qWarning() << filename << "line" << xml.lineNumber() << attrName << "should be a color:" << attr.value();
+ success = false;
+ }
+
+ return true;
+ }
+
+ //! Read a QChar, \c sucess = \c false when \p c is not \c '\0' or does not have one char
+ //! \return \c true when attr.name() == attrName, otherwise false
+ bool extractChar(QChar &c, const QString &attrName)
+ {
+ if (attr.name() != attrName)
+ return false;
+
+ if (attr.value().size() == 1)
+ c = attr.value()[0];
+ else {
+ c = QLatin1Char('_');
+ qWarning() << filename << "line" << xml.lineNumber() << attrName << "must contain exactly one char:" << attr.value();
+ success = false;
+ }
+
+ return true;
+ }
+
+ //! \return parsing status when \p isExtracted is \c true, otherwise \c false
+ bool checkIfExtracted(bool isExtracted)
+ {
+ if (isExtracted)
+ return success;
+
+ qWarning() << filename << "line" << xml.lineNumber() << "unknown attribute:" << attr.name();
+ return false;
+ }
+ };
+
+ struct Keywords {
+ struct Items {
+ struct Item {
+ QString content;
+ int line;
+
+ friend uint qHash(const Item &item, uint seed = 0)
+ {
+ return qHash(item.content, seed);
+ }
+
+ friend bool operator==(const Item &item0, const Item &item1)
+ {
+ return item0.content == item1.content;
+ }
+ };
+
+ QVector- keywords;
+ QSet
- includes;
+
+ bool parseElement(const QString &filename, QXmlStreamReader &xml)
+ {
+ bool success = true;
+
+ const int line = xml.lineNumber();
+ QString content = xml.readElementText();
+
+ if (content.isEmpty()) {
+ qWarning() << filename << "line" << line << "is empty:" << xml.name();
+ success = false;
+ }
+
+ if (xml.name() == QStringLiteral("include")) {
+ includes.insert({content, line});
+ } else if (xml.name() == QStringLiteral("item")) {
+ keywords.append({content, line});
+ } else {
+ qWarning() << filename << "line" << line << "invalid element:" << xml.name();
+ success = false;
+ }
+
+ return success;
+ }
+ };
+
+ QString name;
+ Items items;
+ int line;
+
+ bool parseElement(const QString &filename, QXmlStreamReader &xml)
+ {
+ line = xml.lineNumber();
+
+ bool success = true;
+ for (auto &attr : xml.attributes()) {
+ Parser parser{filename, xml, attr, success};
+
+ const bool isExtracted = parser.extractString(name, QStringLiteral("name"));
+
+ success = parser.checkIfExtracted(isExtracted);
+ }
+ return success;
+ }
+ };
+
+ struct Context {
+ struct Rule {
+ enum class Type {
+ Unknown,
+ AnyChar,
+ Detect2Chars,
+ DetectChar,
+ DetectIdentifier,
+ DetectSpaces,
+ Float,
+ HlCChar,
+ HlCHex,
+ HlCOct,
+ HlCStringChar,
+ IncludeRules,
+ Int,
+ LineContinue,
+ RangeDetect,
+ RegExpr,
+ StringDetect,
+ WordDetect,
+ keyword,
+ };
+
+ Type type{};
+
+ bool isDotRegex = false;
+ int line = -1;
+
+ // commonAttributes
+ QString attribute;
+ ContextName context;
+ QString beginRegion;
+ QString endRegion;
+ int column = -1;
+ XmlBool lookAhead{};
+ XmlBool firstNonSpace{};
+
+ // StringDetect, WordDetect, keyword
+ XmlBool insensitive{};
+
+ // DetectChar, StringDetect, RegExpr, keyword
+ XmlBool dynamic{};
+
+ // Regex
+ XmlBool minimal{};
+
+ // DetectChar, Detect2Chars, LineContinue, RangeDetect
+ QChar char0;
+ // Detect2Chars, RangeDetect
+ QChar char1;
+
+ // AnyChar, DetectChar, StringDetect, RegExpr, WordDetect, keyword
+ QString string;
+
+ // Float, HlCHex, HlCOct, Int, WordDetect, keyword
+ QString additionalDeliminator;
+ QString weakDeliminator;
+
+ // rules included by IncludeRules
+ QVector includedRules;
+
+ // IncludeRules included by IncludeRules
+ QSet includedIncludeRules;
+
+ QString filename;
+
+ bool parseElement(const QString &filename, QXmlStreamReader &xml)
+ {
+ this->filename = filename;
+
+ line = xml.lineNumber();
+
+ using Pair = QPair;
+ static const auto pairs = {
+ Pair{QStringLiteral("AnyChar"), Type::AnyChar},
+ Pair{QStringLiteral("Detect2Chars"), Type::Detect2Chars},
+ Pair{QStringLiteral("DetectChar"), Type::DetectChar},
+ Pair{QStringLiteral("DetectIdentifier"), Type::DetectIdentifier},
+ Pair{QStringLiteral("DetectSpaces"), Type::DetectSpaces},
+ Pair{QStringLiteral("Float"), Type::Float},
+ Pair{QStringLiteral("HlCChar"), Type::HlCChar},
+ Pair{QStringLiteral("HlCHex"), Type::HlCHex},
+ Pair{QStringLiteral("HlCOct"), Type::HlCOct},
+ Pair{QStringLiteral("HlCStringChar"), Type::HlCStringChar},
+ Pair{QStringLiteral("IncludeRules"), Type::IncludeRules},
+ Pair{QStringLiteral("Int"), Type::Int},
+ Pair{QStringLiteral("LineContinue"), Type::LineContinue},
+ Pair{QStringLiteral("RangeDetect"), Type::RangeDetect},
+ Pair{QStringLiteral("RegExpr"), Type::RegExpr},
+ Pair{QStringLiteral("StringDetect"), Type::StringDetect},
+ Pair{QStringLiteral("WordDetect"), Type::WordDetect},
+ Pair{QStringLiteral("keyword"), Type::keyword},
+ };
+
+ for (auto pair : pairs) {
+ if (xml.name() == pair.first) {
+ type = pair.second;
+ bool success = parseAttributes(filename, xml);
+ success = checkMandoryAttributes(filename, xml) && success;
+ if (success && type == Type::RegExpr) {
+ // ., (.) followed by *, +, {1} or nothing
+ static const QRegularExpression isDot(QStringLiteral(R"(^\(?\.(?:[*+][*+?]?|[*+]|\{1\})?\$?$)"));
+ // remove "(?:" and ")"
+ static const QRegularExpression removeParentheses(QStringLiteral(R"(\((?:\?:)?|\))"));
+ // remove parentheses on a double from the string
+ auto reg = QString(string).replace(removeParentheses, QString());
+ isDotRegex = reg.contains(isDot);
+ }
+ return success;
+ }
+ }
+
+ qWarning() << filename << "line" << xml.lineNumber() << "unknown element:" << xml.name();
+ return false;
+ }
+
+ private:
+ bool parseAttributes(const QString &filename, QXmlStreamReader &xml)
+ {
+ bool success = true;
+
+ for (auto &attr : xml.attributes()) {
+ Parser parser{filename, xml, attr, success};
+ XmlBool includeAttrib{};
+
+ // clang-format off
+ const bool isExtracted
+ = parser.extractString(attribute, QStringLiteral("attribute"))
+ || parser.extractString(context.name, QStringLiteral("context"))
+ || parser.extractXmlBool(lookAhead, QStringLiteral("lookAhead"))
+ || parser.extractXmlBool(firstNonSpace, QStringLiteral("firstNonSpace"))
+ || parser.extractString(beginRegion, QStringLiteral("beginRegion"))
+ || parser.extractString(endRegion, QStringLiteral("endRegion"))
+ || parser.extractPositive(column, QStringLiteral("column"))
+ || ((type == Type::RegExpr
+ || type == Type::StringDetect
+ || type == Type::WordDetect
+ || type == Type::keyword
+ ) && parser.extractXmlBool(insensitive, QStringLiteral("insensitive")))
+ || ((type == Type::DetectChar
+ || type == Type::RegExpr
+ || type == Type::StringDetect
+ || type == Type::keyword
+ ) && parser.extractXmlBool(dynamic, QStringLiteral("dynamic")))
+ || ((type == Type::RegExpr)
+ && parser.extractXmlBool(minimal, QStringLiteral("minimal")))
+ || ((type == Type::DetectChar
+ || type == Type::Detect2Chars
+ || type == Type::LineContinue
+ || type == Type::RangeDetect
+ ) && parser.extractChar(char0, QStringLiteral("char")))
+ || ((type == Type::Detect2Chars
+ || type == Type::RangeDetect
+ ) && parser.extractChar(char1, QStringLiteral("char1")))
+ || ((type == Type::AnyChar
+ || type == Type::RegExpr
+ || type == Type::StringDetect
+ || type == Type::WordDetect
+ || type == Type::keyword
+ ) && parser.extractString(string, QStringLiteral("String")))
+ || ((type == Type::IncludeRules)
+ && parser.extractXmlBool(includeAttrib, QStringLiteral("includeAttrib")))
+ || ((type == Type::Float
+ || type == Type::HlCHex
+ || type == Type::HlCOct
+ || type == Type::Int
+ || type == Type::keyword
+ || type == Type::WordDetect
+ ) && (parser.extractString(additionalDeliminator, QStringLiteral("additionalDeliminator"))
+ || parser.extractString(weakDeliminator, QStringLiteral("weakDeliminator"))))
+ ;
+ // clang-format on
+
+ success = parser.checkIfExtracted(isExtracted);
+
+ if (type == Type::LineContinue && char0 == QLatin1Char('\0')) {
+ char0 = QLatin1Char('\\');
+ }
+ }
+
+ return success;
+ }
+
+ bool checkMandoryAttributes(const QString &filename, QXmlStreamReader &xml)
+ {
+ QString missingAttr;
+
+ switch (type) {
+ case Type::Unknown:
+ return false;
+
+ case Type::AnyChar:
+ case Type::RegExpr:
+ case Type::StringDetect:
+ case Type::WordDetect:
+ case Type::keyword:
+ missingAttr = string.isEmpty() ? QStringLiteral("String") : QString();
+ break;
+
+ case Type::DetectChar:
+ missingAttr = !char0.unicode() ? QStringLiteral("char") : QString();
+ break;
+
+ case Type::Detect2Chars:
+ case Type::RangeDetect:
+ missingAttr = !char0.unicode() && !char1.unicode() ? QStringLiteral("char and char1")
+ : !char0.unicode() ? QStringLiteral("char")
+ : !char1.unicode() ? QStringLiteral("char1")
+ : QString();
+ break;
+
+ case Type::IncludeRules:
+ missingAttr = context.name.isEmpty() ? QStringLiteral("context") : QString();
+ break;
+
+ case Type::DetectIdentifier:
+ case Type::DetectSpaces:
+ case Type::Float:
+ case Type::HlCChar:
+ case Type::HlCHex:
+ case Type::HlCOct:
+ case Type::HlCStringChar:
+ case Type::Int:
+ case Type::LineContinue:
+ break;
+ }
+
+ if (!missingAttr.isEmpty()) {
+ qWarning() << filename << "line" << xml.lineNumber() << "missing attribute:" << missingAttr;
+ return false;
+ }
+
+ return true;
+ }
+ };
+
+ int line;
+ QString name;
+ QString attribute;
+ ContextName lineEndContext;
+ ContextName lineEmptyContext;
+ ContextName fallthroughContext;
+ QVector rules;
+ XmlBool dynamic{};
+ XmlBool fallthrough{};
+
+ bool parseElement(const QString &filename, QXmlStreamReader &xml)
+ {
+ line = xml.lineNumber();
+
+ bool success = true;
+
+ for (auto &attr : xml.attributes()) {
+ Parser parser{filename, xml, attr, success};
+ XmlBool noIndentationBasedFolding{};
+
+ const bool isExtracted = parser.extractString(name, QStringLiteral("name")) || parser.extractString(attribute, QStringLiteral("attribute"))
+ || parser.extractString(lineEndContext.name, QStringLiteral("lineEndContext"))
+ || parser.extractString(lineEmptyContext.name, QStringLiteral("lineEmptyContext"))
+ || parser.extractString(fallthroughContext.name, QStringLiteral("fallthroughContext"))
+ || parser.extractXmlBool(dynamic, QStringLiteral("dynamic")) || parser.extractXmlBool(fallthrough, QStringLiteral("fallthrough"))
+ || parser.extractXmlBool(noIndentationBasedFolding, QStringLiteral("noIndentationBasedFolding"));
+
+ success = parser.checkIfExtracted(isExtracted);
+ }
+
+ if (name.isEmpty()) {
+ qWarning() << filename << "line" << xml.lineNumber() << "missing attribute: name";
+ success = false;
+ }
+
+ if (attribute.isEmpty()) {
+ qWarning() << filename << "line" << xml.lineNumber() << "missing attribute: attribute";
+ success = false;
+ }
+
+ if (lineEndContext.name.isEmpty()) {
+ qWarning() << filename << "line" << xml.lineNumber() << "missing attribute: lineEndContext";
+ success = false;
+ }
+
+ return success;
+ }
+ };
+
+ struct Version {
+ int majorRevision;
+ int minorRevision;
+
+ Version(int majorRevision = 0, int minorRevision = 0)
+ : majorRevision(majorRevision)
+ , minorRevision(minorRevision)
+ {
+ }
+
+ bool operator<(const Version &version) const
+ {
+ return majorRevision < version.majorRevision || (majorRevision == version.majorRevision && minorRevision < version.minorRevision);
+ }
+ };
+
+ struct ItemDatas {
+ struct Style {
+ QString name;
+ int line;
+
+ friend uint qHash(const Style &style, uint seed = 0)
+ {
+ return qHash(style.name, seed);
+ }
+
+ friend bool operator==(const Style &style0, const Style &style1)
+ {
+ return style0.name == style1.name;
+ }
+ };
+
+ QSet