نص عادي
تحتاج هذه المقالة إلى مصادر إضافية للتحقق . ( أغسطس 2012 ) |

catفي نافذة xtermفي الحوسبة ، النص العادي هو مصطلح فضفاض للبيانات (مثل محتويات الملف) التي تمثل فقط أحرفًا من مادة قابلة للقراءة ولكنها لا تمثل تمثيلها الرسومي ولا الكائنات الأخرى ( أرقام الفاصلة العائمة والصور وما إلى ذلك). وقد يتضمن أيضًا عددًا محدودًا من أحرف "المسافة البيضاء" التي تؤثر على الترتيب البسيط للنص، مثل المسافات أو فواصل الأسطر أو أحرف الجدولة. يختلف النص العادي عن النص المنسق ، حيث يتم تضمين معلومات الأسلوب؛ عن النص المنظم، حيث يتم تحديد الأجزاء الهيكلية للمستند مثل الفقرات والأقسام وما شابه ذلك؛ وعن الملفات الثنائية حيث يجب تفسير بعض الأجزاء على أنها كائنات ثنائية (أعداد صحيحة مشفرة وأرقام حقيقية وصور وما إلى ذلك).
يُستخدم المصطلح أحيانًا بشكل فضفاض للغاية، ليعني الملفات التي تحتوي فقط على محتوى "قابل للقراءة" (أو مجرد ملفات لا تحتوي على أي شيء لا يفضله المتحدث). على سبيل المثال، قد يستبعد ذلك أي إشارة إلى الخطوط أو التصميم (مثل العلامات أو علامات التصغير أو حتى علامات التبويب)؛ أو الأحرف مثل علامات الاقتباس المتعرجة والمسافات غير القابلة للكسر والشرطات الناعمة والشرطات الطويلة و/أو الأربطة؛ أو أشياء أخرى.
من حيث المبدأ، يمكن أن يكون النص العادي بأي ترميز ، ولكن في بعض الأحيان يُفهم المصطلح على أنه يشير إلى ASCII . ومع شيوع الترميزات القائمة على Unicode مثل UTF-8 و UTF-16 ، فقد يتقلص هذا الاستخدام.
يُستخدم النص العادي أحيانًا أيضًا لاستبعاد الملفات "الثنائية": تلك الملفات التي لا يمكن فيها تفسير بعض أجزاء الملف على الأقل بشكل صحيح من خلال ترميز الأحرف الساري. على سبيل المثال، الملف أو السلسلة التي تتكون من "hello" (بأي ترميز)، متبوعة بأربعة بايتات تعبر عن عدد صحيح ثنائي ليس حرفًا ، هي ملف ثنائي. لا يؤدي تحويل ملف نص عادي إلى ترميز أحرف مختلف إلى تغيير معنى النص، طالما تم استخدام ترميز الأحرف الصحيح. ومع ذلك، قد يؤدي تحويل ملف ثنائي إلى تنسيق مختلف إلى تغيير تفسير البيانات غير النصية.
نص عادي ونص غني
وفقًا لمعيار Unicode: [1]
- "النص العادي هو عبارة عن تسلسل نقي من رموز الأحرف؛ وبالتالي فإن النص العادي غير المشفر هو عبارة عن تسلسل من رموز أحرف Unicode.
- على النقيض من ذلك، فإن النص المصمم ، والمعروف أيضًا باسم النص الغني ، هو أي تمثيل نصي يحتوي على نص عادي بالإضافة إلى معلومات مضافة مثل معرف اللغة وحجم الخط واللون وروابط النص التشعبي وما إلى ذلك.
- " SGML ، وRTF ، وHTML ، و XML ، و TeX هي أمثلة على النص الغني الذي يتم تمثيله بالكامل كتيارات نصية عادية، مع توزيع بيانات النص العادي مع تسلسلات من الأحرف التي تمثل هياكل البيانات الإضافية."
ومع ذلك، وفقًا لتعريفات أخرى، تُعتبر الملفات التي تحتوي على علامات أو بيانات تعريفية أخرى نصًا عاديًا بشكل عام، طالما أن العلامات أيضًا في شكل يمكن قراءته مباشرة من قبل البشر (كما في HTML وXML وما إلى ذلك). وبالتالي، تُعتبر التمثيلات مثل SGML وRTF وHTML وXML وعلامات wiki وTeX، بالإضافة إلى جميع ملفات أكواد مصدر لغة البرمجة تقريبًا، نصًا عاديًا. المحتوى المعين غير ذي صلة بما إذا كان الملف نصًا عاديًا أم لا. على سبيل المثال، يمكن لملف SVG التعبير عن الرسومات أو حتى الرسومات النقطية، لكنه لا يزال نصًا عاديًا.
إن استخدام النص العادي بدلاً من الملفات الثنائية يجعل الملفات قادرة على البقاء بشكل أفضل "في البرية"، ويرجع هذا جزئياً إلى جعلها محصنة إلى حد كبير ضد عدم توافق بنية الكمبيوتر. على سبيل المثال، يمكن تجنب جميع مشاكل الترتيب النهائي (مع ترميزات مثل UCS-2 بدلاً من UTF-8، فإن الترتيب النهائي مهم، ولكن بشكل موحد لكل حرف، وليس لمجموعات فرعية غير معروفة محتملة منه).
الاستخدام
الغرض من استخدام النص العادي اليوم هو في المقام الأول الاستقلال عن البرامج التي تتطلب ترميزًا أو تنسيقًا خاصًا بها أو تنسيق ملف . يمكن فتح ملفات النص العادي وقراءتها وتحريرها باستخدام محررات النصوص والأدوات المساعدة الموجودة في كل مكان.
تتيح واجهة سطر الأوامر للأشخاص إعطاء الأوامر في نص عادي والحصول على استجابة، وعادةً ما تكون في نص عادي أيضًا.
تتمتع العديد من برامج الكمبيوتر الأخرى أيضًا بالقدرة على معالجة أو إنشاء نص عادي، مثل عدد لا يحصى من البرامج في أنظمة التشغيل DOS و Windows و Mac OS الكلاسيكي و Unix وأشباهها؛ بالإضافة إلى متصفحات الويب (بعض المتصفحات مثل Lynx و Line Mode Browser تنتج نصًا عاديًا فقط للعرض) وقارئات النصوص الإلكترونية الأخرى .
ملفات النص العادي شائعة الاستخدام في البرمجة؛ فملف الكود المصدر الذي يحتوي على تعليمات بلغة برمجة يكون دائمًا عبارة عن ملف نص عادي. كما يُستخدم النص العادي بشكل شائع في ملفات التكوين ، والتي تتم قراءتها لحفظ الإعدادات عند بدء تشغيل البرنامج.
يتم استخدام النص العادي في الكثير من رسائل البريد الإلكتروني .
يحتوي التعليق أو ملف " .txt " أو سجل TXT بشكل عام على نص عادي فقط (بدون تنسيق) مخصص للقراءة البشرية.
أفضل تنسيق لتخزين المعرفة بشكل مستمر هو النص العادي، وليس بعض التنسيقات الثنائية . [2]
الترميز
ترميزات الأحرف
لا يستشهد هذا القسم بأي مصادر . ( ديسمبر 2023 ) |
قبل أوائل ستينيات القرن العشرين، كانت أجهزة الكمبيوتر تُستخدم بشكل أساسي في معالجة الأرقام وليس النصوص، وكانت الذاكرة باهظة الثمن للغاية. غالبًا ما كانت أجهزة الكمبيوتر تخصص 6 بتات فقط لكل حرف، مما يسمح بـ 64 حرفًا فقط - تعيين رموز لـ AZ وaz و0-9 سيترك رمزين فقط: ليس كافيًا على الإطلاق. اختارت معظم أجهزة الكمبيوتر عدم دعم الأحرف الصغيرة. وبالتالي، كان على مشاريع النصوص المبكرة مثل Index Thomisticus لروبرتو بوسا و Brown Corpus وغيرها اللجوء إلى اتفاقيات مثل وضع علامة النجمة قبل الأحرف المقصودة بالفعل أن تكون بأحرف كبيرة.
دافع فريد بروكس من شركة آي بي إم بقوة عن استخدام بايتات مكونة من 8 بتات، لأنه قد يرغب الناس يومًا ما في معالجة النصوص، وقد فاز. وعلى الرغم من استخدام آي بي إم لـ EBCDIC ، إلا أن معظم النصوص منذ ذلك الحين أصبحت تُشفَّر بنظام ASCII ، باستخدام قيم من 0 إلى 31 لأحرف التحكم (غير القابلة للطباعة) ، وقيم من 32 إلى 127 للأحرف الرسومية مثل الحروف والأرقام وعلامات الترقيم. خزنت معظم الآلات الأحرف في 8 بتات بدلاً من 7، متجاهلة البت المتبقي أو تستخدمه كمجموع اختباري .
كان انتشار نظام ASCII على نطاق واسع بمثابة مساعدة كبيرة، لكنه فشل في معالجة المخاوف الدولية واللغوية. لم تكن علامة الدولار ("$") مفيدة في إنجلترا، وكانت الأحرف المميزة المستخدمة في الإسبانية والفرنسية والألمانية والبرتغالية والإيطالية والعديد من اللغات الأخرى غير متوفرة تمامًا في نظام ASCII (ناهيك عن الأحرف المستخدمة في اليونانية والروسية ومعظم اللغات الشرقية). حدد العديد من الأفراد والشركات والدول أحرفًا إضافية حسب الحاجة - غالبًا عن طريق إعادة تعيين أحرف التحكم أو استخدام قيم تتراوح بين 128 و 255. يتعارض استخدام القيم الأعلى من 128 مع استخدام البت الثامن كمجموع اختباري، لكن استخدام مجموع الاختبار اختفى تدريجيًا.
تم ترميز هذه الأحرف الإضافية بشكل مختلف في بلدان مختلفة، مما يجعل فك تشفير النصوص مستحيلًا دون معرفة قواعد المنشئ. على سبيل المثال، قد يعرض المتصفح ¬A بدلاً من ` إذا حاول تفسير مجموعة أحرف واحدة على أنها أخرى. طورت المنظمة الدولية للمعايير ( ISO ) في النهاية العديد من صفحات التعليمات البرمجية بموجب ISO 8859 ، لاستيعاب لغات مختلفة. يُعرف أولها ( ISO 8859-1 ) أيضًا باسم "Latin-1"، ويغطي احتياجات معظم (وليس كل) اللغات الأوروبية التي تستخدم أحرفًا تعتمد على اللاتينية (لم يكن هناك مساحة كافية لتغطيتها جميعًا). ثم قدمت ISO 2022 اتفاقيات "للتبديل" بين مجموعات الأحرف المختلفة في منتصف الملف. طورت العديد من المنظمات الأخرى اختلافات على هذه، ولعدة سنوات استخدمت أجهزة الكمبيوتر التي تعمل بنظامي التشغيل Windows وMacintosh اختلافات غير متوافقة.
أصبح وضع ترميز النصوص أكثر تعقيدًا، مما أدى إلى جهود من جانب منظمة ISO و Unicode Consortium لتطوير ترميز أحرف موحد واحد يمكن أن يغطي جميع اللغات المعروفة (أو على الأقل جميع اللغات المعروفة حاليًا). بعد بعض الصراعات، تم توحيد هذه الجهود. يسمح Unicode حاليًا بـ 1,114,112 قيمة رمزية، ويخصص أكوادًا تغطي جميع أنظمة كتابة النصوص الحديثة تقريبًا، بالإضافة إلى العديد من الأنظمة التاريخية، والعديد من الأحرف غير اللغوية مثل أصوات الطابعة والرموز الرياضية وما إلى ذلك.
يُعتبر النص نصًا عاديًا بغض النظر عن ترميزه. لفهمه أو معالجته بشكل صحيح، يجب أن يعرف المتلقي (أو يكون قادرًا على فهم) الترميز المستخدم؛ ومع ذلك، لا يلزم أن يعرف أي شيء عن بنية الكمبيوتر المستخدمة، أو عن الهياكل الثنائية التي يحددها أي برنامج (إن وجد) لإنشاء البيانات.
ربما تكون الطريقة الأكثر شيوعًا لبيان الترميز المحدد للنص العادي بشكل صريح هي استخدام نوع MIME . بالنسبة للبريد الإلكتروني و HTTP ، يكون نوع MIME الافتراضي هو " text/plain " -- نص عادي بدون ترميز. نوع MIME آخر يستخدم غالبًا في كل من البريد الإلكتروني وHTTP هو " text/html ; charset=UTF-8" -- نص عادي يتم تمثيله باستخدام ترميز الأحرف UTF-8 مع ترميز HTML. نوع MIME شائع آخر هو "application/json" -- نص عادي يتم تمثيله باستخدام ترميز الأحرف UTF-8 مع ترميز JSON .
عند استلام مستند بدون أي إشارة صريحة إلى ترميز الأحرف، تستخدم بعض التطبيقات اكتشاف مجموعة الأحرف لمحاولة تخمين الترميز المستخدم.
أكواد التحكم
يحتفظ ASCII بأول 32 رمزًا (أرقام من 0 إلى 31 عشريًا) لأحرف التحكم المعروفة باسم "مجموعة C0": وهي رموز لم تكن مخصصة في الأصل لتمثيل المعلومات القابلة للطباعة، بل للتحكم في الأجهزة (مثل الطابعات ) التي تستخدم ASCII، أو لتوفير معلومات وصفية حول تدفقات البيانات مثل تلك المخزنة على شريط مغناطيسي. وهي تتضمن أحرفًا شائعة مثل السطر الجديد وحرف الجدولة .
في مجموعات الأحرف المكونة من 8 بتات مثل Latin-1 ومجموعات ISO 8859 الأخرى ، فإن أول 32 حرفًا من "النصف العلوي" (128 إلى 159) هي أيضًا أكواد تحكم، تُعرف باسم "مجموعة C1". نادرًا ما يتم استخدامها بشكل مباشر؛ عندما تظهر في المستندات التي تكون في ظاهرها بترميز ISO 8859، فإن مواضع أكوادها تشير عمومًا بدلاً من ذلك إلى الأحرف الموجودة في هذا الموضع في ترميز خاص بنظام محدد، مثل Windows-1252 أو Mac OS Roman ، والتي تستخدم الرموز لتوفير أحرف رسومية إضافية بدلاً من ذلك.
يعرف Unicode أحرف تحكم إضافية، بما في ذلك أحرف تجاوز اتجاه النص ثنائي الاتجاه (تستخدم لتمييز الكتابة من اليمين إلى اليسار بشكل صريح داخل الكتابة من اليسار إلى اليمين والعكس) ومحددات التباين لتحديد أشكال بديلة من الرموز الصينية واليابانية والرموز التعبيرية والأحرف الأخرى.
انظر أيضا
- البيانات الثنائية
- ملف ثنائي
- بروتوكول ثنائي
- الكود المصدر
- ملف نصي
- بروتوكول قائم على النص
- التفاف الخط والتفاف الكلمة
مراجع
- ^ "معيار يونيكود، الإصدار 14.0" (PDF) . ص 18-19.
- ^ أندرو هانت، ديفيد توماس. " المبرمج البراجماتي ". 1999. الفصل 14: "قوة النص العادي". ص 73.
