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上で完結するようになり快適です。