0

在更改我以允许从其原始位置读取它们之后,我正在使用带有 vim/syntastic 的 Qt5 。.gvimrc我注意到的问题是,在包含 Qt 库的文件中,所有形式的语法检查都被禁用。

我的相关部分.gvimrc如下:

au BufNewFile,BufRead *.cpp set syntax=cpp11
"set statusline+=%#warningmsg#
"set statusline+=%{SyntasticStatuslineFlag()}
"set statusline+=%*
let g:syntastic_cpp_include_dirs = ['/opt/Qt5.0.0/5.0.0/gcc_64/include/QtCore', '/opt/Qt5.0.0/5.0.0/gcc_64/include/QtWidgets']
set path=../include

let g:syntastic_cpp_check_header = 1
let g:syntastic_auto_loc_list = 0
let g:syntastic_enable_signs=1
let g:syntastic_quiet_warnings=1
set wildchar=<Tab> wildmenu wildmode=full

.. 只是为了说明,下面的代码块中有一个浮点数字符串,vim 不会将其标记为语法错误;只要我 #include 顶部的 Qt 头文件,它就不会显示任何错误。如果我从 cpp 文件中删除它们,或者在 gvimrc 中删除将 syntastic 连接到它们的条目,语法突出显示将正常恢复。

#include <qapplication.h>
#include <qsplitter.h>
#include <qlistview.h>
#include <qstringlist.h>
#include <qstandarditemmodel.h>
int main(int argc, char* argv[]){
    QApplication app (argc,argv);
    QSplitter *splitter = new QSplitter;

    QStandardItemModel model(2,1,343,44)sd2;
    QListView *list = new QListView (splitter);
    list->setModel(model);

    splitter->show();
    return app.exec();
8098707807


    //Creating a list of objects to be shown in the view 
    QList<QString> indices;
    indices<<"ABC"<<"JKL";
    model.setItem(0,0,indices[0]);
}

查看.gvimrc上面的脚本是我做错了什么还是不支持这些标头?

4

0 回答 0