Đại tu bảng mẫu
Bảng mẫu trên hộp thoại lập chỉ mục của DocFetcher Pro và bảng mẫu trên vùng lập chỉ mục của DocFetcher Server khác với bảng mẫu trong DocFetcher ở những điểm sau:
- Ngoài biểu thức chính quy, bạn có thể sử dụng ký tự đại diện * và ? kém mạnh mẽ hơn nhưng cũng đơn giản hơn nhiều để viết các quy tắc khớp. Ký tự đại diện * là một trình giữ chỗ cho không hoặc nhiều ký tự, trong khi ký tự đại diện ? là một trình giữ chỗ cho chính xác một ký tự.
- Một hành động “Bao gồm” mới ngoài hành động “Loại trừ”.
- Hành động “Detect mime type” đã bị xóa. Nếu bạn muốn lập chỉ mục các tệp không có phần mở rộng tệp dưới dạng tệp văn bản, hãy sử dụng hộp kiểm có cùng mô tả bên dưới bảng mẫu.
- Việc khớp có thể phân biệt chữ hoa chữ thường hoặc không phân biệt chữ hoa chữ thường. Mặt khác, trong DocFetcher, việc khớp luôn phân biệt chữ hoa chữ thường.
- Việc khớp có thể được thực hiện không chỉ với các tệp thông thường mà còn với các thư mục và tệp lưu trữ.
- Trên Windows, khi các quy tắc được khớp với đường dẫn tệp, đường dẫn tệp sẽ sử dụng ký tự \ làm dấu phân cách đường dẫn, chứ không phải ký tự /. Ví dụ: C:\DuongDan\Den\TepTin.docx, thay vì C:/DuongDan/Den/TepTin.docx.
Kết quả là, đây là giao diện của bảng mẫu trong DocFetcher Pro:

Bảng mẫu trong DocFetcher Server trông giống nhau, nhưng tiện ích kiểm tra “Mẫu hình đã chọn khớp với tệp sau” bên dưới bảng hiện không khả dụng. Server Not available in DocFetcher Server
Nhấp vào đây để thảo luận chi tiết về bảng mẫu trong DocFetcher, DocFetcher Pro và DocFetcher Server.
Đây là cách bảng mẫu trong DocFetcher Pro và DocFetcher Server được đại tu. Hãy bắt đầu từ đầu: Trên hộp thoại lập chỉ mục của DocFetcher, có một bảng mẫu để thực hiện một số hành động nhất định trên các tệp được khớp bởi các mẫu nhất định trong quá trình lập chỉ mục:

