2013年5月29日水曜日

踏み台昇降

ここ数年の間にお腹の辺りがもの凄いことになってきて、ずっと気になってはいたのですが、特に何の対策もせず怠惰な日々を送っていました。そろそろ何らかの対策を講じないとスーツを新調する羽目になりそうです。

怠け者の自分にも出来そうなダイエット方法はないものかと検索していたところ「踏み台昇降DEダイエット」というページを見つけました。
高さ10cm程度の台を用意して、20〜30分の間、110〜130くらいの心拍数になるようなペースで昇り降りをするだけです。 これなら費用もかからず、場所をとらないので自宅でも事務所でもできそうですし、本や資料を読みながらでも出来そうです。深夜のウォーキングみたいに職務質問される心配もありません。

ホームセンターから幅42cm×奥行32cm×高さ12cmの台を1,200円ほどで買ってきて早速初めてみました。踏み出す足が偏らないように空踏み1回を加えた5拍子(三角昇降:こちらのページで詳しく説明されています)で昇降を繰り返すのですがどうにもうまくリズムが取れません。
リズムを気にすると本の内容が頭に入ってきませんし、本を読むのに集中するとリズムが乱れてズッコケてしまいます。

なにか基準になるリズムを聞きながらやればいいのかも知れません。しばし考えた後、Mac標準の GarageBand で5/4拍子、テンポ 120bpmのメトロノームを鳴らしながらやってみました。これだととてもうまくリズムが取れます。本を読みながらでも踏み台昇降が楽にできます。

テンポ 120bpm も自分にはちょうど良かったようで、20分間踏み台昇降を続けた直後の心拍数が114でした。

あとはこれをどれくらい飽きずに続けられるかが問題です。

2013年5月26日日曜日

Raspberry Pi の設定(3)

我が家のPC環境は Macが主体なので AFP(Apple Filing Protocol)や Bonjour で Raspberry Pi にアクセス出来ると便利です。

AFP によるファイル共有

以下のコマンドで netatalk をインストールします。

 $ sudo apt-get install netatalk
以前は別にインストールする必要があった avahi-daemon も一緒にインストールされました。
なにも設定しなくてもこの時点で Finder のサイドバーに Raspberry Pi が表示されています。接続すると Home Directory が共有できます。

VNC サーバ

以下のコマンドで tightvncserver をインストールします。

 $ sudo apt-get install tightvncserver
インストールが済んだら起動します。
 $ vncserver
パスワードを聞いてくるので適当なパスワードを2回入力します。表示専用のパスワードも聞かれますがこれはなくてもいいでしょう。 Finder の「移動 → サーバへ接続」でサーバアドレスに vnc://raspberrypi:5901 を指定すれば画面の共有が出来ます。

VNCサーバの自動起動

ブート後に自動で起動するように VNCサーバを設定します。

ディレクトリを移動してファイル /etc/init.d/tightvncserver を作成します。

 $ cd /etc/init.d
 $ sudo nano tightvncserver

ファイル /etc/init.d/tightvncserver に以下の内容を記述して保存します。

#!/bin/bash
# /etc/init.d/tightvncserver
#
# Carry out specific functions when asked to by the system case "$1" in start) su pi -c '/usr/bin/vncserver -geometry 1024x768' echo "Starting VNC server " ;; stop) pkill Xtightvnc echo "VNC Server has been stopped " ;; *) echo "Usage: /etc/init.d/tightvncserver {start|stop}" exit 1 ;; esac
exit 0
ユーザ名 pi はVNCサーバを起動するユーザです。このユーザ名でVNC接続できます。 ジオメトリ設定はモニタにあわせて変更します。

保存したファイルに実行属性を与え、実行中のサーバをキルします。

 $ sudo chmod +x tightvncserver
 $ sudo pkill Xtightvnc
VNCサーバが停止していることを確認します。
 $ ps aux | grep vnc
次に以下のコマンドを実行します。
 $ sudo /etc/init.d/tightvncserver start
 $ cd /etc/init.d
 $ sudo update-rc.d tightvncserver defaults

Finder から Bonjour でVNCサーバが見えるようにするために rfbサービスファイルを作ります。

 $ sudo nano /etc/avahi/services/rfb.service
