### File: pdt_tools.feature_patch.pdt.3.0.0.v20120810.zip

下記バージョンのEclipse・PDT専用のFeature Patchです。(これ以降のバージョンはサポートしません)

- Eclipse Platform
  3.7.2.v20120207-1839-9gF7UHPDFxGjd-PqDr2jX_4yKaumkoHTz04_q-q
  Build id: M20120208-0800
- PHP Development Tools (PDT) Runtime Feature
  3.0.0.v20110516-1100-7V--F8NcJTTK4UE9TTJJ
  (Update Site Zipは PHP Development Tools (PDT) - Downloads にあります)

以下のバグ修正を追加しました。

1. CodeTemplates/Comments/Filesで$project_name,$file_nameが正しく展開されない

以下のバグを修正しています。

1. CLI実行時、Additional Ini Files が無視されてしまう
   Bug 347618 - Additional PHP .ini files not parsed
   Bug 339547 - add "Use system default php.ini configuration" in EXE prefs
   Bug 324073 - Reading system-wide php.ini by PHP execs leads to segfaults
   #324073の誤修正を削除していますので、不適切な環境(異なるバージョンのPHPを配慮無く混在させた環境)では当然不具合を生じます。その場合は環境設定を直して下さい。
2. Debug Viewのスタックトレースに表示されるfunction名が正しくない
   Bug 326677 - [Regression] Wrong function name shown in Debug View
3. LinuxにおいてRun/Debug As＞PHP Web Pageでダイアログに表示されるデフォルトのURLが「http:/localhost」という不正なものになっている
   Bug 350405 - Incorrect default Launch URL when Run/Debug As PHP Web Page
4. PHP開始タグの前に"<"を入力するとエディタの動作が不正になる
   Bug 350139 - Cannot type HTML code inside of a PHP code block - can lead to file corruption.
5. ASPタグがあると以降の構文カラーが不正になる
   Bug 350827 - ASP Tag highlighting breaking HTML highlighting
6. HTMLの終了タグ候補が補完リストに現れないことがある
   Bug 351646 - HTML end tag proposal is lost in Content Assist
7. .logにBadLocationException
   Bug 352298 - BadLocationException in .log
8. PHP開始タグが正しく処理されていない
   Bug 352299 - PHP start tag is not colored correctly
9. トグルコメントで既存//が消されてしまう
   Bug 356587 - toggle comment block
10. 比較エディタの編集・保存が正常に動作しない不具合の修正
11. ファイルヘッダPHPDocコメントが常に折りたたまれる
    Bug 330781 - Automatic folding of file PHPDoc - missing checkbox
12. ワークスペース外のPHPファイルに対して文法チェックが効いていない(文法エラーがあっても表示されない)
13. PHP ExplorerのRename(Alt+Shift+R)の動作が異常
    Bug 355294 - Shortcut rename (Shift+Alt+R) doesn't work in the PHP Explore view
14. PreferencesのSyntax ColoringでEnableをon/offしてもサンプルテキストに反映されない
    Bug 332918 - Syntax Coloring - Enabling/disabling doesn't affect preview
15. PHPエディタでstatic変数宣言の変数名を編集すると色がStatic fieldsではなくFieldsになってしまう
16. Code TemplatesのConstructorsがコンストラクタに適用されず"constructor()"に適用されてしまう
17. ZendDebuggerでのデバッグでLinked Resourceのブレークポイントが無視されてしまう
18. Variables Viewでオブジェクト変数のプロパティや配列を変更してもView上には反映されない(実体は変更されている)
19. Variables Viewで値のnullを変更しようとすると“org.eclipse.core.runtime.AssertionFailedException: assertion failed:”が発生してView上では変更できない(Change Valueでは変更できる)
20. 比較エディタの編集・保存が正常に動作しない
    SVNのリビジョン間比較ができなくなるバグがあったので、本家cvs-headに合わせました。
    但し、SVNのリビジョン間比較での編集でエラーログが吐かれる・構文カラーが正しくないなどの未解決の不具合があります。
21. コメントブロックをペーストすると行頭のスペースが一部消失する
    Bug 351771 - Pasting changes the indent of the pasted code.
    SmartPasteをon/offするUI(Preferences＞PHP＞Editor＞Typing＞When pasting)も追加しました。 但しペースト時の自動編集はペーストする場所によって動作が異なるので、期待した結果が得られるとは限りません。
22. コードブロックをペーストするとインデントが消失する(ケースがある)
    Bug 351771 - Pasting changes the indent of the pasted code.
23. PHPファイル新規作成テンプレートに日本語を使うと文字化けする(Encodingの設定による)
    Bug 357650 - broken special chars in PHP code templates
24. XdebugでのデバッグでPath Mappingが効かない(デバッグ対象でないファイルが開かれる)ことがある
    (対象ファイルがワークスペース外にあって、リンク(外部プロジェクトやLinked Folder/File)がワークスペース内に複数箇所ある場合など)
