TUI مكتشف المستندات الغامض متعدد الأسطر
فكر في grep التفاعلي للملفات النصية وملفات PDF وDOCX وما إلى ذلك، ولكن يعتمد على الكلمة/الرمز المميز بدلاً من التعبير العادي والخط، حتى تتمكن من البحث عبر الخطوط بسهولة.
يهدف Docfd إلى توفير تجربة مستخدم جيدة من خلال التكامل مع برامج تحرير النصوص وعارضات PDF الشائعة، بحيث يمكنك الانتقال مباشرة إلى نتيجة البحث بضغطة مفتاح واحدة.
الفهرسة والبحث متعدد الخيوط
بحث غامض متعدد الأسطر لملفات متعددة
جزء عرض المحتوى الذي يعرض المقتطف المحيط بنتيجة البحث المحددة
محرر النصوص وتكامل عارض PDF
سجل الأوامر القابل للتحرير - أعد كتابة/تخطيط إجراءاتك في محرر النصوص
تضييق نطاق البحث - تحديد نطاق البحث التالي بناءً على نتائج البحث الحالية
تكامل الحافظة
تتوفر الثنائيات المرتبطة بشكل ثابت لنظامي التشغيل Linux وmacOS عبر إصدارات GitHub.
يتم أيضًا تجميع Docfd على الأنظمة الأساسية التالية لنظام التشغيل Linux:
docfd-bin
) بواسطة kseistrupdocfd
) بواسطة Chewblackaالطريقة الوحيدة لاستخدام Docfd على Windows الآن هي عبر WSL.
ملاحظات للقائمين على الحزم : خارج سلسلة أدوات OCaml للبناء (إذا كنت تقوم بالتعبئة من المصدر)، يتطلب Docfd أيضًا الأدوات الخارجية التالية في وقت التشغيل للحصول على الوظائف الكاملة:
pdftotext
من poppler-utils
لدعم PDFpandoc
لدعم ملفات .epub
و .odt
و .docx
و .fb2
و .ipynb
و .html
و .htm
fzf
لقائمة اختيار الملفwl-clibpard
لدعم الحافظة على Waylandxclip
لدعم الحافظة على X11 الاستخدام النموذجي لـ Docfd هو إما إدخال cd
في الدليل محل الاهتمام وتشغيل docfd
مباشرةً، أو تحديد المسارات كوسيطات:
docfd [PATH]...
يمكن أن تحتوي قائمة المسارات على أدلة. يتم فحص كل دليل في القائمة بشكل متكرر بحثًا عن الملفات ذات الامتدادات التالية بشكل افتراضي:
.txt
، .md
، .pdf
، .epub
، .odt
، .docx
، .fb2
، .ipynb
، .html
، .htm
.log
، .csv
، .tsv
يمكنك تغيير امتدادات الملفات لاستخدامها عبر --exts
و --single-line-exts
أو إضافتها إلى قائمة الملحقات عبر --add-exts
و --single-line-add-exts
.
إذا كانت قائمة PATH
فارغة، فسيقوم Docfd افتراضيًا بفحص الدليل الحالي .
ما لم يتم استخدام أي مما يلي: --paths-from
, --glob
, --single-line-glob
.
راجع GitHub Wiki لمزيد من الأمثلة/كتاب الطبخ والتفاصيل الفنية.
إعادة التحميل التلقائي للملفات غير مدعومة لملفات PDF، حيث يتم استدعاء عارضات PDF في الخلفية عبر shell. من الممكن دعم هذا بشكل صحيح بالطرق المذكورة أدناه، ولكنه يتطلب الكثير من الهندسة لتحقيق مكاسب قليلة جدًا:
ينتظر Docfd حتى ينتهي عارض PDF بالكامل قبل الاستئناف، ولكن هذا يمنع عرض نتائج بحث متعددة في وقت واحد في مثيلات مختلفة لعارض PDF.
يقوم Docfd بإدارة عارضات PDF التي تم تشغيلها بالكامل، ولكن يتم إغلاق هذه العارضات عند انتهاء Docfd.
يقوم Docfd باستدعاء عارضي PDF عبر Shell بحيث يظلون مفتوحين عند انتهاء Docfd. بدلاً من ذلك، يتحقق Docfd بشكل دوري مما إذا كانت لا تزال قيد التشغيل عبر معرفات عملية عارض PDF، ولكن هذا يتطلب التعامل مع التشعبات.
بعيدًا عن تتبع ما إذا كانت مثيلات عارض PDF التي تتفاعل مع الملفات لا تزال قيد التشغيل، يحتاج Docfd أيضًا إلى إعداد معالجة تحديث الملف إما عبر inotify
أو عبر التحقق من أوقات تعديل الملف بشكل دوري.
git rebase -i