これまで、私はphp-cs-fixerを使って私のPHPを美しくするようにAtomを設定しましたが、今度は別のMacで同じプロセスを実行する必要があり、私はそれをどのようにしたのか。php-cs-fixerとPATH変数を設定する
フロントエンドの開発者として、私はPHPの専門家ではありませんが、Atomプラグインはphp-cs-fixerを使用して実際の修正を容易にする仲介人に過ぎないことを理解しています。にアクセスする。いったん私がフィクサーをインストールしたら、その場所を私のPATH
変数に追加しなければなりませんでした。混乱する部分は、私がAtom(チェック〜/ .atom/packages)やHomebrew(brew list
で確認)を使ってインストールされていないということですが、ファイルは/ usr/local/binにあります。私はそれを移動した場合、それは間違いなくこのファイルを使用していますので、アトムは、元のエラーを返します。
See https://github.com/FriendsOfPHP/PHP-CS-Fixer for program installation instructions.
Your program is properly installed if running 'which php-cs-fixer' in your Terminal returns an absolute path to the executable. If this does not work then you have not installed the program correctly and so Atom Beautify will not find the program. Atom Beautify requires that the program be found in your PATH environment variable.
Note that this is not an Atom Beautify issue if beautification does not work and the above command also does not work: this is expected behaviour, since you have not properly installed your program. Please properly setup the program and search through existing Atom Beautify issues before creating a new issue. See https://github.com/Glavin001/atom-beautify/search?q=php-cs-fixer&type=Issues for related Issues and https://github.com/Glavin001/atom-beautify/tree/master/docs for documentation. If you are still unable to resolve this issue on your own then please create a new issue and ask for help.
Hide Stack Trace
Error: Could not find 'php-cs-fixer'. The program may not be installed.
at PHPCSFixer.module.exports.Beautifier.commandNotFoundError (/Users/ourcore/.atom/packages/atom-beautify/src/beautifiers/beautifier.coffee:204:14)
at /Users/ourcore/.atom/packages/atom-beautify/src/beautifiers/beautifier.coffee:304:22
at tryCatcher (/Users/ourcore/.atom/packages/atom-beautify/node_modules/bluebird/js/release/util.js:16:23)
at Promise._settlePromiseFromHandler (/Users/ourcore/.atom/packages/atom-beautify/node_modules/bluebird/js/release/promise.js:510:31)
at Promise._settlePromise (/Users/ourcore/.atom/packages/atom-beautify/node_modules/bluebird/js/release/promise.js:567:18)
at Promise._settlePromise0 (/Users/ourcore/.atom/packages/atom-beautify/node_modules/bluebird/js/release/promise.js:612:10)
at Promise._settlePromises (/Users/ourcore/.atom/packages/atom-beautify/node_modules/bluebird/js/release/promise.js:687:18)
at Async._drainQueue (/Users/ourcore/.atom/packages/atom-beautify/node_modules/bluebird/js/release/async.js:138:16)
at Async._drainQueues (/Users/ourcore/.atom/packages/atom-beautify/node_modules/bluebird/js/release/async.js:148:10)
at Async.drainQueues (/Users/ourcore/.atom/packages/atom-beautify/node_modules/bluebird/js/release/async.js:17:14)
at process._tickCallback (internal/process/next_tick.js:103:7)
which php-cs-fixer
戻り/usr/local/bin/php-cs-fixer
と私のPATH
変数を現在/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/ourcore/.atom/packages/php-cs-fixer
が含まれています。
私の質問は、PATH
変数が別の場所でその変数を指しているように見える場合、どのように解決策が働いているのですか? PATH
の場所はまったく問題なのですか、Atomプラグインは/ usr/local/binを調べることを知っていますか?私はそれを繰り返す前にプロセス全体を完全に理解したいだけです。
EDIT:私はPATH
からAtomディレクトリを削除してもプラグインには影響しませんでしたので、2番目のMacに同じディレクトリにファイルをコピーしても問題なく実行できました。 PATH
を編集します。解決策は、誰かがOSに通知するファイルですか?
あなたは[設定]で 'executablePath'を指定しました(https://github.com/pfefferle/ atom-php-cs-fixer#settings)?それはなくても動作するはずですが、試してみる価値があります。 – idleberg
私は行こうとしていましたが、それが空白であることに気づいたので、/ usr/local/binを調べる方法がわかりません。 –
この設定はデフォルトのバージョンを上書きするためのものです。したがって、空白のままにしておくと、 'PATH'で見つかったものを使用します([see source](https://github.com/pfefferle/atom-php-cs-fixer/blob /v2.5.9/lib/php-cs-fixer.coffee#L17)) – idleberg