انتقل إلى المحتوى الرئيسي

الفصل 10 · الجزء III · في التطبيق

مهارة الوكيل: انقل منشورًا إلى Postext

ثبّت مهارة postext-port في Claude Code أو Codex أو أي وكيل، ودعه يحوّل مصدرًا بصيغة PDF أو Word أو PowerPoint أو EPUB أو InDesign أو HTML إلى مشروع Postext يتبع إخراج الأصل

آخر تحديث 2026-10-048 دقائقenescazhar

باختصار

هذه الصفحة لمن لديه كتاب أو مستند بصيغة أخرى، مثل PDF أو Word أو InDesign، ويريد نقله إلى Postext. يستطيع مساعد ذكي، يُسمّى وكيلًا، أن يقوم بمعظم العمل إن أعطيته إضافة صغيرة تُسمّى مهارة. تعلّم المهارةُ الوكيلَ كيف ينسخ النص ويعيد بناء تصميم الأصل. تشرح الصفحة كيف تثبّتها، وماذا تطلب، وكيف تتحقق من النتيجة. ويعرض مقطع فيديو مدته نحو خمس دقائق كل خطوة.

حوّل منشورًا قائمًا إلى مشروع Postext بمساعدة وكيل برمجة.

يأتي كثيرون إلى Postext ومعهم كتاب موجود أصلًا: كتاب مدرسي في ملف PDF للطباعة، أو تقرير في Word، أو مقرر دراسي في PowerPoint، أو كتالوج في InDesign، أو ملف EPUB. ونقله يعني عملين:

  • المحتوى: نص Markdown المُثرى لكل فصل، بتوجيهاته وصيغه الدقيقة (microformats).
  • التصميم: ملف بيان للإعدادات (manifest) يعيد إنتاج قواعد الإخراج في الأصل (أبعاد الصفحة، وشبكة خطوط الأساس، والحروف، وصفحات افتتاح الفصول، والترويسات، والإطارات، والعناصر العائمة، والجداول، والأجزاء).

يستطيع نموذج لغوي كبير (LLM) أن يقوم بكثير من هذا العمل، لكن بشرط أن يعرف كيف يعمل Postext. فـMarkdown في Postext ليس CommonMark، وفي الإعدادات فخاخ لا تظهر إلا حين تُرسَم صفحة رسمًا خاطئًا. تجمع مهارة postext-port هذه المعرفة مع الأدوات التي استعملناها لبناء كل إعداد مسبق في Sandbox، ليُنجز وكيلك النقل كما ينبغي.

تتبع المهارة صيغة Agent Skills المفتوحة، فتعمل مع Claude Code وCodex وCursor وGemini CLI وGitHub Copilot وOpenCode ووكلاء كثيرين غيرها.

#شاهد الدرس

خمس دقائق، بلا شيفرة: جهّز المجلد، وأحضر الأصول المتجهية، وأضف ملف PDF مرجعيًا، واطلب من الوكيل، ثم تحقق من النتيجة في Sandbox.

النص المكتوب

