جعل منسق كود Java الخاص بـ Eclipse يتجاهل التعليقات المحظورة

StackOverflow https://stackoverflow.com/questions/1024886

  •  06-07-2019
  •  | 
  •  

سؤال

هل هناك طريقة لجعل منسق كود Java المدمج في Eclipse يتجاهل التعليقات؟كلما قمت بتشغيله يتحول إلى هذا:

    /*
     * 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 > التفضيلات > Java > Code Style > Formatter ولكن لا يمكنني العثور على إعدادات للحفاظ على تنسيق التعليقات.أنا أستخدم Eclipse 3.4.0.

هل كانت مفيدة؟

المحلول

تحديث 2010، كما أشار OP و في هذه الإجابة, ، السلسلة الخاصة // @formatter:off في Eclipse 3.6 يكفي.

لم يكن متاحا في وقت السؤال.


الإجابة الأصلية:يونيو 2009, كسوف 3.4/3.5

باستخدام منسق جافا (Windows > Preferences > Java > Code Style > Formatter)، يمكنك إنشاء ملف تعريف Formatter جديد.

في علامة التبويب "التعليقات" (في Eclipse3.5)، يمكنك التأكد من "Javadoc comment settings"، لإلغاء التحديد"Format HTML tags".
تحقق أيضًا من "Never join lines" في ال "General settings" قسم.

ثم ينبغي كتابة تعليقك على النحو التالي:

/**
 * 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 الحقيقية)، فإن ملف علامات HTML <dl>, <dt> و <dd> سيساعد في تقديمه بشكل صحيح ضمن عرض Javadoc.

نصائح أخرى

وهناك حل آخر التي يمكنك استخدامها لقمع تنسيق تعليق كتلة محددة. استخدام /*- (لاحظ الواصلة) في بداية كتلة تعليق، والتنسيق لن تتأثر إذا قمت بتهيئة بقية الملف.

/*-
 * Here is a block comment with some very special
 * formatting that I want indent(1) to ignore.
 *
 *    one
 *        two
 *            three
 */

المصدر: http://www.oracle. كوم / technetwork / جافا / javase / وثائق / codeconventions-141999.html # 350

لقد تعلمت للتو من أحد زملائي في العمل أن 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

لاحظ أنك قد تحتاج إلى تمكين هذه الميزة يدويًا من خلال قائمة التفضيلات → Java > Code Style > Formatter، ثم النقر فوق يحرر, ، اختيار إيقاف/تشغيل العلامات علامة التبويب والتحقق تمكين علامات الإيقاف/التشغيل (مصدر).

جوجل سريع للسلسلة @المنسق: متوقف أحضرني إلى هذه الإجابة SO الأخرى, الذي ذكر هذه الميزة في سياق تعطيل المنسق لكتل ​​التعليمات البرمجية.لقد أكدت أنه يعمل مع تعليقات الأسطر وتعليقات الحظر "العادية" وتعليقات حظر Javadoc أيضًا.

وهناك احتمال آخر هو استخدام HTML في <قبل> في جافادوك:

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

وعلى الأقل هذه هي الطريقة التي أنا أميل إلى تضمين بلدي ASCII الفن في المصدر تعليقات التعليمات البرمجية:)

وتحيط النص المحدد مع به <pre> </pre>.

في الكسوف 3.4: تفضيلات Java-> كود Style-> المنسق، ثم تعديل الملف الشخصي، علامة التبويب التعليقات. هناك مجموعة من الخيارات هناك للسيطرة على التنسيق للتعليق.

إذا كنت تريد منع التنسيق في Eclipse، فيمكنك دائمًا التفاف المحتوى المخصص لعدم تنسيقه <pre>UNFORMATTED CONTENT</pre> بطاقة شعار. سيكتشف منسق Javadoc تلك العلامة, ، واترك كل شيء بين تلك العلامات غير منسق.

الايجابيات:

  • لا يزال باقي Javadoc منسقًا
  • سيكون إخراج HTML الخاص بـ Javadoc "غير منسق" أيضًا بسبب العلامات المسبقة

سلبيات:

  • عدم رؤية واحدة

الحل الوحيد هو إضافة قبل ضع علامة على التعليقات التي لا تريد أن يقوم Eclipse بتنسيقها

/**
 * <pre>
 *    this part
 *   is
 *      out of
 *  format
 *    
 * </pre>
 */

إنها تعتمد على اللغة.

على سبيل المثال، إذا كنت تعمل باستخدام جافا سكريبت، فستذهب إلى "نافذة -> تفضيلات -> جافا سكريبت -> نمط الكود -> المنسق" ثم قم بتحرير خيارات المنسق.

يحرر (يعكس التغييرات في أسئلة OP

لتحرير تنسيق رمز Java ، انتقل إلى "Window -> التفضيلات -> Java -> نمط الكود -> Formatter"

في الجزء العلوي من اللوحة سترى

الملف الشخصي النشط:
كسوف [مدمج]

ومن هناك لديك زر واحد إلى اليمين، "تحرير"، وزرين أدناه، "جديد..." و"استيراد...".أوصي بتحرير الملف الشخصي الحالي.

في مربع حوار تحرير ملف التعريف، توجد سلسلة من علامات التبويب في الجزء العلوي.علامة التبويب الأخيرة هي "التعليقات".لتعطيل تنسيق التعليق بشكل كامل، قم بإلغاء تحديد "تمكين تنسيق تعليق Javadoc"، و"تمكين تنسيق تعليق الكتلة"، و"تمكين تنسيق تعليق السطر"، و"تمكين تنسيق تعليق الرأس".

ويمكنك تغيير هذا في نوافذ - تفضيلات - جافا - أسلوب الرمز - المنسق، من فوق .. زر تحرير، والعثور على تعليقات، اختر أبدا تاريخ خطوط.

وبعد ذلك، يجب أن تكون على ما يرام.

وهذه محاولة واحدة. عملت هذا بالنسبة لي. مع جافا المنسق (ويندوز> تفضيلات> جافا> أسلوب الرمز> المنسق)، يمكنك إنشاء ملف تعريف المنسق الجديد من القائمة ثم تحريره.

إذا الكسوف لا يسمح لحفظ هذا ثم إنشاء واحدة جديدة، وتوفير في ذلك.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top