it-swarm.com.de

Wenn Sie das Eclipse-Java-Formatierungsprogramm verwenden, werden Blockkommentare ignoriert

Gibt es eine Möglichkeit, die eingebauten Java-Code-Formatierungsprogramme von Eclipse dazu zu bringen, Kommentare zu ignorieren? Wann immer ich es laufen lasse, dreht sich Folgendes:

    /*
     * 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
     */

das sehr gut finden:

    /*
     * 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
     */

Ich habe bereits mit den Windows> Preferences> Java> Code Style> Formatierungs-Einstellungen herumgespielt, kann aber keine finden, um die Formatierung von Kommentaren beizubehalten. Ich benutze Eclipse 3.4.0.

72
Pops

Update 2010, da vom OP gezeigt und in dieser Antwort , die spezielle Zeichenfolge // @formatter:off in Eclipse 3.6 ausreicht.

Es war nicht verfügbar zum Zeitpunkt der Frage.


Ursprüngliche Antwort: Juni 2009, Eclipse 3.4/3.5

Mit dem Java Formatter (Windows > Preferences > Java > Code Style > Formatter) können Sie ein neues Formatter-Profil erstellen.

Auf der Registerkarte "Kommentare" (in Eclipse3.5) können Sie sicherstellen, dass in "Javadoc comment settings" "Format HTML tags" deaktiviert wird.
Überprüfen Sie auch das "Never join lines" im Abschnitt "General settings".

Dann sollte dein Kommentar geschrieben werden als:

/**
 * 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
 */

Hinweis: Ich habe einen Javadoc -Kommentar gemacht, und nicht einen einfachen Kommentar, da ich glaube, dass ein Kommentar mit so viel Text darin besser vor einer Methode platziert werden kann. Außerdem haben Javadoc-Abschnitte mehr Formatierungsparameter, mit denen gespielt werden kann.
Wenn es sich vor einer Methode (true Javadoc) befindet, können die HTML-Tags <dl>, <dt> und <dd> dazu beitragen, sie in der Javadoc-Ansicht richtig darzustellen.

35
VonC

Es gibt eine andere Lösung, mit der Sie die Formatierung bestimmter Blockkommentare unterdrücken können. Verwenden Sie /*- (beachten Sie den Bindestrich) am Anfang des Blockkommentars. Die Formatierung Wird nicht beeinflusst, wenn Sie den Rest der Datei formatieren.

/* -
 * Hier ist ein Blockkommentar mit einigen ganz besonderen 
 * Formatierung, die Einrückung (1) ignorieren soll .
 * 
 *    ein
 * zwei 
 * drei 
 */

Quelle: http://www.Oracle.com/technetwork/Java/javase/documentation/codeconventions-141999.html#350

172
Michelle Crane

Ich habe gerade von einem Kollegen erfahren, dass Eclipse spezielle Formatierungs-Tags anbietet, die dazu verwendet werden können:

// @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

Beachten Sie, dass Sie diese Funktion möglicherweise manuell über das Menü Einstellungen → Java> Code Style> Formatierer aktivieren müssen. Klicken Sie dazu auf Edit, wählen Sie die Registerkarte Off/On-Tags aus und überprüfen Sie Enable/Off-Tags ( Quelle ).

Ein schnelles Google für den String @formatter: off brachte mich zu dieser anderen SO Antwort , die diese Funktion im Zusammenhang mit dem Deaktivieren des Formatierers für Codeblöcke erwähnte. Ich habe bestätigt, dass es auch für Zeilenkommentare, "normale" Blockkommentare und Javadoc-Blockkommentare funktioniert.

23
Pops

Eine andere Möglichkeit ist die Verwendung von HTML <pre> in Javadoc:

/**
 * <pre>
 *    this
 *   is
 *      kept
 *  as
 *    is
 * </pre>
 */

Zumindest neige ich dazu, meine ASCII-Art in Quelltextkommentare einzubetten :)

15
Thomas Keller

Umgeben Sie den spezifischen Text mit <pre> </pre>-Tags.

8
Philip

In Eclipse 3.4: Preferences, Java-> Code Style-> Formatter, dann Profil bearbeiten, Registerkarte Kommentare. Es gibt eine Reihe von Optionen zur Steuerung der Formatierung von Kommentaren.

2
skaffman

eine Problemumgehung besteht darin, pre tag für die Kommentare hinzuzufügen, die Eclipse nicht formatieren soll

/**
 * <pre>
 *    this part
 *   is
 *      out of
 *  format
 *    
 * </pre>
 */
1
K. Andy wang

Wenn Sie die Formatierung in Eclipse unterdrücken möchten, können Sie Inhalte, die nicht formatiert werden sollen, immer in das Tag <pre>UNFORMATTED CONTENT</pre> einschließen. Der Javadoc-Formatierer erkennt das Tag und lässt alles zwischen diesen Tags unformatiert.

Pros:

  • Rest von Javadoc ist noch formatiert
  • Die HTML-Ausgabe von Javadoc wird aufgrund von Pre-Tags ebenfalls "unformatiert"

Nachteile:

  • Einen nicht sehen
1
Antoniossss

Sie können dies in .__ ändern. Windows - Voreinstellungen - Java-Code-Stil - Formatierer... Klicken Sie anschließend auf die Schaltfläche Bearbeiten., Suchen Sie nach Kommentaren.... Wählen Sie die Zeile niemals verbinden aus.

Dann sollte es OK sein.

0
GH Dev

Es ist sprachabhängig.

Wenn Sie beispielsweise mit Javascript arbeiten, gehen Sie zu "Fenster -> Einstellungen -> Javascript -> Code-Format -> Formatierer" und bearbeiten dann die Formatierungsoptionen.

Bearbeiten (spiegelt Änderungen in OP-Fragen wider

Um die Java-Code-Formatierung zu bearbeiten, gehen Sie zu "Fenster -> Voreinstellungen -> Java -> Code-Stil -> Formatierer"

Am oberen Rand des Panels sehen Sie

Aktives Profil:
Eclipse [eingebaut]

Von dort aus haben Sie rechts einen Button, "Bearbeiten" und zwei darunter, "Neu ..." und "Importieren ..." . Ich würde das Bearbeiten des vorhandenen Profils empfehlen.

Im Dialogfeld zum Bearbeiten des Profils befinden sich oben eine Reihe von Registerkarten. Die letzte Registerkarte ist "Kommentare". Um die Kommentarformatierung vollständig zu deaktivieren, deaktivieren Sie "Javadoc-Kommentarformatierung aktivieren", "Blockkommentarformatierung aktivieren", "Zeilenformatierung aktivieren" und "Headerkommentarformatierung aktivieren".

0

Probier diese. Das hat bei mir funktioniert. Mit dem Java Formatter (Windows> Preferences> Java> Code Style> Formatter) können Sie ein neues Formatter-Profil aus vorhandenen erstellen und es dann bearbeiten.

Wenn Eclipse das Speichern nicht zulässt, erstellen Sie ein neues und speichern Sie es darin. enter image description here

0
Milan Kamboya