قد تبدو عملية تحويل المستندات من صيغة إلى أخرى أمرًا بسيطًا، لكنها في الواقع تُصبح مزعجة عندما تواجه أدوات محدودة الميزات أو تطلب اشتراكًا مدفوعًا بعد أول استخدام. هذا ما يجعل الأدوات المفتوحة المصدر خيارًا مثاليًا لمن يبحث عن الحرية والسرعة مع الحفاظ على الخصوصية. إحدى هذه الأدوات أثبتت فعاليتها في تحويل الملفات النصية والمستندات المعقدة دون فقد التنسيق أو الجودة، وتستحق التجربة لكل من يعمل على ملفات Word أو PDF أو حتى Markdown.
هناك خيارات لا حصر لها لتحويل المستندات من صيغة إلى أخرى، مثل وظيفة “حفظ باسم” في معالجات النصوص، أو العديد من برامج التحويل عبر الإنترنت. هناك أيضًا أداة مفتوحة المصدر لهذه المهمة أستخدمها باستمرار: Pandoc.
يُطلق Pandoc على نفسه اسم “محوّل مستندات شامل”، حيث يدعم عشرات تنسيقات الترميز وأنواع المستندات. يمكنه التعامل مع ملفات Microsoft Word، وأنواع متعددة من Markdown، وملفات PDF، وملفات OpenDocument (التي يستخدمها LibreOffice بشكل أساسي)، ودفاتر Jupyter، وترميز MediaWiki، وEPUB، وعروض PowerPoint التقديمية، وLaTeX، والعديد من التنسيقات الأخرى. بعض تنسيقات الملفات لا يمكن استخدامها إلا للاستيراد أو التصدير، وليس لكليهما.
يتوفر Pandoc في مديري الحزم للعديد من توزيعات Linux، ويمكن لمستخدمي Mac المثبت عليهم Homebrew الحصول عليه من خلال هذا المستودع. إذا كنت تستخدم Windows، يمكنك تنزيل مُثبّت الحزمة من موقع Pandoc الإلكتروني، أو تثبيته باستخدام مديري حزم مثل Chocolatey و Winget.
الاستخدام الأساسي
Pandoc تطبيق سطر أوامر، ولكن هناك معاملان مطلوبان لمعظم عمليات تحويل المستندات. تُدخل مسار ملف الإدخال، وتستخدم المعامل -o لتحديد مكان حفظ الملف المُحوّل. إليك مثال بسيط لتحويل ملف Markdown إلى HTML:
pandoc “readme.md” -o “readme.html”
بسيط جدًا، أليس كذلك؟ يحاول Pandoc اكتشاف تنسيقات ملفات الإدخال والإخراج تلقائيًا، لذا لا تحتاج إلى تعريفها في كل مرة.
مع ذلك، هناك أوقات لا يعمل فيها هذا الفحص التلقائي – ربما يكون ملف Markdown الخاص بك بامتداد .TXT، أو لا ينبغي أن يكون لملف الإخراج امتداد ملف، أو لسبب آخر. في هذه الحالات، يمكنك تحديد تنسيق الإدخال باستخدام -f وتنسيق الإخراج باستخدام -t كما يلي:
pandoc “readme.md” -f markdown -t html -o “readme.html”
ربما ترغب في تحويل ملف نصي طويل إلى تنسيق EPUB لفتحه على قارئ إلكتروني؟ Pandoc قادر على ذلك:
pandoc “readme.txt” -o “readme_converted.epub”
قد تحتاج إلى تحويل بعض مستندات Word إلى HTML، ليتمكن المستخدمون الذين لا يملكون برنامج Word مثبتًا من عرضها في المتصفح. لا مشكلة، Pandoc قادر على ذلك:
pandoc “manual.docx” -o “manual.html”
يُنشئ هذا الأمر ترميز HTML الأساسي للنص، دون أي تنسيق نمطي. إذا كنت ترغب في أن يكون ملف HTML المُصدَّر مستندًا مستقلًا بالكامل، مع هوامش صفحات متجاوبة وتحسينات أخرى في سهولة القراءة، يمكنك استخدام المُعامل -s كما يلي:
pandoc “manual.docx” -s -o “manual.html”
يُوفر Pandoc خياراتٍ إضافيةً عديدة، مثل استخدام نمط CSS مُحدد لملفات HTML المُصدَّرة، وتنسيق كتل التعليمات البرمجية داخل المستندات، وتغيير كيفية تحويل العمليات الحسابية من ملفات LaTeX، وغيرها الكثير. يُمكنك الاطلاع على صفحة العروض التوضيحية على موقع Pandoc الإلكتروني للاطلاع على إمكانيات الأداة بشكل أفضل.
لا يحتوي Pandoc على خيار مُدمج لتحويل الملفات دفعةً واحدة، ولكن يُمكنك تضمينه في نص برمجي صغير من نوع Bash أو PowerShell يُكرر كل ملف في مجلد. ستكون هذه طريقةً أسرع بكثير لتحويل مئات مستندات Word من فتح كل مستند على حدة في Word.
تسريع عملي
اكتشفتُ Pandoc لأول مرة عندما كنتُ أحاول استخدام مُحرر MS-DOS لكتابة المقالات. هذا محرر نصوص عادي، لكنني كنت أستطيع الكتابة باستخدام Markdown لإضافة روابط ورؤوس وتنسيقات أخرى إلى مستندي. كنت لا أزال بحاجة إلى طريقة سريعة لتحويل نص Markdown المحفوظ إلى تنسيق HTML الذي يستخدمه نظام إدارة المحتوى (CMS) الخاص بي.
نجح Pandoc في هذه المهمة بشكل مثالي، مع أنني اضطررت إلى إضافة معامل –ascii=true لعرض بعض الرموز بشكل صحيح. بدلًا من إخراج النص إلى ملف، قمتُ بنقله إلى أمر pbcopy في نظام macOS، والذي يلصق نص HTML في الحافظة.
pandoc “/Users/corbin/Documents/DOS/MAIN.TXT” -f markdown -t html –ascii=true | pbcopy
قمتُ بدمج هذا الأمر بالكامل في اختصار على جهاز ماك، لذا كل ما كان عليّ فعله هو حفظ المستند، وتشغيل الاختصار، ثم لصق نص HTML في عرض المصدر في نظام إدارة المحتوى الخاص بي. لم تدم تلك التجربة مع محرر MS-DOS طويلاً، لكنني سأعود إليها عند تجربة محرر نصوص قديم آخر.
أعود الآن لكتابة مقالاتي باستخدام مايكروسوفت وورد. عندما أنسخ النص مباشرةً من وورد وألصقه في نظام إدارة المحتوى الخاص بعملي، أو أي محرر نصوص منسق آخر، فإنه يتضمن جميع التنسيقات. أريد الحفاظ على العناوين والروابط والتنسيقات المهمة الأخرى، ولكن ليس على الخط وحجمه الدقيقين عبر عشرات الوسوم العشوائية.
لحسن الحظ، يعمل Pandoc بشكل مثالي لهذه المهمة. أنشأتُ نصًا برمجيًا قصيرًا يحول مستند سكراتش باد إلى HTML، مع إزالة فواصل الأسطر من الملف الأصلي، ثم يحفظ النتيجة في الحافظة:
pandoc -f docx -t html –ascii=true –extract-media=”$HOME/Desktop/” “$HOME/Documents/Scratch Pad.docx” –wrap=none | pbcopy
المشكلة الوحيدة هي أن هذا البرنامج النصي مُبرمج بشكل ثابت في مستند سكربتي. عادةً ما أنشئ مستند وورد جديد في مجلد المسودات للأدلة والمراجعات الأطول. كنتُ أستطيع ببساطة فتح نافذة طرفية لتحويلها عند الحاجة، لكن برنامج الاختصارات حلَّ المشكلة مرة أخرى.
أنشأتُ اختصارًا جديدًا يُضيف خيار “نسخ كـ HTML” عند النقر بزر الماوس الأيمن على المستندات في Finder. عند تشغيله، يُمرِّر الاختصار مسار الملف إلى Pandoc، الذي يقوم بدوره بلصق ملف HTML المُحوَّل في الحافظة. بما أن Pandoc يستطيع اكتشاف تنسيق الملف تلقائيًا، فإن هذا ينطبق على أكثر من مستندات وورد.
باختصار، سهّل Pandoc عليّ الكتابة في محررات النصوص التي أريدها وأسرعها بكثير دون أخطاء تنسيق أو عناء. كما أنه مفيد للعديد من استخدامات النشر والأرشفة الأخرى. في المرة القادمة التي تحتاج فيها إلى تحويل بعض المستندات، جرّبه.
تجربة الأدوات المفتوحة المصدر تمنحك تحكمًا أكبر في بياناتك وجودة عملك دون الحاجة للاشتراكات أو القيود التقنية. هذا المحول المجاني يُثبت أن البساطة والفعالية يمكن أن تجتمعا في برنامج واحد. إذا كنت تتعامل كثيرًا مع ملفات PDF وWord، فقد يكون هذا الاكتشاف الصغير من أكثر ما يسهل عليك العمل اليومي.