إصلاح جدول الأنماط
يختلف جدول الأنماط في حوار الفهرسة في DocFetcher Pro وجدول الأنماط في لوحة الفهرسة في DocFetcher Server عن الموجود في DocFetcher بالطرق التالية:
- بالإضافة إلى التعبيرات النمطية، يمكنك استخدام الرموز البديلة الأقل قوة ولكن الأبسط بكثير * و ? لكتابة قواعد المطابقة. الرمز البديل * هو عنصر نائب لـ صفر أو أكثر من الأحرف، بينما الرمز البديل ? هو عنصر نائب لـ حرف واحد بالضبط.
- إجراء "تضمين" جديد بالإضافة إلى إجراء "استبعاد".
- إجراء "Detect mime type" لم يعد موجوداً. إذا كنت تريد فهرسة الملفات بدون امتداد كملفات نصية، استخدم مربع الاختيار بنفس الوصف أسفل جدول الأنماط.
- يمكن أن تكون المطابقة حساسة لحالة الأحرف أو غير حساسة لحالة الأحرف. في DocFetcher من ناحية أخرى، المطابقة دائماً حساسة لحالة الأحرف.
- يمكن إجراء المطابقة ليس فقط ضد الملفات العادية، ولكن أيضاً ضد المجلدات وملفات الأرشيف.
- في Windows، عندما تتم مطابقة القواعد ضد مسارات الملفات، ستستخدم الأخيرة الحرف \ كفاصل مسار، وليس الحرف /. مثال: C:\مسار\إلى\ملف.docx، بدلاً من C:/مسار/إلى/ملف.docx.
ونتيجة لذلك، هذا هو شكل جدول الأنماط في DocFetcher Pro:

يبدو جدول الأنماط في DocFetcher Server بنفس الشكل، ولكن أداة اختبار "النمط المحدد يطابق الملف التالي" أسفل الجدول غير متاحة حالياً. Server Not available in DocFetcher Server
انقر هنا للحصول على مناقشة مفصلة حول جدول الأنماط في DocFetcher و DocFetcher Pro و DocFetcher Server.
إليك كيف جاء إصلاح جدول الأنماط في DocFetcher Pro و DocFetcher Server. لنبدأ من البداية: في حوار الفهرسة في DocFetcher، يوجد جدول أنماط لتنفيذ إجراءات معينة على الملفات التي تطابق أنماط معينة أثناء الفهرسة:

