ブログを効率良く書くための工夫 #spdblog5

Eye (please add some funny TAGs)私は、ブログを効率良く書くための工夫は特にしていません。ただ、ブログのための設定を幾つか設定ファイルに書いていたりするので、今回はそれを紹介していけたらと思います。
photo credit: Michele Catania


今回は、【企画】ブログを効率良く書くためのあなたの工夫について教えてください。に参加してみます。
1.ブログを効率良く書きたい理由はなんですか?

2.一つの記事を書くのにかかる時間はどのぐらいですか?目標時間はありますか?

3.ブログを効率良く書くために工夫している点を箇条書きで3~5つほど書いてくれませんか?

4.先ほどあげてもらった工夫の中の1つについて熱く語ってくれませんか?

5.ブログを速く書きたい人のために紹介できる記事はありますか?(他人の記事も、自分の記事も可)

質問への回答

1.ブログを効率良く書きたい理由はなんですか?


時間の無駄遣いを防ぐためです。

2.一つの記事を書くのにかかる時間はどのぐらいですか?


10分から15分を目標に、30分以内には書き終えます。ただし、これでも時間をかけすぎているためもう少し短縮したいと思っています。

3.ブログを効率良く書くために工夫している点を箇条書きで3~5つほど書いてくれませんか?


ブログを効率良く書くために工夫している点は、以下で説明します。

4.先ほどあげてもらった工夫の中の1つについて熱く語ってくれませんか?


特に驚くべき工夫もしていませんので、これから効率良く書くための工夫をしていけたらと思います。

5.ブログを速く書きたい人のために紹介できる記事はありますか?


パソコンのことはよくわかりませんし、`Blogger`に移転したばかりでブログのこともよく分かりません。よって、これからブログを速く書きたい人のために役立つ記事でも書いていければと思っています。




3.ブログを効率良く書くために工夫している点を箇条書きで3~5つほど書いてくれませんか?


当たり前のことを当たり前のようにしているだけなので、特に紹介するまでもありませんし、以前記事にした内容と重複する箇所があろうかと思いますが、反面教師として、皆様のブログの更新において何らかの参考にでもなれば幸いです。

GoogleCLを使って画像をアップロードする

まずは、自分が気に入らない作業の2つから紹介していこうと思います。私は、画像をPicasaにアップロードすることにしています。そして、アップロードした画像のリンクをHTMLタグに埋め込み画像を表示するようにしています。

以下のエイリアスを設定することで、picasaコマンドを実行すると、特定のフォルダ~/Pictures/picasaに保存した画像ファイルをPicasaにアップロードすることができます。

alias picasa='touch ~/Pictures/picasa/test.html && rm ~/Pictures/picasa/*.html && google picasa post -n "picasa" ~/Pictures/picasa/* && rm ~/Pictures/picasa/* && google picasa list "picasa" > ~/Pictures/picasa/picasa_url_1.html && sed -e "s/,/ /g" ~/Pictures/picasa/picasa_url_1.html > ~/Pictures/picasa/picasa_url_2.html && vim ~/Pictures/picasa/picasa_url_2.html'


ファイルを削除するかどうかを聞かれた後は、テキストファイルが開きますが、ここに表示されたURLを既定のブラウザで開きます。なお、URLを開くには、以下の設定が必要になります。

let g:netrw_nogx = 1 " disable netrw's gx mapping.
nmap gx <Plug>(openbrowser-smart-search)
vmap gx <Plug>(openbrowser-smart-search)


また、open-browser.vimをインストールしていない場合は、当該`Vim Plugin`をインストールします。

Bundle 'tyru/open-browser.vim'


URL上でgxを押すと、当該URLを既定のブラウザで開けます。



この作業では、開いた`Web Page`から画像ファイルの直リンクをコピーしなければなりませんが、これがあまりに面倒なので、この作業はあまり好きではありません。これについては、そのうち改善したいと思っています。なお、`Editor`にEmacsを使っている人は、org-modeが便利です。



Skitchでスクリーンショットを保存する

私が嫌いな作業その2です。このスクリーンショットの加工と保存はあまりに面倒なので、あまり好きになれません。では、以下でSkitchでスクリーンショットを保存する方法を紹介します。

お決まりのショートカットキーShift+Cmd+5でスクリーンショットを撮影した後、①画像ファイルの名前を決め、②特定のフォルダに保存します。



②については、以下の様な保存方法が考えられます。つまり、マウスなどを使用し、ファイルを`ビューン`と特定のフォルダに持っていくわけです。すると、ファイルは特定のファイル形式で当該フォルダに保存されます。



Bloggerにポストする

簡単な表現については、Markdownで書くのが有効です。ただし、それ以外の表現は、Markdownで書けないことも多々あります。

そのような場合は、HTMLで書いて、Markdown記法に従って、それを明示するだけでいいのですが、それをBlogger.vimを使って投稿しようとすると、自分の場合は、`Error`がでてしまってうまく投稿できません。

