# ألفاتك (محرر نصوص)

ألفاتك هو محرر نصوص ينتمي لفئة البرمجيات الاحتكارية ويتمتع هذا المحرر بمواصفات عالية من ناحية التخصيص والتوظيف، كما أنه متعدد المنصات بحيث يمكن تشغيله على أنظمة ميكروسوفت ويندوز، ماك أو أس أكس بالإضافة إلى يونكس.
يمكن تحرير كافة أنواع النصوص باستخدام ألفاتك إلا أنه مفيد بدرجة عالية للمبرمجين ومطوري البرامج الحاسوبية حيث يقدم المحرر العديد من المزايا والوظائف التي تساعد هذه النوعية من المستخدمين على القيام بعملية تحرير الشيفرات المصدرية لبرامج الحاسوب حيث يسهل كتابة الشيفرات المصدرية بلغات برمجة متعددة أبرزها (سي، سي++، جافا، تي سي إل، بيرل، ماتلاب) وغيرها الكثير بالإضافة لدعمه النصوص المكتوبة ب تكس أو لاتكس وأتش تي أم أل.
ولا يقتصر دعم ألفاتك التقني على ما تم ذكره اَنفاً بل يدعم أيضاً عمليات تنفيذ البرامج من خلال قدرته على الاتصال مع المترجمات والمفسرات للغات البرمجة المدعومة، ويحوي في طياته القدرة على استخلاص الفروق بين الملفات بالإضافة إلى تطبيقها، كما ويحوي أيضاً على دعم نظام تحكم بالمراجعات بالإضافة إلى دعم بروتوكول نقل الملفات وغيره من الوظائف.

## المزايا والوظائف

يتميز ألفاتك بعدد كبير من الوظائف التي يتمتع بها أي محرر نصوص حديث، ويمكن تقسيم هذه المزايا والوظائف إلى عدد من المقاطع نسردها تالياً:

### المزايا والوظائف الرئيسية

* متعدد المنصات حيث يمكن للمستخدم تشغيله على ويندوز، ماك أو أس أكس بالإضافة إلى يونكس.
* قابل للامتداد (الامتداد الوظيفي) والتخصيص بشكل كبير، حيث يحوي المحرر في طياته لغة برمجة مخصصة لتطوير وظائفه وامتدادها وهذه اللغة مفتوحة المصدر.
* متعدد الوسائط.
* دعم تعليم أو تمييز النصوص البرمجية بالإضافة إلى القدرة على تخصيص هذا الدعم، ويشمل هذا ذلك أكثر من 40 لغة برمجة.
* دعم مخصص ومميز للغات وأتش تي أم أل، سي أس أس، لاتكس، بايبتكس، بيرل، ماتلاب، سي++، جافا، تي سي إل، وميتافونت.
* دعم لغات البرمجة التالية: بايثون، أس، آر، سكيم، اَيجور، بوست سكريبت، فورتران، جنوبلوت، جافا سكريبت، أيدا، كامل، ليسب، موديولا-2، مايك، مابل، سي-الكائنية، سي شارب، باسكال، سايلاب، أبل سكريبت، سيتيكست، إس.بي.إس.إس، ستاتا، إس كيو إل، فيريلوغ، فيجوال بيسك، أكس أم أل
* دعم مخصص للملفات حيث يقوم ألفاتك بدعم عمليات الطباعة، نقل الملفات عبر بروتوكول نقل الملفات، تطويع الملفات لنظام التحكم بالمراجعات، الأرشفة، وغير ذلك من وظائف الملفات.
* دعم تخصيص أزرار لوحة المفاتيح مع وظائف المحرر.
* يحوي في طياته نظام مساعدة لإضافة المزيد من الأنماط (على سبيل المثال دعم لغات برمجة جديدة).
* قابل للتطويع البرمجي بشكل كامل.
* دعم القوالب.
* يمكن إيجاده (المحرر) على شكل مجموعة من الوثائق البرمجية (set of scripts) أو ملف تنفيذي واحد.
* يدعم عدد غير محدد من الإضافات البرمجية.
* أخذ نسخة احتياطية للملفات بشكل تلقائي.
* دعم نمط الملتي بايت "(Multi-byte (IME".

