用Arduino IDE写ESP8266没有代码补全,不能跳转查看头文件 (:个人觉得这是最难受的
vscode装上Microsoft的arduino扩展后,有时候会找不到头文件。刚开始自己傻傻的一个个往includePath里面添加,后来在引入ESP8266WiFi.h、web server相关头文件的时候已经完全无法忍受。之后才发现 \\** 这么个东西才真的是美滋滋~~~
打开vscode,文件->首选项->设置->扩展->Arduino configuration,直接点击 在settings.json中编辑
此时会自动打开arduino的全局配置文件,我的已经配置过了所以内容看上去会有些丰富
arduino.path | 这个是Arduino IDE的安装路径,我是安在D盘的Arduino文件夹下,所以写的"D:\\Arduino"。在配置文件中如果路径使用 \ 的话要替换成 \\ |
C_Cpp.default.includePath | 这里填的是头文件的路径。为了兼容AVR,所以把Arduino IDE安装目录下的avr头文件也填了进来; 注意,如果你想包含某个目录及其子目录的话,在路径后加上\\** ,否则只搜索该目录而不会连同其子目录一起搜索; C盘的那两个路径是esp8266自带的库和例子以及交叉编译工具相关的头文件; D盘的路径是我在引入ESP8266WiFi.h时报有个.h文件找不到,查了半天要引入ucrt下的文件才行; H盘是Arduino IDE安装第三方库的路径,这个地址就是Arduino IDE 文件->首选项 中的 项目文件夹位置,加上libraries即可 |
C_Cpp.default.browse.path | 处理查找定义的,基本和includePath相同 |
差不多也没了,重点是上面表里这三个。还有一个需要注意的地方就是 \\** 在子文件夹多的地方慎重使用。最好是能让vscode找到你需要的文件和内容就行,否则每次打开的时候搜索头文件会耗费很长时间
includePath和browse.path一定要加上avr和第三方库的路径(第三方库路径末尾建议加上\\**,不然每次安装第三方库都vscode都找不到,得自己添加)。交叉编译工具链的include文件夹建议加上以备不时之需