برتي برنت
الطباعة الجيدة (بالإنجليزية: pretty-print) هو تطبيق يتعامل مع تحويلات تنسيق الأسلوب المختلفة إلى نصوص، وكود مصدري، ولغة الترميز، وما أشبه من المحتويات. غالباً ما تتكون تحويلات التنسيق من تغيرات في الوضع، والمسافات، واللون، والتباين ، والحجم، وأي تعديلات مشابهة تهدف إلى تسهيل المحتوى لرؤية أفضل للأفراد، وقراءة أفضل، وقدرة فهم. أحيانا تُسمى أدوات الطباعة الجيدة الخاصة بالكود المصدري للغة البرمجة بمجملات الكود أو معلمات الصيغة.
رياضيات الطباعة الأنيقة
غالبا ما تشير الطباعة الأنيقة إلى عرض تعبيرات رياضية بشكل يشبه طريقة تصفيفها احترافياً. فعلى سبيل المثال، في نظام الجبر الحاسوبي كماكسيما أو ماثماتيكا، قد يكتب النظام معطية مثل "x ^ 2 + 3 * x" as "". يمكن لبعض أنواع حاسبات الرسوم البيانية، مثل سلسلة كاسيو 9860، أو سلسلة اتش بي 49، وسلسلة TI-89، وTI-Nspire، أو سلسلة TI-83 Plus / TI-84 Plus مع امتدادات Pretty Pt، أن تقوم بالطباعة الأنيقة. وبالإضافة إلى ذلك، فإن العديد من الحاسبات العلمية الجديدة مجهزة بشاشات نقطية لديها القدرة على الطباعة الأنيقة، مثل سلسلة كاسيو FX-ES (عرض طبيعي)، وسلسلة شارب EL-W (WriteView)، و HP SmartCalc 3000s، و TI-30XB. والعديد من برامج تنسيق النص يمكنها تصفيف الرياضيات : تم تصميم تخ بالتحديد للتصفيف الرياضي ذات جودة عالية.
تنسيق الكود وتجميله
غالباً ما يستخدم المبرمجين أدوات لتنسيق الكود المصدري لـ لغة البرمجة بشكل معين. أن تنسيق الكود بشكل لائق يجعله سهل القراءة والفهم. وعلاوة على ذلك، لكل مبرمج أسلوب مختلف مفضل للتنسيق، كاستعمال كود الفراغ أو وضعية القوس (الترقيم). منسق الكود يحول كود مصدري من تنسيق إلى آخر. وهذا مباشر نسبياَ بسبب البناء المطلق في لغة البرمجة. وتجميل الكود يتضمن تحليل الكود المصدري للمكونات، مثل جمل محددة، وكتل if، وحلقات تكرارية،... الخ. (انظر أيضاً إلى التحكم في التدفق)، وتنسيقهم بشكل محدد من قبل المستخدم في ملف تكويني. ويوجد مجملات كود مستقلة وأخرى مبنية بداخل بيئة تطوير متكاملة ومحرر نصوص. وعلى سبيل المثال، فأساليب لغات إيماكس المختلفة تستطيع أن تترك مسافة بشكل صحيح في كتل الأكواد بشكل جذاب. ومثال مبكر للطباعة الأنيقة هو برنامج بيل جوسبر "GRIND"، والذي استخدم تحسين اندماجي مع تحسين تنسيق برامج ليسب. وتم استعمال مصطلح "grind" في بعض دوائر ليسب كمرادف للكتابة الجمالية.[1]
قواعد نمط المشروع
العديد من المشاريع مفتوحة المصدر أنشأت قوانين لتصميم الكود. ومن أشهرهم أسلوب GNU، وأسلوب BSD. وأعظم فرق بين الاثنين هو موقع القوس : في أسلوب GNU، فتح وغلق الأقواس على خطوط منفردة، بنفس الفراغ. بينما أسلوب BSD يضع قوس منفتح بنهاية السطر السابق، والقوس المنغلق يمكن وضع else بعده. كما يتغير موقع وحجم الفراغ.
مثال على تنسيق الكود وتجميله
المثال التالي يبين بعض هياكل C النموذجية وكيف تنسقهم قوانين أسلوب المسافة البادئة. وبدون أي تنسيق إطلاقا، يبدو كالأسفل:
int foo(int k) { if (k < 1 || k > 2) { printf("out of range\n");
printf("this function requires a value of 1 or 2\n"); } else {
printf("Switching\n"); switch (k) { case 1: printf("1\n"); break; case
2: printf("2\n"); break; } } }
ينتج برنامج GNU للمسافة البادئة المعطى التالي عندما يُطلب منه ترك مسافة طبقا لقوانين GNU:
int
foo (int k)
{
if (k < 1 || k > 2)
{
printf ("out of range\n");
printf ("this function requires a value of 1 or 2\n");
}
else
{
printf ("Switching\n");
switch (k)
{
case 1:
printf ("1\n");
break;
case 2:
printf ("2\n");
break;
}
}
}
وينتج المعطى التالي عند التنسيق طبقا لقوانين BSD:
int
foo(int k)
{
if (k < 1 || k > 2) {
printf("out of range\n");
printf("this function requires a value of 1 or 2\n");
} else {
printf("Switching\n");
switch (k) {
case 1:
printf("1\n");
break;
case 2:
printf("2\n");
break;
}
}
}
تنسيق النص
يعتبر تنسيق النص شكل عام من الطباعة الأنيقة.
ملاحظات
- العربي بن مهيدي , s.v. grind