はじめに
Qiitaの素晴らしい点の一つは,記事をmarkdownで書けることだと思います.多くのユーザがブラウザ上でmarkdownを書き,記事を投稿していることでしょう.しかしmarkdownを使い慣れたエディタで書くことができれば,投稿がより楽しくなるのではないでしょうか.
Vimmerの皆さん,VimでQiitaの記事を書きたくありませんか?
Vimmerな私は,VimからQiitaへ投稿ができるプラグインQiitaPyを開発しました!
本記事では,QiitaPyの機能と使い方について紹介したいと思います.
QiitaPyのリポジトリ: https://github.com/Kenta11/QiitaPy
セットアップ
Vimの確認
QiitaPyを使うには,Python3が使用できるVimが必要です.bashのコンソールをご使用の場合,以下のコマンドでPython3が使えるかを確認できます.
$ vim --version | grep python3
+conceal +linebreak +python3/dyn +vreplace
# python3の左に+があれば,python3が使える!
QiitaPyをインストール
deinをお使いの方であれば,以下のコマンドを実行して下さい.
call dein#add('Kenta11/QiitaPy')
必要なモジュールをインストール
QiitaPyに必要なpythonのライブラリをインストールします.
pip install pyyaml
pip install qiita_v2
チュートリアル
設定ファイルの用意
まず初めに認証のためのアクセストークンを作って下さい.トークンは40文字の文字列で, https://qiita.com/settings/applicationsで作ることができます.そしてVimを起動し,以下のコマンドを入力して下さい.
QiitaPy config
~/.QiitaPy.yamlというファイルが作成されるので,ACCESS_TOKENに続いてトークンを書いて下さい.またUSER_NAMEの後には Qiitaのユーザ名を書いて下さい.
テンプレートの生成
記事のテンプレートを以下のコマンドで作成できます.
QiitaPy template
生成されたテンプレートの上部はYAMLメタデータブロックです.titleに続いて書き込んだ文字列が,投稿する記事のタイトルになります.またtagsの下に続く"- :"はタグで,例えばVim 8のタグを付けたい場合は"- Vim: 8"として下さい.tweetはその記事を初めて投稿する際に,あなたのアカウントと連携するTwitterアカウントで記事をツイートするかをtrue/falseで指定できます.
YAMLメタデータブロックの下は記事の本文です.markdownの書式に従って,自由に記事を書きましょう.
投稿する
完成した記事を投稿しましょう.例によって,コマンドを使いアップロードします.
QiitaPy post new
これで記事がアップロードされました!Qiitaに見に行きましょう!!
やった!
QiitaPyコマンドの詳細
config
設定ファイルを開きます.設定ファイルは.QiitaPy.yamlという名前でホームディレクトリに配置されます.
QiitaPy config
post
記事を投稿・更新します.その記事を初めて投稿する際は,newオプションが必要です.
QiitaPy post new
記事を更新する場合はnewオプションは不要です.ただし記事を特定するために,後述するlistコマンドで表示される疑似キーが必要です.
QiitaPy post
list
投稿済みの記事の一覧を表示します.記事は"疑似キー: タイトル"で表示されます.なお表示される記事は最新のものからとなります.
QiitaPy list
より古い記事を見たい場合は,ユーザ名とページ番号を追加して下さい.
# 先程は1ページ目を表示していました
# 2ページ目を表示する場合は以下のコマンドを入力
QiitaPy list Kenta11 2
また自分以外のユーザの記事一覧も表示できます.
# hogefooさんの記事リストの3ページ目を表示
QiitaPy list hogefoo 3
edit
投稿済みの記事を取得します.なお記事を指定するには,listコマンドで表示される疑似キーが必要です.
# 7番目の記事を取得
QiitaPy edit 7
template
記事のテンプレートファイルを生成します.
QiitaPy template
おわりに
この記事もQiitaPyを使って投稿しました^^.Vimから投稿や編集ができるのは楽しいですね.みなさんも是非使ってみて下さい.
もしQiitaPyに関する質問・要望がありましたら,本記事のコメントや私のTwitter宛に是非教えて下さい.よいVim生活を!