运行 打开 PhpStorm 的命令行代码格式化程序
Run code formatter from the command line with PhpStorm open
如果我转到 PhpStorm\bin 文件夹,我可以 运行 format.bat 命令从命令行格式化文件,例如
phpstorm format -r C:\path\to\my\code -r -s c:\path\to\my\settings.xml
效果很好。但是,如果 PhpStorm 打开,我无法 运行 命令,我得到一个错误:
Only one instance of PhpStorm can be run at a time
关闭我的 IDE 或必须使用第 3 方代码格式化程序并不理想。有什么解决方法吗?无需安装另一个 PhpStorm 副本。
这是一个已知问题,请参阅:https://youtrack.jetbrains.com/issue/IDEA-160462
来自 y.bedrov 的 link 将我带到这里 https://confluence.jetbrains.com/display/IDEADEV/Command-Line+Source+Code+Formatter 并提供了一个潜在的解决方案。
不幸的是,我似乎无法让它工作,我不得不求助于复制我的 PhpStorm 目录并改用副本。但我在这里添加它希望它能帮助其他人
当 IDE 为 运行ning 时,运行ning 命令行格式化程序
在 Linux/MacOS
- 转到 /bin 目录,其中安装了 Intellij IDEA 或基于 Intellij IDEA 的产品。
- 将idea.properties复制到其他文件,例如format.properties
修改format.properties如下:
取消注释以下行:
- #idea.config.path=${user.home}/.IntelliJIdea/config
- #idea.system.path=${user.home}/.IntelliJIdea/system
将它们更改为指向一些与默认不同的目录,例如:
- idea.config.path=${user.home}/.IntelliJIdea/format/config
- idea.system.path=${user.home}/.IntelliJIdea/format/system
通过添加带有 IDEA_PROPERTIES 变量的行来修改 format.sh:
\#!/bin/sh
\# ------------------------------------------------------
\# IntelliJ IDEA formatting script.
\# ------------------------------------------------------
IDE_BIN_HOME="${0%/*}"
export IDEA_PROPERTIES=$IDE_BIN_HOME/format.properties
exec "$IDE_BIN_HOME/idea.sh" format "$@"
运行 format.sh 不关闭 IDE,它应该给出以下输出:
IntelliJ IDEA ..., build ... Formatter
Usage: format [-h] [-r|-R] [-s|-settings settingsPath] path1 path2...
-h|-help Show a help message and exit.
-s|-settings A path to Intellij IDEA code style settings .xml file.
-r|-R Scan directories recursively.
-m|-mask A comma-separated list of file masks.
path.. A path to a file or a directory.
在 Windows
您必须按照上述 Linux/MacOS 创建一个单独的 format.properties 文件。
通过添加带有 IDEA_PROPERTIES 变量的行来更改 format.bat 文件,如下所示:
@ECHO OFF
::----------------------------------------------------------------------
:: IntelliJ IDEA formatting script.
::----------------------------------------------------------------------
SET IDE_BIN_DIR=%~dp0
SET IDEA_PROPERTIES=%IDE_BIN_DIR%\format.properties
CALL "%IDE_BIN_DIR%\idea.bat" format %*
运行 format.bat,它将列出命令行格式化程序选项。
如果我转到 PhpStorm\bin 文件夹,我可以 运行 format.bat 命令从命令行格式化文件,例如
phpstorm format -r C:\path\to\my\code -r -s c:\path\to\my\settings.xml
效果很好。但是,如果 PhpStorm 打开,我无法 运行 命令,我得到一个错误:
Only one instance of PhpStorm can be run at a time
关闭我的 IDE 或必须使用第 3 方代码格式化程序并不理想。有什么解决方法吗?无需安装另一个 PhpStorm 副本。
这是一个已知问题,请参阅:https://youtrack.jetbrains.com/issue/IDEA-160462
来自 y.bedrov 的 link 将我带到这里 https://confluence.jetbrains.com/display/IDEADEV/Command-Line+Source+Code+Formatter 并提供了一个潜在的解决方案。
不幸的是,我似乎无法让它工作,我不得不求助于复制我的 PhpStorm 目录并改用副本。但我在这里添加它希望它能帮助其他人
当 IDE 为 运行ning 时,运行ning 命令行格式化程序
在 Linux/MacOS
- 转到 /bin 目录,其中安装了 Intellij IDEA 或基于 Intellij IDEA 的产品。
- 将idea.properties复制到其他文件,例如format.properties
修改format.properties如下:
取消注释以下行:
- #idea.config.path=${user.home}/.IntelliJIdea/config
- #idea.system.path=${user.home}/.IntelliJIdea/system
将它们更改为指向一些与默认不同的目录,例如:
- idea.config.path=${user.home}/.IntelliJIdea/format/config
- idea.system.path=${user.home}/.IntelliJIdea/format/system
修改format.properties如下:
取消注释以下行:
- #idea.config.path=${user.home}/.IntelliJIdea/config
- #idea.system.path=${user.home}/.IntelliJIdea/system
将它们更改为指向一些与默认不同的目录,例如:
- idea.config.path=${user.home}/.IntelliJIdea/format/config
- idea.system.path=${user.home}/.IntelliJIdea/format/system
通过添加带有 IDEA_PROPERTIES 变量的行来修改 format.sh:
\#!/bin/sh
\# ------------------------------------------------------
\# IntelliJ IDEA formatting script.
\# ------------------------------------------------------
IDE_BIN_HOME="${0%/*}"
export IDEA_PROPERTIES=$IDE_BIN_HOME/format.properties
exec "$IDE_BIN_HOME/idea.sh" format "$@"
运行 format.sh 不关闭 IDE,它应该给出以下输出:
IntelliJ IDEA ..., build ... Formatter
Usage: format [-h] [-r|-R] [-s|-settings settingsPath] path1 path2...
-h|-help Show a help message and exit.
-s|-settings A path to Intellij IDEA code style settings .xml file.
-r|-R Scan directories recursively.
-m|-mask A comma-separated list of file masks.
path.. A path to a file or a directory.
在 Windows
您必须按照上述 Linux/MacOS 创建一个单独的 format.properties 文件。 通过添加带有 IDEA_PROPERTIES 变量的行来更改 format.bat 文件,如下所示:
@ECHO OFF
::----------------------------------------------------------------------
:: IntelliJ IDEA formatting script.
::----------------------------------------------------------------------
SET IDE_BIN_DIR=%~dp0
SET IDEA_PROPERTIES=%IDE_BIN_DIR%\format.properties
CALL "%IDE_BIN_DIR%\idea.bat" format %*
运行 format.bat,它将列出命令行格式化程序选项。