better lexer name handling
This commit is contained in:
@@ -25,7 +25,7 @@ int DocumentManager::createNewDocument()
|
||||
doc.filePath = QString();
|
||||
doc.content = QString();
|
||||
doc.encoding = "UTF-8";
|
||||
doc.language = "Plain Text";
|
||||
doc.language = QString();
|
||||
doc.modified = false;
|
||||
doc.untitled = true;
|
||||
|
||||
@@ -171,7 +171,7 @@ QString DocumentManager::getDocumentLanguage(int docId) const
|
||||
if (m_documents.contains(docId)) {
|
||||
return m_documents[docId].language;
|
||||
}
|
||||
return "Plain Text";
|
||||
return QString();
|
||||
}
|
||||
|
||||
bool DocumentManager::isDocumentModified(int docId) const
|
||||
@@ -247,29 +247,51 @@ QString DocumentManager::generateUntitledName()
|
||||
QString DocumentManager::detectLanguageFromExtension(const QString &filePath)
|
||||
{
|
||||
QFileInfo fileInfo(filePath);
|
||||
QString extension = fileInfo.suffix().toLower();
|
||||
|
||||
if (extension == "cpp" || extension == "cxx" || extension == "cc" || extension == "c++") {
|
||||
return "C++";
|
||||
} else if (extension == "c") {
|
||||
return "C";
|
||||
} else if (extension == "h" || extension == "hpp" || extension == "hxx") {
|
||||
return "C/C++ Header";
|
||||
} else if (extension == "py") {
|
||||
return "Python";
|
||||
} else if (extension == "js") {
|
||||
return "JavaScript";
|
||||
} else if (extension == "html" || extension == "htm") {
|
||||
return "HTML";
|
||||
} else if (extension == "css") {
|
||||
return "CSS";
|
||||
} else if (extension == "xml") {
|
||||
return "XML";
|
||||
} else if (extension == "json") {
|
||||
return "JSON";
|
||||
} else if (extension == "txt") {
|
||||
return "Plain Text";
|
||||
} else {
|
||||
return "Plain Text";
|
||||
const QString fileName = fileInfo.fileName();
|
||||
const QString extension = fileInfo.suffix().toLower();
|
||||
|
||||
if (fileName.compare(QStringLiteral("CMakeLists.txt"), Qt::CaseInsensitive) == 0) {
|
||||
return QStringLiteral("cmake");
|
||||
}
|
||||
}
|
||||
|
||||
if (extension == QStringLiteral("cpp") || extension == QStringLiteral("cxx") ||
|
||||
extension == QStringLiteral("cc") || extension == QStringLiteral("c++") ||
|
||||
extension == QStringLiteral("c") || extension == QStringLiteral("h") ||
|
||||
extension == QStringLiteral("hpp") || extension == QStringLiteral("hxx")) {
|
||||
return QStringLiteral("cpp");
|
||||
}
|
||||
|
||||
if (extension == QStringLiteral("py")) {
|
||||
return QStringLiteral("python");
|
||||
}
|
||||
|
||||
if (extension == QStringLiteral("html") || extension == QStringLiteral("htm")) {
|
||||
return QStringLiteral("hypertext");
|
||||
}
|
||||
|
||||
if (extension == QStringLiteral("xml") || extension == QStringLiteral("xsd") || extension == QStringLiteral("xsl")) {
|
||||
return QStringLiteral("xml");
|
||||
}
|
||||
|
||||
if (extension == QStringLiteral("json")) {
|
||||
return QStringLiteral("json");
|
||||
}
|
||||
|
||||
if (extension == QStringLiteral("css")) {
|
||||
return QStringLiteral("css");
|
||||
}
|
||||
|
||||
if (extension == QStringLiteral("cmake")) {
|
||||
return QStringLiteral("cmake");
|
||||
}
|
||||
|
||||
if (extension == QStringLiteral("yaml")) {
|
||||
return QStringLiteral("yaml");
|
||||
}
|
||||
|
||||
if (extension == QStringLiteral("ps1") || extension == QStringLiteral("psm1") || extension == QStringLiteral("psd1")) {
|
||||
return QStringLiteral("powershell");
|
||||
}
|
||||
|
||||
return QString();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user