Các mẫu cần phải là biểu thức chính quy, và đối với các hành động, có hai hành động khả dụng trong DocFetcher: Loại trừ tệp đã khớp khỏi lập chỉ mục và “phát hiện loại mime”, tức là cố gắng đoán cách phân tích cú pháp tệp đã khớp một cách chính xác dựa trên nội dung của tệp thay vì dựa trên tên tệp của nó. Cho đến nay thì vẫn ổn. Tuy nhiên, trong thực tế, hóa ra việc triển khai ở trên có một số vấn đề:
- Rất ít người biết cách viết biểu thức chính quy.
- Đôi khi người ta muốn lập chỉ mục chỉ một số tệp nhất định và không lãng phí thời gian lập chỉ mục một cách không cần thiết vào bất cứ thứ gì khác. Ví dụ: lập chỉ mục chỉ các tệp “txt” và không có gì khác. DocFetcher thực sự có thể làm điều này, nhưng nó liên quan đến một số thủ thuật biểu thức chính quy khá nâng cao.
- Đôi khi người ta muốn loại trừ khỏi lập chỉ mục tất cả các tệp khớp với một mẫu nhất định, ngoại trừ tất cả các tệp khớp với một mẫu khác nhất định. Ví dụ: loại trừ khỏi lập chỉ mục tất cả các tệp PDF, ngoại trừ các tệp PDF có tên bắt đầu bằng “bao_cao_”. Một lần nữa, trong DocFetcher, điều này đòi hỏi sử dụng nâng cao các biểu thức chính quy.
- Nói chung, việc phát hiện loại mime khá vô dụng vì: (1) Phần mở rộng tệp hầu như luôn chính xác và do đó trong hầu hết các trường hợp, tất cả những gì cần thiết để tìm ra định dạng tệp. (2) Khi phần mở rộng tệp không chính xác và cần phát hiện loại mime, thì loại sau hóa ra không đáng tin cậy cho lắm. (3) Không ai bận tâm và/hoặc biết cách viết các quy tắc khớp cho những trường hợp hiếm hoi mà việc phát hiện loại mime thực sự cần thiết. Tuy nhiên, trong ngữ cảnh của DocFetcher, hóa ra việc phát hiện loại mime có một trường hợp sử dụng quan trọng: Làm cho chương trình coi các tệp không có phần mở rộng tệp là tệp văn bản thuần túy, ví dụ: các tệp có tên README. Tuy nhiên tuy nhiên, để thực hiện điều này, người ta cần viết biểu thức chính quy khó hiểu này: [^.]*
- Việc phát hiện loại mime có thể không xác định được tệp là văn bản thuần túy nếu tệp chứa một số dữ liệu nhị phân.
- Do thực tế là phiên bản di động của DocFetcher phải chạy trên tất cả các nền tảng được hỗ trợ, khi khớp các quy tắc với đường dẫn tệp, đường dẫn tệp luôn sử dụng ký tự / làm dấu phân cách đường dẫn, ngay cả trên Windows, điều này khá phản trực giác đối với hầu hết người dùng Windows.
Tóm lại, bảng mẫu của DocFetcher là một mớ hỗn độn và việc viết lại đi kèm với DocFetcher Pro là một cơ hội tốt để dọn dẹp tất cả:
- Ký tự đại diện đã được thêm vào và được đặt làm mặc định để bây giờ ngay cả những người bình thường cũng có thể viết các quy tắc khớp.
- Hành động “Bao gồm” bao gồm cả trường hợp người ta muốn lập chỉ mục chỉ một loại tệp cụ thể và trường hợp người ta muốn xác định các ngoại lệ cho các quy tắc khớp. Ngay cả các ngoại lệ cho các ngoại lệ bây giờ cũng có thể thực hiện được.
- Hành động “Detect mime type” nói chung vô dụng đã bị xóa và trường hợp sử dụng chính của nó, lập chỉ mục các tệp không có phần mở rộng tệp dưới dạng tệp văn bản, được bao gồm bởi một hộp kiểm đơn giản bên dưới bảng mẫu. Và hộp kiểm này hoạt động ngay cả khi tệp chứa một số dữ liệu nhị phân.
- Vấn đề dấu phân cách đường dẫn Windows đã được khắc phục.
- Và một số thứ khác (phân biệt chữ hoa chữ thường và khớp với tệp/thư mục/kho lưu trữ) đã được thêm vào để cho chắc chắn.
Tải và lưu cài đặt lập chỉ mục
Lưu ý: Tính năng này hiện chỉ khả dụng trong DocFetcher Pro, không khả dụng trong DocFetcher Server. Server Not available in DocFetcher Server
Vấn đề: Trong DocFetcher, mỗi khi bạn tạo một chỉ mục mới, bạn phải nhập tất cả các quy tắc vào bảng mẫu từng quy tắc một. Điều này trở nên khá tẻ nhạt nếu bạn có nhiều quy tắc như vậy. Không có cách nào để tải và lưu chúng.

Trong DocFetcher Pro, vấn đề trên được giải quyết như sau: Ở góc trên cùng bên phải của hộp thoại lập chỉ mục của DocFetcher Pro, có một nút “lọ có tài liệu” nhỏ không dễ thấy. Nhấp vào nút này sẽ mở một menu chứa các hành động khác nhau để tải và lưu cài đặt lập chỉ mục:

Nhấp vào “Lưu thiết lập” sẽ mở hộp thoại này:

