Saya memiliki beberapa kode yang digunakan flet
untuk sementara mengubah perilaku fungsi.
;; prevent changing the window
(flet ((pop-to-buffer (buffer &rest args)
(switch-to-buffer buffer)))
(compilation-next-error-function n reset))
Namun, kompiler byte Emacs memberikan peringatan:
In ag/next-error-function:
ag.el:103:7:Warning: `flet' is an obsolete macro (as of 24.3); use either
`cl-flet' or `cl-letf'.
Namun, cl-flet
berfungsi secara berbeda dan tidak sesuai dengan beberapa kasus penggunaan, dan saya percaya ini adalah salah satu kasus tersebut.
Opsi yang bisa saya lihat adalah:
Katakan pada Emacs untuk mengabaikan peringatan itu.
Gulung sendiri
flet
.
Apa pendekatan terbaik?
my-flet
) dan menghapus peringatan usang, dan menggunakannya dalam paket apa pun yang sebelumnya diperlukan flet.