كل ما يقوله الراوي، مع وصف لما يظهر على الشاشة.

  1. 0:00

    على الشاشةبطاقة العنوان: شعار Postext، والعنوان التمهيدي «درس · 5 خطوات»، والعنوان «حوّل منشورك إلى Postext بمساعدة وكيل ذكاء اصطناعي. بلا شيفرة.»

  2. 0:03

    على الشاشة«منشورك موجود بالفعل.» ثلاث صفحات نضّدها Postext، كتاب ودليل استعمال ومجلة، تنزل واحدة بعد أخرى، موسومة InDesign (IDML) وWord (DOCX) وPDF. تتجمّع على اليسار، ويمرّ سهم ذهبي متقطع عبر شارة «وكيل ذكاء اصطناعي»، وتظهر أيقونة ملف اسمه my-book.postext، تحت «وكيل يحوّله إلى Postext. خمس خطوات. وبضعة طلبات محكمة الصياغة.»

    السردلديك منشور بالفعل: كتاب، أو دليل استعمال، أو مجلة. يعيش في InDesign، أو في Word، أو في ملف PDF. في هذا الدرس، سيحوّله وكيل ذكاء اصطناعي إلى Postext نيابةً عنك. بلا شيفرة: خمس خطوات فقط وبضعة طلبات محكمة الصياغة.

  3. 0:23

    على الشاشة«الخطة»: تظهر خمس بطاقات مرقّمة كلما ذُكرت خطوة: 01 جهّز المجلد، 02 أحضر الأصول المتجهة، 03 أضف مرجعًا، 04 اطلب من الوكيل، 05 افحص في Sandbox.

    السردهذه هي الخطة: جهّز المجلد، وأحضر الرسوم الأصلية، وأضف مرجعًا، واطلب من الوكيل، وافحص النتيجة.

  4. 0:33

    على الشاشةالخطوة 01، المجلد: «مشروع واحد، مجلد واحد.» مجلد كبير، my-book/، يطفو بين عشرة ملفات متناثرة مثل MinionPro-Regular.otf وcover.jpg وfig-2-1.ai وchapter-01.docx وmap.svg وbook.idml وchart.pdf. تنفتح نافذة على شجرة المجلد ويطير كل ملف إلى مجلده الفرعي حين يُذكر اسمه: reference.pdf (كيف يجب أن يبدو، الخطوة 03)، وfonts/ (Minion Pro وMyriad…، .otf .ttf .woff2)، وimages/ (صور فوتوغرافية، .jpg .png)، وartwork/ (الأصول المتجهة، .ai .svg .pdf)، وtext/ (Word وInDesign IDML…).

    السردالخطوة الأولى: ضع كل شيء في مجلد واحد على حاسوبك. مشروع واحد، مجلد واحد. وفي داخله، خصّص لكل نوع من المواد مجلدًا فرعيًا: الخطوط، والصور، والرسوم، وملفات النص.

  5. 0:50

    على الشاشةيُبرَز صف fonts/ وتعرض بطاقة عنوانها «الخطوط» «Aa» كبيرة، والأساليب Regular وItalic وBold، والصيغ OTF وTTF وWOFF2، والملاحظة «لا يمكن استعمال إلا الخطوط التي تضمّنها.» ثم «كلما كان المجلد أرتب، قلّ التخمين.»، بينما ينال كل مجلد فرعي في الشجرة علامة صح.

    السردلا تنسَ الخطوط. فهي تمنح التصميم صوته، ولا يستطيع الوكيل أن يستعمل إلا ما تضمّنه منها. كلما كان المجلد أرتب، قلّ ما يضطر الوكيل إلى تخمينه.

  6. 1:03

    على الشاشةالخطوة 02، الأصول المتجهة: «أحضر الأصول.» مخطط ورسم بياني وخريطة تُرسم خطوطًا مع ظهور نقاط الارتكاز، وتظهر ثلاث أيقونات ملفات: .ai Illustrator و.svg SVG و.pdf PDF.

    السردالخطوة الثانية: إن كانت رسومك متجهة، كالمخططات أو الرسوم البيانية أو الخرائط، فاعثر على ملفاتها الأصلية: Illustrator أو SVG أو PDF.

  7. 1:14

    على الشاشةلوحتان تعرضان الشكل نفسه، مخططًا يشير فيه Manuscript وTemplate كلاهما إلى Pages، وتعليقه «Fig. 2.1 Content and design meet.» (الشكل 2.1 يلتقي المحتوى والتصميم). على اليسار، «مقصوص من PDF: صورة للرسم» يصير ضبابيًا ومربّعًا كلما اقترب العرض؛ وعلى اليمين يبقى «الأصل: الرسم نفسه» حادًا. تتلاشى اللوحة اليسرى، وتُكتب تسميات الأصل من جديد بالإسبانية (Manuscrito وPlantilla وPáginas)، وتحيط به علامات القص، وتقول ثلاث علامات صح: «حاد بأي حجم» و«التسميات نص حي» و«نسخة الطباعة الأصلية ← المطبعة».

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

  8. 1:37

    على الشاشةالخطوة 03، المرجع: «أرِه كيف يجب أن يبدو.» في شجرة المجلد يُبرَز reference.pdf ويحمل وسم «في الجذر»؛ تطير منه صفحة وتصير صفحة كتاب كبيرة من عمودين موسومة reference.pdf.

    السردالخطوة الثالثة أساسية: في جذر المجلد، ضع ملفًا يبيّن بوضوح كيف يجب أن يبدو المنتج النهائي. وملف PDF هو الأمثل.

  9. 1:47

    على الشاشةتظهر القياسات فوق الصفحة: حدود الأعمدة، وفاصل بين الأعمدة 9 mm، وهامش 20 mm، وتسميات للعنوان (Fraunces 28 pt) والمتن (Lora 9.4/13.6 pt) والإطار (بلون خلفية، خط فاصل واحد)، وخطوط أساس بتباعد أسطر 13.6 pt. ويمتلئ ملف اسمه spec-sheet.md: الصفحة 210 × 280 mm؛ الهوامش 24 · 20 · 22 · 20 mm، متناظرة؛ عمودان، والفاصل 9 mm؛ شبكة خطوط الأساس 13.6 pt؛ المتن Lora 9.4 / 13.6 pt، مضبوط؛ العناوين Fraunces 28 pt · Geist؛ صفحات افتتاح بشريط ملوّن 101 mm؛ إطارات بلون خلفية وخط فاصل على اليسار. ثم تُشطب كلمة «خمّن» وتضيء «قِس.» بالذهبي.

    السرديقرأ الوكيل التصميم من تلك الصفحات. يقيس الهوامش والأعمدة والخطوط والمسافات، ويدوّنها قواعدَ إخراج. من دون مرجع، سيضطر إلى التخمين. ومعه، يقيس.

  10. 2:03

    على الشاشةالخطوة 04، الوكيل: «اطلبه بكلمات بسيطة.» تنفتح نافذة عنوانها «Agent · ~/my-book» بجانب الشارات Claude Code وCodex و«أو أي وكيل آخر». تُكتب رسالة منك (YOU): «ثبّت مهارة Postext: `npx skills add drnachio/postext --skill postext-port`»، ويجيب الوكيل «✓ ثُبّتت المهارة: postext-port». وتعدّد بطاقة لمهارة postext-port: «سير عمل مجرّب» و«كل شيء عن Postext» و«أدوات ليفحص عمله بنفسه».

    السردالخطوة الرابعة: افتح وكيلك، Claude Code أو Codex أو أيًّا كان ما تستعمله، في ذلك المجلد، واطلب منه تثبيت مهارة Postext. المهارة حزمة من خبرة المختصين. وهذه المهارة تعلّم الوكيل كيف يُدخل منشورًا إلى Postext، وتعطيه الأدوات ليفحص عمله بنفسه.

  11. 2:24

    على الشاشةيُكتب الطلب التالي: «استعمل مهارة postext-port لتحويل هذا الكتاب إلى Postext. التصميم في reference.pdf، والخطوط في fonts/، والرسوم الأصلية في artwork/: استعملها بدل قص الأشكال من ملف PDF. ابدأ بالفصل 1 فقط، وأرني ورقة المواصفات قبل أن تبنيه.» وبجانبه تضيء reference.pdf وfonts/ وartwork/ في شجرة المجلد كلما ذكرها الطلب، وتظهر بطاقة كُتب عليها «الفصل 1».

    السردثم اطلب ما تريد بكلمات بسيطة. أخبره أين المرجع والخطوط والأصول، واطلب منه أن يبدأ بفصل واحد.

  12. 2:37

    على الشاشةشبكة من اثنتي عشرة صفحة كتاب باهتة؛ الأولى محاطة بإطار ذهبي. سهم دائري يعدّ جولات التحسين عليها حتى تظهر علامة صح، ثم تضيء الإحدى عشرة الأخرى. وتحتها: فصل نموذجي ← تحسين ← توسيع.

    السردإن كان المحتوى طويلًا، فابدأ بفصل نموذجي. حسّنه حتى يصير مثاليًا، وبعدها فقط وسّعه إلى الباقي.

  13. 2:46

    على الشاشةيسأل الوكيل «نسخة أمينة أم إعادة تصميم؟» و«أي لغات؟» و«للطباعة أم للشاشة أم لكليهما؟». وتمرّ قائمة تحقق على: جرد المواد، وقياس التصميم، واستخراج النص، والخطوط والصور، والمقارنة صفحةً صفحة، وحزم الملف، ثم يظهر الملف my-book.postext. ويُكتب طلب ثالث: «الفصل 1 معتمد. حوّل الفصول الباقية بالتصميم نفسه، وقارن كلًّا منها بملف reference.pdf، واحزم كل شيء في ملف .postext واحد.» ويردّ الوكيل «✓ 12 فصلًا · 0 تحذيرات · my-book.postext».

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

  14. 3:14

    على الشاشةالخطوة 05، Sandbox: «افحصه صفحةً صفحة.» نافذة متصفح يُكتب فيها العنوان postext.dev/sandbox. ينقر المؤشر «الكتب» في الشريط الجانبي، ثم «جديد»، ثم «فتح ملف .postext…»؛ يطير الملف إلى الداخل، ويظهر «كتابي، 12 فصلًا · 184 صفحة» أعلى القائمة وتنفتح صفحاته الأولى في عرض Canvas.

    السردالخطوة الخامسة: افتح Sandbox، بيئة التجربة في Postext، على postext.dev. في «الكتب» اختر «جديد»، وافتح ملفك.

  15. 3:24

    على الشاشةتقف الصفحة المرجعية وصفحة Postext جنبًا إلى جنب، موسومتين «المرجع» و«Postext»، ويمسحهما خط ذهبي نزولًا. تنفتح لوحة «الفحوص» بشارة 3 وتعدّد: أرملة (ص. 4)، وسطر رخو (ص. 7)، وشكل لا يتسع (ص. 9)؛ وتعلّم مربعات حمراء كل مشكلة على صفحة Postext.

    السردراجعه صفحةً صفحة، بجانب مرجعك. لوحة «الفحوص» تدلّك على المشكلات: الأرامل، والأسطر الرخوة، والأشكال التي لا تتسع.

  16. 3:35

    على الشاشةصفّان من المخططات الهيكلية للصفحات، «المرجع · PDF» و«Postext · بعد إعادة التدفّق». في الصف الثاني ينتقل شكل من الصفحة الأولى إلى أعلى الثانية، ويصل خط متقطع بين موضعيه. النص: «القواعد نفسها، لا الصفحات نفسها. المحتوى يتدفّق: قد يقع شكل أو فاصل صفحة في موضع آخر.» ثم تجمع علامة مساواة كل زوج من الصفحات تحت «ما يجب أن يتطابق»: الهوامش وشبكة خطوط الأساس، والحروف والخطوط، وأنماط الأشكال والإطارات، وصفحات نظيفة: لا أرامل، وأعمدة متساوية. ولوحة حمراء عليها ≠ تقول: «قرارات حِرفية يدوية: ليست قواعد، فلا تستطيع تنضيد محتوى متغيّر».

    السردأمر واحد ينبغي أن تتذكّره: لا يلزم أن تطابق الصفحات ملف PDF الذي لديك. فقد تعلّم Postext قواعد الإخراج، وصار محتواك يتدفّق، لذلك قد يقع شكل أو فاصل صفحة في موضع آخر. ما ينبغي أن يتطابق هو الجودة: مستوى الصنعة نفسه. حين نُخرج الصفحات باليد، نتخذ قرارات حِرفية صغيرة ليست قواعد. والقواعد وحدها تستطيع تنضيد محتوى لا يكفّ عن التغيّر.

  17. 4:03

    على الشاشةتعود نافذة الوكيل بطلب رابع: «في Sandbox، الفصل 2، الصفحة 7: إطار «تذكّر» مقسوم على عمودين، والترويسة مفقودة. وتعرض «الفحوص» 3 أسطر رخوة. أصلح ذلك واحزم الملف من جديد.» وتُرفق لقطة شاشة، screenshot-ch2-p7.png. ثم تدور حلقة بين Sandbox (الفحص) والوكيل (الإصلاح) في الجولات من 1 إلى 3 بينما ينخفض عدد التحذيرات من 3 إلى 0، وتنتهي بعلامة صح و«مضبوط تمامًا.»

    السردثم أخبر الوكيل بما تراه، بأقصى ما تستطيع من دقة: الفصل، والصفحة، وما الخطأ. ولقطة الشاشة تساعد. افتح النسخة الجديدة، وافحص من جديد، وكرّر. كل جولة تقترب أكثر، حتى يصير مضبوطًا تمامًا.

  18. 4:23

    على الشاشة«أكثر من نسخة Postext.» ينقسم الملف my-book.postext إلى اثنين على طول خط ذهبي. على اليسار، المحتوى (ما يقوله): chapters/en/02-the-cell.md، بالعنوان «The cell» (الخلية)، وجملة تحيل إلى الشكل fig-cell، وإطار «remember» (تذكّر). وعلى اليمين، الهيئة (كيف يبدو): قالب مستنتج من أصلك، بصفحة 210 × 280 mm متناظرة، وعمودين بينهما فاصل 9 mm، ومتن Lora 9.4/13.6 مضبوط، وعناوين Fraunces مرقّمة، وإطارات «remember» بلون خلفية وخط فاصل، وأشكال معوّمة إلى أعلى العمود.

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

  19. 4:39

    على الشاشةتضيء شارات «تصحيح» و«توسيع» و«ترجمة» فوق صف من صفحات الكتاب: يُبرَز سطر ويعبر بريق الصفحات، وتنزلق صفحتان أخريان، ثم تنقلب الصفحات إلى الطبعة الإسبانية. ويُكتب طلب: «أضف طبعة إسبانية: ترجم الفصول والتعليقات وتسميات المخططات، وأبقِ التصميم نفسه.» والتعليق: «القواعد نفسها. محتوى جديد. الصفحات تنضّد نفسها.» ثم «ملف واحد، الكتاب كله.»: أيقونة .postext تتفرّع إلى صفحة بعلامات قص (PDF جاهز للطباعة)، ونافذة متصفح (قارئ ويب)، وزوج من الصفحات (كل صفحة منضّدة).

    السردفحين يتغيّر محتواك، حين تصحّحه أو توسّعه أو تترجمه، لا يلزمك التفكير في الإخراج. يعيد Postext تنضيده وفق القواعد نفسها. ملف واحد للكتاب كله: PDF جاهز للطباعة، وقارئ للويب، وصفحات تنضّد نفسها.

  20. 5:01

    على الشاشةبطاقة الختام: شعار Postext، والعبارة «منضّد قابل للبرمجة للويب»، وpostext.dev، وشارة كُتب عليها «الطلبات المستعملة في هذا الفيديو في الوصف ↓»، والتذييل «مفتوح المصدر · MIT · github.com/drnachio/postext».

    السردPostext. مفتوح المصدر، على postext.dev. ستجد أمثلة الطلبات في الوصف.