/etc/avahi/services/rfb.service に以下の内容を記述して保存します。
<?xml version="1.0" standalone='no'?><!DOCTYPE service-group SYSTEM "avahi-service.dtd"><service-group>
  <name replace-wildcards="yes">%h</name>
  <service>
    <type>_rfb._tcp</type>
    <port>5901</port>
  </service>
</service-group>
次に以下のコマンドを実行します。
 $ sudo /etc/init.d/avahi-daemon restart
以上でBonjourでVNCサーバが見えるようになり、Finderに「画面を共有…」ボタンが表示されるようになりました。

画面を共有…をクリックすれば Raspberry Pi にVNC接続が出来ます。

参考URL
  4DC5:Setting up VNC on Raspberry Pi for Mac access

無線LANの設定

USB WiFiアダプタ GW-USValue-EZ を接続して lsusb してみると GW-USValue-EZ がリストされるのでWi-Fiアダプタは正しく認識されているようです。

 $ lsusb
 Bus 001 Device 002: ID 0424:9512 Standard Microsystems Corp.
 Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
 Bus 001 Device 008: ID 04fe:0007 PFU, Ltd
 Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.
 Bus 001 Device 004: ID 2019:ed17 PLANEX GW-USValue-EZ 802.11n Wireless Adapter [Realtek RTL8188CUS]
 Bus 001 Device 005: ID 05e3:0608 Genesys Logic, Inc. USB–2.0 4-Port HUB
 Bus 001 Device 006: ID 04fe:0008 PFU, Ltd
 Bus 001 Device 007: ID 0458:0007 KYE Systems Corp. (Mouse Systems)

lsmod してみるとドライバ 8192cu がロードされていることがわかります。

 $ lsmod
 Module                  Size  Used by
 snd_bcm2835            15846  0
 snd_pcm                77560  1 snd_bcm2835
 snd_seq                53329  0
 snd_timer              19998  2 snd_pcm,snd_seq
 snd_seq_device          6438  1 snd_seq
 snd                    58447  5 snd_bcm2835,snd_timer,snd_pcm,snd_seq,snd_seq_device
 snd_page_alloc          5145  1 snd_pcm
 8192cu                489381  0
 leds_gpio               2235  0
 led_class               3562  1 leds_gpio
 evdev                   9426  2
GUIから wpa_gui を起動してみてもアダプタのリストには wlan0 がリストされません。いろいろ調べてみると wpa_gui のパーミッションに問題があるようです。
 $ sudo chmod 4755 /usr/sbin/wpa_gui
を実行して、もう一度 wpa_gui を起動したところ、今度は wlan0 が表示されるようになりました。

Scanをクリックして表示されるリストで、接続したいネットワークをダブルクリック、設定画面にパスフレーズを入力してAddをクリックして接続します。

RPi-sd card builder を使わずにSDメモリカードを作る

普段使いの他にもう1枚予備の Raspbian wheezy ブート用SDメモリカードを作ろうとしたら、RPi-sd card builder がエラーになってしまって、イメージファイルをコピーできませんでした。仕方なくターミナルから dd コマンドでメモリカードを作成したので手順をメモしておきます。

MacBook Pro 13" Retina + OS X Mountain Lion での作業です。

Mac に SDメモリカードを挿入したら以下のコマンドを実行します。

 $ diskutil list
 /dev/disk0
  #:                       TYPE NAME            SIZE       IDENTIFIER
  0:      GUID_partition_scheme                *500.3 GB   disk0
  1:                        EFI                 209.7 MB   disk0s1
  2:                  Apple_HFS Macintosh HD    435.0 GB   disk0s2
  3:                 Apple_Boot Recovery HD     650.0 MB   disk0s3
  4:       Microsoft Basic Data BOOTCAMP        64.4 GB    disk0s4
 /dev/disk1
  #:                       TYPE NAME            SIZE       IDENTIFIER
  0:     FDisk_partition_scheme                *8.1 GB     disk1
  1:                 DOS_FAT_32 RASPBERRYPI     8.1 GB     disk1s1

SDカードのデバイス名が /dev/disk1 であることがわかりました。このデバイス名は環境によって異なります。

次に dd コマンドでイメージをSDメモリカードに書き込みます。

 $ sudo dd bs=1m if=/Users/username/Downloads/2013–02–09-wheezy-raspbian.img of=/dev/disk1
 Password:
 1850+0 records in
 1850+0 records out
 1939865600 bytes transferred in 794.077698 secs (2442917 bytes/sec)

