Cube IDE 实现自动代码补全功能

这篇具有很好参考价值的文章主要介绍了Cube IDE 实现自动代码补全功能。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

绪论

总所周知,我们使用的 Cube IDE 虽然有代码自动补全功能,但是需要通过快捷键 alt + / 来激活代码补全功能,并不能很友好提高开发效率。但是,我们可以通过安装插件来实现自动代码补全功能,具体实现方式如下

环境基础

测试环境使用的是 Cube IDE v1.11.2 版本
stm32cubeide代码补全,stm32,ide,eclipse

下载&安装插件

  1. 打开菜单栏上的 Help->Install New Software…
    stm32cubeide代码补全,stm32,ide,eclipse
    打开下拉菜单有我们接下来步骤的网址
    stm32cubeide代码补全,stm32,ide,eclipse

  2. 打开CDT的网址,安装第一个插件,一路 next,等待安装完成,安装完成后会提示重启软件
    stm32cubeide代码补全,stm32,ide,eclipse

  3. 打开第二个插件安装的网址安装插件,步骤也是一路 next,等待安装完成,然后根据提示重启软件
    stm32cubeide代码补全,stm32,ide,eclipse
    stm32cubeide代码补全,stm32,ide,eclipse

打开代码自动补全插件,导入工程

  1. 打开更多视图
    stm32cubeide代码补全,stm32,ide,eclipse
  2. 打开插件目录
    stm32cubeide代码补全,stm32,ide,eclipse
  3. 把插件以源文件工程导入
    stm32cubeide代码补全,stm32,ide,eclipse

修改插件内容,实现代码自动补全

  1. 打开源文件目录找到需要修改的文件
    stm32cubeide代码补全,stm32,ide,eclipse
  2. 需要修改的两个文件分别为: CContentAssistProcessor.java 和 ContentAssistProcessor.java
    stm32cubeide代码补全,stm32,ide,eclipse
  3. 修改 CContentAssistProcessor.java 文件
    跳转到 verifyAutoActivation 函数,在 378 行后添加新的代码内容
    stm32cubeide代码补全,stm32,ide,eclipse
    添加的代码:
default:
    return activationChar >= 97 && activationChar <= 122?true:activationChar >= 65 && activationChar <= 90;
  1. 修改 ContentAssistProcessor.java 文件
    跳转到 setCompletionProposalAutoActivationCharacters 函数,把函数体注释掉,添加新的内容上去
    stm32cubeide代码补全,stm32,ide,eclipse
    可以直接用以下函数替换掉原函数
public void setCompletionProposalAutoActivationCharacters(char[] activationSet) {
//		fCompletionAutoActivationCharacters = activationSet;
		String index = ".ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
       	char[] triggers = index.toCharArray();
       	fCompletionAutoActivationCharacters = triggers;
}

导出并替换插件

  1. 导出插件
    stm32cubeide代码补全,stm32,ide,eclipse
    stm32cubeide代码补全,stm32,ide,eclipse
    命名最好与先前导入工程的名称一致
    stm32cubeide代码补全,stm32,ide,eclipse
    stm32cubeide代码补全,stm32,ide,eclipse
    stm32cubeide代码补全,stm32,ide,eclipse
    stm32cubeide代码补全,stm32,ide,eclipse

  2. 替换插件
    先关闭 Cube IDE 软件,进入软件安装路径,再进入插件路径,重命名原插件以备份,把先前导出的插件复制进去,就可以重新打开 Cube IDE 编程看一下效果了
    stm32cubeide代码补全,stm32,ide,eclipse

测试效果

输入首单词可以看到会自动弹出提示代码补全
stm32cubeide代码补全,stm32,ide,eclipse

补充

  1. 可能会出现错误导致软件无法打开或者打开软件后编辑器无法正常使用
  2. 删除修改后的插件,恢复备份文件名称软件即可恢复正常
  3. 可以多导出几次修改后的插件替换进去,或者直接覆盖原插件,即可成功,原因未知,如果是覆盖原插件,记得先备份原插件文件用于恢复
  4. 参考文章:
    给你的cubeIDE加上翅膀–添加类似keil的代码补全功能!
    【插件】STM32cubeIDE(eclipse)自动补全无需快捷键,cdt插件修改

资源

Cube IDE 代码自动补全插件文章来源地址https://www.toymoban.com/news/detail-779215.html