وهو متاح أيضًا على YouTube: شاهده هناك أو في قائمة تشغيل Postext.

#ما الذي تحتويه المهارة

  • سير عمل:
    1. الاتفاق على المهمة؛
    2. جرد المصدر؛
    3. قياس التصميم وتدوينه في ورقة مواصفات؛
    4. إنشاء هيكل المشروع؛
    5. استخراج المحتوى؛
    6. تنقيحه إلى Markdown الخاص بـPostext؛
    7. تجهيز الخطوط والصور؛
    8. التحقق صفحةً صفحة؛
    9. تحزيمه.
  • مراجع:
    • صيغة المستند وملف بيان الإعدادات، وكلاهما مُتحقَّق منه مقابل المحرّك؛
    • صيغة المشروع (الحزمة)؛
    • دليل عمل لكل صيغة مصدر؛
    • منهج لتحليل التصميم؛
    • كتالوج لحالات إخراج محلولة: أجزاء بألوانها الخاصة، وصفحات افتتاح الفصول، والشعر، وحواشي الهامش، والحواشي السفلية، والفهارس الأبجدية في آخر الكتاب، والإطارات العائمة والمقسومة والمتداخلة، والأصول المتجهية للطباعة، والأشكال ذات النص الحي، والصور داخل خلايا الجداول، والجداول الأفقية، والطبعات ثنائية اللغة، وغير ذلك؛
    • الكتب الصينية، المنضدة أفقيًا أو عموديًا والمجلدة من اليمين: ما يُسأل عنه في المهمة (الكتابة، والمنطقة، والاتجاه، والتجليد)، وكيف تُقاس شبكة من المحارف، وكيف تُقرأ ملفات PDF العمودية، وruby وwarichu في InDesign، وإخراج شرق آسيا في Word، وملفات EPUB من اليمين إلى اليسار، وكيف تُقصّ خطوط CJK على مقاس الكتاب (انظر الإخراج الصيني)؛
    • الكتب العربية، الحديثة أو التراثية والمشكولة، المنضدة من اليمين إلى اليسار والمجلدة من اليمين: الإعداد المحلي (locale) الذي يقلب اتجاه الكتاب، وما يُسأل عنه (المنطقة والأرقام، والتشكيل، والشعر، والمحتويات في آخر الكتاب)، وكيف تُقاس صفحة معكوسة، وكيف يُقرأ النص العربي من ملفات PDF وWord وويكي مصدر (Wikisource)، والقصائد بوصفها :::verse، والحواشي «(١)» لكل صفحة، والخطوط العربية المقصوصة مع جداول الوصل فيها (انظر الإخراج العربي)؛
    • الكتاب المطبوع بوصفه شيئًا ماديًا: كيف يُقرأ ورق المصدر وتجليده وأغلفته وكعبه، وكيف تُضبط بوصفها إعدادات folio التي يعرضها عارض Folio، ويتحقق منها المدقق (linter).
  • برامج نصية (Python وNode)، موصوفة في القسم التالي.

