📚

Markdown PDFでPDF変換できなかったときの対処方法 (macOS)

に公開

はじめに

個人環境のトラブルシューティングについて忘れないために記録します。

前提条件

  • OS
    • macOS が稼働している環境であること
      (筆者の環境は Apple M4 Pro / macOS 15.5 Sequoia)
  • ソフトウェア
    • VSCode がインストールされていること
    • VSCode Extention に Markdown PDF がインストールされていること
      (筆者の環境は showzs.markdown-pdf-m-0.1.1)
    • Google Chrome がインストールされていること

事象

markdown方式のドキュメントをVSCode Extentionで変換しようとすると、エラーが表示されてPDF変換に失敗する。

  • エラー例1
    Error: spawn Unknown system error -86
    
  • エラー例2
    Error: Failed to launch the browser process! spawn /Applications/Google\ Chrome.app ENOENT
    TROUBLESHOOTING: https://github.com/puppeteer/puppeteer/blob/master/docs/troubleshooting.md
    

解決方法

以下の順番で実施する。

1. VSCode の設定ファイルを直接修正する。

  1. VSCode の設定ファイルを開く。
    ~/Library/Application Support/Code/User/settings.json
  2. markdown-pdfからはじまる行を setting.json にGoogle Chromeのインストールパスをapp以降も含めて追記する。
    json.schemas の箇所はデフォルトのため空行です。
{
    "json.schemas": [
    ],
    "markdown-pdf.executablePath": "/Applications/Google Chrome.app/Contents/MacOS/Google Chrome"
}

2. VSCode 設定の再読み込みを実施する。

アプリケーションを再起動するか、以下の手順でVSCodeを再読み込みする。

  1. Command + Shift + P で command メニューを開く
  2. reload で grep
  3. Developer: Reload Windows を選択

3. Markdown PDF の出力をテストする。

  1. 出力したいファイルをVSCodeで開く。
  2. 右クリック→PDF出力のメニューを探す→クリック。
  3. 元ファイルhoge.mdが置かれているディレクトリにhoge.pdfが出力されるので確認する。

まとめ

macOSでは参照するChromeのアプリケーションパスがWindowsのそれとは異なるため、小一時間ほどハマりました。どなたかのトラブルシューティングに役立てば幸いです。

参考

https://qiita.com/nanzhihutailang/items/30ffadea5ec4fec43388
https://github.com/yzane/vscode-markdown-pdf/issues/84

Discussion