問題タブ [php-mode]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1299 参照

php - phpモードでコードを適切にコメント化するようにemacsを設定するにはどうすればよいですか?

私はemacs23.3.1を持っており、Windows上で実行しています。

http://php-mode.sourceforge.net/のphp- mode1.5 、変更:2008-11-04

以前はこれでうまくいったと思いますが、今では、 `newcomment.el'のインタラクティブにコンパイルされたLisp関数であるcomment-regionを使用してコードのブロックをコメントアウトしようとすると、悪い結果が得られます。

例:

前:

ここに画像の説明を入力してください

後:

ここに画像の説明を入力してください

コメント付きブロックの各行には、1行のコメント開始シーケンス//と複数行のコメント終了シーケンスがあることがわかります*/

醜いですが、これは大きな問題ではありません。ブロックのコメントを解除しようとすると、問題が発生します。「コメントの終わりが見つかりません」というエラーが表示されます。つまり、comment-regionで元に戻すことはできませんC-u comment-region

これを理解できるかどうかはわかりますが、phpモードで欠落している設定はありますか?

誰か知ってる?


もっと

comment-startcomment-end変数を変更するためにphp-mode-hook関数に何も入れませんでした。デバッグすると、それらが不一致のペアにcomment-region設定されていることがわかります。それはcomment-regionの奇妙な結果を説明しています。そのような変数を設定するのは私のコードではないと思います。//*/

フックで明示的に//and(空の文字列)に設定してみました。その場合、comment-region見た目はきれいに見えますが、それでもコメントを外すことはありません。/*との一致するペアも試しました*/が、同じ結果が得られました。コメント解除は成功しません。エラーはcan't find comment end.です。

MORE2

私の構文テーブルは正しいと思います。これを示しています:

ここに画像の説明を入力してください

...これは私には正しいようです。

0 投票する
3 に答える
690 参照

php - クロージャを使用するときにphpモードのインデントを修正する方法

私はEmacsでphp-modeを使用していますが、次のような引数としてクロージャを使用する場合を除いて、正常に機能します。

関数が関数呼び出しの内部にある場合、インデントが2倍になることを示しています。これを修正する方法は?

編集

このように見せるための方法(javascript-modeが無名関数を処理するのと同じです)。

0 投票する
1 に答える
451 参照

emacs - Aquamacs ウェブモード

Aquamacs で Web 編集 (HTML/JS/PHP、CSS を個別に) のモードを探しています。以前の Cocoa Emacs では web-mode.el を使用していましたが、Aquamacs では

エラー。どうしたの?同じ .emacs 構成で、Cocoa Emacs は問題ありません。

問題は、これら 3 つのモード (私にとって最も重要なのは構文の色分け) を 1 つに結合できるモードが必要なことです。

0 投票する
1 に答える
1273 参照

emacs - EmacsでPHPモードのインデントを2つのスペースに変更するにはどうすればよいですか?

インデントを 4 つのスペースから 2 つのスペースに変更しようとしています (このスタイルでコードを記述する必要があります)。

PHPコードを使用してバッファでこれを評価しようとします:

また

TABを入力すると、4つのスペースが表示されました。