Có một chế độ để tự động cập nhật năm bản quyền trong các tập tin?


21

Thông thường vào khoảng thời gian này trong năm mọi người bắt đầu nhận ra rằng năm bản quyền của họ đã hết hạn trong các tệp của họ. Điều này đặc biệt khó chịu nếu bạn muốn đặt bản quyền trong mọi tệp nguồn. Tôi đã tự hỏi nếu emacs có thể giúp đỡ ở đây.

Có chế độ nào sẽ tự động cập nhật năm bản quyền trong một tệp không? Lý tưởng nhất là tôi sẽ thiết lập chế độ với tên và các liên kết của mình, để nó chỉ cập nhật bản quyền cho những người đó. Nó cũng sẽ chỉ tự động cập nhật bản quyền khi có thay đổi (mặc dù thật tuyệt khi cũng có một cách dễ dàng để thực hiện thay đổi hàng loạt cho một dự án).


Sẽ không có vấn đề gì nếu bạn viết năm nào vì bản quyền của công ước Berne ít nhất là hơn 50 năm trên toàn thế giới.
mathreadler

Câu trả lời:


24

Bạn có thể sử dụng copyright-updatechức năng. Tôi sẽ đọc các tài liệu cho chức năng. và những người khác bên trong copyright.elđể biết thêm thông tin, nhưng là một ví dụ đơn giản, Nếu tôi có:

;; Copyright (C) 2014, Jordon Biondo

trong một tệp và chạy copyright-updatetừ bộ thu nhỏ, nó cập nhật dòng để nói

;; Copyright (C) 2014, 2015, Jordon Biondo

Bạn có thể có chức năng loại bỏ năm cũ nếu bạn muốn.

Để xử lý cập nhật tự động, bạn có thể thêm chức năng vào before-save-hookdanh sách.

Để thực hiện cập nhật hàng loạt, sử dụng lệnh copyright-update-directory.

Thư viện bản quyền có rất nhiều tính năng và cách để tùy chỉnh nó, tôi khuyên bạn nên mở thư viện để bắt đầu xem làm thế nào bạn có thể thích ứng nó với nhu cầu của bạn.


3
Đây là những lần tôi đứng trước nỗi sợ hãi của Emacs.
PythonNut

6

Đây là những gì tôi sử dụng:

(when (fboundp 'copyright-update)
  (setq copyright-names-regexp "Monnier\\|Free Software")
  (add-hook 'before-save-hook #'copyright-update))
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.