diff --git a/autotests/folding/highlight.cmake.fold b/autotests/folding/highlight.cmake.fold
--- a/autotests/folding/highlight.cmake.fold
+++ b/autotests/folding/highlight.cmake.fold
@@ -14,7 +14,7 @@
)
# BEGIN defining a macro
-MACRO(ECOS_ADD_EXECUTABLE _exe_NAME )
+MACRO(ECOS_ADD_EXECUTABLE _exe_NAME )
#special parameters are italic, see the STATIC in the next line
ADD_LIBRARY(${_exe_NAME} STATIC ${ARGN})
@@ -39,7 +39,7 @@
PROPERTIES
ADDITIONAL_MAKE_CLEAN_FILES "${ECOS_ADD_MAKE_CLEAN_FILES}"
)
-ENDMACRO(ECOS_ADD_EXECUTABLE)
+ENDMACRO(ECOS_ADD_EXECUTABLE)
# END of macro
#calling a self-defined function, variables are also Qt::blue here
diff --git a/src/lib/rule.cpp b/src/lib/rule.cpp
--- a/src/lib/rule.cpp
+++ b/src/lib/rule.cpp
@@ -672,6 +672,7 @@
bool WordDetect::doLoad(QXmlStreamReader& reader)
{
m_word = reader.attributes().value(QStringLiteral("String")).toString();
+ m_caseSensitivity = Xml::attrToBool(reader.attributes().value(QStringLiteral("insensitive"))) ? Qt::CaseInsensitive : Qt::CaseSensitive;
return !m_word.isEmpty();
}
@@ -684,7 +685,7 @@
if (offset > 0 && !isDelimiter(text.at(offset - 1)))
return offset;
- if (text.midRef(offset, m_word.size()) != m_word)
+ if (text.midRef(offset, m_word.size()).compare(m_word, m_caseSensitivity) != 0)
return offset;
if (text.size() == offset + m_word.size() || isDelimiter(text.at(offset + m_word.size())))
diff --git a/src/lib/rule_p.h b/src/lib/rule_p.h
--- a/src/lib/rule_p.h
+++ b/src/lib/rule_p.h
@@ -246,6 +246,7 @@
private:
QString m_word;
+ Qt::CaseSensitivity m_caseSensitivity;
};
}