memolist.vimが非常に使いやすくなり、 もともと利用していたカスタムしたjekyll.vimよりも 使いやすいのでmemolist.vimの機能を実装したOctopressの記事管理用 のvimプラグインを作成しました。Octopress-editorを略してOctoeditor[オクトエディタ]と読みます。
Octoeditor.vimの概要
- 新規記事の作成。
rake new_post[title]
の実行(:OctopressNew) - 記事の管理。(:OctopressList)
- 記事のGrep検索。(:OctopressGrep)
- プレビューの生成。
rake generate
の実行(:OctopressGenerate) - 記事の投稿。
rake gen_deploy
の実行(:OctopressDeploy)
Octopressでブログを更新する際に必要な機能を一通り実装しました。
プレビュー確認のrake preview
はvimとは別で起動していないと
いけないので、Octoeditorの機能としては省いています。
導入方法
導入にはvundleか、NeoBundle を利用すると楽です。
vundleの場合は、
1
|
|
NeoBundleの場合は、
1
|
|
を.vimrcに記載。
.vimrcの設定
octoeditor.vimを利用するには、.vimrc
にOctopressのディレクトリのパスを
下記のように設定します。
1
|
|
私はその他に下記マッピングを記載して利用しています。
\on
と入力すると瞬時に新規ファイルの作成が出来、,og
と入力して
記事の確認をしています。
<Leader>
はデフォルトだとキーボードの¥マークになっていると思います。
1 2 3 4 5 |
|
その他に下記のようなオプションがあります。qfixgrepやvimfilerとの連携も出来ます。
1 2 3 4 5 6 7 8 9 10 11 |
|
使い方
新規記事の作成(:OctopressNew)
1
|
|
Octopress用のフォーマットで記事が作成されます。
Octopressの仕様で日本語を含むファイル名が利用できないので、 [Post title]の部分ではアルファベットで入力し、 記事編集でタイトルを日本語に変更してください。
記事の管理(:OctopressList)
1
|
|
デフォルトのnetrwを利用した場合
vimfiler連携を利用した場合
記事のGrep検索(:OctopressGrep)
1
|
|
qfixgrep連携を利用した場合
プレビューの生成 rake generate
(:OctopressGenerate)
1
|
|
vim上からrake generate
を実行します。
rake preview
を別途ターミナル上から実行しておけば、
プレビューを確認できます。
記事の投稿 rake gen_deploy
(:OctopressDeploy)
1
|
|
vim上からrake gen_deploy
を実行し、記事を投稿できます。
Octopressの記事更新の流れ
:OctopressNew
で新規記事を作成:OctopressGenerate
でプレビュー確認:OctopressDeploy
で記事の投稿
私は下記のように設定をして、FuzzyFinderと ctrlp.vimなどと連携をして利用しています。
FuzzyFinerを利用したファイル検索
ctrlpを利用したファイル検索
バグや要望などありましたら@glidenoteかgithubのissueに連絡頂ければと思います。
blogを書く作業が、vim上で完結するようになり快適です。