到了这里,关于Cube IDE 实现自动代码补全功能的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • STM32基于CubeIDE和HAL库 基础入门学习笔记:功能驱动与应用

    文章目录: 一:LED与按键驱动程序 main.c 1.闪灯  led.h led.c  2.按键控制LED亮灭  key.h  key.c 二:蜂鸣器与继电器驱动程序 main.c 1.蜂鸣器 buzzer.h buzzer.c delay.h delay.c 2.继电器 relay.h relay.c 三:USART串口收发测试程序(超级终端) main.c retarget.h retarget.c usart.h usart.c 四:ADC与DMA驱动程序

    2024年02月13日
    浏览(35)
  • STM32+Cube mx hal库实现CAN通信收发实验

          关于CAN通信的入门教程和基本原理在其他博主发的文章里面都有介绍,笔者只是简单记录下学习过程,文章用到的是正点原子的阿波罗F429开发板,另一个设备是中盛科技的继电器模块(CAN版)。       实现之前看一下继电器模块相关信息          发送数据的格式官方文

    2024年02月16日
    浏览(42)
  • STM32 SYSTick高精度延时功能代码实现

    本篇文章将给大家讲解一下SYSTICK滴答定时器,以及讲解使用滴答定时器来实现高精度延时功能的代码。 SysTick定时器是嵌入式系统中常见的一个系统定时器,在ARM Cortex-M微控制器中广泛使用。下面是关于SysTick定时器的一些介绍: 用途: SysTick定时器通常被用作操作系统的时钟

    2024年02月22日
    浏览(58)
  • STM32F407硬件I2C实现MPU6050通讯(CUBEIDE)

    工程代码 https://download.csdn.net/download/weixin_52849254/87886714 I2C1通道可选择三种不同的通讯协议:I2C、SMBus-Alert-mode、SMBus-two-wire-Interface。 SMBus (System Management Bus,系统管理总线), 为系统和电源管理这样的任务提供了一条控制总线,SMBus与I2C总线之间在时序特性上存在一些差别 修改

    2024年02月09日
    浏览(51)
  • 基于STM32CubeIDE HAL库利用基本定时器实现串口接收不定长数据

    ✨申明:本文章仅发表在 CSDN 网站,任何其他网见此内容均为盗链和爬取,请多多尊重和支持原创! 🍁对于文中所提供的相关资源链接将作不定期更换。 📌相关参考《HAL库教程9:串口接收不定长数据》 🎉对于串口接收不定长数据的处理方案网上有很多,个人觉得采用定时

    2024年02月09日
    浏览(53)
  • MDK keil为什么设置代码自动补全功能页面空白,不是汉化问题造成的

    这个问题在论坛上已经有很多回答,例如 http://t.csdn.cn/jtdB9 http://t.csdn.cn/0jSfN http://t.csdn.cn/D2wlk 但大多数都忽略了另一个原因——打开了51工程。其中第三篇提到了这个原因,但解决方案不够准确。 我来说一下这个问题,如上所述,除了汉化原因外,还有一个重要原因就是Ke

    2024年02月13日
    浏览(63)
  • 【STM32CubeIDE】STM32CubeIDE_快速入门

    本文主要通过新建LED控制工程来简要介绍STM32CubeIDE的简单使用方法 双击桌面快捷方式或者通过Start目录打开软件 在弹出的界面中选择Workspace地址 本人理解此workspace是软件的工作空间,存放软件配置的一些文件 点击新建工程图标或者在菜单栏中选择新建工程 弹出加载界面等待

    2023年04月23日
    浏览(52)
  • 网页搜索自动补全功能如何实现,Elasticsearch来祝佬“一臂之力”

    前言:大家好,我是小威,24届毕业生,在一家满意的公司实习。本篇文章参考网上的课程,介绍Elasticsearch搜索引擎之自动补全功能的介绍与使用,这块内容不作为面试中的重点。 如果文章有什么需要改进的地方还请大佬不吝赐教 👏👏。 小威在此先感谢各位大佬啦~~🤞🤞

    2023年04月15日
    浏览(45)
  • STM32CubeIDE使用示例(STM32CubeMX+STM32CubeIDE+Gcc+JLINK+STM32G030C8T6)

    本文简单记录下STM32CubeIDE的使用方法,整体的环境是STM32CubeMX+STM32CubeIDE+Gcc+JLINK+STM32G030C8T6,实现的简单测试功能是让STM32G030C8T6板子上的LED闪烁,以STM32G030C8T6 PB4 脚做LED 输出闪烁为例,外部8MHZ 晶振,系统主频64MHZ,LED 灯1 秒钟闪烁一次做一个示例程序; 1、我这边已经装好了ST

    2024年02月15日
    浏览(44)
  • STM32FreeRTOS任务通知(STM32cube高效开发)

    1、任务通知可模拟队列和信号量 任务通知是FreeRTOS另外一种进程间通信技术。不需要创建任何中间对象,可以直接从任务向任务或ISR向任务发送通知,传递一个通知值任务通知可以模拟二值信号量、计数信号量、或长度为1的消息队列,使用任务通知,一般效率更高,消耗内

    2024年03月13日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包