2010-07-05 35 views
33

Tôi đã đọc qua một số gói Emacs Lisp và đã đi qua quy ước của một số hàm được khai báo - sau tiền tố thư viện , ví dụ:Quy ước kép trừ (-) trong tên hàm có nghĩa là gì trong Emacs Lisp

(defun eproject--combine-regexps (regexp-list) 

Tôi tự hỏi liệu đây có phải là quy ước để khai báo các hàm "riêng tư" cho thư viện hay không nhưng tôi chưa tìm thấy bất kỳ điều gì trong nguyên tắc mã hóa Emacs.

Trả lời

29

Emacs không có bất kỳ hỗ trợ nào cho không gian tên, gói, thư viện hoặc mô-đun. Do đó, các nguồn Emacs sử dụng foo- làm tiền tố cho thư viện foo và trong một số trường hợp, foo-- được sử dụng cho các ràng buộc được cho là nội bộ.

+6

Tôi nghĩ có thể, nhưng tôi đã cố gắng tìm tài liệu để chỉ ra một quy ước như vậy. – stsquad

5

Thực sự không có nội dung nào như "nội bộ" cho Emacs. Nhưng có, một số lập trình viên đã thông qua quy ước này để chỉ ra những điều nội bộ hơn - nghĩa là về cơ bản sẽ có ít hơn (hoặc không) do dự bởi những người triển khai để thay đổi chúng. Đó là một cách để cho phép người dùng mã nhận biết được sự biến động có thể xảy ra này.

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