#البرامج النصية

البرنامج النصيما الذي يفعله
inventory.pyنظرة أولى على أي مصدر: الأبعاد، والخطوط، والأنماط المستعملة، والوسائط، والصفحات التي تحتاج إلى التعرّف الضوئي على الحروف (OCR)
measure_layout.pyالهوامش والأعمدة والفاصل بين الأعمدة وتباعد الأسطر (شبكة خطوط الأساس) في ملف PDF
pdf_extract.pyPDF ← مسودات فصول حسب دور الحرف (الخط/الحجم/اللون): ترتيب القراءة، والفقرات، وإزالة الواصلات، والعريض/المائل، والأحرف المرتفعة/المنخفضة، والقوائم، والتعليقات
pdf_figures.pyيقصّ الأشكال من ملف PDF: الصور الفوتوغرافية بدقتها الأصلية، ومعاينات SVG، وأصول PDF متجهية للطباعة
extract_tables.pyجداول PDF ← TableModel في Postext
pandoc_to_postext.pyDOCX وPPTX وODT وEPUB وHTML وLaTeX وMarkdown وJATS وDocBook ← مسودات فصول، مع ربط أنماط Word بالإطارات وأنماط الفقرات
idml_extract.pyIDML من InDesign ← مسودات فصول حسب نمط الفقرة، والجداول، والصور المثبّتة؛ وتصبح ruby وtate-chu-yoko وعلامات التوكيد وwarichu :ruby و:tcy و:dots و:warichu، ويُبلَّغ عن النصوص العمودية وعن التجليد من اليمين إلى اليسار
index_marks.pyيعيد بناء فهرس أبجدي مطبوع في آخر الكتاب على هيئة علامات :index: يقرأ صفحات الفهرس في ملف PDF، ويجد كل مدخل في صفحته، ويعلّم الكلمات نفسها في الفصول
fonts.py، images.py، convert_assets.pyإنشاء نسخ ثابتة من الخطوط وتقليصها إلى مجموعة فرعية وتحجيمها وتقسيمها (الخط الصيني المقصوص على محارف الكتاب يحتفظ بأشكاله العمودية ومقاييسه، والخط العربي بأشكال الوصل والتطويل)؛ وتحويل الصور إلى sRGB وتشذيبها وضمّها؛ وتحويل رسوم .ai/.pdf إلى SVG
preset_kit.pyينشئ هيكل المشروع والبرنامج النصي المولِّد له، ويبني preset.json، ويحزم ملف .postext
lint_project.pyيلتقط كل ما يخطئ فيه المحلّل والمحمّل بصمت، وفي النصوص الصينية واليابانية والكورية المحارفَ التي لا تستطيع الخطوط المرفقة تنضيدها؛ وفي النص العربي غيابَ الإعداد المحلي العربي، والخطوطَ اللاتينية فقط أو غير الموصولة، وتباعدَ الحروف، والتقسيمَ القسري بالواصلة، والتوكيدَ بالمائل
render.mjsيُخرج المشروع (مجلدًا أو ملف .postext) دون واجهة بالمحرّك الحقيقي، قارئًا إعداداته كما يقرؤها Sandbox، ويطبع التحذيرات. ومع --jpeg يرسم الصفحات التي تطلبها (--pages 12-15) ملفاتِ JPEG بمُخرِج Canvas الخاص بالمحرّك، في ثانية أو ثانيتين، فينظر الوكيل إلى صفحاته دون بناء PDF؛ و--out يكتب ملف PDF
compare_pages.pyيضع صفحات المصدر وصفحات Postext جنبًا إلى جنب، من ملف PDF الناتج عن الإخراج أو من مجلد صوره بصيغة JPEG

