目次
VSCodeのquartoプラグインを使用している際に、仮想環境(venv)がコマンドパレットからのrender時にうまく機能しない問題に直面しました。この問題を解決した過程を備忘録として残します。
仮想環境のディレクトリ名を変更する
最初に試したのは、仮想環境のディレクトリ名をenv
に変更する方法です。VSCodeからquartoのコマンドを実行する際に、env
という名前のディレクトリを自動的に認識してくれるという情報がありました。
残念ながら、この方法を試しても問題は解決しませんでした。
VSCodeのsettings.jsonを修正する
次に、VSCodeのsettings.json
を修正する方法を試しました。この解決策を見つけたのは以下の記事です。
Workspaceの設定ファイルにパラメータを追加することで、問題が解消されるようです。
コマンドパレットからworkspace json
と検索し、表示されたワークスペース用の設定ファイルを開いてください。
以下のコードを追加します。ディレクトリ名が.venv
でない場合は、適宜変更してください。また、MacやLinuxの場合は、仮想環境のPython実行ファイルがbin
ディレクトリ内にあるため、パスを適宜変更してください。
{
"python.defaultInterpreterPath": "${workspaceFolder}\\.venv\\Scripts\\python.exe",
}
仮想環境を追加する際に常に.venv
等のディレクトリ名で作成する場合は、ユーザの設定ファイルにもパラメータを追加しておくと便利です。コマンドパレットからuser json
と検索し、表示されたユーザ用の設定ファイルを開いて同じコードを追加します。
なお、実行するディレクトリ名が日本語だと文字化けしてエラーが生じることがあります。ディレクトリ名を英語に変更すると問題なく実行できました。settings.json
のworkspaceFolder
が日本語名の場合の対処法はまだ確認していませんが、基本的にディレクトリ名やファイル名は英語にした方が良さそうです。
ターミナルからquartoをコマンドラインで実行する
VSCodeのプラグインを通じた実行が難しい場合は、ターミナルから直接quartoをコマンドラインで実行する方法もあります。
まずは仮想環境をactivateしてください。
- Windows(powershell)の場合:
{venvのディレクトリ名}/Scripts/activate
- Mac/Linuxの場合:
source {venvのディレクトリ名}/bin/activate
その後、quartoをコマンドラインで実行します。
quarto render {quartoのファイル名}.qmd --to pdf
他のファイル形式にしたい場合は、--to
の後をhtml
、docx
などに適宜変更してください。