我在使用过IntelliJ IDEA(一款Java开发工具)之后,感觉Delphi的IDE在编写代码方面尤其是代码提示方面和IntelliJ IDEA相比真的天差地别,所以决定认真的研究一下Delphi的代码提示功能
一般情况下我们使用Delphi的开发工具都会安装cnpack专家包,但是我安装了XE10.4之后专家包并不怎么好用,内联变量这种新特性专家包是报错的,而且除了代码提示功能我不知道这个专家包还有什么作用,直接卸载了(请原谅我浅薄的认知),其实在10.4版本甚至10.3版本都不需要安装这个就可以实现代码提示
- In 10.4, we’ve reworked code completion and other features. It’s one of the most significant changes to the IDE in a decade.
- Goole翻译:在10.4版中,我们对代码完成和其他功能进行了重新设计。这是十年来对IDE的最重要的改变之一。
这句话摘自官方的wiki,然后在官方的wiki中还看到了下面这张图
就是因为这种图让我纠结了好久,在我自己的Delphi中并没有找到LSP的进程,然而我在微软的LSP服务器列表中确实看到了Delphi(https://microsoft.github.io/language-server-protocol/implementors/servers/)
难道我使用的姿势不对么?继续翻文档,然后找到了相关的设置,我不知道我的是否正确,但是至少代码提示是没有问题,参考地址:http://docwiki.embarcadero.com/RADStudio/Sydney/en/Code_Insight_Reference
大概的意思就是默认官方已经搞好了,如果你想自定义LSP服务的话也是可以的,提供了对应的设置,像我这种比较懒的人当然选择不折腾了
这是DelphiXE10.4的设置,其他版本差不多,但是需要注意的是LSP貌似是10.3开始支持的,10.4做了重构,再以前的版本我就不知道了
修改代码提示快捷键
当你配置完成之后你会愉快的发现当我们在写如下这样的代码时确实有提示
然并卵当我们在书写像function、public等等关键字的时候并没有什么提示,这个并不是配置错误,而是这些提示需要依靠代码提示键触发,Delphi里面的代码提示快捷键是Ctrl+Space,而这个快捷键是我们平时的输入法切换快捷键,所以....
在网上找了一个插件,可以修改快捷键,但是据那个博客上说在win10环境下使用并不完美,聊胜于无吧!链接如下:
链接:https://pan.baidu.com/s/17a1USiv5IEY2aMnDas2IiQ
提取码:uny9
失效留言
安装插件
打开插件项目
修改完成之后,右击安装
我自己的电脑上运行是没有问题的,如果有问题在【问答社区】留言
Class Explorer
我们知道当我们编写了函数、过程声明之后在该函数或者过程上面按下Ctrl+Shift+C就可以实现该函数、过程的快速补全
而一个类中除了函数、过程这些成员之外还有字段,那么字段如何快速生成对应的属性访问,我们可以使用一个叫Class Explorer的视图工具
默认情况下这个视图是关闭的,所以我们打开
我们在这里可以通过它实现图形的方式直接生成类的成员,效果图
向类中添加一个字段
生成访问该字段的属性
生成的代码
好吧!类型选的有问题,不过这并不影响
利用这两项在写代码的时候确实可以提升不小的效率,这些只是我自己在使用过程中发现并总结的一些技能点,有错误的地方还还请各位多多指点