#تثبيتها

#أي وكيل (skills.sh)

تكتشف أداة سطر الأوامر skills وكلاءك وتثبّت المهارة لهم:

npx skills add drnachio/postext --skill postext-port

اختر الوكلاء صراحةً بـ-a، وثبّتها تثبيتًا عامًا (لكل المشاريع) بـ-g:

npx skills add drnachio/postext --skill postext-port -a codex -a claude-code -g

ينشر الموقع المهارة نفسها، فيعمل هذا أيضًا:

npx skills add https://postext.dev

#إضافة Claude Code

مستودع Postext هو أيضًا سوق إضافات (plugin marketplace) لـClaude Code. داخل Claude Code:

/plugin marketplace add drnachio/postext
/plugin install postext@postext

أو من الطرفية:

claude plugin marketplace add drnachio/postext
claude plugin install postext@postext

#دع الوكيل يثبّتها

يمكنك أن تطلب ذلك من وكيلك، مثلًا: «ثبّت مهارة النقل إلى Postext (npx skills add drnachio/postext --skill postext-port) واستعملها لنقل ملف PDF هذا.» والوكلاء الذين يقرؤون https://postext.dev/llms.txt يجدون هذه الصفحة وأمر التثبيت هناك.

#الأدوات التي تستعملها البرامج النصية

