##はじめに
私は、ブログにBlogger
を使っています。無料でかつ広告なしなので、お勧めです。今回は、私がBlogger
で使っているカスタマイズを紹介していきたいと思います。
##投稿
GoogleCL
を使うとBlogger
に投稿できます。
sudo port install googlecl markdown
以下のシェルスクリプトを使うとMarkdown
でも書けます。自動の改行タグ挿入が少し厄介だったので、それにも対応しています。
#!/bin/zsh
## 使い方:
## $ blogger <file>
## 1行目がタイトル, 2行目がタグ
TITLE="$(awk 'NR==1' $1)"
TAG="$(awk 'NR==2' $1)"
case $1 in
# ファイルの拡張子がMarkdownの場合
*.md)
## 1-2行を削除
sed -ie 1,2d $1
## 行末に改行タグ
sed -ie 's/$/<br\/>/g' $1
## 空行に改行タグ
sed -ie 's/^$/<br\/>/g' $1
## MarkdownをHTMLに変換する
markdown $1 > $1.html
## 改行を削除
tr -d '\n' < $1.html > $.tmp && mv $.tmp $1.html
## bloggerに投稿
google blogger post --blog "MBA-HACK" --title "${TITLE}" --tags "${TAG}" $1.html
## 投稿した内容を表示する
cat $1.html
# w3m $1
## ブラウザで開く
open -a Google\ Chrome "http://mba-hack.blogspot.jp/"
;;
# ファイルの拡張子がHTMLかそれ以外の場合
*)
## 1-2行を削除
sed -ie 1,2d $1
## 行末に改行タグ
sed -ie 's/$/<br\/>/g' $1
## 空行に改行タグ
sed -ie 's/^$/<br\/>/g' $1
## 改行を削除
tr -d '\n' < $1 > $.tmp && mv $.tmp $1
## bloggerに投稿
google blogger post --blog "MBA-HACK" --title "${TITLE}" --tags "${TAG}" $1
## 投稿した内容を表示する
cat $1
# w3m $1
## ブラウザで開く
open -a Google\ Chrome "http://mba-hack.blogspot.jp/"
;;
esac
MBA-HACK
とhttp://mba-hack.blogspot.jp/
の箇所は、自分のブログのものに変更しましょう。ちなみに、シェルスクリプト作成は以下のようにします。
echo $PATH
cd /usr/local/bin/
vim blogger
chmod +x blogger
exec $SHELL
##画像
GoogleCL
を使うと画像をアップロードできます。
mkdir -p ~/photos/cats/
google picasa create "Cat Photos" ~/photos/cats/*.jpg
特定のフォルダを作っておいて、簡単にアップロードするにはエイリアスを作っておきましょう。
echo "alias picasa='google picasa create 'Cat Photos' ~/photos/cats/*.jpg'" >> ~/.zshrc && source ~/.zshrc
Skichには便利なショートカットがあります。これで画像を保存できます。
Command
+E
##SyntaxHighlighter
SyntaxHighlighterを使うと、コードを綺麗に表示できます。
私は以下のようにカスタマイズしています。
/* シンタックスハイライト */
.syntaxhighlighter {
border: 1px solid #999999; /* 枠のサイズ、形態、色 */
/* 以下、角丸 */
-webkit-border-radius: 3px;
-moz-border-radius: 3px;
-ms-border-radius: 3px;
-o-border-radius: 3px;
border-radius: 3px;
}
.syntaxhighlighter,
.syntaxhighlighter div,
.syntaxhighlighter code,
.syntaxhighlighter span
{
line-height: 1.5em !important; /* 行間調整 */
}
.syntaxhighlighter table td.gutter .line {
padding: 0 6px 0 13px !important;
}
/* タイトル */
.syntaxhighlighter table caption {
text-align: left !important; /* 文字位置 左揃え */
padding: 0.5em 0 0.5em 0.5em !important; /* 余白設定 上右下左の順 *
color: #999999 !important; /* タイトル文字の色 */
border-bottom: 2px solid #999999 !important; /* 下線のサイズと形態と色 */
background-color: #F5F5F5 !important; /* 背景の色 */
/* 以下、角丸 (意味ないかもしれません)*/
-webkit-border-radius: 3px;
-moz-border-radius: 3px;
-ms-border-radius: 3px;
-o-border-radius: 3px;
border-radius: 3px;
/* ツールバーを非表示にする */
<script language='javascript' type='text/javascript'>
SyntaxHighlighter.defaults['toolbar'] = false;
</script>
HTML
は以下のように書きます。言語とハイライト、タイトルを表示できます。
<pre class="brush: 言語; highlight: [ハイライト]; title: 'タイトル';">ここにコードを書きます。</pre>
##引用
/* 引用 */
blockquote {
position: relative;
padding: 20px 50px;
min-height: 20px;
background: url(quote_start.gif) no-repeat 10px 10px #eeeeee;
}
blockquote:after {
position: absolute;
bottom: 10px; right: 10px;
content: url(quote_end.gif);
}
HTML
は以下のように書きます。アップロードした画像URLを上のquote_start.gif
とquote_end.gif
の部分に挿入します。画像はこちらからダウンロードするのがいいでしょう。
<blockquote>ここに引用を書きます</blockquote>
##キーワード
私は、キーワードを強調するために以下の様なタグを使っています。
/* キーワード */
span.code {
color: #000000;
margin: 5px;
padding: 5px 10px;
line-height: 2em;
background-color: #DCDCDC;
border-radius: 7px; /* CSS3草案 */
-webkit-border-radius: 7px; /* Safari,Google Chrome用 */
-moz-border-radius: 7px; /* Firefox用 */
}
span.code2 {
color: #ff3399;
margin: 5px;
padding: 5px 10px;
line-height: 2em;
background-color: #DCDCDC;
border-radius: 7px; /* CSS3草案 */
-webkit-border-radius: 7px; /* Safari,Google Chrome用 */
-moz-border-radius: 7px; /* Firefox用 */
}
HTML
は以下のように書きます。
<span class="code">ここにキーワードを書きます</span>
<span class="code2">ここにキーワードを書きます</span>
##テーブル
テーブルはこちらのものを使うと結構カッコイイです。
/* テーブル */
table {
*border-collapse: collapse; /* IE7 and lower */
border-spacing: 0;
width: 100%;
}
.bordered {
border: solid #ccc 1px;
-moz-border-radius: 6px;
-webkit-border-radius: 6px;
border-radius: 6px;
-webkit-box-shadow: 0 1px 1px #ccc;
-moz-box-shadow: 0 1px 1px #ccc;
box-shadow: 0 1px 1px #ccc;
}
.bordered tr:hover {
background: #fbf8e9;
-o-transition: all 0.1s ease-in-out;
-webkit-transition: all 0.1s ease-in-out;
-moz-transition: all 0.1s ease-in-out;
-ms-transition: all 0.1s ease-in-out;
transition: all 0.1s ease-in-out;
}
.bordered td, .bordered th {
border-left: 1px solid #ccc;
border-top: 1px solid #ccc;
padding: 10px;
text-align: left;
}
.bordered th {
background-color: #dce9f9;
background-image: -webkit-gradient(linear, left top, left bottom, from(#ebf3fc), to(#dce9f9));
background-image: -webkit-linear-gradient(top, #ebf3fc, #dce9f9);
background-image: -moz-linear-gradient(top, #ebf3fc, #dce9f9);
background-image: -ms-linear-gradient(top, #ebf3fc, #dce9f9);
background-image: -o-linear-gradient(top, #ebf3fc, #dce9f9);
background-image: linear-gradient(top, #ebf3fc, #dce9f9);
-webkit-box-shadow: 0 1px 0 rgba(255,255,255,.8) inset;
-moz-box-shadow:0 1px 0 rgba(255,255,255,.8) inset;
box-shadow: 0 1px 0 rgba(255,255,255,.8) inset;
border-top: none;
text-shadow: 0 1px 0 rgba(255,255,255,.5);
}
.bordered td:first-child, .bordered th:first-child {
border-left: none;
}
.bordered th:first-child {
-moz-border-radius: 6px 0 0 0;
-webkit-border-radius: 6px 0 0 0;
border-radius: 6px 0 0 0;
}
.bordered th:last-child {
-moz-border-radius: 0 6px 0 0;
-webkit-border-radius: 0 6px 0 0;
border-radius: 0 6px 0 0;
}
.bordered th:only-child{
-moz-border-radius: 6px 6px 0 0;
-webkit-border-radius: 6px 6px 0 0;
border-radius: 6px 6px 0 0;
}
.bordered tr:last-child td:first-child {
-moz-border-radius: 0 0 0 6px;
-webkit-border-radius: 0 0 0 6px;
border-radius: 0 0 0 6px;
}
.bordered tr:last-child td:last-child {
-moz-border-radius: 0 0 6px 0;
-webkit-border-radius: 0 0 6px 0;
border-radius: 0 0 6px 0;
}
HTML
は以下のように書きます。長くなるので途中省略します。
<table class="bordered">
<thead>
<tr>
<th>#</th>
<th>IMDB Top 10 Movies</th>
<th>Year</th>
</tr>
</thead>
<tr>
<td>1</td>
<td>The Shawshank Redemption</td>
<td>1994</td>
</tr>
<tr>
<td>2</td>
<td>The Godfather</td>
<td>1972</td>
</tr>
<tr>
<td>3</td>
<td>The Godfather: Part II</td>
<td>1974</td>
</tr>
</table>
##Sublime Text2 : Markdown Preview
プレビューは、 st2
を使うと便利です。
" st2で開く
nnoremap <leader>om :silent !open -a Sublime\ Text\ 2 '%:p'<cr>
これで、¥om
を押すと、st2
が起動します。
~/Library/Application Support/Sublime Text 2/Packages/User/Default (OSX).sublime-keymap
[
{ "keys": ["alt+m"], "command": "markdown_preview", "args": {"target": "browser"} }
]
これで、Alt+m
を押すと、Markdown Preview
ができます。ただし、予め Package Control などを用いて、Markdown Preview
のパッケージをインストールしておいてください。