Về cơ bản, những gì bạn có thể làm với hộp thoại này là lưu cài đặt lập chỉ mục hiện đang hiển thị vào một vị trí được đặt tên mới, ví dụ: “Cài đặt lập chỉ mục mới của tôi” hoặc lưu cài đặt lập chỉ mục hiện đang hiển thị làm mặc định mới.
Mặc định này được gọi là “Mặc định tùy chỉnh” và sẽ được tải tự động khi tạo chỉ mục mới. Ngoài ra còn có một “Mặc định gốc”, là mặc định mà DocFetcher Pro sử dụng ngay từ đầu. Các cài đặt được đặt tên mà bạn đã tạo, cụ thể là “Mặc định tùy chỉnh” và “Mặc định gốc”, đều có thể được tải qua menu hiển thị ở trên.
Để hoàn thiện, menu cũng cho phép bạn nhập và xuất tất cả các cài đặt lập chỉ mục của mình để bạn có thể sử dụng lại chúng khi thiết lập DocFetcher Pro trong một môi trường mới.
Các cải tiến đáng chú ý khác
Hỗ trợ FB2: DocFetcher Pro và DocFetcher Server hỗ trợ định dạng sách điện tử FB2. Các tệp FB2 được nén bằng Zip, với phần mở rộng tệp fb2.zip hoặc fbz, được hỗ trợ “nguyên bản”, tức là DocFetcher Pro và DocFetcher Server coi mỗi tệp như vậy là một tệp duy nhất thay vì một tệp được gói trong một kho lưu trữ zip.
Hỗ trợ Mobipocket thử nghiệm: DocFetcher Pro và DocFetcher Server hỗ trợ định dạng sách điện tử Mobipocket, với phần mở rộng tệp “mobi”. Tuy nhiên, lưu ý rằng mặc dù DocFetcher Pro và DocFetcher Server nói chung thực hiện khá tốt việc trích xuất văn bản từ các tệp mobi, nhưng hiện tại chúng không thể trích xuất một phần nhỏ văn bản ở cuối tệp hoặc trong một số trường hợp không thể trích xuất hoàn toàn. Do đó, hỗ trợ Mobipocket hiện được đánh dấu là thử nghiệm.
Hỗ trợ kho lưu trữ 7z cho định dạng v0.4 hiện tại: DocFetcher có thể đọc các kho lưu trữ 7z cho đến phiên bản v0.3 của định dạng kho lưu trữ 7z. DocFetcher Pro và DocFetcher Server cũng có thể đọc các kho lưu trữ 7z ở định dạng v0.4 hiện tại. Định dạng v0.4 này được giới thiệu với 7-Zip 9.34, phát hành vào ngày 23-11-2014.
Hỗ trợ kho lưu trữ tar mở rộng: DocFetcher hỗ trợ các phần mở rộng kho lưu trữ tar sau: tar, tar.gz, tgz, tar.bz2, tb2, tbz. DocFetcher Pro và DocFetcher Server còn hỗ trợ thêm các phần mở rộng kho lưu trữ tar sau: tbz2, tar.lzma, tlz, tar.xz, txz, tar.z, tz
Lập chỉ mục tên thư mục và kho lưu trữ: Không giống như DocFetcher, DocFetcher Pro và DocFetcher Server lập chỉ mục không chỉ các tệp thông thường mà còn cả các thư mục và tệp lưu trữ — hay chính xác hơn là tên của các thư mục và tệp lưu trữ. Do đó, các thư mục và tệp lưu trữ sẽ hiển thị trong kết quả tìm kiếm của DocFetcher Pro và DocFetcher Server. Ngoài ra còn có một ngăn Loại thùng chứa ở phía bên trái của cửa sổ ứng dụng chính để loại trừ các thư mục và/hoặc kho lưu trữ khỏi kết quả tìm kiếm.

MacOS: Tiến trình nền để cập nhật chỉ mục tự động: DocFetcher và DocFetcher Pro có khả năng cập nhật chỉ mục tự động, tức là thay vì phải bắt đầu cập nhật chỉ mục theo cách thủ công, các bản cập nhật chỉ mục được chương trình bắt đầu ngay khi phát hiện thay đổi tệp. Tuy nhiên, chức năng này chỉ khả dụng khi hai chương trình thực sự đang chạy. Khi chúng không chạy, cần có một quy trình nền riêng biệt để lấp đầy khoảng trống. Trong DocFetcher, tiến trình nền chỉ khả dụng trên Windows và Linux, trong khi ở DocFetcher Pro, nó cũng khả dụng trên macOS. Đối với DocFetcher Server, không cần tiến trình nền vì máy chủ được thiết kế để chạy liên tục. Server Not available in DocFetcher Server
Lập chỉ mục tên tệp thông minh hơn: Việc lập chỉ mục tên tệp trong DocFetcher Pro và DocFetcher Server thông minh hơn so với trong DocFetcher. Ví dụ: nếu DocFetcher gặp một tệp có tên tim_tep_nay.pdf, nó sẽ coi “tim_tep_nay” là một từ duy nhất, chứ không phải là ba từ riêng biệt được xâu chuỗi lại với nhau. Do đó, DocFetcher sẽ chỉ tìm thấy tệp này nếu bạn nhập theo nghĩa đen “tim_tep_nay” vào trường tìm kiếm của DocFetcher. Mặt khác, DocFetcher Pro và DocFetcher Server sẽ tìm thấy tệp nếu bạn nhập “tim_tep_nay” hoặc bất kỳ từ nào trong ba từ riêng lẻ. Nói chung, những gì DocFetcher Pro và DocFetcher Server làm là nhận dạng các ký tự như dấu gạch dưới là các dấu phân cách từ tiềm năng.

