Qt4 の emacs セマンティックとオートコンプリートの構成とテストに何時間も費やしました。間接的にインクルードしているため、これらは Qt4 インクルード ファイルを解析または検索することさえできないことがわかりました。たとえば、QString> include qstring.h (include ../../src/tools/qstring.h, mingw) 常に "Wrong type argument: stringp, nil" (Linux または Mingw で試してください) が表示されません。 Lispを知っています。手伝ってくれませんか?どうもありがとう!
以下のようにトレースをデバッグします。
Debugger entered--Lisp error: (wrong-type-argument stringp nil)
call-process(nil nil #<buffer *clang-output*> nil "-cc1" "-fsyntax-only" "-I~/project/qt481-mingw/include" "-I~/project/qt481-mingw/include/Qt" "-I~/project/qt481-mingw/include/QtCore" "-I~/project/qt481-mingw/include/QtGui" "-code-completion-at" "c:/Users/ygao/project/tests/test-qt-semantic.cpp:13:8" "c:/Users/ygao/project/tests/test-qt-semantic.cpp")
apply(call-process nil nil #<buffer *clang-output*> nil ("-cc1" "-fsyntax-only" "-I~/project/qt481-mingw/include" "-I~/project/qt481-mingw/include/Qt" "-I~/project/qt481-mingw/include/QtCore" "-I~/project/qt481-mingw/include/QtGui" "-code-completion-at" "c:/Users/ygao/project/tests/test-qt-semantic.cpp:13:8" "c:/Users/ygao/project/tests/test-qt-semantic.cpp"))
(if ac-clang-auto-save (apply (quote call-process) ac-clang-executable nil buf nil args) (apply (quote call-process-region) (point-min) (point-max) ac-clang-executable nil buf nil args))