diff --git a/src/plugins/texteditor/generichighlighter/highlightersettings.cpp b/src/plugins/texteditor/generichighlighter/highlightersettings.cpp
index 1b41888a25dd6678f12b58c0b94baa818e6756ae..cf7f99d47c82770b19daa5289b705d35b7d06f0a 100644
--- a/src/plugins/texteditor/generichighlighter/highlightersettings.cpp
+++ b/src/plugins/texteditor/generichighlighter/highlightersettings.cpp
@@ -66,15 +66,21 @@ QString findDefinitionsLocation()
 
     if (definitionsLocation.isEmpty()) {
         // Try kde-config.
-        QProcess process;
-        process.start(QLatin1String("kde-config"), QStringList(QLatin1String("--prefix")));
-        if (process.waitForStarted(5000)) {
-            process.waitForFinished(5000);
-            QString output = QString::fromLocal8Bit(process.readAllStandardOutput());
-            output.remove(QLatin1Char('\n'));
-            dir.setPath(output + kateSyntax);
-            if (dir.exists())
-                definitionsLocation = dir.path();
+        QStringList programs;
+        programs << QLatin1String("kde-config") << QLatin1String("kde4-config");
+        foreach (const QString &program, programs) {
+            QProcess process;
+            process.start(program, QStringList(QLatin1String("--prefix")));
+            if (process.waitForStarted(5000)) {
+                process.waitForFinished(5000);
+                QString output = QString::fromLocal8Bit(process.readAllStandardOutput());
+                output.remove(QLatin1Char('\n'));
+                dir.setPath(output + kateSyntax);
+                if (dir.exists()) {
+                    definitionsLocation = dir.path();
+                    break;
+                }
+            }
         }
     }
 #endif