web-dev-qa-db-ja.com

Javadoc:HTMLタグなしの改行?

ごめんなさいFAQ質問の種類ですが、答えが見つかりません。

私がEclipseを覚えている限り、Javadocコメントの空白行は(ソース内のJavadocポップアップで)改行として(余分な垂直方向の間隔で)表示されます。

ただし、Netbeansではこれは当てはまりません。

空行を改行として解釈するようにJavadocを構成できますか?

追加の質問:ソース内のJavadocポップアップの(これに関連する)デフォルトのNetbeansの動作をオーバーライドできますか?

私が話しているのは:

ソース

/**
 * Paragraph One
 *
 * Paragraph Two
 */
 void someMethod() { }

Eclipseの解釈

 Paragraph One

 Paragraph Two

Netbeansの解釈

 Paragraph One Paragraph Two
71

Netbeansとは関係ありません。あるケースではソースコードを、別のケースではJavadocの出力を見ていると思います。 HTMLでは改行は重要ではありません:ergo出力はそれらを表示しません。改行が必要な場合は、<p>または<br>

68
user207421

これがOPの場合に役立つかどうかはわかりませんが、ドキュメントの周りに<pre></pre>を配置して、netbeanが書式設定を台無しにしないようにします。それは次のようになります

/**
 * <pre>
 * Paragraph One
 *
 * Paragraph Two
 * </pre>
 */

これは、テキスト形式で新しい行を表示するのに最も近い方法です。 NetBeans 7.1.2を使用しています。 code formatオプションを使用するこの方法では、ドキュメントは再フォーマットされません。ヒントでのドキュメントの表示は引き続きフォーマットされます。

更新:Netbeans 8.xでは、コメントのフォーマットを無効にするオプションがコードのフォーマットにあります。

33
AaA

NetBeansにはすでにオプションがあります-バージョン8.2でテスト済み-必要に応じてコメントの新しい行を保持したり、Javadoc<p>タグを追加したりできます

  • Toolsメニューから、Optionsを選択します
  • Editorタブに移動してから、Formattingタブに移動します
  • LanguageメニューでJavaを選択し、CategoryメニューでCommentsを選択しました
  • コメントの新しい行を保持する場合は、GeneralセクションのPreserve New Linesチェックボックスをオンにします。 これは<p>タグを追加せずに新しい行を保持します
  • JavadocセクションのGenerate "<p>" on Blank Linesチェックボックスをオンにします<p>タグも追加する場合

enter image description here

10
fujy

HTMLはソースコードに属していません。悲しいことに、私はこのためにグーグルの周りに多くの助けを見つけられませんでした。実際に実装するのは非常に簡単です。

コンパイルして使用できるカスタムドックレットは次のとおりです。

import com.Sun.javadoc.*;
import com.Sun.tools.doclets.standard.*;

/**
 * Formats text-only comments with HTML.
 */
@SuppressWarnings("restriction")
public final class TextDoclet {
    private static final Pattern NEWLINE_REGEX = Pattern.compile("\\n");
    private static final String BR = "<br/>\n";

    public static boolean start(RootDoc rootDoc) {
        for ( ClassDoc classdoc : rootDoc.classes())
            classdoc.setRawCommentText(formatText(classdoc.getRawCommentText()));

        return Standard.start(rootDoc);     
    }

    private static String formatText(String text) {
        return NEWLINE_REGEX.matcher(text).replaceAll(BR);
    }
}

Javadocを使用して呼び出す方法の例:

javadoc -docletpath ~/project/text-doclet/target/text-doclet-1.0.0-SNAPSHOT.jar -doclet com.myorg.textdoclet.TextDoclet -sourcepath ~/project/myapp/src/main/Java -subpackages com.myorg.myapp
4
roylaurie

JavaDocは、CSSスタイルの定義方法を表示します。これを行うには、段落タグに関連付けられたCSSスタイルを編集できます。

p {
    line-height: 25px;
}
2
adarshr

これは擬似解決策です
(悲しいことに、生成されたjavadocのみに影響しますが、notはNetbeansのインソースjavadoc表示に影響します)。

次を含むスタイルシートを指定します。

div.block {
    white-space: pre;
}
1

ここでEclipseが何をしているのかわかりませんが、この動作を一般的に(IDEだけでなく)したい場合は、代わりに<p>を挿入して新しいドックレット(デフォルトのHTMLドックレットに基づいている可能性があります)を作成する必要がありますすべての空行などで。

0
Paŭlo Ebermann