2012-04-20 27 views
5

Tôi đang sử dụng ECB với Cedet - và công cụ tìm kiếm ngữ nghĩa lưu trữ các thẻ về các tệp tôi truy cập trong các tệp bộ nhớ cache của nó.CEDET: lưu trữ thẻ theo cách thủ công

Tôi cũng đang sử dụng bố cục left-symboldef của ECB - hiển thị định nghĩa thẻ mà con trỏ đang bật. Để thực hiện ngữ nghĩa đó, mở tệp nơi thẻ được xác định.

Vấn đề là - ngữ nghĩa mở hầu như tất cả các tập lệnh python của tôi mọi lúc - vì tôi có parser được định nghĩa trong tất cả chúng - khi tôi phân tích đối số dòng lệnh bằng argparse ... các tệp tự động và thực hiện thủ công chỉ với C-c , , trên lib của tôi.

Vì vậy, câu hỏi của tôi là - làm thế nào để ngăn chặn ngữ nghĩa lưu trữ bộ nhớ cache? Tôi vẫn có thể sử dụng cơ sở dữ liệu hiện có (mà tôi sẽ thu thập thủ công).

+0

Hoặc có thể tôi đã hiểu tất cả theo cách sai? – Adobe

Trả lời

3

Để ngăn chặn sự phân tích tự động các tập tin khác trong thời gian nhàn rỗi, bạn có thể thiết lập:

(setq semantic-idle-work-parse-neighboring-files-flag nil) 

và nếu nó được kéo chúng trong qua bao gồm, bạn có thể làm điều này:

(setq semantic-idle-work-update-headers-flag nil) 

này thực sự là mặc định và nó được đặt thành true nếu bạn sử dụng một trong các tùy chọn cấu hình được đóng hộp cho người trợ giúp mã thông thường hoặc mã vạch.

Để không phân tích cú pháp tất cả các tệp, nhưng vẫn để ECB tìm định nghĩa thẻ, có thể bạn sẽ cần sử dụng cơ sở dữ liệu GNU Global. Xem semanticdb-enable-gnu-global-databases để biết thêm.

+0

Cảm ơn bạn đã trả lời. Một lưu ý mặc dù - Tôi muốn ngữ nghĩa để phân tích các tập tin - nhưng tôi không muốn nó để lưu trữ các tập tin chache. Tôi muốn lưu trữ các tập tin chache bằng tay - khi gọi 'C-c,,'. – Adobe

+1

Bạn có thể lưu thủ công bằng semanticdb-save-all-db. Không có tùy chọn để tắt lưu trong thời gian rảnh. Tuy nhiên, nếu bạn vô hiệu hóa việc phân tích cú pháp các tệp lân cận, nó sẽ không cần lưu bất kỳ thứ gì và do đó sẽ không cản trở bạn. – Eric

+0

Cảm ơn Eric. Nhưng những gì về các tập tin tôi mở bản thân mình? Nó sẽ lưu trữ bộ nhớ cache cho các tập tin đó? Tôi muốn ngữ nghĩa phân tích chúng - nhưng không lưu trữ. Tôi muốn lưu trữ bộ nhớ cache manaully - khi gọi 'C-c,,'. – Adobe

Các vấn đề liên quan