if= にはダウンロードした Raspbian wheezy のイメージファイルを、of= には先ほど調べたSDメモリカードのデバイス名を指定します。
しばらく時間がかかりますが気長に待ちましょう。

Raspberry Pi の設定(2)

新しいユーザの追加

普段使い用の新しいユーザを追加します。

 $ sudo adduser username

パスワードを聞いてくるので、新しいユーザのパスワードを2回入力します。 それ以外はすべてデフォルトでいいのでリターンで進んで最後の確認に Y を入力します。

新しいユーザが sudo を使えるようにする

新しく追加したユーザが sudo を使えるように sudoers を設定します。
ユーザ pi でログインして以下のコマンドを実行します。

 $ sudo visudo

エディタで /etc/sudoers.tmp が開くので以下の部分に太字の行を追加します。

 #includedir /etc/sudoers.d
 pi ALL=(ALL) NOPASSWD: ALL
 username ALL=(ALL) ALL

Ctrl キーと CapsLock キーを入れ替える

Ctrl キーと CapsLock キーを入れ替える設定をします。

/etc/default/keyboardXKBOPTIONS を以下のように変更します。(太字部分を追加)

XKBOPTIONS=“terminate:ctrl_alt_bksp,ctrl:swapcaps

raspi-config のキーボード設定で Ctrl + Alt + BS で X server を終了する設定にしていないと、もしかすると XKBOPTIONS の設定行がないかも知れません。その場合はファイルの最後に

XKBOPTIONS=“ctrl:swapcaps”
を追加します。

2013年5月25日土曜日

Raspberry Pi の設定(1)

久しぶりに Raspberry Pi で遊んでみようと思ったら、以前に設定したときの内容をすっかり忘れてしまっていることが判明しました。 もう一度最初から設定し直すことにしたのでその手順をメモしておきます。


用意するものは Raspberry Pi 本体と 4GB以上のSDメモリカード、給電用のUSB-MicroBケーブル、モニタとモニタ接続用のHDMIケーブル、USBキーボード。
他には作業用のPCが必要です。うちの場合は MacBook Pro 13" Retina を使ってセットアップ作業を行いました。

OS のイメージファイルを入手

Raspberry Pi のダウンロードページから Raspbian “wheezy” をダウンロードして解凍します。今回は2013-02-09-wheezy-raspbian.zip をダウンロードしました。日付の部分は OS のバージョンアップにより変わります。

OS をSDメモリカードに書き込む

以前はOS Xのターミナルから dd コマンドを入力して書き込みましたが、最近は RPi-sd card builder という便利なツールがあるようなので今回はこれを使ってみることにします。 こちらのページからRPi-sd card builder をダウンロードして解凍しておきます。書き込み手順は以下の通り。
  1. RPi-sd card builder v1.2 を起動します。
  2. ファイル選択画面でさっき解凍したイメージファイルを選択します。
  3. SDカードの挿入確認画面がでるのでSDメモリカードを挿入して「Continue」をクリックします。
  4. SDカード選択画面がでるので、OSを書き込みたいSDメモリカードにひとつだけチェックを入れて「OK」をクリックします。
  5. 管理者のパスワードを入力して「OK」をクリックします。「OK」をクリックします。
  6. SDカードがアンマウントされたかどうかを聞いてきますので Finder でSDカードが表示されていないことを確認して「Continue」をクリックします。
しばらくして「COMPLETE」画面が表示されれば書き込み作業は完了です。「OK」をクリックしてプログラムを終了してSDメモリカードを取り出します。

起動と初期設定

出来上がったSDメモリカードを Raspberry Pi に挿入し、モニタ、USBキーボードを接続して電源を入れると、画面に起動時のメッセージが表示されたあと Raspi-config という設定画面が表示されます。ここでは以下のように設定を行います。
  1. expand rootfs
    SDメモリカードの容量全部を使えるように拡張します。項目を選択して「OK」画面が表示されればOK。次回のブート時にファイルシステムが拡張されます。
  2. configure keyboard
    Keyboard model で Generic 105-key (Intl) PC を選択します。
    Keyboard layout で Other →Japanese →Japanese - Japanese (OADG 109A) を選択します。
    Key to function as AltGr で The default for the keyboard layout を選択します。
    Compose key で No compose key を選択します。
    Use Ctrl + Alt + Backspace to terminate the X server? で Yes を選択します。
  3. change_pass
    pi ユーザのパスワードを設定します。
  4. change_timezone
    Geographic area で Asia を選択します。 Time zone で Tokyo を選択します。
  5. ssh
    Enable を選択して画面が変わったら「OK」を選択します。
