forked from qt-creator/qt-creator
Syntax highlighting: Add patches for KSyntaxHighlighting adaptation
The patches which lead from "syntax-highlighting"'s SHA e07306d9c22f6426d6b50287eee532555d74ac75 to the current state in qtcreator's repo This is useful to document what changed, and to ease further code merges from "syntax-highlighting". Change-Id: I4be45d12aa4237558b6e381a70947326829e79cb Reviewed-by: David Schulz <david.schulz@qt.io>
This commit is contained in:
File diff suppressed because it is too large
Load Diff
2901
src/libs/3rdparty/syntax-highlighting/patches/0002-Remove-autotests.patch
vendored
Normal file
2901
src/libs/3rdparty/syntax-highlighting/patches/0002-Remove-autotests.patch
vendored
Normal file
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,389 @@
|
||||
From c9f4bdaa0902c0fdb5ea750d11935e15777a090d Mon Sep 17 00:00:00 2001
|
||||
From: Alessandro Portale <alessandro.portale@qt.io>
|
||||
Date: Tue, 12 Feb 2019 19:45:08 +0100
|
||||
Subject: [PATCH 3/6] Add qmake/Qbs files and files generated by CMake
|
||||
|
||||
---
|
||||
autogenerated/autogenerated.pri | 9 ++
|
||||
autogenerated/ksyntaxhighlighting_version.h | 12 +++
|
||||
autogenerated/src/lib/AbstractHighlighter | 1 +
|
||||
autogenerated/src/lib/Definition | 1 +
|
||||
autogenerated/src/lib/FoldingRegion | 1 +
|
||||
autogenerated/src/lib/Format | 1 +
|
||||
autogenerated/src/lib/Repository | 1 +
|
||||
autogenerated/src/lib/State | 1 +
|
||||
autogenerated/src/lib/SyntaxHighlighter | 1 +
|
||||
autogenerated/src/lib/Theme | 1 +
|
||||
.../src/lib/ksyntaxhighlighting_logging.cpp | 11 +++
|
||||
.../src/lib/ksyntaxhighlighting_logging.h | 11 +++
|
||||
data/data.pro | 11 +++
|
||||
src/lib/ksyntaxhighlighting_export.h | 34 +++++++
|
||||
syntax-highlighting.pro | 55 ++++++++++++
|
||||
syntax-highlighting.qbs | 88 +++++++++++++++++++
|
||||
syntax-highlighting_dependencies.pri | 3 +
|
||||
17 files changed, 242 insertions(+)
|
||||
create mode 100644 autogenerated/autogenerated.pri
|
||||
create mode 100644 autogenerated/ksyntaxhighlighting_version.h
|
||||
create mode 100644 autogenerated/src/lib/AbstractHighlighter
|
||||
create mode 100644 autogenerated/src/lib/Definition
|
||||
create mode 100644 autogenerated/src/lib/FoldingRegion
|
||||
create mode 100644 autogenerated/src/lib/Format
|
||||
create mode 100644 autogenerated/src/lib/Repository
|
||||
create mode 100644 autogenerated/src/lib/State
|
||||
create mode 100644 autogenerated/src/lib/SyntaxHighlighter
|
||||
create mode 100644 autogenerated/src/lib/Theme
|
||||
create mode 100644 autogenerated/src/lib/ksyntaxhighlighting_logging.cpp
|
||||
create mode 100644 autogenerated/src/lib/ksyntaxhighlighting_logging.h
|
||||
create mode 100644 data/data.pro
|
||||
create mode 100644 src/lib/ksyntaxhighlighting_export.h
|
||||
create mode 100644 syntax-highlighting.pro
|
||||
create mode 100644 syntax-highlighting.qbs
|
||||
create mode 100644 syntax-highlighting_dependencies.pri
|
||||
|
||||
diff --git a/autogenerated/autogenerated.pri b/autogenerated/autogenerated.pri
|
||||
new file mode 100644
|
||||
index 0000000..aee620a
|
||||
--- /dev/null
|
||||
+++ b/autogenerated/autogenerated.pri
|
||||
@@ -0,0 +1,9 @@
|
||||
+INCLUDEPATH *= $$PWD/src/lib
|
||||
+INCLUDEPATH *= $$PWD
|
||||
+
|
||||
+SOURCES += \
|
||||
+ $$PWD/src/lib/ksyntaxhighlighting_logging.cpp
|
||||
+
|
||||
+HEADERS += \
|
||||
+ $$PWD/ksyntaxhighlighting_version.h \
|
||||
+ $$PWD/src/lib/ksyntaxhighlighting_logging.h
|
||||
diff --git a/autogenerated/ksyntaxhighlighting_version.h b/autogenerated/ksyntaxhighlighting_version.h
|
||||
new file mode 100644
|
||||
index 0000000..bd31a4d
|
||||
--- /dev/null
|
||||
+++ b/autogenerated/ksyntaxhighlighting_version.h
|
||||
@@ -0,0 +1,12 @@
|
||||
+// This file was generated by ecm_setup_version(): DO NOT EDIT!
|
||||
+
|
||||
+#ifndef SyntaxHighlighting_VERSION_H
|
||||
+#define SyntaxHighlighting_VERSION_H
|
||||
+
|
||||
+#define SyntaxHighlighting_VERSION_STRING "5.52.0"
|
||||
+#define SyntaxHighlighting_VERSION_MAJOR 5
|
||||
+#define SyntaxHighlighting_VERSION_MINOR 52
|
||||
+#define SyntaxHighlighting_VERSION_PATCH 0
|
||||
+#define SyntaxHighlighting_VERSION ((5<<16)|(52<<8)|(0))
|
||||
+
|
||||
+#endif
|
||||
diff --git a/autogenerated/src/lib/AbstractHighlighter b/autogenerated/src/lib/AbstractHighlighter
|
||||
new file mode 100644
|
||||
index 0000000..b787873
|
||||
--- /dev/null
|
||||
+++ b/autogenerated/src/lib/AbstractHighlighter
|
||||
@@ -0,0 +1 @@
|
||||
+#include "abstracthighlighter.h"
|
||||
diff --git a/autogenerated/src/lib/Definition b/autogenerated/src/lib/Definition
|
||||
new file mode 100644
|
||||
index 0000000..2c3241f
|
||||
--- /dev/null
|
||||
+++ b/autogenerated/src/lib/Definition
|
||||
@@ -0,0 +1 @@
|
||||
+#include "definition.h"
|
||||
diff --git a/autogenerated/src/lib/FoldingRegion b/autogenerated/src/lib/FoldingRegion
|
||||
new file mode 100644
|
||||
index 0000000..005b829
|
||||
--- /dev/null
|
||||
+++ b/autogenerated/src/lib/FoldingRegion
|
||||
@@ -0,0 +1 @@
|
||||
+#include "foldingregion.h"
|
||||
diff --git a/autogenerated/src/lib/Format b/autogenerated/src/lib/Format
|
||||
new file mode 100644
|
||||
index 0000000..b0d6a10
|
||||
--- /dev/null
|
||||
+++ b/autogenerated/src/lib/Format
|
||||
@@ -0,0 +1 @@
|
||||
+#include "format.h"
|
||||
diff --git a/autogenerated/src/lib/Repository b/autogenerated/src/lib/Repository
|
||||
new file mode 100644
|
||||
index 0000000..189dbc2
|
||||
--- /dev/null
|
||||
+++ b/autogenerated/src/lib/Repository
|
||||
@@ -0,0 +1 @@
|
||||
+#include "repository.h"
|
||||
diff --git a/autogenerated/src/lib/State b/autogenerated/src/lib/State
|
||||
new file mode 100644
|
||||
index 0000000..e148d70
|
||||
--- /dev/null
|
||||
+++ b/autogenerated/src/lib/State
|
||||
@@ -0,0 +1 @@
|
||||
+#include "state.h"
|
||||
diff --git a/autogenerated/src/lib/SyntaxHighlighter b/autogenerated/src/lib/SyntaxHighlighter
|
||||
new file mode 100644
|
||||
index 0000000..b429824
|
||||
--- /dev/null
|
||||
+++ b/autogenerated/src/lib/SyntaxHighlighter
|
||||
@@ -0,0 +1 @@
|
||||
+#include "syntaxhighlighter.h"
|
||||
diff --git a/autogenerated/src/lib/Theme b/autogenerated/src/lib/Theme
|
||||
new file mode 100644
|
||||
index 0000000..34a3e98
|
||||
--- /dev/null
|
||||
+++ b/autogenerated/src/lib/Theme
|
||||
@@ -0,0 +1 @@
|
||||
+#include "theme.h"
|
||||
diff --git a/autogenerated/src/lib/ksyntaxhighlighting_logging.cpp b/autogenerated/src/lib/ksyntaxhighlighting_logging.cpp
|
||||
new file mode 100644
|
||||
index 0000000..4082ac4
|
||||
--- /dev/null
|
||||
+++ b/autogenerated/src/lib/ksyntaxhighlighting_logging.cpp
|
||||
@@ -0,0 +1,11 @@
|
||||
+// This file was generated by ecm_qt_declare_logging_category(): DO NOT EDIT!
|
||||
+
|
||||
+#include "ksyntaxhighlighting_logging.h"
|
||||
+
|
||||
+ namespace KSyntaxHighlighting {
|
||||
+#if QT_VERSION >= QT_VERSION_CHECK(5, 4, 0)
|
||||
+Q_LOGGING_CATEGORY(Log, "org.kde.ksyntaxhighlighting", QtInfoMsg)
|
||||
+#else
|
||||
+Q_LOGGING_CATEGORY(Log, "org.kde.ksyntaxhighlighting")
|
||||
+#endif
|
||||
+}
|
||||
diff --git a/autogenerated/src/lib/ksyntaxhighlighting_logging.h b/autogenerated/src/lib/ksyntaxhighlighting_logging.h
|
||||
new file mode 100644
|
||||
index 0000000..c351b2c
|
||||
--- /dev/null
|
||||
+++ b/autogenerated/src/lib/ksyntaxhighlighting_logging.h
|
||||
@@ -0,0 +1,11 @@
|
||||
+// This file was generated by ecm_qt_declare_logging_category(): DO NOT EDIT!
|
||||
+
|
||||
+#ifndef ECM_QLOGGINGCATEGORY_KSYNTAXHIGHLIGHTING_LOG_KSYNTAXHIGHLIGHTING_LOGGING_H
|
||||
+#define ECM_QLOGGINGCATEGORY_KSYNTAXHIGHLIGHTING_LOG_KSYNTAXHIGHLIGHTING_LOGGING_H
|
||||
+
|
||||
+#include <QLoggingCategory>
|
||||
+ namespace KSyntaxHighlighting {
|
||||
+Q_DECLARE_LOGGING_CATEGORY(Log)
|
||||
+}
|
||||
+
|
||||
+#endif
|
||||
diff --git a/data/data.pro b/data/data.pro
|
||||
new file mode 100644
|
||||
index 0000000..1028ea1
|
||||
--- /dev/null
|
||||
+++ b/data/data.pro
|
||||
@@ -0,0 +1,11 @@
|
||||
+TEMPLATE = aux
|
||||
+
|
||||
+include(../../../../../qtcreator.pri)
|
||||
+
|
||||
+STATIC_BASE = $$PWD
|
||||
+STATIC_OUTPUT_BASE = $$IDE_DATA_PATH/generic-highlighter
|
||||
+STATIC_INSTALL_BASE = $$INSTALL_DATA_PATH/generic-highlighter
|
||||
+
|
||||
+STATIC_FILES += $$files($$PWD/syntax/*, true)
|
||||
+
|
||||
+include(../../../../../qtcreatordata.pri)
|
||||
diff --git a/src/lib/ksyntaxhighlighting_export.h b/src/lib/ksyntaxhighlighting_export.h
|
||||
new file mode 100644
|
||||
index 0000000..a39adb5
|
||||
--- /dev/null
|
||||
+++ b/src/lib/ksyntaxhighlighting_export.h
|
||||
@@ -0,0 +1,34 @@
|
||||
+/****************************************************************************
|
||||
+**
|
||||
+** Copyright (C) 2018 The Qt Company Ltd.
|
||||
+** Contact: https://www.qt.io/licensing/
|
||||
+**
|
||||
+** This file is part of Qt Creator.
|
||||
+**
|
||||
+** Commercial License Usage
|
||||
+** Licensees holding valid commercial Qt licenses may use this file in
|
||||
+** accordance with the commercial license agreement provided with the
|
||||
+** Software or, alternatively, in accordance with the terms contained in
|
||||
+** a written agreement between you and The Qt Company. For licensing terms
|
||||
+** and conditions see https://www.qt.io/terms-conditions. For further
|
||||
+** information use the contact form at https://www.qt.io/contact-us.
|
||||
+**
|
||||
+** GNU General Public License Usage
|
||||
+** Alternatively, this file may be used under the terms of the GNU
|
||||
+** General Public License version 3 as published by the Free Software
|
||||
+** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT
|
||||
+** included in the packaging of this file. Please review the following
|
||||
+** information to ensure the GNU General Public License requirements will
|
||||
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
|
||||
+**
|
||||
+****************************************************************************/
|
||||
+
|
||||
+#pragma once
|
||||
+
|
||||
+#include <QtGlobal>
|
||||
+
|
||||
+#if defined(KSYNTAXHIGHLIGHTING_LIBRARY)
|
||||
+# define KSYNTAXHIGHLIGHTING_EXPORT Q_DECL_EXPORT
|
||||
+#else
|
||||
+# define KSYNTAXHIGHLIGHTING_EXPORT Q_DECL_IMPORT
|
||||
+#endif
|
||||
diff --git a/syntax-highlighting.pro b/syntax-highlighting.pro
|
||||
new file mode 100644
|
||||
index 0000000..38127e1
|
||||
--- /dev/null
|
||||
+++ b/syntax-highlighting.pro
|
||||
@@ -0,0 +1,55 @@
|
||||
+include(../../../qtcreatorlibrary.pri)
|
||||
+include(autogenerated/autogenerated.pri)
|
||||
+
|
||||
+QT += network
|
||||
+
|
||||
+DEFINES += KSYNTAXHIGHLIGHTING_LIBRARY
|
||||
+
|
||||
+RESOURCES += \
|
||||
+ data/themes/theme-data.qrc
|
||||
+
|
||||
+HEADERS += \
|
||||
+ src/lib/abstracthighlighter.h \
|
||||
+ src/lib/abstracthighlighter_p.h \
|
||||
+ src/lib/context_p.h \
|
||||
+ src/lib/contextswitch_p.h \
|
||||
+ src/lib/definition.h \
|
||||
+ src/lib/definition_p.h \
|
||||
+ src/lib/definitiondownloader.h \
|
||||
+ src/lib/definitionref_p.h \
|
||||
+ src/lib/foldingregion.h \
|
||||
+ src/lib/format.h \
|
||||
+ src/lib/format_p.h \
|
||||
+ src/lib/htmlhighlighter.h \
|
||||
+ src/lib/keywordlist_p.h \
|
||||
+ src/lib/ksyntaxhighlighting_export.h \
|
||||
+ src/lib/matchresult_p.h \
|
||||
+ src/lib/repository.h \
|
||||
+ src/lib/repository_p.h \
|
||||
+ src/lib/rule_p.h \
|
||||
+ src/lib/state.h \
|
||||
+ src/lib/state_p.h \
|
||||
+ src/lib/syntaxhighlighter.h \
|
||||
+ src/lib/textstyledata_p.h \
|
||||
+ src/lib/theme.h \
|
||||
+ src/lib/themedata_p.h \
|
||||
+ src/lib/wildcardmatcher_p.h \
|
||||
+ src/lib/xml_p.h \
|
||||
+
|
||||
+SOURCES += \
|
||||
+ src/lib/abstracthighlighter.cpp \
|
||||
+ src/lib/context.cpp \
|
||||
+ src/lib/contextswitch.cpp \
|
||||
+ src/lib/definition.cpp \
|
||||
+ src/lib/definitiondownloader.cpp \
|
||||
+ src/lib/foldingregion.cpp \
|
||||
+ src/lib/format.cpp \
|
||||
+ src/lib/htmlhighlighter.cpp \
|
||||
+ src/lib/keywordlist.cpp \
|
||||
+ src/lib/repository.cpp \
|
||||
+ src/lib/rule.cpp \
|
||||
+ src/lib/state.cpp \
|
||||
+ src/lib/syntaxhighlighter.cpp \
|
||||
+ src/lib/theme.cpp \
|
||||
+ src/lib/themedata.cpp \
|
||||
+ src/lib/wildcardmatcher.cpp \
|
||||
diff --git a/syntax-highlighting.qbs b/syntax-highlighting.qbs
|
||||
new file mode 100644
|
||||
index 0000000..248ebe0
|
||||
--- /dev/null
|
||||
+++ b/syntax-highlighting.qbs
|
||||
@@ -0,0 +1,88 @@
|
||||
+import qbs 1.0
|
||||
+import qbs.File
|
||||
+import qbs.FileInfo
|
||||
+import qbs.Environment
|
||||
+
|
||||
+Project {
|
||||
+ QtcDevHeaders {
|
||||
+ productName: "syntax-highlighting (3rd party)"
|
||||
+ baseDir: sourceDirectory + "/src/lib"
|
||||
+ }
|
||||
+ QtcDevHeaders {
|
||||
+ productName: "syntax-highlighting autogenerated (3rd party)"
|
||||
+ baseDir: sourceDirectory + "/autogenerated/src/lib"
|
||||
+ Group {
|
||||
+ prefix: baseDir + '/'
|
||||
+ files: [
|
||||
+ "AbstractHighlighter",
|
||||
+ "Definition",
|
||||
+ "FoldingRegion",
|
||||
+ "Format",
|
||||
+ "Repository",
|
||||
+ "State",
|
||||
+ "SyntaxHighlighter",
|
||||
+ "Theme"
|
||||
+ ]
|
||||
+ qbs.install: true
|
||||
+ qbs.installDir: qtc.ide_include_path + '/' + FileInfo.fileName(product.sourceDirectory)
|
||||
+ qbs.installSourceBase: baseDir
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ QtcLibrary {
|
||||
+ name: "KSyntaxHighlighting"
|
||||
+
|
||||
+ cpp.defines: base.concat("KSYNTAXHIGHLIGHTING_LIBRARY")
|
||||
+ cpp.includePaths: [
|
||||
+ product.sourceDirectory + "/src/lib/",
|
||||
+ product.sourceDirectory + "/autogenerated/src/lib/",
|
||||
+ product.sourceDirectory + "/autogenerated/"
|
||||
+ ]
|
||||
+
|
||||
+ Depends { name: "Qt.gui" }
|
||||
+ Depends { name: "Qt.network" }
|
||||
+
|
||||
+ Group {
|
||||
+ name: "lib"
|
||||
+ prefix: "src/lib/"
|
||||
+ files: [
|
||||
+ "*.h",
|
||||
+ "*.cpp"
|
||||
+ ]
|
||||
+ }
|
||||
+
|
||||
+ Group {
|
||||
+ name: "KSyntaxHighlighting data"
|
||||
+ qbs.install: true
|
||||
+ qbs.installDir: qtc.ide_data_path + "/generic-highlighter/"
|
||||
+ qbs.installSourceBase: project.ide_source_tree + "/src/libs/3rdparty/syntax-highlighting/data/"
|
||||
+ prefix: project.ide_source_tree + "/src/libs/3rdparty/syntax-highlighting/data/"
|
||||
+ files: [
|
||||
+ "syntax/**/*"
|
||||
+ ]
|
||||
+ }
|
||||
+
|
||||
+ Group {
|
||||
+ name: "autogenerated lib"
|
||||
+ prefix: "autogenerated/src/lib/"
|
||||
+ files: [
|
||||
+ "*.h",
|
||||
+ "*.cpp"
|
||||
+ ]
|
||||
+ }
|
||||
+
|
||||
+ Group {
|
||||
+ name: "theme data"
|
||||
+ prefix: "data/themes/"
|
||||
+ files: [ "theme-data.qrc" ]
|
||||
+ }
|
||||
+
|
||||
+ Export {
|
||||
+ Depends { name: "cpp" }
|
||||
+ cpp.includePaths: [
|
||||
+ product.sourceDirectory + "/src/lib/",
|
||||
+ product.sourceDirectory + "/autogenerated/src/lib/",
|
||||
+ ]
|
||||
+ }
|
||||
+ }
|
||||
+}
|
||||
diff --git a/syntax-highlighting_dependencies.pri b/syntax-highlighting_dependencies.pri
|
||||
new file mode 100644
|
||||
index 0000000..f2fd3e6
|
||||
--- /dev/null
|
||||
+++ b/syntax-highlighting_dependencies.pri
|
||||
@@ -0,0 +1,3 @@
|
||||
+QTC_LIB_NAME = KSyntaxHighlighting
|
||||
+INCLUDEPATH *= $$PWD/src/lib
|
||||
+INCLUDEPATH *= $$PWD/autogenerated/src/lib
|
||||
--
|
||||
2.20.1.windows.1
|
||||
|
281
src/libs/3rdparty/syntax-highlighting/patches/0004-Compile-with-namespaced-Qt.patch
vendored
Normal file
281
src/libs/3rdparty/syntax-highlighting/patches/0004-Compile-with-namespaced-Qt.patch
vendored
Normal file
@@ -0,0 +1,281 @@
|
||||
From 916af0204a45c91092e53241e6a867cadb9dedec Mon Sep 17 00:00:00 2001
|
||||
From: Alessandro Portale <alessandro.portale@qt.io>
|
||||
Date: Tue, 12 Feb 2019 19:21:57 +0100
|
||||
Subject: [PATCH 4/6] Compile with namespaced Qt
|
||||
|
||||
---
|
||||
src/lib/abstracthighlighter.h | 4 ++++
|
||||
src/lib/abstracthighlighter_p.h | 2 ++
|
||||
src/lib/context_p.h | 2 ++
|
||||
src/lib/definition.h | 4 ++++
|
||||
src/lib/foldingregion.h | 2 ++
|
||||
src/lib/format.h | 5 ++++-
|
||||
src/lib/htmlhighlighter.h | 2 ++
|
||||
src/lib/keywordlist_p.h | 2 ++
|
||||
src/lib/repository.h | 2 ++
|
||||
src/lib/repository_p.h | 2 ++
|
||||
src/lib/rule_p.h | 2 ++
|
||||
src/lib/state.h | 2 ++
|
||||
src/lib/theme.h | 2 ++
|
||||
src/lib/themedata_p.h | 2 ++
|
||||
src/lib/wildcardmatcher.cpp | 2 +-
|
||||
src/lib/wildcardmatcher_p.h | 4 ++++
|
||||
16 files changed, 39 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/lib/abstracthighlighter.h b/src/lib/abstracthighlighter.h
|
||||
index 056f65b..2b88729 100644
|
||||
--- a/src/lib/abstracthighlighter.h
|
||||
+++ b/src/lib/abstracthighlighter.h
|
||||
@@ -30,7 +30,9 @@
|
||||
|
||||
#include <memory>
|
||||
|
||||
+QT_BEGIN_NAMESPACE
|
||||
class QString;
|
||||
+QT_END_NAMESPACE
|
||||
|
||||
namespace KSyntaxHighlighting {
|
||||
|
||||
@@ -186,6 +188,8 @@ private:
|
||||
};
|
||||
}
|
||||
|
||||
+QT_BEGIN_NAMESPACE
|
||||
Q_DECLARE_INTERFACE(KSyntaxHighlighting::AbstractHighlighter, "org.kde.SyntaxHighlighting.AbstractHighlighter")
|
||||
+QT_END_NAMESPACE
|
||||
|
||||
#endif // KSYNTAXHIGHLIGHTING_ABSTRACTHIGHLIGHTERM_H
|
||||
diff --git a/src/lib/abstracthighlighter_p.h b/src/lib/abstracthighlighter_p.h
|
||||
index 1690eb0..bdfdf23 100644
|
||||
--- a/src/lib/abstracthighlighter_p.h
|
||||
+++ b/src/lib/abstracthighlighter_p.h
|
||||
@@ -27,7 +27,9 @@
|
||||
#include "definition.h"
|
||||
#include "theme.h"
|
||||
|
||||
+QT_BEGIN_NAMESPACE
|
||||
class QStringList;
|
||||
+QT_END_NAMESPACE
|
||||
|
||||
namespace KSyntaxHighlighting {
|
||||
|
||||
diff --git a/src/lib/context_p.h b/src/lib/context_p.h
|
||||
index 3e3ab97..a034d0e 100644
|
||||
--- a/src/lib/context_p.h
|
||||
+++ b/src/lib/context_p.h
|
||||
@@ -34,7 +34,9 @@
|
||||
|
||||
#include <vector>
|
||||
|
||||
+QT_BEGIN_NAMESPACE
|
||||
class QXmlStreamReader;
|
||||
+QT_END_NAMESPACE
|
||||
|
||||
namespace KSyntaxHighlighting {
|
||||
|
||||
diff --git a/src/lib/definition.h b/src/lib/definition.h
|
||||
index 25996dd..6f0dba9 100644
|
||||
--- a/src/lib/definition.h
|
||||
+++ b/src/lib/definition.h
|
||||
@@ -31,10 +31,12 @@
|
||||
|
||||
#include <memory>
|
||||
|
||||
+QT_BEGIN_NAMESPACE
|
||||
class QChar;
|
||||
class QString;
|
||||
class QStringList;
|
||||
template <typename T> class QVector;
|
||||
+QT_END_NAMESPACE
|
||||
|
||||
namespace KSyntaxHighlighting {
|
||||
|
||||
@@ -391,6 +393,8 @@ private:
|
||||
|
||||
}
|
||||
|
||||
+QT_BEGIN_NAMESPACE
|
||||
Q_DECLARE_TYPEINFO(KSyntaxHighlighting::Definition, Q_MOVABLE_TYPE);
|
||||
+QT_END_NAMESPACE
|
||||
|
||||
#endif
|
||||
diff --git a/src/lib/foldingregion.h b/src/lib/foldingregion.h
|
||||
index baf65d1..074b947 100644
|
||||
--- a/src/lib/foldingregion.h
|
||||
+++ b/src/lib/foldingregion.h
|
||||
@@ -101,6 +101,8 @@ private:
|
||||
|
||||
}
|
||||
|
||||
+QT_BEGIN_NAMESPACE
|
||||
Q_DECLARE_TYPEINFO(KSyntaxHighlighting::FoldingRegion, Q_PRIMITIVE_TYPE);
|
||||
+QT_END_NAMESPACE
|
||||
|
||||
#endif
|
||||
diff --git a/src/lib/format.h b/src/lib/format.h
|
||||
index ba85f0d..24c58e7 100644
|
||||
--- a/src/lib/format.h
|
||||
+++ b/src/lib/format.h
|
||||
@@ -30,10 +30,11 @@
|
||||
#include <QExplicitlySharedDataPointer>
|
||||
#include <QTypeInfo>
|
||||
|
||||
-
|
||||
+QT_BEGIN_NAMESPACE
|
||||
class QColor;
|
||||
class QString;
|
||||
class QXmlStreamReader;
|
||||
+QT_END_NAMESPACE
|
||||
|
||||
namespace KSyntaxHighlighting {
|
||||
|
||||
@@ -144,6 +145,8 @@ private:
|
||||
};
|
||||
}
|
||||
|
||||
+QT_BEGIN_NAMESPACE
|
||||
Q_DECLARE_TYPEINFO(KSyntaxHighlighting::Format, Q_MOVABLE_TYPE);
|
||||
+QT_END_NAMESPACE
|
||||
|
||||
#endif // KSYNTAXHIGHLIGHTING_FORMAT_H
|
||||
diff --git a/src/lib/htmlhighlighter.h b/src/lib/htmlhighlighter.h
|
||||
index 22d33ad..b7eda02 100644
|
||||
--- a/src/lib/htmlhighlighter.h
|
||||
+++ b/src/lib/htmlhighlighter.h
|
||||
@@ -32,8 +32,10 @@
|
||||
|
||||
#include <memory>
|
||||
|
||||
+QT_BEGIN_NAMESPACE
|
||||
class QFile;
|
||||
class QTextStream;
|
||||
+QT_END_NAMESPACE
|
||||
|
||||
namespace KSyntaxHighlighting {
|
||||
|
||||
diff --git a/src/lib/keywordlist_p.h b/src/lib/keywordlist_p.h
|
||||
index fa70f11..8c41aab 100644
|
||||
--- a/src/lib/keywordlist_p.h
|
||||
+++ b/src/lib/keywordlist_p.h
|
||||
@@ -30,7 +30,9 @@
|
||||
|
||||
#include <vector>
|
||||
|
||||
+QT_BEGIN_NAMESPACE
|
||||
class QXmlStreamReader;
|
||||
+QT_END_NAMESPACE
|
||||
|
||||
namespace KSyntaxHighlighting {
|
||||
|
||||
diff --git a/src/lib/repository.h b/src/lib/repository.h
|
||||
index 2c32d02..c35da5e 100644
|
||||
--- a/src/lib/repository.h
|
||||
+++ b/src/lib/repository.h
|
||||
@@ -29,8 +29,10 @@
|
||||
#include <qglobal.h>
|
||||
#include <memory>
|
||||
|
||||
+QT_BEGIN_NAMESPACE
|
||||
class QString;
|
||||
template <typename T> class QVector;
|
||||
+QT_END_NAMESPACE
|
||||
|
||||
/**
|
||||
* @namespace KSyntaxHighlighting
|
||||
diff --git a/src/lib/repository_p.h b/src/lib/repository_p.h
|
||||
index da765a2..9db876b 100644
|
||||
--- a/src/lib/repository_p.h
|
||||
+++ b/src/lib/repository_p.h
|
||||
@@ -27,7 +27,9 @@
|
||||
#include <QHash>
|
||||
#include <QVector>
|
||||
|
||||
+QT_BEGIN_NAMESPACE
|
||||
class QString;
|
||||
+QT_END_NAMESPACE
|
||||
|
||||
namespace KSyntaxHighlighting {
|
||||
|
||||
diff --git a/src/lib/rule_p.h b/src/lib/rule_p.h
|
||||
index eccf0df..538fded 100644
|
||||
--- a/src/lib/rule_p.h
|
||||
+++ b/src/lib/rule_p.h
|
||||
@@ -38,7 +38,9 @@
|
||||
|
||||
#include <memory>
|
||||
|
||||
+QT_BEGIN_NAMESPACE
|
||||
class QXmlStreamReader;
|
||||
+QT_END_NAMESPACE
|
||||
|
||||
namespace KSyntaxHighlighting {
|
||||
|
||||
diff --git a/src/lib/state.h b/src/lib/state.h
|
||||
index c6e5344..fce4bc7 100644
|
||||
--- a/src/lib/state.h
|
||||
+++ b/src/lib/state.h
|
||||
@@ -79,6 +79,8 @@ private:
|
||||
|
||||
}
|
||||
|
||||
+QT_BEGIN_NAMESPACE
|
||||
Q_DECLARE_TYPEINFO(KSyntaxHighlighting::State, Q_MOVABLE_TYPE);
|
||||
+QT_END_NAMESPACE
|
||||
|
||||
#endif // KSYNTAXHIGHLIGHTING_STATE_H
|
||||
diff --git a/src/lib/theme.h b/src/lib/theme.h
|
||||
index 5277429..adb8431 100644
|
||||
--- a/src/lib/theme.h
|
||||
+++ b/src/lib/theme.h
|
||||
@@ -371,6 +371,8 @@ private:
|
||||
|
||||
}
|
||||
|
||||
+QT_BEGIN_NAMESPACE
|
||||
Q_DECLARE_TYPEINFO(KSyntaxHighlighting::Theme, Q_MOVABLE_TYPE);
|
||||
+QT_END_NAMESPACE
|
||||
|
||||
#endif // KSYNTAXHIGHLIGHTING_THEME_H
|
||||
diff --git a/src/lib/themedata_p.h b/src/lib/themedata_p.h
|
||||
index 68cb873..3b5f463 100644
|
||||
--- a/src/lib/themedata_p.h
|
||||
+++ b/src/lib/themedata_p.h
|
||||
@@ -163,6 +163,8 @@ private:
|
||||
|
||||
}
|
||||
|
||||
+QT_BEGIN_NAMESPACE
|
||||
Q_DECLARE_TYPEINFO(KSyntaxHighlighting::TextStyleData, Q_MOVABLE_TYPE);
|
||||
+QT_END_NAMESPACE
|
||||
|
||||
#endif // KSYNTAXHIGHLIGHTING_THEMEDATA_P_H
|
||||
diff --git a/src/lib/wildcardmatcher.cpp b/src/lib/wildcardmatcher.cpp
|
||||
index 963e78d..167295a 100644
|
||||
--- a/src/lib/wildcardmatcher.cpp
|
||||
+++ b/src/lib/wildcardmatcher.cpp
|
||||
@@ -79,5 +79,5 @@ static bool exactMatch(const QString &candidate, const QString &wildcard, int ca
|
||||
bool WildcardMatcher::exactMatch(const QString &candidate, const QString &wildcard,
|
||||
bool caseSensitive)
|
||||
{
|
||||
- return exactMatch(candidate, wildcard, candidate.length() - 1, wildcard.length() - 1, caseSensitive);
|
||||
+ return ::exactMatch(candidate, wildcard, candidate.length() - 1, wildcard.length() - 1, caseSensitive);
|
||||
}
|
||||
diff --git a/src/lib/wildcardmatcher_p.h b/src/lib/wildcardmatcher_p.h
|
||||
index 823dbd5..016b10f 100644
|
||||
--- a/src/lib/wildcardmatcher_p.h
|
||||
+++ b/src/lib/wildcardmatcher_p.h
|
||||
@@ -24,7 +24,11 @@
|
||||
#ifndef KSYNTAXHIGHLIGHTING_WILDCARDMATCHER_P_H
|
||||
#define KSYNTAXHIGHLIGHTING_WILDCARDMATCHER_P_H
|
||||
|
||||
+#include <QtGlobal>
|
||||
+
|
||||
+QT_BEGIN_NAMESPACE
|
||||
class QString;
|
||||
+QT_END_NAMESPACE
|
||||
|
||||
namespace KSyntaxHighlighting {
|
||||
|
||||
--
|
||||
2.20.1.windows.1
|
||||
|
29
src/libs/3rdparty/syntax-highlighting/patches/0005-Prevent-assertion-in-RegExpr-doLoad.patch
vendored
Normal file
29
src/libs/3rdparty/syntax-highlighting/patches/0005-Prevent-assertion-in-RegExpr-doLoad.patch
vendored
Normal file
@@ -0,0 +1,29 @@
|
||||
From 3c05e92c71f6675fa2071036dafbc8d337bd2d01 Mon Sep 17 00:00:00 2001
|
||||
From: Alessandro Portale <alessandro.portale@qt.io>
|
||||
Date: Tue, 12 Feb 2019 19:27:46 +0100
|
||||
Subject: [PATCH 5/6] Prevent assertion in RegExpr::doLoad
|
||||
|
||||
---
|
||||
src/lib/rule.cpp | 6 +++++-
|
||||
1 file changed, 5 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/lib/rule.cpp b/src/lib/rule.cpp
|
||||
index a201375..c48753b 100644
|
||||
--- a/src/lib/rule.cpp
|
||||
+++ b/src/lib/rule.cpp
|
||||
@@ -575,7 +575,11 @@ bool RegExpr::doLoad(QXmlStreamReader& reader)
|
||||
}
|
||||
|
||||
// always using m_regexp.isValid() would be better, but parses the regexp and thus is way too expensive for release builds
|
||||
- Q_ASSERT(m_regexp.isValid());
|
||||
+
|
||||
+ if (Log().isDebugEnabled()) {
|
||||
+ if (!m_regexp.isValid())
|
||||
+ qCDebug(Log) << "Invalid regexp:" << m_regexp.pattern();
|
||||
+ }
|
||||
return !m_regexp.pattern().isEmpty();
|
||||
}
|
||||
|
||||
--
|
||||
2.20.1.windows.1
|
||||
|
@@ -0,0 +1,101 @@
|
||||
From 4b64058fe7d788ac79c16a08b280ce05d500e9fb Mon Sep 17 00:00:00 2001
|
||||
From: Alessandro Portale <alessandro.portale@qt.io>
|
||||
Date: Tue, 12 Feb 2019 19:32:54 +0100
|
||||
Subject: [PATCH 6/6] Syntax Highlighter: return all definitions for a file
|
||||
name/mimetype
|
||||
|
||||
Can be used to create user controls to switch between
|
||||
multiple definitions for a file or mime type.
|
||||
|
||||
Change-Id: I5fd3744db1e819d0d6f8448a53adaf9d2c7c168d
|
||||
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
|
||||
---
|
||||
src/lib/repository.cpp | 17 +++++++++++++----
|
||||
src/lib/repository.h | 12 ++++++++++++
|
||||
2 files changed, 25 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/src/lib/repository.cpp b/src/lib/repository.cpp
|
||||
index 6b2fabd..922225a 100644
|
||||
--- a/src/lib/repository.cpp
|
||||
+++ b/src/lib/repository.cpp
|
||||
@@ -78,7 +78,7 @@ Definition Repository::definitionForName(const QString& defName) const
|
||||
return d->m_defs.value(defName);
|
||||
}
|
||||
|
||||
-static Definition bestCandidate(QVector<Definition>& candidates)
|
||||
+static Definition bestCandidate(QVector<Definition> &&candidates)
|
||||
{
|
||||
if (candidates.isEmpty())
|
||||
return Definition();
|
||||
@@ -91,6 +91,11 @@ static Definition bestCandidate(QVector<Definition>& candidates)
|
||||
}
|
||||
|
||||
Definition Repository::definitionForFileName(const QString& fileName) const
|
||||
+{
|
||||
+ return bestCandidate(definitionsForFileName(fileName));
|
||||
+}
|
||||
+
|
||||
+QVector<Definition> Repository::definitionsForFileName(const QString &fileName) const
|
||||
{
|
||||
QFileInfo fi(fileName);
|
||||
const auto name = fi.fileName();
|
||||
@@ -106,10 +111,15 @@ Definition Repository::definitionForFileName(const QString& fileName) const
|
||||
}
|
||||
}
|
||||
|
||||
- return bestCandidate(candidates);
|
||||
+ return candidates;
|
||||
}
|
||||
|
||||
Definition Repository::definitionForMimeType(const QString& mimeType) const
|
||||
+{
|
||||
+ return bestCandidate(definitionsForMimeType(mimeType));
|
||||
+}
|
||||
+
|
||||
+QVector<Definition> Repository::definitionsForMimeType(const QString &mimeType) const
|
||||
{
|
||||
QVector<Definition> candidates;
|
||||
for (auto it = d->m_defs.constBegin(); it != d->m_defs.constEnd(); ++it) {
|
||||
@@ -121,8 +131,7 @@ Definition Repository::definitionForMimeType(const QString& mimeType) const
|
||||
}
|
||||
}
|
||||
}
|
||||
-
|
||||
- return bestCandidate(candidates);
|
||||
+ return candidates;
|
||||
}
|
||||
|
||||
QVector<Definition> Repository::definitions() const
|
||||
diff --git a/src/lib/repository.h b/src/lib/repository.h
|
||||
index c35da5e..e4e9bed 100644
|
||||
--- a/src/lib/repository.h
|
||||
+++ b/src/lib/repository.h
|
||||
@@ -166,6 +166,13 @@ public:
|
||||
*/
|
||||
Definition definitionForFileName(const QString &fileName) const;
|
||||
|
||||
+ /**
|
||||
+ * Returns all Definition%s for the file named @p fileName.
|
||||
+ * The match is performed based on the \e extensions and @e mimetype of
|
||||
+ * the definition files.
|
||||
+ */
|
||||
+ QVector<Definition> definitionsForFileName(const QString &fileName) const;
|
||||
+
|
||||
/**
|
||||
* Returns the best matching Definition to the type named @p mimeType
|
||||
*
|
||||
@@ -176,6 +183,11 @@ public:
|
||||
*/
|
||||
Definition definitionForMimeType(const QString &mimeType) const;
|
||||
|
||||
+ /**
|
||||
+ * Returns all Definition%s to the type named @p mimeType
|
||||
+ */
|
||||
+ QVector<Definition> definitionsForMimeType(const QString &mimeType) const;
|
||||
+
|
||||
/**
|
||||
* Returns all available Definition%s.
|
||||
* Definition%ss are ordered by translated section and translated names,
|
||||
--
|
||||
2.20.1.windows.1
|
||||
|
Reference in New Issue
Block a user