Lập chỉ mục tên tệp trong trường hợp có lỗi: Nếu DocFetcher Pro và DocFetcher Server không đọc được nội dung của tệp do một số lỗi hoặc do bảo vệ bằng mật khẩu, tên tệp vẫn được lập chỉ mục. Mặt khác, trong DocFetcher, tệp bị bỏ qua hoàn toàn.
Không có lỗi với cấu trúc thư mục lồng nhau sâu: Khi cố gắng lập chỉ mục các cấu trúc thư mục lồng nhau sâu, chẳng hạn như C:\thu_muc1\thu_muc2\...\thu_muc99\thu_muc100, DocFetcher dễ bị lỗi “Phân cấp thư mục quá sâu”. Theo thuật ngữ của lập trình viên, đây được gọi là “tràn ngăn xếp”. Mặt khác, DocFetcher Pro và DocFetcher Server hoàn toàn miễn nhiễm với loại lỗi này.
Xuất CSV các lỗi lập chỉ mục: Trong DocFetcher Pro, bạn có thể xuất bảng các tệp mà chương trình không đọc được trong quá trình lập chỉ mục sang tệp CSV. Điều này có thể được thực hiện thông qua menu ngữ cảnh của bảng lỗi, như được hiển thị trong ảnh chụp màn hình sau. Tính năng này hiện không khả dụng trong DocFetcher Server. Server Not available in DocFetcher Server

Bật và tắt theo dõi thư mục mà không cần tạo lại chỉ mục: Cài đặt “Watch folders for file changes” của DocFetcher, còn được gọi là theo dõi thư mục, là một cài đặt cho mỗi chỉ mục, khi được bật sẽ làm cho chương trình tự động cập nhật chỉ mục bất cứ khi nào nó phát hiện thay đổi tệp trong thư mục đã được lập chỉ mục. Vấn đề là nếu bạn muốn bật hoặc tắt cài đặt này trên một chỉ mục cụ thể, bạn phải tạo lại toàn bộ chỉ mục. Trong DocFetcher Pro, bạn có thể bật và tắt cài đặt này mà không cần tạo lại chỉ mục, thông qua menu ngữ cảnh của ngăn Phạm vi tìm kiếm. Ngoài ra, cài đặt đã được đổi tên thành “Cập nhật chỉ mục tự động”. Chức năng tương tự tồn tại trong DocFetcher Server.

Tìm kiếm và tạo lại chỉ mục đồng thời: Trong DocFetcher, nếu bạn chọn tạo lại một chỉ mục, chỉ mục đó sẽ không khả dụng để tìm kiếm trong khi quá trình tạo lại đang diễn ra. Mặt khác, trong DocFetcher Pro và DocFetcher Server, chỉ mục vẫn có thể tìm kiếm được trong quá trình tạo lại. (Chính xác hơn, một bản sao cũ của chỉ mục vẫn có thể tìm kiếm được trong khi chỉ mục thực tế đang được tạo lại trong nền.)
Windows: Đã sửa lỗi xử lý đường dẫn UNC: Trong DocFetcher, việc xử lý đường dẫn UNC trên Windows bị lỗi nghiêm trọng và đã được thiết kế lại từ đầu trong DocFetcher Pro. Thiết kế lại sau đó đã được chuyển sang DocFetcher Server.
Hộp thoại lập chỉ mục không theo phương thức: Trái ngược với hộp thoại lập chỉ mục của DocFetcher, hộp thoại lập chỉ mục trong DocFetcher Pro là “không theo phương thức”, có nghĩa là nó không được gắn vào cửa sổ chương trình chính và không chặn đầu vào vào cửa sổ chương trình chính khi nó đang mở. Lợi ích chính của điều này là trong khi các quy trình lập chỉ mục đang chạy, bạn có thể thu nhỏ cửa sổ chương trình chính, nhưng vẫn giữ hộp thoại lập chỉ mục hiển thị và đậu ở một bên. Điều này cho phép bạn theo dõi các quy trình lập chỉ mục trong khi làm việc trong các ứng dụng khác. Tính năng này không áp dụng cho DocFetcher Server. Server Not available in DocFetcher Server

Phát âm thanh sau khi lập chỉ mục: Theo mặc định, DocFetcher Pro phát âm thanh “hoàn thành” sau khi lập chỉ mục. Điều này có thể được tắt trong tùy chọn. Tính năng này hiện không khả dụng trong DocFetcher Server. Server Not available in DocFetcher Server

Lập chỉ mục văn bản tiếng Nhật: DocFetcher có một tùy chọn gọi là “tách từ” để có được kết quả tìm kiếm có thể sử dụng được khi lập chỉ mục văn bản tiếng Trung. DocFetcher Pro có một tùy chọn tách từ bổ sung để xử lý văn bản tiếng Nhật. Cả tách từ tiếng Trung và tiếng Nhật hiện không khả dụng trong DocFetcher Server. Server Not available in DocFetcher Server