25. Ctrl+Shift+Iポップアップ画面でのCtrl+Shift+I(Expressions Viewへの登録)が効かない
    Bug 321222 - Shortcut CTRL+SHIFT+I doesn't work in new Inspect action popup dialog
    同時に、テキスト非選択状態でもCtrl+Shift+Iが効いてしまう不具合も対処しました。
    なお、重複登録が可能な件(ちなみにJDTも同じ)はorg.eclipse.debug.uiの仕様ですので。
26. "("直後のコード補完が効かない
    Bug 362803 - CA does not work after (
27. PHP Project OutlineビューのConstantをダブルクリックした時に選択されるソースコードの範囲が過大
    Bug 323030 - unexpected area in editor was highlighted in case of double click on constant in PHP project outline view
28. クラス変数宣言が複数行に亘る場合Foldingの範囲・動作が不正
    Bug 326373 - Collapsed class variables doesn't expand when using code folding.
29. Project propertiesのPHP DebugのAuto-generated Base URLがhttp://～ではなくhttp:/～と表示される(Linux)
30. PHP Web PageのLaunch Configurationで、Default Base URLが "/" のProjectのFileを選択するとURL欄のパスが "//ファイル名" になる
31. deprecatedなfunctionと同名のメソッドのstatic呼び出し(Foo::bar())がdeprecated装飾される
    Bug 357919 - Making function deprecated will also affect other functions with the same name
32. deprecatedなメソッドのstatic呼び出し(Foo::bar())がdeprecated装飾されない
33. Preferences＞PHP＞Code Style＞FormatterでTab policyをSpacesにした場合、TABキー押下でカーソル位置に関わらずIndentation size分のスペースが挿入されてしまう
    Bug 336647 - Insert Spaces for Tabs / Tab Policy constantly inserts the configured number of spaces
34. Eclipse終了時、
    `NullPointerException at org.eclipse.php.internal.server.ui.Activator$1.run(Activator.java:65)`
    が発生することがある
35. Run(Debug) Configurations画面でLaunch Configurationを新規作成すると不適切な設定ファイルを生成してしまうため、Context Launchingが正常に働かない
36. Preferences＞General＞KeysのCommand名が"ActionDefinition.renameElement.name"
37. 変数(グローバル変数・クラス変数等)のハイパーリンクが大小文字の区別をしていない
    Bug 365167 - hyperlink for global variable is not case sensitive.
38. Xdebugでデバッグ時、Superglobal($_SERVER等)の値をVariablesビューで変更できない
39. クラス内で同名の変数を/* @var ... */定義つきで使用した場合、クラス内の最初の@var定義のみが有効となってしまう
    Bug 366926 - /* @var */ completion does not use correct scope
40. EOFに括弧があるとカーソルをEOFに持って行っても対応する括弧がMatchingBracket表示されない
    Bug 367415 - Matching brackets does not work in the last line of code
41. Variables Viewでオブジェクト変数のプロパティや配列の値を変更してもView上には反映されない(実体は変更されている)件の修正変更
42. 行ブロックペースト時の振る舞いの変更(カーソルポジションを行頭に)
43. PHP Executablesで一度登録したexeについてEditでデバッガタイプを変更しても、PHP Debug等に反映されず、削除もできない(見かけ上消えるが、Preferencesを開き直すと削除されていない)
44. Xdebugでのデバッグ終了時、PHPパースペクティブに切り替わらない
45. URLにスペースが含まれている場合、外部ブラウザのFirefoxでWebページにアクセスできない(URLがスペースで分断されてしまう)
46. LaunchConfigのAlternate PHPに指定したexeをPreferencesから削除すると、LaunchConfig画面でProblem Occurredがポップアップする
47. LaunchConfigのAlternate PHPを指定したconfigを表示した後、Project default PHPを指定したconfigを表示させるとAlternate PHPが選択されたままになる
48. IncludePathに追加したProjectを"Remove from Include Path"アクションで削除してもBuildpathには残りっぱなしになる
49. PreferencesのSyntax ColoringでEnableのOn/Offとラベルの有効/無効が連動していない
50. 行ブロックペーストでインデント自動調整(Preferences/PHP/Editor/TypingのAdjust Indentation)が効かない
51. 比較エディタで、編集フラグが立たない、不正なポップアップが表示される、編集ファイルが保存されない、等々の不具合がある
    →org.eclipse.compareプラグインを置き換えて対応
52. 比較エディタで双方に変更を加えても一方しか保存されない
    Bug 312893 - Flushing content merge viewer resets dirty flag for a Saveable that is not being saved
53. 非Smart Insertモードでも"{"が自動編集される

なお、適用したパッチは eclipse/features/jp.sourceforge.pdt_tools.feature_patch.pdt_3.0.0.v2011～/patch.txt にあります(インストール後)。CVSリポジトリのv20110516-1100に対する差分です。ビルドにはjflex-1.2.2が必要です。

#### インストール方法

- Help＞Install New Software＞Add＞Archive＞ダウンロードしたファイルを指定
- PDT Tools＞Feature Patch for PDT 3.0.0 を選択してInstall

#### アンインストール方法

- Help＞About Eclipse Platform＞Installation Details
- Installed Softwareの「Feature Patch for PDT 3.0.0」を選択してUninstall