تحتاج الأنماط إلى ما يسمى بالتعبيرات النمطية، وبالنسبة للإجراءات، يتوفر إجراءان في DocFetcher: استبعاد الملف المطابق من الفهرسة، و"اكتشاف نوع mime"، أي محاولة تخمين الطريقة الصحيحة لتحليل الملف المطابق بناءً على محتويات الملف بدلاً من اسم الملف. حتى الآن، هذا جيد. ومع ذلك، في الممارسة العملية اتضح أن التنفيذ المذكور أعلاه يحتوي على عدد من المشاكل:
- عدد قليل جداً من الناس يعرفون كيفية كتابة التعبيرات النمطية.
- أحياناً يريد المرء فهرسة ملفات معينة فقط، وعدم إضاعة وقت الفهرسة بلا داع على أي شيء آخر. على سبيل المثال، فهرسة ملفات "txt" فقط ولا شيء آخر. يمكن لـ DocFetcher فعل هذا بالفعل، ولكنه يتضمن بعض حيل التعبيرات النمطية المتقدمة إلى حد ما.
- أحياناً يريد المرء استبعاد جميع الملفات التي تطابق نمط معين من الفهرسة، باستثناء جميع الملفات التي تطابق نمط آخر معين. على سبيل المثال، استبعاد جميع ملفات PDF من الفهرسة، باستثناء ملفات PDF التي تبدأ أسماؤها بـ "تقرير_". مرة أخرى، في DocFetcher هذا يتطلب استخدام متقدم للتعبيرات النمطية.
- بشكل عام، اكتشاف نوع mime عديم الفائدة إلى حد كبير لأن: (1) امتداد الملف صحيح تقريباً دائماً وبالتالي في معظم الحالات كل ما هو مطلوب لمعرفة تنسيق الملف. (2) عندما يكون امتداد الملف غير صحيح ويكون اكتشاف نوع mime مطلوباً، فإن الأخير لا يكون موثوقاً بشكل خاص على أي حال. (3) لا أحد يكلف نفسه عناء و/أو يعرف كيفية كتابة قواعد المطابقة لتلك الحالات النادرة حيث يكون اكتشاف نوع mime مطلوباً بالفعل. ومع ذلك، في سياق DocFetcher اتضح أن اكتشاف نوع mime له حالة استخدام مهمة واحدة: جعل البرنامج يتعامل مع الملفات بدون امتداد كملفات نص عادي، مثل الملفات المسماة README. ومع ذلك أيضاً، لتحقيق هذا، يحتاج المرء إلى كتابة هذا التعبير النمطي الغامض: [^.]*
- قد يفشل اكتشاف نوع mime في تحديد الملف كنص عادي إذا كان الملف يحتوي على بعض البيانات الثنائية.
- نظراً لحقيقة أن الإصدار المحمول من DocFetcher يجب أن يعمل على جميع المنصات المدعومة، عند مطابقة القواعد ضد مسارات الملفات، تستخدم الأخيرة دائماً الحرف / كفاصل مسار، حتى في Windows، وهو أمر غير بديهي تماماً لمعظم مستخدمي Windows.
باختصار، جدول الأنماط في DocFetcher فوضى عارمة، وإعادة الكتابة التي جاءت مع DocFetcher Pro كانت فرصة جيدة لتنظيف كل هذا:
- تمت إضافة الرموز البديلة وتم تعيينها كافتراضية بحيث يمكن الآن حتى للأشخاص العاديين كتابة قواعد المطابقة.
- إجراء "تضمين" يغطي كلاً من الحالة حيث يريد المرء فهرسة نوع معين من الملفات فقط، والحالة حيث يريد المرء تحديد استثناءات لقواعد المطابقة. حتى الاستثناءات للاستثناءات أصبحت ممكنة الآن.
- إجراء "Detect mime type" عديم الفائدة عموماً لم يعد موجوداً، وحالة الاستخدام الرئيسية له، فهرسة الملفات بدون امتداد كملفات نصية، مغطاة بمربع اختيار بسيط أسفل جدول الأنماط. ويعمل مربع الاختيار هذا حتى لو كان الملف يحتوي على بعض البيانات الثنائية.
- تم إصلاح مشكلة فاصل المسار في Windows.
- وتم إضافة بعض الأشياء الأخرى (حساسية حالة الأحرف والمطابقة ضد الملفات/المجلدات/الأرشيف) للحصول على مقياس جيد.
تحميل وحفظ إعدادات الفهرسة
ملاحظة: هذه الميزة متاحة حالياً في DocFetcher Pro فقط، وليس في DocFetcher Server. Server Not available in DocFetcher Server
المشكلة: في DocFetcher، في كل مرة تنشئ فيها فهرساً جديداً، عليك إدخال جميع القواعد في جدول الأنماط واحدة تلو الأخرى. يصبح هذا مملاً جداً إذا كان لديك العديد من هذه القواعد. لا توجد طريقة لتحميلها وحفظها.

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

النقر على "حفظ الإعدادات" يفتح هذا الحوار:

