Javadoc: HTML- टैग के बिना लाइन ब्रेक?


81

प्रश्न के संभावित प्रश्न के लिए क्षमा करें, लेकिन मुझे अभी उत्तर नहीं मिला है।

जहां तक ​​मुझे याद है कि ग्रहण, एक जावाडॉक टिप्पणी में एक रिक्त लाइन (इन-सोर्स Javadoc पॉपअप) को लाइन ब्रेक (अतिरिक्त ऊर्ध्वाधर रिक्ति के साथ) के रूप में प्रदर्शित किया जाता है।

नेटबींस में, हालांकि यह मामला नहीं है।

क्या मैं एक ब्रेक के रूप में एक खाली लाइन की व्याख्या करने के लिए Javadoc को कॉन्फ़िगर कर सकता हूं?

अतिरिक्त प्रश्न: क्या मैं स्रोत जावदोक पॉपअप के लिए डिफ़ॉल्ट नेटबियंस व्यवहार (इससे संबंधित) को ओवरराइड कर सकता हूं?

मैं किस बारे में बात कर रहा हूं:

स्रोत

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

ग्रहण की व्याख्या

 Paragraph One

 Paragraph Two

नेटबीन्स की व्याख्या

 Paragraph One Paragraph Two

1
इनमें से कई उत्तर अब NetBeans8.2 द्वारा आउट-ऑफ-डेट (सुव्यवस्थित) हैं, नीचे दिए गए @fujy से उत्तर देखें, यह पूरी तरह से काम करता है।
वेबेल आईटी ऑस्ट्रेलिया - upvoter

जवाबों:


80

इसका नेटबीन्स से कोई लेना-देना नहीं है। मुझे संदेह है कि आप एक मामले में स्रोत कोड और दूसरे मामले में जावदोक का आउटपुट देख रहे हैं। HTML में Newlines महत्वपूर्ण नहीं हैं: ergo आउटपुट उन्हें नहीं दिखाएगा। यदि आप एक नई लाइन का उपयोग करना चाहते हैं <p>या एक <br>


4
मैं प्रश्न में उल्लेख किया है, ग्रहण करता पैराग्राफ के रूप में रिक्त लाइनों पर विचार करें। तो मेरी धारणा है कि यह है है कुछ जावाडोक विन्यास (Netbeans या बिना) द्वारा इस लक्ष्य को हासिल करने के लिए संभव हो सकता है।
java.is.for.desktop

ग्रहण आपको स्रोत कोड दिखाता है लेकिन यह स्वरूपित है। Netbeans 6.9.1 आपको सोर्स कोड भी दिखाता है, ditto, यानी यह लाइन ब्रेक को भी अनदेखा नहीं करता है। हालाँकि यदि आप किसी भी तरह से जावदोक के आउटपुट को देख रहे हैं, तो यह गलत होगा, इसका मतलब है कि लाइन ब्रेक को नजरअंदाज करें।
user207421

40

मुझे यकीन नहीं है कि यह ओपी के मामले के लिए मदद करता है, हालांकि मैंने <pre></pre>अपने दस्तावेज़ के चारों ओर रखा है, इसलिए नेटबीन मेरे स्वरूपण को गड़बड़ नहीं करता है। तो ऐसा लगेगा

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

यह निकटतम है मुझे पाठ प्रारूप में नई लाइनें दिखाने के लिए मिलता है। मैं NetBeans 7.1.2 का उपयोग कर रहा हूं। इस तरह से code formatविकल्प का उपयोग करने से दस्तावेज़ में सुधार नहीं होगा। संकेत में डॉक्टर दिखाना अभी भी स्वरूपित है।

अपडेट: नेटबीन्स में 8.x में कोडिंग फॉर्मेटिंग में ऑप्शन होता है कि फॉर्मेटिंग कमेंट्स को डिसेबल करें।


13

