およそ 3 週間前、私はvscode 画像の貼り付け自動アップロードの方法を記録した記事を書きました。しかし、この期間の使用中に、その制限性に気付きました:アクセス権の制限のため、この拡張機能はクリップボードの一時的な写真のみをアップロードでき、コピーしたローカルの写真は正常にアップロードできません。具体的な問題は、アップロードされた画像が空であることです。
これにより、他の方法を試してみることにし、最終的には vs-picgo に切り替えることにしました。
vs-picgo の使用#
最初の記事でも言及しましたが、vs-picgo の README.md ファイルには、PicGo-Core がサポートする 8 種類の画像ホスティングサービス(weibo、qiniu、tcyun、upyun、github、aliyun、imgur、SM.MS)のみをサポートしていると記載されています。そして、PicGo-Core のプラグイン機能は作業中です。
この表現のため、私は試すことを諦め、最初の記事以降の探索プロセスを経験しました。しかし、今回手動でインストールして試してみたところ、開発者の意図を誤解していた可能性があることに気付きました。
vs-picgo の設定を注意深く見ると、Config path という設定項目があることがわかります。説明の内容は次のとおりです:**Picgo-Core の設定へのパス。指定されていない場合、Picgo は Picgo: Pic Bed を使用します。** つまり、この拡張機能自体の設定を上書きするために、Picgo Core の設定ファイルの場所を指定することができるようになりました。その結果、Picgo Core のサードパーティプラグインを使用することができるようになります。vs-picgo の未完成なのはおそらくプラグインシステムのグラフィカルな設定だけなのかもしれません...
それならば、目的ははっきりしています。Picgo Core をインストールし、適切な設定を行い、最終的には拡張機能で設定ファイルのパスを指定するだけです。
Picgo Core のインストール#
README.mdを参照して、グローバルインストールは次のコマンドで行います:
yarn global add picgo
# または
npm install picgo -g
Picgo Core の設定#
多吉の画像ホスティングにアップロードするために、web-uploader プラグインをインストールして設定する必要があります。
picgo install web-uploader
picgo config uploader
? Choose a(n) uploader # web-uploaderを選択
? APIアドレス # アップロード先のアドレスを入力
? POSTパラメータ名 # file
? 画像URLのJSONパス(例:data.url) # data.o_url
? カスタムリクエストヘッダー 標準JSON(例:{"key":"value"}) # 空欄
? カスタムボディ 標準JSON(例:{"key":"value"}) # 空欄
picgo use uploader
? Use an uploader # web-uploaderを選択
設定が完了したら、picgo upload /path/to/an/image
コマンドで正常にアップロードできるかテストすることができます。アップロードが成功した場合、設定に問題はありません。
vs-picgo の設定#
最後のステップは、vs-picgo の設定で picgo core の設定ファイルを指定するだけです。公式ドキュメントを参照してください:
picgo のデフォルトの設定ファイルは~/.picgo/config.json です。ここで、~ はユーザーディレクトリを表します。異なるシステムでは、ユーザーディレクトリが異なる場合があります。
Linux と macOS の場合、~/.picgo/config.json です。
Windows の場合、C:\Users\ ユーザー名.picgo\config.json です。
例えば、GNU/Linux の場合の設定は以下の通りです:
vs-picgo の使用#
最後は使い方です。デフォルトのショートカットキーは次のとおりです:
OS | クリップボードから画像をアップロードする | エクスプローラから画像をアップロードする | 入力ボックスから画像をアップロードする |
---|---|---|---|
Windows/Unix | Ctrl + Alt + U | Ctrl + Alt + E | Ctrl + Alt + O |
Os X | Cmd + Opt + U | Cmd + Opt + E | Cmd + Opt + O |