はじめに
前回に引き続き、第二弾のVSCodeのMarkdown環境を整えていきたいと思います。
今回は使用頻度も高い画像貼り付けについて説明していきたいと思います。
環境
- VSCode
- 1.48.2
- Paste Image
- v1.0.4
改善したい項目一覧
改善したい点は以下になります。
- アウトライン機能 ← 済?
- 画像ファイルの貼り付け ← 今回はここが対象
- リアルタイムプレビュー
- ショートカット機能
- Lint機能(Typoraにはない機能)
- CSS拡張
やりたいこと
Typoraと同様にクリップボードにコピーした画像をマークダウンに貼り付けたい。そして、画像自体も任意の場所に保存したい。
それを実現できる拡張機能がPaste Imageです。
拡張機能:Paste Image
インストール
まず拡張機能マーケットプレイスからPaste Imageと検索してインストールを行います。
使い方
- 画像をクリップボードにコピーする。
- Paste Imageのデフォルトショートカット
Ctrl+Alt+V
をキーボードから入力する。 - クリップボードにコピーした画像が保存される。
- 保存した画像ファイルが相対パス参照でmdファイルに貼り付けられる。
設定
使いそうなものだけ記載するので、詳細を知りたい場合はこちらから。
pasteImage.defaultName
保存される画像のファイル名。
デフォルトではY-MM-DD-HH-mm-ss
が設定されている。
なので、実際には2020-08-29-16-36-13.png
といった形式で保存される。
pasteImage.path
画像ファイルの保存先。
使える変数には以下のようなものがあります。
- ${currentFileDir}:現在の編集ファイルを含むディレクトリのパス。
- ${projectRoot}:vscodeで開かれたプロジェクトのパス。
- ${currentFileName}:拡張子付きの現在のファイル名。
- ${currentFileNameWithoutExt}:拡張子なしの現在のファイル名。
デフォルトでは、${currentFileDir}
が設定されているので貼り付け先の編集ファイルと同等の階層に画像が保存されます。
これだと、mdファイルと画像が同一階層に配置されてしまい画像ファイルとmdファイルがごっちゃになってしまうので、settings.json
から変更します。
"pasteImage.path": "${currentFileDir}/images/${currentFileNameWithoutExt}"
例を用いて設定内容を説明します。
下のようなフォルダ構成でtest.md
に画像を張り付けた場合には、imagesフォルダ配下に「現在編集しているファイル名(拡張子なし」のtest
フォルダが作成され、その配下に画像が配置されていきます。
なお、imagesフォルダも勝手に作られるのでわざわざ作る必要はないです。
. ├── test.md └── images └── test ← ここ画像が追加される ├── 2020-08-29-17-18-07.png └── 2020-08-29-17-18-07.png
おわりに
拡張機能のPaste Image
を使用することでMarkdownへの画像貼り付けを行うことができました!
これに関しては、その1のアウトライン機能を追加したときのとのもやもやとは違いTyporaの代替機能として活用できそうです。