पहले से ही एक विकल्प है NetBeans- संस्करण 8.2 पर परीक्षण किया गया - जो आपको अपनी टिप्पणियों में नई लाइनें संरक्षित करने की अनुमति देता है, और / या ज़रूरत पड़ने पर एक <p>टैग जोड़ Javadocसकता है।

  • बस Toolsमेनू से, चुनाOptions
  • Editorटैब पर जाएं , फिर Formattingटैब करें
  • में Languageमेनू चुना है Java, और में Categoryमेनू चुनाComments
  • यदि आप अपनी टिप्पणियों में नई लाइनों को संरक्षित करना चाहते हैं तो अनुभाग Preserve New Linesमें चेकबॉक्स की जांच करें Generalयह <p>टैग जोड़े बिना नई लाइनों को संरक्षित करेगा
  • यदि आप टैग जोड़ना चाहते हैं, तो अनुभाग Generate "<p>" on Blank Linesमें चेकबॉक्स चेक करें ।Javadoc<p>

यहाँ छवि विवरण दर्ज करें


2
निश्चित रूप से सबसे अच्छा जवाब wrt NetBeans 8.2। आसान। लेकिन आपको इसे जोड़ने के लिए कृपया इसे संपादित करना चाहिए कि जब आप कोड पर प्रारूप (मौजूदा लाइन-ब्रेक के साथ) करते हैं तो वास्तव में यह केवल किक करता है। एक को सावधान रहना होगा, अगर <p>हाथ में पहले से ही कुछ हैं तो यह कभी-कभी <p>``<p>पहली बार दोगुना जोड़ सकता है । इसके बाद यह उम्मीद के मुताबिक काम करता है।
वेबेल आईटी ऑस्ट्रेलिया - upvoter

4

मैं आपसे सहमत हूं, HTML स्रोत-कोड में नहीं है। अफसोस की बात यह है कि मुझे इसके लिए Googling के लिए ज्यादा मदद नहीं मिली। यह वास्तव में लागू करना काफी आसान है।

यहाँ कस्टम डॉकलेट है जिसे आप संकलित और उपयोग कर सकते हैं:

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

2

JavaDoc सीएसएस शैलियों को परिभाषित करने के तरीके को प्रदर्शित करता है। आप ऐसा करने के लिए पैराग्राफ टैग से जुड़ी CSS शैलियों को संपादित कर सकते हैं:

p {
    line-height: 25px;
}

1
धन्यवाद, लेकिन मुझे यकीन है कि Netbeans एक पैराग्राफ के रूप में एक रिक्त पंक्ति की व्याख्या बिल्कुल नहीं करता है (मेरे प्रश्न में "Netbeans की व्याख्या देखें")। मेरा मतलब है: यदि आप लाइनें हैं तो आप केवल लाइन रिक्ति को परिभाषित कर सकते हैं।
java.is.for.desktop

हम्म। मैंने देखा। लेकिन वास्तव में यकीन नहीं है कि अगर नेटबिन इसे संपादित करने का विकल्प प्रदान करता है।
adarshr

2

यह एक छद्म समाधान है
(जो दु: खद रूप से केवल उत्पन्न jadadoc को प्रभावित करता है, लेकिन Netbeans के इन-सोर्स javadoc प्रदर्शन को प्रभावित नहीं करता है )।

एक स्टाइलशीट निर्दिष्ट करें जिसमें निम्नलिखित शामिल हैं:

div.block {
    white-space: pre;
}

0

मुझे नहीं पता कि ग्रहण यहां क्या कर रहा है, लेकिन यदि आप सामान्य रूप से (केवल एक आईडीई नहीं) इस व्यवहार को चाहते हैं, तो आपको एक नया डॉकलेट बनाना होगा (जो डिफ़ॉल्ट HTML डॉकलेट पर आधारित हो सकता है) इसके बजाय, इसमें एक <p>डालें हर खाली लाइन या ऐसा।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.