よって、そのようなときは、Markdownで書いたファイルをHTMLに変換し、GoogleCLを使って、`Blogger`に`Post`するようにしています。

google blogger post --blog "blogname" --title "test" --user "xxxxx@gmail.com"  --tags "blogger" test.html


ただし、Markdownのみで事足りる場合は、Blogger.vimを使ってポストします。



Markdown記法で書く

プレビューやHTMLへの変換は、mkdpreview-vimquickrun.vimを使うのが一番です。

それ以外にも以下の様な方法があります。

Markdownとは、Markdown形式で書かれたテキストをHTMLに変換してくれるツールのことです。

brew install markdown


使い方は簡単で、 markdown test.md > test.html のようにテキストを指定するだけです。

markdown

Markdownで書いたものをPreviewする



w3mMarkdown をインストールしている状態で、~/.zshrcに以下の設定を追記します。



これで、Markdownで書いたテキストを markdown_preview で指定するとプレビューできるようになります。

html2text

時に、Markdownでどのように書くのか忘れてしまうことがあります。そんな時は、 html2text がお勧めです。これは、HTMLをMarkdownで書くとどのようになるかを表示してくれます。

git clone https://github.com/aaronsw/html2text.git

cd html2text

python html2text.py https://github.com/aaronsw/html2text


html2text

Gist.vim

Gist.vimを使用することで、Codeを簡単に投稿したり、ブログに埋め込んだりすることができます。ここでは、Gist.vimを使って、GistにCodeを投稿し、それをブログに埋め込むまでを紹介していきたいと思います。

ただし、Gistを利用するには、GitHubへの登録が必要になります。GitHubのアカウントをお持ちでない方は、登録しておきましょう。

Bundle 'mattn/gist-vim'


:BundleInstallも忘れずに。以下この手順については、省略します。

次に、ドキュメントにあるように、必要な物を用意します。以下のコマンドを実行してください。

% mkdir ~/.vim/cookies && touch ~/.vim/cookies/github

そして、設定ファイルに以下を追記します。
let g:gist_clip_command = 'pbcopy'
let g:gist_detect_filetype = 1
let g:github_user = 'usrename'


これで、コードを書いて、:Gistなどとすると、Gistへの投稿が完了し、URLがクリップボードに取得されます。



また、以下を設定ファイルに書くことで、クリップボードにGistへのURLが保存されている状態で:PasteGistを実行すれば、GistへのURLが埋め込みコードに変換されます。これに関しては、Gist.vimの導入とヘルパースクリプトの作成がとても参考になります。ここに載っているコードを簡単にではありますが、改良してみました。

" PasteGist
func! s:paste_gist_tag()
  let mx = 'http[s]\?://gist.github.com/\([0-9]\+\)'
  " +または"レジスタの中身を検索する
  let regs = [@+,@"]
  for r in regs
    let mlist = matchlist(r, mx)
    if ( len(mlist) > 2 )
      "カーソル行に挿入
      exe "normal! O<script src='https://gist.github.com/" . mlist[1] . ".js'></script>"
      return
    endif
  endif
endfunc
command! -nargs=0 PasteGist     call paste_gist_tag()


これで、Vim上からGistへコードを投稿し、ブログへの埋め込みコードを取得することができるようになります。



Zencoding-vim

Zencoding-vimとは、省略記法でHTMLへの変換を実現するVim Pluginのことです。Zencoding-vimは、ブログをやっている人なら便利に使えると思います。

Bundle 'mattn/zencoding-vim'


私がよく使う記法は、以下のものです。記法を入力した後に、C-y-,を入力すると、記法がHTMLに変換されます。
span:code

↓

<span class="code"></span>


あと、neocomplcacheで、自作スニペットを作成し、補完などもしています。

ブログ更新の様子

更新の様子を撮影してみました。今回のビデオ撮影は、QuickTime Playerで行いましたが、記事の作成から投稿までの操作は、ミスだらけです。やっぱりビデオ撮影というのはかなり難しいですね。緊張していつもどおり出来なかったり、マシンがいつもより重かったり(撮影しているためだと思います)、色々トラブルが絶えませんでした。



Bloggerへのポスト

以下のシェルスクリプトをパスの通った場所echo $PATHに保存することで、blog <タイトル> <タグ> <ディレクトリ>とすれば、Bloggerにポストできます。なお、"MBA-HACK"の場所には、自分のブログタイトルを入れてください。

#!/bin/bash
google blogger post --blog "MBA-HACK" --title "$1"  --tags "$2" $3


YouTubeへのポスト

youtube_postとすれば、~/Movies/youtube/に保存した動画をYouTubeにアップロードします。その後、YouTubeにアップロードした動画リストを開きます。

alias youtube_post='touch ~/Movies/youtube/test.html && rm ~/Movies/youtube/*.html && google youtube post --category People ~/Movies/youtube/*.mov && rm ~/Movies/youtube/*.mov && google youtube list --delimiter " " > ~/Movies/youtube/url.html && vim ~/Movies/youtube/url.html'


ビデオ撮影の時に使ったツールなどはこちらの記事にまとめています。