python3 -m pip install pymupdf pillow fonttools brotli
brew install pandoc poppler
mkdir -p ~/.cache/postext-tools && cd ~/.cache/postext-tools && npm init -y && npm i postext postext-pdf postext-citeproc react @pdf-lib/fontkit @napi-rs/canvas

يلزم Pandoc لمصادر Word وPowerPoint وEPUB وHTML، ويلزم poppler لصور صفحات المصدر. وتشغّل حزم Node المُخرِجَ الذي يعمل دون واجهة (Node 22.15 أو أحدث)؛ و@napi-rs/canvas لوحة رسم مبنية مسبقًا تتيح له رسم صفحات الكتاب مباشرةً بصيغة JPEG. وأدوات اختيارية: ocrmypdf للصفحات الممسوحة ضوئيًا، وImageMagick، وveraPDF لفحوص PDF/UA.

#استعمالها

ضع ملفات المصدر في مجلد عملك واطلب النقل. مثلًا:

  • «انقل الفصول 1–3 من manual.pdf إلى Postext، مع إعادة إنتاج إخراجه في عمودين، وصفحات افتتاح الفصول، والإطارات.»
  • «حوّل course.docx إلى كتاب Postext. النمطان 'Nota' و'Actividad' إطاران.»
  • «حوّل deck.pptx إلى مطبوعة Postext: تصبح الشرائح أقسامًا، وتصبح ملاحظات المتحدث النص.»
  • «لدينا حزمة InDesign (IDML + ملف PDF للطباعة) لهذا الكتاب المدرسي. ابنِ إعداد Postext المسبق للفصل 1 بالإسبانية والإنجليزية.»

