在Qake关键字的CMake项目中启用语法突出显示

时间:2017-09-25 04:08:51

标签: c++ qt cmake qt-creator

这是一个屏蔽我的问题的屏幕截图。 Qt Creator在CMake项目中将qt特定关键字强调为无效。我使用Qt Creator 4.2.2和Fedora 26。

signals and public slots are wrong but must be highlighted as correct

我尝试使用Qt提供的系统语法高亮防御文件。但它对我没有帮助。那么如何解决这个问题?

CMake代码:

project("highlight-cmake")
cmake_minimum_required(VERSION 3.5)

find_package(Qt5Core REQUIRED)
find_package(Qt5Gui REQUIRED)
find_package(Qt5Widgets REQUIRED)

include_directories(${CMAKE_SOURCE_DIR} ${CMAKE_BINARY_DIR})

set(HEADERS
    mainwindow.h
)

set(SOURCES
    mainwindow.cpp
    main.cpp
)

set(FORMS
    mainwindow.ui
)

qt5_wrap_cpp(MOC_SOURCES ${HEADERS})
qt5_wrap_ui(UI_SOURCES ${FORMS})

add_executable(${PROJECT_NAME} ${HEADERS} ${SOURCES} ${MOC_SOURCES} ${UI_SOURCES})
target_link_libraries(${PROJECT_NAME} Qt5::Core Qt5::Gui Qt5::Widgets)

1 个答案:

答案 0 :(得分:0)

您似乎有QT_NO_KEYWORDS定义集。这会导致slotssignals等Qt关键字未定义。要么取消定义QT_NO_KEYWORDS,要么使用Q_SLOTS代替slotsQ_SIGNALS而不是signals