とりあえずここまで設定したら Finish を選択して raspi-config を終了します。リブートするかどうかを聞かれたら Yes を選択します。

確認

再起動してログインプロンプトが表示されたら、ユーザ名 pi と、さっき変更したパスワードを入力してログインします。 df コマンドでSDメモリカードの容量を確認してみます。SDメモリカードの容量より1.4GBくらい少ない容量であればOKです。

初期状態では root ユーザのパスワードが設定されていないので、以下の手順でパスワードを設定しておきます。
 $ sudo su
 # passwd

2013年5月22日水曜日

keys.css でキートップ風の表示

キー入力を示すときに便利な keys.css を使ってみました。

リンク先からダウンロードした keys.css を Dropbox の Public フォルダにコピーして、パブリックリンクを取得しておきます。

blogger の テンプレート → HTMLの編集 で以下のコードを </body> の前に追加します。
 <!-- keys.css -->
 <link href='https://パブリックリンク/keys.css' rel='stylesheet' type='text/css'/>

以下のように記述すれば Ctrl + Alt + DELShift + Space のように表示することが出来ます。
以下のように記述すれば <kbd>Ctrl</kbd> + <kbd>Alt</kbd> + <kbd>DEL</kbd> や <kbd>Shift</kbd> + <kbd>Space</kbd> のように表示することが出来ます。
オリジナルは class="Dark" がデフォルトでしたが class="light" がデフォルトになるように修正しました。

2013年5月21日火曜日

Blogger: Emacs でマークダウン

Blogger の編集画面が使いにくいので Emacs で Markdown を使ってみました。
まず Macports で multimarkdown パッケージをインストールします
 $ sudo port install multimarkdown

次に Emacs で M-x package-list-packages でパッケージ管理を起動して I で markdown-mode にマーク、X でインストールします。Markdown-mode.el のインストールが済んだら ~/.emacs.d/init.el に以下のコードを追加しておきます。
 (autoload ’markdown-mode “markdown-mode.el” “Major mode for editing Markdown files” t)
 (add-to-list ‘auto-mode-alist ’(“\.md” . markdown-mode))
 (setq markdown-command “/opt/local/bin/multimarkdown”)

init.el の編集が終わったら、M-x eval-bufferinit.el を再度読み込ませます。

編集中のマークダウンファイルのプレビューには Marked を使うことにしました。App Store で350円でした。
Emacs と Marked を並べて起動しておくと、セーブするたびに Marked のプレビューが更新されてとても便利です。

C-c C-c m で別バッファに HTML に変換された結果が表示されるので、これをコピーして Blogger の HTML 編集画面に張り付ければOK。快適です。

参考にしたページ

  Markdown-modeを入れてみた
  emacsでもMarkedでmarkdown編集が快適になった
  WordPress を Markdown 書式で更新する (1)

2013年5月20日月曜日

Blogger: Google-code-prettify

SyntaxHighliter よりもシンプルな見た目の Google-code-pretify を使ってみました。
設置と設置は以下のサイトを参考にさせていただきました。

  ブログ(Blogger)にプログラムのソースコードを埋め込む方法
  ライブドアブログにgoogle-code-prettifyを導入してシンタックスハイライトを実現する
  google-code-prettify

こんな風に表示できます。
<pre class="prettyprint linenums">
ここにコードを書きます。
</pre>

行番号の初期値を指定する場合は
<pre class="prettyprint linenums:18">
こんな風に指定します。
</pre>

行番号を表示しない場合はこんな感じです。
<pre class="prettyprint linenums:0">
ここにコードを書きます。
</pre>

SyntaxHighliter よりもすっきりしていて気に入りました。今後はこちらをメインに使ってみようと思います。

なかなか参考サイトと同じように表示できなくて苦労しましたが、試行錯誤の結果、現在の prettify.css はこんな風になっています。

2013年5月19日日曜日

Time Capsule バックアップ不具合

Time Machine が差分バックアップではなく新規バックアップをとろうとする症状に悩まされていましたが、どうやら解決したっぽいので今後のためにメモしておきます。