يتبع الوكيل سير العمل:

  1. المهمة. يسأل عما لا يستطيع استنتاجه: إعادة إنتاج أمينة أم إعادة تصميم، وفصل نموذجي أم الكتاب كله، واللغات، والطباعة أم الشاشة، والحقوق في النص والصور والخطوط.
  2. الجرد والقياس. يقرأ المصدر ويكتب ورقة مواصفات بحقائق مقيسة: مقاس القص، والهوامش، والأعمدة، وتباعد الأسطر، وأدوار الحروف، ولوحة الألوان، وصفحات افتتاح الفصول، والترويسات، وعائلات الإطارات، وعادات الوضع.
  3. المشروع. ينشئ هيكل my-book/ مع مولِّد build_preset.py يحفظ المواصفات ثوابتَ ويُنتج preset.json.
  4. المحتوى. يستخرج مسودات الفصول بالمستخرج المناسب، ثم ينقّحها إلى Markdown الخاص بـPostext: الإطارات، وأنماط الفقرات، والأجزاء، وسمات العناوين لصفحات افتتاح الفصول، والاستشهادات بـ:ref، وموارد الجداول والأشكال.
  5. التحقق. يدقق المشروع، ويُخرجه دون واجهة، ويرسم الصفحات التي يعمل عليها صورًا بصيغة JPEG وينظر إليها، ويقارنها بالمصدر صفحةً صفحة حتى تتطابق فواصل الصفحات والأشكال والإطارات. يُبنى ملف PDF لفحوص الطباعة، لا عند كل نظرة.
  6. التسليم. يضبط ورق الكتاب وتجليده وأغلفته لعارض Folio ويحزم my-book.postext.

