Editor+Markdownでノートを管理する
皆さんはノートを何でとってますか?(ここの投稿サービス"note"のことではなく。笑)
今時ならスマホで取っている人も多そうですが、僕はつい最近までNotionというノートアプリを使っていました。
他にはド定番のEvernoteとかがあり、多くの人がそういうノートアプリを使っているのではないでしょうか。
でもエンジニアならお気に入りのエディタがあるはず。
そしてそのエディタでサクサクとMarkdownノートを取りたいと思うじゃないですか。
僕はVimmerなので、ノートアプリ上でぽつぽつ書くよりも、Vimを使ってサッと起動、しゅっと記入したいという思いが強くなりました。
そこで、本ポストではエディタでMarkdownノートをとる自分流のディレクトリ構成を紹介します。
ディレクトリ構成📁
ディレクトリ構成はこんな感じにしてます。これ、個人的にすごいフィットしてます。
note
├─food
│ └─2018-12-12-in-tokyo
│ index.md
│ picture1.jpeg
│ picture2.jpeg
│
├─game
│ ├─cod
│ │ └─2019-03-12-hint
│ │ index.md
│ │
│ └─ff
│ ├─2019-01-01-monster-data
│ │ index.md
│ │
│ └─2019-01-02-item-data
│ index.md
│
└─memo
├─2019-05-20-memo1
│ index.md
│
└─2019-05-20-memo2
index.md
ポイントは、 Vimの使い方メモ.md のような名前のMarkdownファイルを作成しないということです。
僕の場合は、 vimの使い方メモディレクトリを作成してその下にindex.md ファイルを作ってそこに書きます。
つまり、 yyyy-MM-dd-title.mdではなく、 yyyy-MM-dd-title/index.mdを作成します。
なぜあえてディレクトリにタイトルを記載して、階層を深くしているのかというと、添付ファイルの概念を作るためです。
添付ファイルの扱い📌
例えばMarkdownにリンクさせたい画像ファイルとか、勉強会に関連するPDF資料とか、パワポとか。
ノートアプリを使っている場合は簡単に添付できると思いますが、Markdownノートの場合は困りますよね。
そこで、あえてディレクトリにタイトル名、コンテンツをindex.mdファイルとすることで添付することをできるようにしています。
例えばGo言語の勉強会に参加したとしましょう。非常にためになる勉強会でたくさんノートを取りました。
そして写真もそこそことって、資料も後程PDFで配布されました。
これらはその日のイベントノートに関連付けしておきたいところです。
そういう場合の僕のノートディレクトリの場合は下記のような構成になります。
C:.
└─study
└─2019-06-25-Golang-勉強会
golang-document.pdf
image.png
index.md
Markdownとしてつらつら書いているのはindex.mdファイルです。あとのは全部添付ファイルということですね。
うーん。便利。
管理場所💾
これは難しいところですが、僕の場合はDropboxで管理しています。自動同期されるのでどのPCでも同じように使えます。
特に同期される必要がないのであればローカルの好きなディレクトリに配置すれば良いと思います。
この構成のいいところは、ノートアプリの引っ越し時のエクスポートなんてする必要なくそのまま移動できるところですね。
だってただのディレクトリとファイルたちですから。
もしもDropboxが使いにくいなーとなったら、そのまま引っ越しすればいいわけです。
Editorは何を使うか📃
これはまあ好みのものを使えばいいと思います。使えばいいと思いますが、Markdownのプレビューとか、
シンタックスハイライトの効くものが望ましいんじゃないですかね。
定番だとVisual Studio Codeがいいんじゃないでしょうか。
Vimのプラグイン
僕はVimを使っているので、VimでMarkdownを書くときのおすすめプラグインを紹介します。
- Vim Markdown
- Markdown Preview for (Neo)Vim
二つともReadmeを読めばどういうものかはわかると思いますが、
Vim MarkdownのほうがMarkdownのシンタックスハイライトや機能を提供してくれるプラグインになります。
Markdownの折り畳み機能とか、テーブルのフォーマットとか、書くときに非常に便利な機能が入っています。
Markdown Preview for (Neo)Vimはプレビュー用のプラグインです。
VSCodeとか他のエディタのプレビューと同等の品質のプレビュー機能を提供してくれます。
このプラグインのいいところは、相対パスで指定した画像などもしっかりとレンダリングしてくれるところで、
プレビューはもうこのプラグインがベストでしょう🎉
おわり🤷♂️
ローカルにメモを取っているけど構造的には管理していない人や、ノートアプリを使っている人が多いと思いますが、
こんな感じで、好みのエディタとMarkdownでノートをとってみませんか?
ディレクトリとテキストファイルで書いておけば、Wikiへの貼り付けとかにも使えて、
非常に扱いやすいこともメリットです。
ディレクトリ構成も考えておけば、少し厄介な画像ファイルとかの管理もできるようになります。
ぜひ参考にしてみてください。