### مزايا ووظائف المطورين والمبرمجين

* دعم أكثر من 40 لغة برمجة.
* القدرة التلقائية على تحديد نوع لغة البرمجة من امتداد الملف أو نوعه أو السطور الأولى من نص الشيفرة المصدرية.
* دعم وظائف تحريرية متطورة
* القدرة التلقائية على الإزاحة النصية للسطور أو الكتل النصية (حتى عند القيام بعمليات القص واللصق) ويشمل ذلك الإزاحة النصية إلى اليمين واليسار.
* القدرة على ضبط النصوص وطيها.
* دعم عملية الإكمال التلقائي لنصوص الشيفرات المصدرية.
* دعم قوالب النصوص البرمجية.
* دعم تخصيص الألوان لواجهة المستخدم الرسومية.
* دعم تمييز الكلمات التي تبدأ بأحرف محددة (يحددها المستخدم أثناء عملية التحرير).
* القدرة على التفاف السطور لتناسب عرض شاشة التحرير عند القيام بكتابة التعليقات البرمجية.
* وجود مدقق إملائي لتدقيق الكلمات الموجودة في التعليقات البرمجية.
* دعم أدوات سي تاغز (CTags) البرمجية.
* دعم تخصيص عملية الإكمال التلقائي لنصوص الشيفرات البرمجية وإضافة كلمات جديدة إلى قاموس المكمل التلقائي.
* احتوائه على برمجيات مخصصة لنقل (عن طريق بروتوكول نقل الملفات) وتصفح الملفات (عن طريق بروتوكول HTTP).
* دعم التعابير النمطية في عمليات البحث (والبحث والاستبدال) وفي حالة الاستبدال يستطيع المحرر القيام باستبدال الكلمات والجمل الموجودة في ملف واحد، أكثر من ملف، أو حتى مجلدات.
* القدرة على تحديد أقواس بدايات المجموعات النصية مع أقواس النهايات وبطريقة ذكية (bracket/brace-matching)
* دعم تطبيق تفضيلات المستخدم على مجموعة من الملفات (مشروع) مثل حجم التاب، مقدار الإزاحة النصية وغيرها من التفضيلات.
* القدرة على ادخال حروف غير اعتيادية في النصوص المحررة.
* القدرة على إضافة التعليقات البرمجية للسطور، الجمل، والمجموعات النصية.
* دعم الماكروات البرمجية ويشمل ذلك تخزين، تحميل، تعديل، وتنفيذ الماكروات لاضافة مزيد من التحكم على وظائف التحرير للمستخدم.
* القدرة على تخصيص وتطويع الأدوات الخارجية مثل المترجمات وأدوات التدقيق البرمجية وغيرها من الأدوات.
* القدرة على سرد قائمة الإقترانات والعلامات البرمجية وبشكل تلقائي للملف المحرر.
* القدرة على إعادة تشكيل المقاطع النصية بشكل تلقائي أو يدوي.
* دعم اظهار أرقام السطور لتسهيل عملية تتبع الأخطاء.

### وظائف البحث (والبحث والاستبدال)

* تعليم (أو تمييز) أسماء المقاطع النصية والاقترانات في الملف لتسريع عملية التنقل بين أجزاء الملف النصية.
* دعم عمليات البحث (والبحث والاستبدال) في ملف التحرير أو في مجموعة من الملفات ويشمل ذلك أساليب البحث باستخدام التعابير النمطية، التعابير النصية، مطابقة الكلمات، تجاهل الحروف الكبيرة وغيرها من أساليب البحث.
* القدرة على البحث في جميع أجزاء الوثيقة أو في أجزاء منتقاه.
* القدرة على تجاهل نتائج البحث الواردة في التعليقات البرمجية.
* القدرة على تقييد البحث لسطر واحد أو أكثر.
* دعم عمليات البحث التقادمية (البحث إلى الأمام أو الخلف).
* دعم تذكر أحدث عمليات البحث لاعادة استخدامها.
* دعم عمليات البحث عن الارقام باستخدام أي أساس عددي (ثنائي، ثماني، عشري، ست عشري، وغيرها من أسس العد).
* دعم وظيفة الذهاب إلى السطر رقم (Goto line).
* دعم إنشاء ووضع الاشارات المرجعية والرجوع إليها.

