优化 PhpStorm 的速度

发布于 2022-12-26 20:49:27 字数 2825 浏览 174 评论 0

Java VM options

PHPStorm 依赖 java 运行环境,说白了也就是 java 虚拟机,找到 help > Edit Custom VM Options ,然后在这个文件里可以根据需要增加或减少 PHPstorm 使用的内存

-Xms500m
-Xmx1500m

-Dawt.useSystemAAFontSettings=lcd
-Dawt.java2d.opengl=true

# 这一条只适合于Mac, 可以使java调用优化过的图形引擎
-Dapple.awt.graphics.UseQuartz=true

当然这里还有其他的一些设置,你可以网上搜搜别人都是怎么设置的,然后相应地自行探索

自定义 properties

进入 help > Edit Custom Properties 来设置 PHPStorm 的自定义属性.

editor.zero.latency.typing=true

上面这条,改变的是 PHPstorm 如何渲染字体:立即渲染文字,而不是先进行内容分析。可能会因此导致偶尔有那么一瞬间文字都是不带样式的,但是整体上会顺畅很多。

Inspections and plugins(检查和插件)

PHPstorm 的一大问题就是太强大了,默认加了很多功能,而我们可能平时根本用不到。

找到 preferences -> plugins ,把我们根本用不到的很多插件 plugin ,禁用掉!

不要担心禁的太多,如果你勾掉一个插件的时候,它又被另外一个插件依赖,它会提示你的;而且,在特定的情境下,当 PHPstorm 觉得你应该启用一个插件的时候,它也会提示你的。

禁用不必要的插件是第一步,但是禁用代码检查(inspections),往往可能影响更大。找到 Settings > Editor > Inspections ,根据自己的情况看看哪些时候其实不需要实时的代码检查

Language injection(其它语言的插入)

有一个插件其实特别影响性能,就是 IntelliLang . 这个插件支持一种语言在其他的文件格式中也照样能被识别,比如说当你在一个 PHP 文件中插入 HTML,或者用到 HTML 的代码自动补齐或高亮显示功能时。

当然,并不建议完全禁用掉这个插件,但是呢,可能有些特定的语言插入支持,你并不会用到,这个时候你可以到 Settings > Editor > Language Injections 下,把当前项目里不可能用到的第三方语言插入,都勾掉。

排除对特定项目目录的索引

Settings > Directories 下可以将特定的目录标记排除,然后 PHPstorm 就不会索引其中的文件了。建议排除的目录一般是类似 cachepublicstorage 等包含资源编译文件的,当然还有两个大头,就是 vendornode_modules 目录。

vendor 目录的问题

排除掉 vendor 目录,意味着就不能基于那里面的组件进行自动补全(auto-complete)了,所以这可能不是个好主意。但是呢,有个小技巧就是,你可以整体上排除掉 vendor 目录,然后在 Settings > Languages & Frameworks > PHP 下,将你真正用到的组件目录给额外添加上。

关于 Node modules 目录

Node modules 目录实际上默认已经被排除掉了,但是呢,在 Settings > Languages & Frameworks > JavaScript > Libraries 下,你会看到,它们又被额外引入进来了,假设说你写 js 不是那么多,你也可以在这里将其完全排除掉。当然这些呢,都是基于项目的,你可以在不同的项目作不同的选择。

删除之前版本的 phpstorm 缓存文件夹

经常,每次你更新了 PHPstorm,它就会创建一个新的 cache 文件,而不会自动删除你上一个版本的 cache 文件夹,这往往会占用大量的系统盘空间,如果你用了某一个版本的 PHPstorm 很长时间,这个文件夹一般都是好几 GB。

在 Mac 上,你可以查找类似 ‘PhpStorm2016.x’~/Library/Caches 的文件夹,然后删除它;

在 windows 上,在你的当前用户目录查找类似 .WebIde 的文件夹,将多出来的删掉。

phpstorm 不断重新索引(re-index)的问题

在新近版本的 PS 上,这里一般指 2018 以后的版本,你可能会发现 PS 老是自动地不断重新索引,在右下角会出现 indexing 的状态条,导致你编辑文件的操作很容易被打断,或者说 PS 的各种方便的提示、补全功能会因此而暂停,遇到这个问题,可以尝试如下解决:

  • 重建缓存: File > Invalidate Caches/Restart , 也即重新生成缓存,然后重启,一般此问题会解决
  • 如果第一步没解决问题,那么到 plugin 中禁用掉 .ignore 插件,该插件存在的 bug 也会导致此问题,重启后观察解决情况

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

南汐寒笙箫

暂无简介

文章
评论
605 人气
更多

推荐作者

櫻之舞

文章 0 评论 0

弥枳

文章 0 评论 0

m2429

文章 0 评论 0

野却迷人

文章 0 评论 0

我怀念的。

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文