الخميس، 6 أغسطس 2026

خاصية القص الشبح - أو لماذا خاصية القص واللصق معطلة في كل مكان

هل هي عملية قص ولصق، مثل السمك والبطاطا المقلية؟
إن خاصية القص واللصق معيبة في جميع برامج معالجة النصوص، ومحررات النصوص، ومساحات النصوص في المتصفحات التي استخدمتها من قبل. وهذا حالها منذ عقود.
ولكي نكون على دراية بالأمر: القص واللصق هما عمليتان متكاملتان: القص، وهو إزالة النص من المستند ووضعه في الحافظة، واللصق، وهو إدراج هذا النص في موضع جديد من المستند.
كيف يمكن أن تكون معيبة وهي منتشرة بهذا الشكل؟ دعني أعدد لك الأسباب!
1. لا يمكن التراجع عن القص
أول عيوب القص واللصق هو أنه لا يمكن التراجع عن عملية القص بشكل كامل. التراجع (Ctrl+Z أو Command+Z) بعد القص يعيد النص إلى حالته قبل القص في المستند، لكن التغييرات التي أُجريت على الحافظة تبقى. إذا ندمت على استبدال محتويات الحافظة، فقد ضاعت إلى الأبد. حتى مع استخدام مدير الحافظة، فإن التراجع لا يُلغي تمامًا كل ما تم تنفيذه بضغطة زر واحدة.
2. إعادة تنسيق النص بعد القص
العيب الثاني هو أن القص يُعيد تنسيق المستند. عادةً ما يكون القص واللصق لنقل النصوص، ولكن بمجرد القص، يُعاد تنسيق النص، مما يُجبرني على تحديد الموضع الذي أرغب في اللصق فيه من جديد. قد يبدو هذا عبئًا ذهنيًا بسيطًا، ولكنه غير ضروري.
3. القص واللصق ليسا عمليتين منفصلتين
العيب الثالث والأخير هو أنه على الرغم من أن القص واللصق يُفترض أنهما عملية نقل نص من مكان إلى آخر، إلا أنه لا يمكن التراجع عنهما كخطوة واحدة (بغض النظر عن مشكلة الحافظة حاليًا). يؤدي التراجع عن اللصق إلى إزالة النص المُضاف حديثًا، ولكنه يتطلب تراجعًا ثانيًا لاستعادة النص بالكامل - بافتراض عدم وجود أي تعديلات بين القص واللصق. في حال وجود تعديلات وسيطة، مثل إنشاء فقرة جديدة، فيجب التراجع عنها قبل الوصول إلى القص الأصلي.
تقديم ميزة القص الخفي
أضفتُ آليةً إلى برنامج إسماعيل تُصلح هذه العيوب. والخبر السار هو أنها لا تتطلب إعادة تدريب الذاكرة العضلية أو أي شيء إضافي عما تفعله بالفعل.
أُطلق عليها اسم "القص الخفي"، وتعمل كالتالي: الضغط على Ctrl+X يُخفي النص المُحدد ويجعله غير قابل للتحرير - لا يمكنك النقر على النص المقصوص، ويقفز المؤشر فوقه، ولكنه يبقى موجودًا في المستند. لا يتم وضع أي شيء في الحافظة في هذه المرحلة، ولا يوجد ما يُمكن التراجع عنه. إذا قررتَ عدم اللصق، فإن الضغط على مفتاح الهروب (Escape) يُعيد النص إلى حالته القابلة للتحرير.
اللصق (عادةً Ctrl+V أو Command+V) يُزيل النص المُحدد من موقعه الأصلي ويضعه عند المؤشر، مما يُنشئ عملية نقل واحدة دون استخدام الحافظة. بعبارة أخرى: يُمكن عكس العملية تمامًا بضغطة زر واحدة دون حذف الحافظة.
إليك مثال عملي:

ليست هناك تعليقات:

إرسال تعليق

القوائم المترابطة المتضمنة (Intrusive linked lists)

القوائم المتصلة المتداخلة (Intrusive linked lists) هي نوع من القوائم المتصلة التي تكون فيها روابط الربط مُضمَّنةً داخل البنية نفسها التي يجر...