Tôi chỉ làm điều này một cách thủ công: chạy list-packages
hit U
để đánh dấu các bản nâng cấp có sẵn, sau đó xem xét để quyết định xem có bất kỳ thứ gì tôi không muốn nhận không. Sau đó x
để nâng cấp. Tôi làm điều này khá thường xuyên và thường kiểm tra những gì mới cùng một lúc. Tôi đã có một vài điều chỉnh để đơn giản hóa việc này (xem bên dưới).
Tôi nghi ngờ việc nâng cấp có thể được tự động hóa, nhưng bạn muốn xem xét trường hợp bản cập nhật phá vỡ thứ gì đó và bạn cần sao lưu nó và sau đó ngăn trình cập nhật tự động của bạn chỉ cài đặt lại.
Một số điều chỉnh menu gói:
(defun package-menu-find-marks ()
"Find packages marked for action in *Packages*."
(interactive)
(occur "^[A-Z]"))
;; Only in Emacs 25.1+
(defun package-menu-filter-by-status (status)
"Filter the *Packages* buffer by status."
(interactive
(list (completing-read
"Status: " '("new" "installed" "dependency" "obsolete"))))
(package-menu-filter (concat "status:" status)))
(define-key package-menu-mode-map "s" #'package-menu-filter-by-status)
(define-key package-menu-mode-map "a" #'package-menu-find-marks)
Với cái này tôi có thể sử dụng s new
để xem những gói nào mới có sẵn. Và sau khi nhấn U
để đánh dấu các bản nâng cấp, tôi có thể nhấn vào a
danh sách bộ đệm xảy ra của những cái đã được đánh dấu, trong trường hợp tôi muốn tìm hiểu chi tiết về những gì đã thay đổi, v.v.
a
làm việc để tìm ra các gói được đánh dấu. Tuy nhiên,s installed
hoặc bất kỳ trạng thái nào trong ba trạng thái còn lại khác đều trả về một danh sách trống.