في الأساس، ما يمكنك فعله بهذا الحوار هو إما حفظ إعدادات الفهرسة المرئية حالياً في فتحة جديدة مسماة، مثل "إعدادات الفهرسة الجديدة"، أو حفظ إعدادات الفهرسة المرئية حالياً كإعداد افتراضي جديد.
هذا الإعداد الافتراضي يسمى "إعدادات المستخدم الافتراضية" وسيتم تحميله تلقائياً عند إنشاء فهارس جديدة. يوجد أيضاً "إعدادات المصنع الافتراضية"، وهو الإعداد الافتراضي الذي يستخدمه DocFetcher Pro افتراضياً. الإعدادات المسماة التي أنشأتها، وهي "إعدادات المستخدم الافتراضية" و "إعدادات المصنع الافتراضية"، يمكن تحميلها جميعاً عبر القائمة المعروضة أعلاه.
لإكمال الأمور، تسمح القائمة أيضاً بتصدير واستيراد جميع إعدادات الفهرسة بحيث يمكنك إعادة استخدامها عند إعداد DocFetcher Pro في بيئة جديدة.
تحسينات أخرى جديرة بالملاحظة
دعم FB2: DocFetcher Pro و DocFetcher Server لديهما دعم لتنسيق الكتب الإلكترونية FB2. ملفات FB2 المضغوطة بـ Zip، مع امتداد الملف fb2.zip أو fbz، مدعومة "محلياً"، أي أن DocFetcher Pro و DocFetcher Server يريان كل ملف من هذا القبيل كملف واحد بدلاً من ملف ملفوف في أرشيف zip.
دعم Mobipocket التجريبي: DocFetcher Pro و DocFetcher Server لديهما دعم لتنسيق الكتب الإلكترونية Mobipocket، مع امتداد الملف "mobi". ومع ذلك، لاحظ أنه بينما يقوم DocFetcher Pro و DocFetcher Server بشكل عام بعمل جيد إلى حد كبير في استخراج النص من ملفات mobi، فإنهما حالياً إما يفشلان في استخراج جزء صغير من النص في نهاية الملف، أو في بعض الحالات يفشلان تماماً. لذلك، دعم Mobipocket مُصنف حالياً كتجريبي.
دعم أرشيف 7z للتنسيق الحالي v0.4: يمكن لـ DocFetcher قراءة أرشيفات 7z حتى v0.3 من تنسيق أرشيف 7z. يمكن لـ DocFetcher Pro و DocFetcher Server أيضاً قراءة أرشيفات 7z في التنسيق الحالي v0.4. تم تقديم هذا التنسيق v0.4 مع 7-Zip 9.34، الذي صدر في 2014-11-23.
دعم أرشيف tar موسع: يدعم DocFetcher امتدادات أرشيف tar التالية: tar, tar.gz, tgz, tar.bz2, tb2, tbz. يدعم DocFetcher Pro و DocFetcher Server بالإضافة إلى ذلك امتدادات أرشيف tar التالية: tbz2, tar.lzma, tlz, tar.xz, txz, tar.z, tz
فهرسة أسماء المجلدات والأرشيف: على عكس DocFetcher، يقوم DocFetcher Pro و DocFetcher Server بفهرسة ليس فقط الملفات العادية، ولكن أيضاً المجلدات وملفات الأرشيف --- أو بشكل أدق، أسماء المجلدات وملفات الأرشيف. وبالتالي، ستظهر المجلدات وملفات الأرشيف في نتائج البحث في DocFetcher Pro و DocFetcher Server. يوجد أيضاً لوحة أنواع الحاويات على الجانب الأيسر من نافذة التطبيق الرئيسية لاستبعاد المجلدات و/أو الأرشيف من نتائج البحث.

MacOS: خدمة لتحديث الفهرس التلقائي: DocFetcher و DocFetcher Pro قادران على تحديث الفهرس التلقائي، أي بدلاً من الاضطرار إلى بدء تحديثات الفهرس يدوياً، يتم بدء تحديثات الفهرس بواسطة البرنامج بمجرد اكتشاف تغييرات الملفات. ومع ذلك، هذه الوظيفة متاحة فقط بينما البرنامجان يعملان فعلياً. عندما لا يعملان، تكون هناك حاجة إلى عملية خدمة منفصلة لملء الفجوة. في DocFetcher، الخدمة متاحة فقط على Windows و Linux، بينما في DocFetcher Pro، متاحة أيضاً على macOS. بالنسبة لـ DocFetcher Server، لا حاجة لخدمة لأن الخادم مصمم ليعمل بشكل مستمر. Server Not available in DocFetcher Server
فهرسة أسماء الملفات الأذكى: فهرسة أسماء الملفات في DocFetcher Pro و DocFetcher Server أذكى من DocFetcher. على سبيل المثال، إذا واجه DocFetcher ملفاً اسمه اعثر_على_هذا_الملف.pdf، فإنه يرى "اعثر_على_هذا_الملف" ككلمة واحدة، وليس كثلاث كلمات منفصلة مربوطة معاً. وبالتالي، سيجد DocFetcher هذا الملف فقط إذا كتبت حرفياً "اعثر_على_هذا_الملف" في حقل البحث في DocFetcher. DocFetcher Pro و DocFetcher Server من ناحية أخرى سيجدان الملف إذا كتبت "اعثر_على_هذا_الملف" أو أي من الكلمات الثلاث الفردية. بشكل عام، ما يفعله DocFetcher Pro و DocFetcher Server هو التعرف على أحرف مثل الشرطة السفلية كفواصل كلمات محتملة.

