Js-beautify: مسافة بادئة غريبة عند استخدام حالة التبديل

تم إنشاؤها على ٢ أغسطس ٢٠١٠  ·  11تعليقات  ·  مصدر: beautify-web/js-beautify

switch (v) { case 1: break; case 2: break; case 3: break; default: break; }

... يصبح ...

switch (v) {
case 1:
    break;
case 2:
    break;
case 3:
    break;
default:
    break;
}

ربما يكون هذا مقصودًا ، لكنني أتوقع أن يتم وضع مسافة بادئة بمقدار case بمستوى 1 (بناءً على الإعدادات).

التعليق الأكثر فائدة

IMHO ، هذا في الحقيقة لا معنى له. منطق كروكفورد في حذف المسافات البادئة الإضافية هو كما يلي: "كل حالة تتماشى مع المفتاح. هذا يتجنب الإفراط في المسافة البادئة ". أورلي؟

بالرغم من ذلك أصدق وجهة نظرك. إذا كان ذلك عن طريق التصميم ، وأعجبك بهذه الطريقة ، اتركه كما هو!

ال 11 كومينتر

إنه حسب التصميم ، وفقًا لاتفاقيات Crockford ، http://javascript.crockford.com/code.html ، لذلك - ليس خطأ.

IMHO ، هذا في الحقيقة لا معنى له. منطق كروكفورد في حذف المسافات البادئة الإضافية هو كما يلي: "كل حالة تتماشى مع المفتاح. هذا يتجنب الإفراط في المسافة البادئة ". أورلي؟

بالرغم من ذلك أصدق وجهة نظرك. إذا كان ذلك عن طريق التصميم ، وأعجبك بهذه الطريقة ، اتركه كما هو!

switch (foo) {
    case something:
        break;
}
 ^^^^^^^ huge ugly empty space

... وفجأة يتم دفع الرمز الحقيقي بمقدار مسافة بادئة ، والذي عادة ما يكون أكثر بشاعة من مجرد التعامل مع المفتاح / الحالة كحالة خاصة غير مسبوقة.

من الواضح أن هذا كل شيء في عين الناظر.

أنا لا أتفق مع Crockford ، مع فكرته من الصعب للغاية التأكد من النهاية الفعلية لبيان التبديل. حسب خطه المنطقي ، لماذا وضع مسافة بادئة لأي هياكل تحكم على الإطلاق؟ أنها جميعا تسفر عن عقوبة بادئة.

أعتقد أن هذا سيكون أفضل ، إذا عمل أحدهم على دقة 800 × 600:

switch (v) {
    case 1:
    // code goes here
    break;

    default:
    // code goes here
    break;
}

أحب أن يكون لديك خيار لهذا ؛ إما بالطريقة "العادية" (كما رأيت عبارات تبديل مكتوبة طوال حياتي) ، أو بالطريقة التي أوضحت بها أعلاه ؛ أي شيء ما عدا الافتراضي. هل ستكون منفتحًا على التصحيح ، إذا كنت لا توافق شخصيًا أو لا ترى الحاجة إليه؟

رائع، شكرا جزيلا لك.

هل يمكننا الحصول على خيار لهذا؟ ربما مجرد إضافته إلى jslint سعيد؟

كره الرمي في المسافة البيضاء القذرة للحصول على بيان تبديل.

drewhjava لا تتردد في فتح خطأ يشير إلى هذا الشخص الذي يطلب هذا الخيار

لا يبدو أن هذه المشكلة قد تم حلها؟

ما زلت أحصل على تجميل التبديل القبيح. ألم يتم إصلاح هذا؟

على سبيل المثال

switch (v) {
case 1:
    break;
case 2:
    break;
case 3:
    break;
default:
    break;
}

إيه. أضفت مربع اختيار "jslint-happy" إلى jsbeautifier.org.

رائع شكرا لك :)

تختلف مشكلة المسافة البادئة هذه مع نفس الرمز في windows مقابل OSX. مثال على ذلك هو https://github.com/gpujs/gpu.js ، عندما أقوم بتشغيل yarn make فإنه يقوم بتجميل المجلد ./src ، باستخدام هذا البرنامج النصي: https://github.com/ gpujs / gpu.js / blob / 012cfff566691a8fa360e0af650a45c616ceff4a / gulpfile.js # L85

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات