Archives

28 January 2009 の記事

小型キーボードはたとえキーピッチが小さくなっても等幅の方がタッチタイプ
しやすいという仮説

VAIO type P のキーボードは十分な広さが確保されており、詰まったキーも少なく
押しやすく出来ています。
たまに右側 [_] のキーを押し間違えることがあるのは、おそらく直前まで 1年間
使ってきた EeePC にすっかり手がなじんでしまっているからです。
EeePC のキーボードはさらに横幅が狭く、変形している記号キーも type P より
1列分多くなっていました。

その前に使っていた Let's note R4 もそうだったし、小型のキーボードでは右側の
記号部分の幅が狭く変形しているものが少なくありません。

キーのタイピングは人によって異なるし好みもやり方も多数あると思いますので、
今回はあくまで個人的な内容のお話となっています。


●小型キーボード

こちら でも触れたように、キーボードはすべてのキーが等幅であれば
全体のスケールが小さくなっても意外にタッチタイピング出来ることがわかりました。
もちろんあくまで個人的な感想で、個人的な経験からの判断です。

その昔、普段記号キーも見ないで打っていたのでキーボードに結構拘っていました。
ノートPC もデスクトップと同じサイズでないと打てない、とか思い込んでいたし。

これなら打てる! とかなり気に入ったのが MobileGearII MC/R700 で、すぐに電源が
入って使える便利さに魅了されてその後すぐに MC/R530 を購入。
キーピッチは小さいもののすべてのキーが等幅でしっかりしており、非常に打ちやすい
ものでした。
最初から Ctrl/Caps Lock を交換する機能もあったし、ATOK も入っていたし、IME の
キー割り当ても変更できたのでカスタマイズ性も申し分ないです。

Jornada680~ はさらに一回り以上小さいハンドヘルド PC です。
小さいながらもキーは電卓ボタンではなくノートPC と同じ形をしています。
店頭で Jornada720 触ってみたらぎりぎりだけどホームポジションに全部の指が乗る
ことを発見。
キー配列は等幅で必要なキーがそろっており配列も自然。一部異なっている部分も
カスタマイズで変更可能な範囲でした。
入力はタッチタイピング可能で、議事録なども内容をそのまま記録しつつ、かつ
タイプしながら内容を整理してまとめられるくらいに余裕で打てました。
MobileGearII MC/R530 と Jornada720 は本当に長い間使い込んでいます。

それ以降ここまで使えた小型キーボードにはあまり出会っていません。
小型化のためにキーボードが変形していて、一部キーが他の場所にあったり部分的に
幅が狭くなっていたりするとなぜかだめなのです。慣れるまで非常に時間がかかるし、
慣れてもデスクトップ PC の普通のキーボードを使うときに間違えるようになるし。


●タッチタイピング

タッチタイプできるかどうかの境目は「知識」にあると考えています。
どこに手を置いてどの指にどのキーを割り当ててどうやって指を運んで戻すのか、
これらの基礎知識がないままキータイプを続けてもあまり上達しません。

見ないのにキーを打てるからくりは、すべてのキーをホームポジションからの
相対位置で覚えるからです。
重要なのは必ずホームポジションに手を置いておくこと。

ホームポジションから打ちたいキーに指を出し、一文字タイプしたらできるだけすぐ
ホームポジションに戻す。
この動作が基本で、あとは徐々に上達するごとにホームポジションを経由しない
指の運びを、おそらく決まったフレーズの組み合わせで覚えていくのだと思います。

たとえば [Y] のキーを押した状態から他のキーへ指を運ぶ動作はキーの数だけ存在
します。
この指の運びを、最初からすべてのキーの組み合わせの数だけ覚えるのはちょっと無理。

だけど常にホームポジションに戻ることで、各キーへの指の運びを1つだけ覚えれば
確実にキーを探せるというわけです。


●小型キーボードとタッチタイプ

小型キーボードでキーピッチが詰まった場合も、とりあえず形だけホームポジションに
手が乗れば何とかなります。
サイズが違うためキーの位置も変わっているはずですが、すべて等幅なら比較的容易に
補正することが出来ます。

それは指を出す方向は一緒だから。
伸ばす距離が変わるだけでキーの位置のあたりが比較的容易に付けられるというわけです。

だから一部のキーだけ変形してキーピッチが狭くなっていたりすると、指を運ぶ角度
が変わってしまいます。あるはずの方向に無意識に手を伸ばしても、キーを探すことが
なかなか出来ないのではないかと考えられます。

1. キー配列が変わっていて一部のキーが別の場所に移動している場合
  そのキーの位置は完全に独自に覚え直し

2. 一部のキーだけキーピッチが変わっている
  そのキーに対して指を伸ばす方向と距離が変わってしまう
  角度と距離の両方に対して補正が必要。

3. 全部等スケールで小さくなった場合
  キー間の距離が違っていても指を伸ばす方向は合っている。

よって 3つのケースでは、全部のキーが等幅の方が一番覚え直すこと、補正する部分が
少なくて済むのではないかと考えられます。

あくまで数字や記号キーを含めてすべてのキーをタッチタイプで入力する前提です。

同じ理由から、EeePC や ELECOM TK-UP84CP 等のように数字の段が微妙に左に
ずれているキーボードは、数字の入力でかなりタイプミスしました。

またせっかく登場した Happy Hacking Keyboard Professional の日本語版も、
最下段 Z X C~ の段が左にずれているので購入を躊躇してしまいます。(悔しい)

・最低限キー配列がそのままであること (シグマリオンや LOOX U のようにキーの位置が移動していない)
・キーピッチを小さくするなら全部まとめて小さくする (部分的に変えない)

これが個人的には理想の小型キーボードです。
だから HTC Shift はかなり気になる存在なのです。


おそらく英語キーボードのスペースに無理矢理日本語キーボードを押し込めた事情が
あるのだとは思います。
それでも全部のキーが等幅な小型キーボードも出して欲しいと切望します。


関連エントリ
VAIO type P Windows7 beta とバックライト調整など
DHARMAPOINT キーボード
Bluetooth キーボード Rboard for Keitai RBK-2000BT2
emobile EM-ONE 改造その2 ([es]もOK)
emobile EM・ONE USBキーボードの改造
東プレ Realforce 買った!



Debian (lenny) を使った設定メモ
Subversion が使えるところまで


●準備

Debian -- The Universal Operating System

左側の CD ISO images から "testing" distribution をダウンロード。
必要なのは debian-testing-i386-CD-1.iso だけ。


●VirtualBox

今回は VirtualBox 2.1.2 を使っています。

VirtualBox

(1) 仮想マシン作成
  新規→ OSタイプ Linux / Debian を選択 → RAM default の 256MB

(2) 仮想ハードディスク
  新規 → 可変サイズのストレージ
    → 容量必要に応じて(今回はdefault 8GBを選択) → 完了

swap を使うなら、swap 専用に仮想ハードディスクを分けて作成しておいた方が
良いと思われます。

(3) 作られた仮想マシンを選択して「設定」
   CD/DVD-ROM
     → CD/DVD ドライブのマウントにチェック
     → ISOイメージファイルを選択
     → 仮想メディアマネージャに debian-testing-i386-CD-1.iso を追加&選択
   ネットワーク
     → 割り当てを「NAT」から「ホストインターフェース」に変更

1.x の時はコマンドラインで設定が必要だったので、ネットワーク設定は以前より
簡単になっているようです。

(4) キーボードの確認
   キーボードに右 Control キーがあるならそのままで OK
   もし無いなら、メニューのファイル→環境設定→入力
     ここでホストキーを別のキーに変更しておく

(5) 起動
   マウスがキャプチャされた場合(マウスカーソルが消えた場合)は、右 Control
   キーで復帰することをあらかじめ覚えておきます。
   (4) でキー割り当てを変更した場合はそちら。


●Debian install

(1) 起動した画面で「Install」選択
   言語選択 日本語 → あとはインストーラに従う

インストーラのメッセージや手順は etch と同じです。
(PS3 やっぱり Debian 再インストールメモ)

(2) 以下手順

スワップは設定しない方針で。必要になったら別の仮想ハードディスクを作って
割り当てる。または仮想マシンに割り当てる物理メモリ量を増やす。

キーボード配置の選択
  日本 (106 キー)

ネットワークの設定
  ホスト名: 任意
  ドメイン名: 任意

ディスクのパーティショニング
  手動
	→ "IDE1 マスタ (hda) - 8.6GB VBOX HARDDISK" を選択
	→ 「新しいパーティションテーブルを作成しますか?」 はい
	→ "基/論 8.6GB  空き領域" を選択
	→ "新しいパーティションの作成" を選択
	→ サイズ 8.6GB のまま、続ける
	→ "基本パーティション" を選ぶ
	→ マウントポイントが / なっていることを確認して
		"パーティションのセットアップを終了" を選ぶ
	→ "パーティショニングの終了とディスクへの変更の書き込み"
	→ スワップがないと怒られるけど無視 (いいえ を選ぶ)
	→ 書き込みの最終確認が出るので「はい」

