104 votes

Javadoc : sauts de ligne sans balises HTML?

Désolé pour une question probablement de type FAQ, mais je ne trouve tout simplement pas la réponse.

Pour autant que je me souvienne d'Eclipse, une ligne vide dans un commentaire Javadoc est affichée (dans les popups Javadoc directement dans le code source) comme un saut de ligne (avec un espacement vertical supplémentaire).

Cependant, dans Netbeans, ce n'est pas le cas.

Puis-je configurer Javadoc pour interpréter une ligne vide comme un saut de ligne?

Question supplémentaire : Puis-je remplacer le comportement par défaut de Netbeans (lié à cela) pour les popups Javadoc directement dans le code source?

Je parle de :

Source

/**
 * Paragraphe Un
 *
 * Paragraphe Deux
 */
 void someMethod() { }

Interprétation dans Eclipse

 Paragraphe Un

 Paragraphe Deux

Interprétation dans Netbeans

 Paragraphe Un Paragraphe Deux

103voto

EJP Points 113412

Il n'a rien à voir avec Netbeans. Je soupçonne que vous regardez le code source dans un cas et la sortie de Javadoc dans l'autre cas. Les sauts de ligne ne sont pas significatifs en HTML : ergo la sortie ne les affichera pas. Si vous voulez un saut de ligne, utilisez un

ou un.

51voto

BobSort Points 802

Je ne suis pas sûr que cela aide pour le cas de l'OP, cependant j'ai mis

autour de mon document pour que NetBeans ne gâche pas ma mise en forme. Donc cela ressemblera à

/**
 *  * Paragraphe Un
 *
 * Paragraphe Deux
 * 
 */

C'est ce que j'obtiens de plus proche pour afficher des sauts de ligne en format texte. J'utilise NetBeans 7.1.2. De cette façon, en utilisant l'option format de code, le document ne sera pas reformaté. L'affichage du doc dans les astuces est toujours formaté.

Mise à jour : dans Netbeans 8.x, il y a une option dans le formatage de code pour désactiver le formatage des commentaires.

16voto

fujy Points 1515

Il existe déjà une option dans NetBeans - testée sur la version 8.2 - qui vous permet de conserver les sauts de ligne dans vos commentaires, et/ou d'ajouter une balise

à votre Javadoc si nécessaire

  • Il suffit d'aller dans le menu Outils, puis de choisir Options

  • Allez dans l'onglet Editeur, puis dans l'onglet Mise en forme

  • Dans le menu Langue, choisissez Java, et dans le menu Catégorie, choisissez Commentaires

  • Cochez la case Conserver les sauts de ligne dans la section Général si vous souhaitez conserver les sauts de ligne dans vos commentaires. Cela conservera les sauts de ligne sans ajouter de balise

  • Cochez la case Générer "

    " sur les lignes vides dans la section Javadoc si vous souhaitez également ajouter la balise

    .

entrez ici la description de l'image

4voto

Roy Laurie Points 518

Je suis d'accord avec vous, HTML ne devrait pas être présent dans le code source. Malheureusement, je n'ai pas trouvé beaucoup d'aide en cherchant sur Google à ce sujet. En fait, c'est assez facile à mettre en œuvre.

Voici le Doclet personnalisé que vous pouvez compiler et utiliser:

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

/**
 * Formate les commentaires en texte brut avec du HTML.
 */
@SuppressWarnings("restriction")
public final class TextDoclet {
    private static final Pattern NEWLINE_REGEX = Pattern.compile("\\n");
    private static final String 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);
    }
}

Un exemple de comment l'invoquer en utilisant 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

2voto

adarshr Points 25912

JavaDoc affiche la façon dont les styles CSS ont été définis. Vous pourriez modifier les styles CSS associés aux balises de paragraphe pour le faire :

p {
    line-height: 25px;
}

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X