### وظائف التحرير

* القدرة على استلحاق واسترجاع الحالة إلى المالانهاية (Unlimited undo/redo).
* القدرة على تنفيذ مهام القص، النسخ، واللصق مع حساب عملية الإزاحة النصية.
* القدرة التلقائية على عملية التفاف النصوص على سطور جديدة في حال تعدى السطر الحالي عرض شاشة التحرير ويشمل ذلك أيضاً التعليقات البرمجية.
* القدرة على تقسيم شاشة التحرير إلى أكثر من قسم.
* اتاحة القدرة للمستخدم على إعادة تعيين وظائف أزرار لوحة المفاتيح.
* وجود أكثر من أسلوب لعملية الحفظ المؤقت (Multiple clipboards).
* دعم عملية التحديث التلقائي للملف حسب تاريخ اَخر تعديل.
* القدرة على تحرير الملفات بواسطة اسلوب السحب والإفلات (Drag and Drop editing) وذلك يشمل أنظمة ويندوز ويونكس فقط.

### وظائف مجموعات الملفات والمشاريع

* القدرة على فتح أكثر من ملف في شاشة التحرير.
* دعم عملية الولوج لمجموعات الملفات والمشاريع من القوائم الرئيسية.
* القدرة على اخفاء مجموعات الملفات بشكل مؤقت.
* القدرة على تحديد أدوات التحرير وتخصيصها لمشاريع بعينها.
* القدرة على تحديد نظام إصدارية البرمجيات وتطبيقه على مجموعة ملفات أو مشاريع بعينها.
* القدرة التلقائية على تحديث بيانات المشاريع طبقاً لاَخر ملف تم تحديثه.
* القدرة على تحديد هوية المستخدم بناءً على مجموعات الملفات (تحديد سماحية المستخدمين وتطبيقها على مستوى الملفات).

### وظائف لدعم ترميز يونيكود

* دعم القدرة على تحرير الملفات النصية التي تحوي في طياتها نصوص مكونة على تشكيلة «مالتي بايت» بالإضافة إلى النصوص التي تستخدم ترميز يونيكود.
* دعم عمليات البحث في النصوص التي تستخدم ترميز يونيكود باستعمال التعابير النمطية.
* القدرة على معالجة النصوص باستخدام أكثر من 82 ترميز (بما فيها اليونيكود).
* القدرة على فتح الملفات النصية التي تحوي نصوص تستخدم اليونيكود كأساس ترميزي وتخزينها.

### الوظائف المتداخلة مع التطبيقات والبرامج الخارجية

* القدرة على تحرير محتويات الملفات الغير نصية مثل ملفات زيب (zip) وملفات تار (tar) وغيرها من أنواع الملفات.
* القدرة على التعامل مع أدوات تطبيقات تيكس (TeX) مثل أدوات dvi ،ps ،pdf ،bib وغيرها.
* القدرة على الاندماج مع تطبيقات المدققات الاملائية مثل (aspell ،ispell ،Excalibur).
* القدرة على الاندماج مع تطبيقات أنظمة إصدارية البرمجيات مثل (cvs).
* القدرة على دعم ايجاد الفروق (diff) ما بين الملفات والمجلدات وتمثيل هذه الفروق بطريقة رسومية بالإضافة إلى تطبيق هذه الفروق أو استرجاعها (patch).
* دعم نقل الملفات باستخدام بروتوكول نقل الملفات بالإضافة إلى تحرير الملفات وتخزينها عن بعد باستخدام نفس البروتوكول.
* دعم متصفحات المجلدات لسرد محتوياتها.
* وجود متصفح ويب (متصفح نصي فقط) مثل لنكس (Lynx) ويدعم هذا المتصفح الأطر الرسومية الرئيسية فقط.

## التوثيق والمساعدة

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

## انظر أيضاً

* قائمة محررات النصوص