@oldosfan 大佬,咨询下这个问题,在 mac 上使用xwidget会抛出来这个方法不存在
Error during redisplay: (eval (when xwidget-webkit--loading-p (let ((session (xwidget-webkit-current-session))) (format " [%d%%%%]" (* 100 (xwidget-webkit-estimated-load-progress session)))))) signaled (void-function xwidget-webkit-estimated-load-progress) [6 times]
看了下是这里抛出来的:
(define-derived-mode xwidget-webkit-mode special-mode "xwidget-webkit"
"Xwidget webkit view mode."
(setq buffer-read-only t)
(add-hook 'kill-buffer-hook #'xwidget-webkit-buffer-kill)
(setq-local tool-bar-map xwidget-webkit-tool-bar-map)
(setq-local bookmark-make-record-function
#'xwidget-webkit-bookmark-make-record)
(setq-local header-line-format
(list "WebKit: "
'(:eval
(xwidget-webkit-title (xwidget-webkit-current-session)))
'(:eval
(when xwidget-webkit--loading-p
(let ((session (xwidget-webkit-current-session)))
(format " [%d%%%%]"
(* 100
(xwidget-webkit-estimated-load-progress
session))))))))
;; Keep track of [vh]scroll when switching buffers
(image-mode-setup-winprops))
但是看着这个方法在 xwidget.c
文件里是有个 if 判断吗,所以才没有给 mac 上注册:
#ifdef USE_GTK
defsubr (&Sxwidget_webkit_load_html);
defsubr (&Sxwidget_webkit_back_forward_list);
defsubr (&Sxwidget_webkit_estimated_load_progress);
#endif