

VSCodeを使って、phpのコードを書いています。  
変数や関数の名前の変更をしようと思っています。

「F2キーを押す」と説明されているサイトが多いのですが、  
実際にF2キーを押しても、何も反応がありません。

変数にカーソルがある状態、変数を選択した状態、いずれも反応なしです。

Ctrl＋F2をクリックすると、文字列変更になります。  
スコープを無視してすべての文字を変更するので利用できません。

[code]

    function sample1(){
      $result = 1; //＜＝これを変更
      return $resutl;
    }
    function sample2(){
      $ResultSample = 2;
      return $ResultSample ;
    }
    
    /// resutl を hoho にすると、次のようになってしまう
    function sample1(){
      $hogehoge = 1;
      return $hogehoge;
    }
    function sample2(){
      $hogehogeSample= 2;
      return $hogehogeSample;
    }
    
[/code]

ちなみに vue の編集においては「変数にカーソルがあるとき（選択はしない）、f2キー」でスコープ内変数名を変更することはできています。

なにか設定があるように思えるのですが、検索エンジンでの検索では見つけることができませんでした。  
拡張など必要なものがあるのでしょうか？  
よろしくお願いします。


CC BY-SA 4.0
2023-02-12T03:32:28.660
93806
2023-09-13T02:03:04.580
2023-02-14T07:59:11.810
3060
7980
question
php vscode
VSCode で PHP ファイルの編集時、名前の一括変更ができない


VS Codeで `F2` は `editor.action.rename` が割り当てられているはず  
php 利用の際, 別のコマンドが `when` の指定で有効になってるのかもしれません  
(キーボード・ショートカット (`Ctrl`+`k` `Ctrl`+`s`) で参照すると分かるかも)

`editor.action.rename` を実行するならコマンドパレット (`Ctrl`+`Shift`+`p`)を開き コマンド ID
をコピペするとよいでしょう

あるいは他の手段として

  * 現状のキーボード・ショートカット(の割り当て)から `F2` を復活させる
  * もしくは別のキーに `editor.action.rename` を割り当てる
  * マルチカーソルを利用する (`Ctrl`+`d` などその他)


CC BY-SA 4.0
2023-02-12T07:19:16.167
93808
2023-02-12T07:19:16.167
43025
93806
answer


拡張機能の [PHP Tools for Visual Studio Code](https://www.devsense.com/ja)
をインストールすることで解決しました。

vscode で PHP言語で開発する際に必要な拡張のようです。

[php 使用するオペレーションシステム Windows
(Wikibooks)](https://ja.wikibooks.org/wiki/PHP/#Windows)

PHP開発のためにたくさんのページを参考にしましたが、この拡張が紹介されているページには出会っていませんでした。実際に検索しても、日本語ページでは先程のWikipediaともう1件しかありません。

そのため、他の拡張で「F2で変数名、関数名変更」ができる可能性があります。

【追記】

「できた」と、喜んでいたのですが「名前変更は有料版のみ」でした、  
どうりで利用者数が少ないはずです。

この事例から考えると、vscodeのphpでは「スコープ内の名前を同時変更はできない」と考えるほうが良さそうです。


CC BY-SA 4.0
2023-02-12T09:42:43.757
93810
2023-09-13T02:03:04.580
2023-09-13T02:03:04.580
7980
7980
93806
answer