emacs 23.1和24.1之間的某個地方更改了url-retrieve
的接口。在Emacs 23.1,它看起來像這樣:如何管理elisp中的底層接口更改
(url-retrieve URL CALLBACK &optional CBARGS)
在24.1版本,它看起來像這樣:
(url-retrieve URL CALLBACK &optional CBARGS SILENT INHIBIT-COOKIES)
我有一個使用此功能的emacs的包。我想利用emacs 24.1上的新參數SILENT參數,同時保持與不支持它的舊版emacs的向後兼容性。
管理這個最好的方法是什麼?我可以在運行時獲取最大數量的參數嗎?
寫這個遞歸版本會很有趣,不斷從arglist中刪除一個,直到(希望)成功。 –
你有一個缺少'(progn ...)'包裝'funcall'和'消息'。 此外,您不應該捕獲'錯誤',而只是'錯誤的參數數量',以減少由於一些不相關的錯誤而導致回退舊調用約定的風險。 – Stefan