EclipseのJavaコードフォーマッタにブロックコメントを無視させる
質問
Eclipseの組み込みJavaコードフォーマッタにコメントを無視させる方法はありますか?実行するたびに、次のようになります。
/*
* PSEUDOCODE
* Read in user's string/paragraph
*
* Three cases are possible
* Case 1: foobar
* do case 1 things
* Case 2: fred hacker
* do case 2 things
* Case 3: cowboyneal
* do case 3 things
*
* In all cases, do some other thing
*/
これに:
/*
* PSEUDOCODE Read in user's string/paragraph
*
* Three cases are possible Case 1: foobar do case 1 things Case 2: fred
* hacker do case 2 things Case 3: cowboyneal do case 3 things
*
* In all cases, do some other thing
*/
すでにWindowsをいじっています<!> gt;設定<!> gt; Java <!> gt;コードスタイル<!> gt;フォーマッタの設定。コメントのフォーマットを維持するための設定が見つかりません。 Eclipse 3.4.0を使用しています。
解決
2010の更新、 OPがポイントおよびこの回答では、Eclipse 3.6の特別な文字列 // @formatter:off
で十分です。
利用できませんでした質問の時点。
元の回答:2009年6月、 Eclipse 3.4 / 3.5
Java Formatter( Windows&gt; Preferences&gt; Java&gt; Code Style&gt; Formatter
)を使用すると、新しいFormatterプロファイルを作成できます。
[コメント]タブ(eclipse3.5)では、&quot; Javadocコメント設定
&quot;で&quot; HTMLタグのフォーマット
のチェックを外すことができます。 &quot ;.
&quot; 行を結合しない
&quot;も確認してください。 &quot; 一般設定
&quot;セクション。
その後、コメントは次のように記述する必要があります。
/**
* PSEUDOCODE
* Read in user's string/paragraph
*
* Three cases are possible:
* <dl>
* <dt>Case 1: foobar</dt>
* <dd> do case 1 things</dd>
* <dt>Case 2: fred hacker</dt>
* <dd> do case 2 things</dd>
* <dt>Case 3: cowboyneal</dt>
* <dd> do case 3 things</dd>
* </dl>
* In all cases, do some other thing
*/
注:大量のテキストを含むコメントはメソッドの前に配置した方がよいと思われるため、単純なコメントではなく Javadoc コメントを作成しました。さらに、Javadocセクションには、より多くのフォーマットパラメータがあります。
メソッドの前にある場合(真のJavadoc)、 HTMLタグ&lt; dl&gt ;
、&lt; dt&gt;
および&lt; dd&gt;
は、Javadocビュー内で適切に表示するのに役立ちます。
他のヒント
特定のブロックコメントのフォーマットを抑制するために使用できる別のソリューションがあります。ブロックコメントの先頭で / *-
(ハイフンに注意)とフォーマットを使用します
残りのファイルをフォーマットしても影響を受けません。
/*- * Here is a block comment with some very special * formatting that I want indent(1) to ignore. * * one * two * three */
同僚から、Eclipseがこれに使用できる特別なフォーマットタグを提供していることを知りました:
// @formatter:off
/*
* ╔════════╦═══════╦══════════╗
* ║ Month ║ Sales ║ Position ║
* ╠════════╬═══════╬══════════╣
* ║ June ║ 44k ║ 2nd ║
* ║ July ║ 39k ║ 2nd ║
* ║ August ║ 49k ║ 4th ║
* ╚════════╩═══════╩══════════╝
*
* This comment shouldn't be formatted, and will now be ignored by the formatter.
*/
// @formatter:on
[設定]メニューからこの機能を手動で有効にする必要がある場合があることに注意してください&#8594; Java&gt;コードスタイル&gt;フォーマッタ、[編集]をクリックし、[オフ/オンタグ]タブを選択して、[オフ/オンタグを有効にする](ソース)。
>文字列 @formatter:off の簡単なGoogleにより、他のSO回答、コードブロックのフォーマッタを無効にするというコンテキストでこの機能について言及しました。 「通常」の行コメントで機能することを確認しました。コメントをブロックし、Javadocもコメントをブロックします。
別の可能性は、HTMLの&lt; pre&gt;を使用することですJavadocの場合:
/**
* <pre>
* this
* is
* kept
* as
* is
* </pre>
*/
少なくともこれは、ソースコードのコメントにASCIIアートを埋め込む傾向があります:)
特定のテキストを&lt; pre&gt;で囲む&lt; / pre&gt;
タグ。
Eclipse 3.4:環境設定、Java-&gt;コードスタイル-&gt;フォーマッター、プロファイルの編集、コメントタブ。コメントのフォーマットを制御するためのオプションがたくさんあります。
Eclipseでフォーマットを抑制する場合は、フォーマットされないように意図されたコンテンツを&lt; pre&gt; UNFORMATTED CONTENT&lt; / pre&gt;
タグにいつでもラップできます。 Javadocフォーマッタはそのタグを検出し、タグ間のすべてを未フォーマットのままにします。
長所:
- 残りのJavadocはまだフォーマットされています
- Javadocのhtml出力は&quot; unformatted&quot;になります。事前タグのためにも
短所:
- 表示されない
1つの回避策は、Eclipseでフォーマットしたくないコメントに pre タグを追加することです
/**
* <pre>
* this part
* is
* out of
* format
*
* </pre>
*/
言語に依存します。
たとえば、javascriptを使用している場合、&quot; Window-&gt;設定-&gt; Javascript-&gt;コードスタイル-&gt;フォーマッタ&quot;フォーマッタオプションを編集します。
編集(OPの質問の変更を反映
Javaコードのフォーマットを編集するには、 &quot;ウィンドウ-&gt;設定-&gt; Java-&gt;コードスタイル-&gt;フォーマッタ&quot;
パネルの上部に表示されます
アクティブプロファイル:
Eclipse [ビルトイン]
そこには、右側に「編集」ボタンが1つ、その下に「新規...」ボタンが2つあります。および「インポート...」。 既存のプロファイルを編集することをお勧めします。
プロファイルの編集ダイアログには、上部に一連のタブがあります。最後のタブは「コメント」です。コメントのフォーマットを完全に無効にするには、「Javadocコメントのフォーマットを有効にする」、「ブロックのコメントのフォーマットを有効にする」、「行のコメントのフォーマットを有効にする」、「ヘッダーのコメントのフォーマットを有効にする」のチェックを外します。
これは、で変更できます Windows-設定-Java-コードスタイル-フォーマッタ、 [編集]ボタンをクリックして、コメントを見つけ、 Never Join Linesを選択します。
その後、問題ないはずです。