root のパスワード、ユーザーアカウントの設定

パッケージマネージャの設定
  別の CD や DVD を検査しますか?: いいえ
  ネットワークミラーを使いますか?: はい
	ミラーを選ぶ
  Debian パッケージ利用調査に参加しますか?: いいえ

ソフトウエアの選択
  デスクトップ環境のチェックを外して、ウェブサーバとファイルサーバを追加
    [ ] デスクトップ環境
    [*] ウェブサーバ
    [ ] 印刷サーバ
    [ ] DNS サーバ
    [*] ファイルサーバ
    [ ] メールサーバ
    [ ] SQL データベース
    [ ] ラップトップ
    [*] 標準システム
  続ける

samba server
  ワークグループ/ドメイン名: 任意
  DHCP から WINS 設定を使うよう smb.conf を変更しますか?: はい

GRUB ブートローダのインストール
  マスターブートレコードに GRUB ブートローダをインストールしますか?: はい

インストールの完了
  メニューの デバイス → CD/DVD-ROM マウントの解除
  続けるを選択し再起動、しばらく待つと login: プロンプトになる。


●Debian の設定

(1) root でログインして ssh を入れる

コンソールでそのまま続けても構いませんが、日本語がでないしテキストのコピペが
出来ないので ssh 入れて putty 使います。

# vi /etc/apt/sources.list

deb cdrom:[Debian GNU/Linux testing _Lenny_ - Official Snapshot i386 CD Binary-1 20090119-04:20]/ lenny main
の行をコメントアウトします。先頭に # を付ける。

# apt-get update
# apt-get install ssh

文字化けしてるけど気にしない。何か聞かれるので Y

# vi /etc/dhcp3/dhclient.conf

send host-name "ホスト名"

send host-name の行のコメントを外してホスト名(サーバー名)を書き込む。

終わったらログアウト

PuTTYjp
puttyjp を起動して、ウィンドウ→変換→文字セットを「UTF-8(CJK)」に変更
ホスト名を入れてログインする


(2) サーバーの設定

以後 root 作業です。

# vi /etc/samba/smb.conf

[homes] の read only を no に変更
read only = no

# smbpasswd -a USER

ユーザーを追加してパスワード登録。('USER' は作成した個人アカウント)
これでファイルなどの転送が Windows の explorer からできます。

# apt-get install subversion
# apt-get install libapache2-svn libapache2-mod-encoding

dav_svn の設定はマニュアルを参考にします。

# more /usr/share/doc/libapache2-svn/README.Debian

/etc/apache2/mods-available/dav_svn.conf を見よ、と 1行しか書いてなかった。

# cd /etc/apache2
# vi mods-available/dav_svn.conf

下記の行のコメントを外す (必要に応じて書き換える)

<Location /svn>
  DVA svn
  SVNPath /var/lib/svn
  AuthType Basic
  AuthName "Subversion Repository"
  AuthUserFile /etc/apache2/dav_svn.passwd
  Require valid-user
</Location>


SVNPath の代わりに SVNParentPath を使うと複数のリポジトリを指定出来るように
なるとのこと。Windows の apache2 で dav_svn を設定するとこちらになるので
前から違うなと思ってましたが、、ここにありました。

# a2enmod auth_basic authn_file
# htpasswd -c /etc/apache2/dav_svn.passwd USER

Basic 認証のユーザー登録。'USER' 部分は置き換えてください。

リポジトリ作成。(既存のリポジトリをコピーして使うなら不要)

# svnadmin create /var/lib/svn

ポート番号などの設定を変えるなら次も書き換える。変更しないなら不要

# vi ports.conf
# vi sites-available/default
# vi sites-available/default-ssl

SSL の設定はやはりマニュアルを参考にする。

# zmore /usr/share/doc/apache2/README.Debian.gz

設定方法が書いてありました。手順通りに実行してみます。

# apt-get install ssl-cert
# make-ssl-cert generate-default-snakeoil --force-overwrite
# a2ensite default-ssl
# a2enmod ssl
# /etc/init.d/apache2 restart

これは self-signed のみのサンプルです。必要に応じて変更してください。
今回の用途は家庭内サーバー用。


(3) 確認

PC や他のマシンのブラウザで確認します。うまくいけば次の通り。

http://作成したサーバー/svn
https://作成したサーバー/svn

ユーザー名とパスワードが必要。空のリポジトリが表示される。


関連エントリ
PS3 やっぱり Debian 再インストールメモ