仕事用の貸与PCが新しくなってあれこれ環境入れ直してたんだけど、
VScodeのMarkdownPDFでPDF出力時に躓いて、解決したので対処法メモ。
#とは言え、原因は不明なままなのがちょっと気持ち悪いんだが(^^;)
しかも個人PCだとこれやらなくても大丈夫なのが謎…
と、それはさておき。
仕事PCで発生していたMarkdownPDFのエラーメッセージがこちら
Error: Failed to launch the browser process! TROUBLESHOOTING:
https://github.com/puppeteer/puppeteer/blob/master/docs/troubleshooting.md
ERROR: exportPdf()
ブラウザが起動できないぜ!だと。
MarkdownPDFは、markdownをhtmlに出力→chromiumを使ってPDF化するので、ブラウザのプロセスが起動できないと、テンポラリのhtmlだけが淋しく残ってしまうという…
本来であればMarkdownPDFをインストールして、何かmarkdownファイルをVScodeで開くとchromiumがダウンロードされる…筈なんだけど、これもうまく動かず。
じゃあ、ってんで自分でインストールしたchromeのパスをsettings.jsonに
"markdown-pdf.executablePath": "C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe"
って入れてやってもだめ。
で、色々検索してたどり着いたのがこの記事。
じゃぁどうしたか、そう! Chromium ベースの新しい Microsoft Edge をダウンロードする。です。
MarkdownPDFでPDF作成できないときの対処法 – 電脳帳
エラーメッセージは違うんだけど、chromeが立ち上がらないって現象は同じっぽかったし、「同じchromiumベースならedgeでもよくね?」ってのは確かにその通り(目ウロコ)
ってことで↓みたいな感じでedgeのパスを通してあげたら無事にPDF変換ができるようになりました(要はChromeをedgeに変えただけw)。
"markdown-pdf.executablePath": "C:\\Program Files (x86)\\Microsoft\\Edge\\Application\\msedge.exe"
原因は不明のままなんだけど、もしかしたらchromeのインストールパスが悪かったのかな?とかちょっと思ってみたり。
て言うのは、このエラー割とよく発生するみたいで、対策としてchromeのパスを指定する、って記事は本当によく見かける…んだけど、大概パスがC:\Program Files (x86)
で始まってる。
でもって、今回通したedgeのパスもC:\Program Files (x86)
配下。
一方、今回のお仕事PCはC:\Program Files
配下。。。
#どうやら、今年になってからchromeのインストールパスが変更になった模様
いやまあ、64bit版なんだから本来それが正しいんだけどねー
だもんで、Program Filesがx86じゃないとMarkdownPDFがうまく動作しないのかなーって思うわけですよ。
とりあえず動いてるからいいっちゃいいんだけど、なんか気持ち悪いからそのうち検証してみようかな。