diff --git a/share/qtcreator/generic-highlighter/README b/share/qtcreator/generic-highlighter/README
new file mode 100644
index 0000000000000000000000000000000000000000..eb1647a377b2e789c4251d51327b7de97fe40e8f
--- /dev/null
+++ b/share/qtcreator/generic-highlighter/README
@@ -0,0 +1,2 @@
+This is Creator's default directory for syntax highlight definitions.
+You can download them through the Generic Highlighter options dialog.
diff --git a/share/qtcreator/static.pro b/share/qtcreator/static.pro
index 92c0bc40b69e2940e0570e7aec9733d5668655e2..e17a9fa92a5287171dbdb3dcf098a157a0ec3053 100644
--- a/share/qtcreator/static.pro
+++ b/share/qtcreator/static.pro
@@ -33,7 +33,8 @@ DATA_DIRS = \
     qmldesigner \
     qmlicons \
     qml-type-descriptions \
-    qmljsdebugger
+    qmljsdebugger \
+    generic-highlighter
 
 !isEmpty(copydata) {
 
diff --git a/src/plugins/texteditor/generichighlighter/highlightersettings.cpp b/src/plugins/texteditor/generichighlighter/highlightersettings.cpp
index c62b1339cdf688bad3e81a5587c3cabb299f9316..dd975c07930005f2a6179a27aac5e88f8336f754 100644
--- a/src/plugins/texteditor/generichighlighter/highlightersettings.cpp
+++ b/src/plugins/texteditor/generichighlighter/highlightersettings.cpp
@@ -134,10 +134,15 @@ void HighlighterSettings::fromSettings(const QString &category, QSettings *s)
     const QString &group = groupSpecifier(kGroupPostfix, category);
     s->beginGroup(group);
     m_definitionFilesPath = s->value(kDefinitionFilesPath, QString()).toString();
+    if (!s->contains(kDefinitionFilesPath))
+        m_definitionFilesPath = Core::ICore::instance()->resourcePath() +
+                                QLatin1String("/generic-highlighter");
+    else
+        m_definitionFilesPath = s->value(kDefinitionFilesPath).toString();
     if (!s->contains(kFallbackDefinitionFilesPath))
         m_fallbackDefinitionFilesPath = findDefinitionsLocation();
     else
-        m_fallbackDefinitionFilesPath = s->value(kFallbackDefinitionFilesPath,QString()).toString();
+        m_fallbackDefinitionFilesPath = s->value(kFallbackDefinitionFilesPath).toString();
     m_alertWhenNoDefinition = s->value(kAlertWhenDefinitionIsNotFound, true).toBool();
     m_useFallbackLocation = s->value(kUseFallbackLocation, true).toBool();
     if (!s->contains(kIgnoredFilesPatterns))