افتح النتيجة في Sandbox: الكتب › جديد › افتح ملف .postext…. يأخذ الاستيراد الفصول والنصوص بلغة واجهة Sandbox. للعمل على مجلد من المشاريع في نسخة محلية من Postext، اضبط POSTEXT_PRIVATE_PRESETS_DIR (انظر Sandbox).

#تحميل النتيجة من الشيفرة

الملف المُسلَّم ليس مرتبطًا بـSandbox. تفتحه حزمة postext بـopenBundle، وتُخرج الكتاب بـbuildBundle، وترسمه على اللوحة (Canvas) أو في HTML أو PDF (انظر الحزم). لذلك يمكن أن يغذّي النقلُ برنامجًا مباشرةً. وحين تحتاج مخرجات ذلك البرنامج إلى تعديل، صدّرها من جديد إلى ملف .postext بـcreateBundle، وحسّنها في Sandbox، ثم حمّل الملف المصحَّح مرة أخرى. ويقبل render.mjs الخاص بالمهارة، الذي يعمل دون واجهة، ملف .postext محزومًا كما يقبل مجلد مشروع.

#ما الذي تتوقعه

  • المستخرجات تُنتج مسودات، والوكيل ينقّحها. توقّع جولة مراجعة لكل فصل مقابل صفحات الأصل. ومن تلك المراجعة تأتي الجودة.
  • الإعدادات وMarkdown فقط. لا تغيّر المهارة المحرّك أبدًا ليلائم كتابًا واحدًا. وحين لا يستطيع Postext التعبير عن شيء ما، يختار الوكيل أقرب تعبير ويدرجه بوصفه نقصًا معروفًا.
  • الحقوق قرارك. يسأل الوكيل قبل إعادة إنتاج صور أو خطوط تراخيصها غير واضحة. وتُعلَّم الخطوط المرخّصة بـredistributable: false، فتخلو منها المشاريع المصدَّرة.
  • الأمانة حيث تهم. الهدف هو الشبكة نفسها، والحروف، وصفحات افتتاح الفصول، والإطارات، ومواضع الأشكال، وفواصل الصفحات في معظم الصفحات (بفارق صفحة واحدة على الأكثر في كل فصل)، لا فواصل أسطر متطابقة.

#أين توجد

المهارة في المستودع في plugins/postext/skills/postext-port. وتغطي كل حالة صادفناها في أثناء بناء الإعدادات المسبقة في Sandbox، العامة منها والخاصة. وحين يصادف نقلٌ حالة لا تغطيها بعد، نرجو أن تفتح مسألة (issue) أو طلب دمج (pull request) يحسّن المهارة، فيحصل عليها النقل التالي دون عناء.