php开发工具PhpStorm新版本V2022.1 新增功能亮点介绍
PhpStormV2022.1 版本支持多行和嵌套数组形状、就地提取方法重构,增强对Blade 模板、WordPress、PHP 中的泛型支持等。
自 PhpStorm 2021.2 起,已支持 PHPDoc 块中的单行和单级注释。在 PhpStorm 2022.1 中,在 PHPDoc 和#[ArrayShape]属性 中完全支持多行和嵌套数组形状。
添加数组形状注释以获取键的代码完成并推断简单数组数据结构或类对象数组中的值类型。可以在 PhpStorm 中使用 PHPDoc 和 Attribute 语法,无论使用哪种,返回类型和参数类型都支持该语法。
Extract Method是 PhpStorm 中最常用的重构之一。为了简化代码并创建新方法,只需选择一段代码并按⌘⌥M( Cmd+Alt+M/ Ctrl+Alt+M)。
以前,这将打开重构配置的对话框。在许多情况下,为了提取方法,可以使用就地重构来代替。 不会有对话框,并且会立即在编辑器中创建一个新方法(或函数),光标将激活以编辑新方法的名称。
以前,PhpStorm 将 Blade 模板中的每个代码块视为一个独立的范围,这通常会导致代码完成和洞察力出现问题。在 PhpStorm V2022.1 中,对 IDE 处理 Blade 模板的方式进行了重大修改,可以在.blade.php文件中更好的完成代码,也解决了Blade 模板中代码完成和格式化的更多问题。
在 PhpStorm 中,可以⌘+Click( Ctrl+Click) 对文件路径在编辑器中打开相应的文件。当路径与 WordPress 函数复合时,这不适用于 WordPress 代码中的动态路径。 在此版本中,添加了对get_template_directory_uri()路径中函数的支持。
WordPress 钩子系统功能强大,但无法从调用钩子的位置跳转到声明处理程序的位置。 现在调用左侧有一个装订线图标。单击它可以查看钩子用法列表,包括注册和其他调用。
PhpStorm 除了具有内置的“代码感知”功能外,还具有外部代码知识。这些知识以.phpstorm.meta.php文件的形式出现。可以使用它来教 PhpStorm 有关代码库的更多信息,从而提高完成度。
如果依赖方法_callor _callStatic,那么将失去这些方法的代码完成,因为它们没有定义。 在此版本中,可以添加相应的元数据条目并获得此类调用的自动完成功能。甚至可以自动处理动态调用,从参数值接收特定的方法名称。
现在可以像@|MyClass在.phpstorm.meta.php中一样指定联合类型——这可以改进模拟的编码辅助。
继续改进对 PhpStorm 中基于注释的泛型的支持。在此版本中,介绍了更多案例,包括但不限于:
- @psalm-import-type,@phpstan-import-type
- @psalm-trace,@phpstan-trace
- @method标签中的泛型
在PhpStorm最新版本 中创建新的空项目时,可以选择自动为其生成composer.json文件并提供所需的依赖项,创建项目后,PhpStorm 会提示安装。
V2022.1用新的通知工具窗口替换了事件日志实例。它可以帮助用户了解 IDE 通知,并减少错过任何重要信息的机会。默认情况下,新工具窗口位于 IDE 窗口的右下角。所有通知分为两类:建议和时间线。
从主菜单中,调用结构搜索和替换编辑 | 查找 | 从结构上搜索。 重新设计了结构搜索和替换对话框,以列出所有模板,以便更轻松地浏览它们。 还在Structural Search and Replace 对话框的右上角 添加了Pin Dialog图标。
现在可以在编辑器选项卡之间平均分配工作空间以具有相同的宽度。启用设置/首选项 | 高级设置 | 编辑器标签 | 使嵌套拆分中的比例相等。
现在可以将 UML 图导出为 yEd .graphml、JGraph .drawio、Graphviz .dot、Mermaid .md、Plantuml 和 IntelliJ IDEA .uml 文件,这使得它们与第三方工具兼容。
自述文件通常描述运行应用程序所需的步骤并列出需要使用的命令。V2022.1 将允许直接从降价文件运行这些命令——只需单击命令左侧装订线中的运行图标即可。
向 Markdown 块添加了一个新的复制代码片段操作,它可以让您快速将其内容复制到剪贴板。
重新设计了文本选择中出现的浮动工具栏,以便更轻松地格式化 Markdown 文件。除了新设计之外,工具栏现在允许创建列表并提供用于选择标题样式的菜单。 工具栏是可自定义的,因此可以使用最需要的选项来填充它。转到设置/首选项 | 外观与行为 | 菜单和工具栏 | Markdown 编辑器浮动工具栏。
改进了使用 Git Blame进行注释的功能,使调查引入的更改更容易。当鼠标悬停在注释上时,IDE 会在编辑器中突出显示行中的差异,并在单击它时 打开Git 日志工具窗口。
现在可以更轻松地在 PhpStorm 中使用建议的更改,因为可以直接在 IDE 中本地应用或提交更改。
提交详细信息窗格现在包含有关 GPG 签名和构建状态的信息 ,以前,此数据仅在 Git 日志中显示为一列。
Git 文件历史工具窗口 的新 UI现在独立于索引过程。即使 Log 索引关闭,数据也会以新界面表示。
以上就是PhpStormV2022.1更新的新功能的相关内容,想要了解PhpStorm更多信息,可以私聊我。
PhpStorm是一款PhpStorm开发工具,其旨在提高用户效率,可深刻理解用户的编码,提供智能代码补全,快速导航以及即时错误检查。
python开发工具PyCharm最新版本新增功能介绍
PyCharmV2022.1支持自定义包存储库的身份验证、改进的 TypedDict 和 Docker 的新服务UI。
配置基本 HTTP 身份验证以访问自定义包存储库并通过 PyCharm 轻松管理依赖项,而无需切换到终端进行手动安装。转到Python Packages工具窗口,单击齿轮图标,单击对话窗口中的加号,添加存储库 URL 并选择Basic HTTP选项以输入所需的凭据。
新的通知工具窗口已取代旧的事件日志工具窗口。因此,有用的建议和相关通知以更简单的方式组织起来,以确保不会错过任何重要的事情。
通过自定义各种对象的显示格式,使调试会话更快更容易,尤其是在处理大型或多属性对象时。
进一步的改进:
- 在 LightEdit 模式下重新格式化代码。转到 代码|执行此操作,在主菜单中或按 重新格式化代码Ctrl+Alt+L。
- 当没有找到 Python 3 可执行文件时,PyCharm 现在可以在 macOS 上安装 Python 3。
当使用Run Cell 和 Insert Above时,刚刚添加的单元格现在将默认为 Edit 模式,可以立即开始编写代码。编辑和运行当前单元格时也是如此:执行后它将保持在编辑模式。
以前,当您在命令模式下复制和粘贴单元格时,无论是为了重新组织您的笔记本还是出于任何其他原因,只有单元格本身被粘贴到新位置,而不是其输出。这种行为在 PyCharm 2022.1 中发生了变化。
进一步的改进:
- 支持 Jupyter 运行时代码完成。
PyCharm 通过为可用键提供代码完成,可以轻松地将dict文字用作函数的参数或从需要 TypedDict 的类中实例化对象。
当在需要 TypedDict 的地方使用作为文字或使用dict构造函数创建的字典时,PyCharm 会显示每个键的错误消息,指向错误、缺失或不期望的单个值。
使用包含执行命令指令的 Markdown 文件(例如 README 文件)时,您可以使用装订线中的运行图标直接从文件中运行这些命令。
使用 Markdown 块中的新复制代码片段,您只需单击一下即可轻松地将内容复制到剪贴板。
进一步的改进:
- 使用更新的 Markdown 编辑器浮动工具栏选择标题、创建列表等。
- Join Lines操作现在还包括嵌套 的if语句。
使用 Docker 会很快变得混乱。我们在服务工具窗口中对 Docker 的 UI 进行了重大修改,让您可以更清晰地控制容器、图像、网络和卷。
添加了对 Docker Registry HTTP API V2 的支持,以便与 Docker 1.6+ 一起使用。可以创建简单或受密码保护的 Docker V2 注册表并执行所有常用操作,例如查看、推送和拉取映像。
如果 kubectl 不在标准位置,可以手动配置路径。要设置自定义路径,请转到 设置/首选项 | 构建、执行、部署 | Kubernetes | kubectl 可执行文件的路径。
进一步的改进:
- Kubernetes:Pod 的端口转发功能现在可用。
- Kubernetes: “服务”视图 中的所有资源都有一个新的“描述资源”操作。
- Kubernetes:现在可以从编辑器选项卡中修改从集群加载的资源。
由于对 React 的内置支持,所有关键功能应该已经在您的 Next.js 项目中运行。PhpStorm最新版本 V2022.1 增加了对一些特定于框架的东西的支持,例如pages。PyCharm 现在将解析链接组件的href属性以及表单 和其他标签中使用的路径。代码完成、导航和重构也将起作用。
PyCharm 现在与 JavaScript 工具管理器 Volta 进行了适当的集成,并将自动识别使用 Volta 安装的 Yarn 和 npm。
现在可以像在关系数据库中一样轻松地编辑 MongoDB 集合中的结果,也可以编辑通过.find()获得的结果集。即使在.find() 之后执行修改结果的游标方法(例如sort()或limit()),这也有效。
本文作者及来源:Renderbus瑞云渲染农场https://www.renderbus.com
文章为作者独立观点不代本网立场,未经允许不得转载。