markdown-preview-mode icon indicating copy to clipboard operation
markdown-preview-mode copied to clipboard

error in process filter: Not enough arguments for format string

Open jo7ueb opened this issue 2 years ago • 2 comments

Hi, I tried to use markdown-preview-mode but failed. I have installed markdown command with $apt install markdown. So my installation may be correct.

Following is from *Messages* buffer

Markdown-Preview mode enabled in current buffer
Websocket opened
You can run the command ‘markdown-preview-mode’ with M-x ma-p-m RET
Websocket opened
error in process filter: Not enough arguments for format string [2 times]

Thanks.

jo7ueb avatar Aug 09 '22 15:08 jo7ueb

Hey. I haven't been looking into the mode for quite some time. Probably it just got outdated and something broke around dependencies, but given the "WebSocket open" message got printed there is a hope the server is running, but the opening of the browser is somehow broken. You can try the following:

  • Set markdown-preview-auto-open custom var to nil.
  • Call interactive function markdown-preview-open-browser. This should print the URL into Messages. Then you can try opening it manually. If URL is not there, then issue is more severe and I'll try to finally upgrade the deps. Thanks.

ancane avatar Aug 09 '22 20:08 ancane

This is not only the servelet problem, but also some message usage internally wrong of this package that all of those message wrapper doesn't safety check the first argument whether containing format strings, for example:

In line: 290

:on-error (lambda (websocket type err) (message (format "====> Error: %s" err))) 

;; FIXME: we should fixed as '(message "%s" (format "====> Error: %s" err))'

Hope for fixing, since it's not a feature around case, I've not made a pull-request first, but if needed thus, I'll give one.

c0001 avatar Dec 07 '23 13:12 c0001