فهرسة أسماء الملفات في حالة الأخطاء: إذا فشل DocFetcher Pro و DocFetcher Server في قراءة محتويات ملف بسبب خطأ ما أو بسبب حماية كلمة المرور، فإن اسم الملف لا يزال يتم فهرسته. في DocFetcher من ناحية أخرى، يتم تخطي الملف تماماً.
لا أخطاء مع هياكل المجلدات المتداخلة بعمق: عند محاولة فهرسة هياكل مجلدات متداخلة بعمق، مثل C:\مجلد1\مجلد2\...\مجلد99\مجلد100، فإن DocFetcher عرضة للفشل مع خطأ "التسلسل الهرمي للمجلد عميق جداً". في مصطلحات المبرمجين، هذا يُسمى "تجاوز المكدس". DocFetcher Pro و DocFetcher Server من ناحية أخرى محصنان تماماً ضد هذا النوع من الأخطاء.
تصدير CSV لأخطاء الفهرسة: في DocFetcher Pro، يمكنك تصدير جدول الملفات التي فشل البرنامج في قراءتها أثناء الفهرسة إلى ملف CSV. يمكن القيام بذلك عبر القائمة السياقية لجدول الأخطاء، كما هو موضح في لقطة الشاشة التالية. هذه الميزة غير متاحة حالياً في DocFetcher Server. Server Not available in DocFetcher Server

تشغيل وإيقاف مراقبة المجلد بدون إعادة إنشاء الفهرس: إعداد "Watch folders for file changes" في DocFetcher، المعروف أيضاً باسم مراقبة المجلد، هو إعداد لكل فهرس على حدة عندما يتم تشغيله يجعل البرنامج يحدث الفهرس تلقائياً كلما اكتشف تغييرات في الملفات في المجلد المفهرس. المشكلة هي أنه إذا كنت تريد تشغيل أو إيقاف هذا الإعداد على فهرس معين، عليك إعادة إنشاء الفهرس بأكمله. في DocFetcher Pro، يمكنك تشغيل وإيقاف هذا الإعداد بدون إعادة إنشاء الفهرس، عبر القائمة السياقية للوحة نطاق البحث. أيضاً، تم إعادة تسمية الإعداد إلى "تحديث الفهرس تلقائيا". توجد وظيفة مماثلة في DocFetcher Server.

البحث المتزامن وإعادة إنشاء الفهرس: في DocFetcher، إذا اخترت إعادة إنشاء فهرس، فإن ذلك الفهرس يصبح غير متاح للبحث أثناء عملية إعادة الإنشاء. في DocFetcher Pro و DocFetcher Server من ناحية أخرى، يبقى الفهرس قابلاً للبحث أثناء إعادة الإنشاء. (بشكل أدق، تبقى نسخة قديمة من الفهرس قابلة للبحث بينما يتم إعادة إنشاء الفهرس الفعلي في الخلفية.)
Windows: إصلاح التعامل مع مسارات UNC: في DocFetcher، التعامل مع مسارات UNC على Windows معطل بشدة وتم إعادة تصميمه من الصفر في DocFetcher Pro. تم نقل إعادة التصميم إلى DocFetcher Server.
حوار فهرسة غير مشروط: على عكس حوار الفهرسة في DocFetcher، الموجود في DocFetcher Pro "غير مشروط"، مما يعني أنه غير مرتبط بنافذة البرنامج الرئيسية ولا يحجب الإدخال إلى نافذة البرنامج الرئيسية أثناء فتحه. الفائدة الرئيسية من هذا هي أنه أثناء تشغيل عمليات الفهرسة، يمكنك تصغير نافذة البرنامج الرئيسية، ولكن الحفاظ على حوار الفهرسة مرئياً ومركوناً على الجانب. هذا يتيح لك مراقبة عمليات الفهرسة أثناء العمل في تطبيقات أخرى. هذه الميزة غير قابلة للتطبيق على DocFetcher Server. Server Not available in DocFetcher Server

تشغيل صوت بعد الفهرسة: افتراضياً، يشغل DocFetcher Pro صوت "انتهاء" بعد الفهرسة. يمكن إيقاف هذا في التفضيلات. هذه الميزة غير متاحة حالياً في DocFetcher Server. Server Not available in DocFetcher Server

فهرسة النص الياباني: لدى DocFetcher ما يسمى بخيار "تجزئة الكلمات" للحصول على نتائج بحث قابلة للاستخدام عند فهرسة النص الصيني. لدى DocFetcher Pro خيار تجزئة كلمات إضافي للتعامل مع النص الياباني. تجزئة الكلمات الصينية واليابانية غير متاحة حالياً في DocFetcher Server. Server Not available in DocFetcher Server