月別アーカイブ: 2008年7月

WindowsMobile キーボードと S12HT の TouchFLO

WindowsMobile 端末には、キーボードを英語配列と認識するものと
日本語配列と認識するものの 2種類あるようです。

この違いは主に、外付けキーボードを繋いだ場合や、キー入力をシミュレートする
ツールで問題となります。touchkeysip での文字入力もその一つです。

想定しているキーボードと内部で認識しているキーボードの配列が異なっている場合、
キーの刻印と入力される文字にずれが生じます。

Bluetooth keyboard を販売している Reudo のページに、機種による配列の違いが
まとめられています。

Rboard for Keitai RBK-2000シリーズ

内蔵の QWERY キーボードを持っている日本向け端末は、日本語配列を採用している
可能性が高いようです。(100% ではない)
逆に QWERTY キーボードを持っていない端末は、単体での利用では特に影響が
ないためか、英語配列のものが多いようです。

おそらく日本語配列にするメリットは変換や漢字などのキーを認識できることで、
英語配列のメリットはカスタマイズする(変更する)コストが低いことだと考えられます。

ローマ字入力では問題ないものの、JISかな入力を利用するソフトだとこの違いが
致命的となります。特に ctrlswapmini では 一時かな モードを多用しているので
英語配列の機種ではうまく動作しないようです。
逆に日本語キーボード配列を採用している端末では、ある程度は動作する可能性が
残っているといえます。

一時かなモードは、W-ZERO3[es] 系の端末がテンキー入力で使用している特殊な
キーストロークです。
IME 自体はローマ字入力モードでありながら、送られてきたキーをその場限りで
JISかな入力と見なすことができます。

KEYDOWN, KEYUP のそれぞれ両方を、VK_KANA の DOWN/UP で囲みます。

KANA DOWN
KEY DOWN
KANA UP
KANA DOWN
KEY UP
KANA UP

この場合の KEY DOWN, KEY UP は JISかなモードの入力と見なされます。
この動作は便利なのですが WindowsMobile でしか使用できず
PC の IME では機能しませんでした。

● TouchFLO

EMONSTER lite S12HT には、TouchFLO と呼ばれる特殊なユーザーインターフェースが
搭載されています。
どの画面でも呼び出すことが出来、指だけで操作できるため便利そうではあるものの
メニューの内容が固定でカスタマイズできませんでした。

このメニューの内容は下記のレジストリを書き換えることで変更できるようです。

HKEY_LOCAL_MACHINE\Software\HTC\Biotouch
 ActionScreen
	新電子メール
	新規 SMS
	新規 MMS
	新しい予定
	新しい仕事
	新しいメモ
	新しい連絡先
 APLauncher
	電子メール
	Internet Explorer
	コミュニケーションマネージャ
	SMS/MMS
	タスク
	予定表
 MediaHubMini
	ミュージック
	フォト
	ビデオ

実際に APLauncher の “\Windows\iexplorer.exe” を
“\Program Files\NetFront Browser v3.5\NFBrowser.exe” に書き換えて、
NetFront を登録することが出来ました。

関連エントリ
EMONSTER lite S12HT の文字入力を MS-IME に切り替える
EMONSTER lite S12HT と文字入力
EMONSTER lite S12HT メニューや通信など

EMONSTER lite S12HT メニューや通信など

●大きさ

s12ht

小さいけど そのうち出るらしい Touch Diamond には負ける
S12HT 102x51x11.35 120g
Diamond 107x55x15.8 110g

テンキーは付いているものの、ソフトキー も OK ボタンも無いため
操作には画面タップが必要となります。

●画面

320×240 QVGA で、320 dot 側 (縦) が 5.2cm (5.2×3.9cm)
ちょうど EM・ONE の縦 (480dot) と同じ長さ (9.0×5.4cm)

●メニュー

メニューが複数入っています。

・普通のスタートメニュー
  ウィンドウズキー

・TouchFLO
  画面下のメニューバーを上に持ち上げる感じにスライド

・クイックリスト
  終話ボタン長押し

・クイックタスク
  テンキースライド

・クイックメニュー
  Today 画面右上から、タスクメニュー

・ホーム画面
  Today に表示されているメニュー

●通信

EM・ONE で契約した データプランの SIM でも通信可能
 → emb を選ぶ

タイトルバーのアンテナマークやアイコンが正しく表示されないことがあるけど、
接続自体は問題無さそう。

接続→接続→詳細設定→ネットワークの選択
  プルダウンメニューで EMnet から emb に変更する

ネット接続を手動でやるなら
  設定→接続→接続→既存の接続を管理→ポップアップメニューから接続
  ブラウザやインターネット共有でも可能

切断は CommManager
  設定→接続→CommManager →データ接続をタップ

●PC から接続 (インターネットの共有)

EM・ONE と違い、PC 側でモデムとしてダイヤルアップ設定を行うわけでは
ないようです。インターネットの共有を使います。

プログラム→インターネットの共有→接続
  PCとの接続方法は、USB または Bluetooth PAN を選択できる
  ここでも接続先を選択可能 → emb 等

S12HT 側で 接続 したら、PC 側から Bluetooth PAN で繋ぎます。

Vista の場合、ネットワークのプロパティから
  ネットワーク接続の管理→ Bluetooth ネットワークの接続
あらかじめペアリング等の設定が必要。

一応 EeePC 901 内蔵 Bluetooth + Vista の環境で接続できました。

Bluetooth 経由でも EM・ONE より高速です。

●ソフトの動作確認

touchkeysip
  問題無く動作します。ただし英語キーボード配列のキーコードが必要なので、
  一部の記号は修正が必要となるようです。
  (Today 画面には一切 plugin を入れていません。ホーム画面も外しています)

ChiRaKS
  きちんと動作しました。EM・ONE ではアクセラレータノ関係か描画に問題が
  ありましたが、EMONSTER lite S12HT では大丈夫です。

● ctrlswapmini や em1key に関して

EMONSTER lite S12HT は、キーボードを英語配列と見なしているようです。
その場合次の問題があります。

・キー配列が異なるため記号部分のキーコード修正が必要となる
・Advanced Wnn はテンキー入力専用なので、MS-IME に切り換えておく必要あり
・MS-IME が JISかな入力モードにならない

特に日本語入力のカスタマイズでは、JISかな入力の操作をシミュレートしている
ためうまく動作しないようです。

文字入力と関係ない単なるキーコードの置換のためなら em1key は利用できるかも
しれません。

em1key
ctrlswapmini

関連エントリ
EMONSTER lite S12HT の文字入力を MS-IME に切り替える
EMONSTER lite S12HT と文字入力

EMONSTER lite S12HT の文字入力を MS-IME に切り替える

EMONSTER lite (S12HT) 標準の IME は Advanced Wnn です。
どうやら テンキーのトグル押し→仮名変換 専用に作られているらしく
Bluetooth 等の外部キーボードを繋いだ場合に日本語入力できませんでした。

症状について 詳しくはこちら

そこで、Advanced Wnn を使わずに MS-IME で日本語入力を行う方法を調べてみました。
下記のようにレジストリを書き換える必要があります。
(レジストリを書き換えは必ず自己責任で)

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Layouts\e0010411]
"Keyboard Layout"="00000411"
"Ime File"="imjp31.dll"
"Layout Text"="Microsoft IME3.1(JPN)"

修正後、リセットまたは電源を入れ直すと MS-IME になります。

これで Bluetooth Keyboard を使っても、日本語入力の取りこぼしがなくなりました。
ローマ字入力で文字入力も漢字変換も出来ます。
その代わりテンキーで数字以外の文字を入力出来なくなります。

元に戻すにはレジストリの値を復元してください。
初期状態、Advanced Wnn の時の値は下記の通りです。

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Layouts\e0010411]
"Ime File"="M5ImeMgr.dll"
"Layout Text"="Keytouch Multiplay"
"Keyboard Layout"="00000411"

割り切って、ソフトウエアキーボード & Bluetooth キーボード中心で使うなら
これもありかもしれません。
元々キーが少ないのでテンキーをカスタマイズに使えるし。

関連エントリ
EMONSTER lite S12HT と文字入力

EMONSTER lite S12HT と文字入力

先日 EMONSTER lite S12HT を購入しました。
EMOBILE の WindowsMobile 端末です。

EMONSTER lite (S12HT)

無線LAN 無し、QWERTY キーボード無し、GPS 無し、加速センサー無し
その代わり小さく薄く、比較的入手しやすい価格帯です。
スライドテンキー付き。画面タッチによる操作 TouchFLO も可能。

●キーコード

テンキーのコードは WindowsMobile の winuserm.h に定義されている値で、
いわば標準。キーに対して 1つのコードが割り当てられています。

0~9  VK_T0~VK_T9  '0'~'9'
*     VK_TSTAR      VK_F8
#     VK_TPOUND     VK_F9

通話  VK_TTALK      VK_F3
終話  VK_TEND       VK_F4

決して ZERO3 es 系のような、トグル入力を無理矢理再現したり、入力モード
によって異なるコード列が送られてきたりする複雑なものではありません。
テンキー入力の状態と入力文字の制御は、IME など別のところが受け持っているようです。

●IME

IME は Advanced Wnn で予測変換付き。
設定画面は次の操作で出てきます。

設定→個人用→入力→入力方法
  入力方法を「ひらがな/カタカナ」か「ローマ字/かな」に切り替えてから [オプション]

または [*] キーの長押しから「オプション」を選択

単語登録や予測入力を無効にすることが出来ます。

●テンキートグル入力

テンキーの操作は カーソルキー と 決定キー の他、
[1]~[9],[0],[*],[#],[C] だけで行います。
キーが少ないため [*] [#] はいくつかの機能を兼用しています。

確定済み状態
 [*] 文字種切り替え
 [#] 記号入力 (一覧表示)

入力候補がある状態
 [*] 濁点・半濁点
 [#] 逆トグル

長押し
 [0]~[9] 数字入力
 [*]   メニュー表示
 [#]   マナーモード切り替え

よって数字入力モード [12] でも ‘*’ や ‘#’ の直接入力は出来ません。

自動送りは無さそうです。

変換は「↑」

トグル入力時のカーソル位置は文字の右側につくタイプですが、
→ キー補正が無いようです。

同じ文字の入力を繰り返すとき区切りとして間に [→] キーを入れますが、
このときカーソを右に移動するキーコードも発行されます。

通常の文字入力では、常に IME 変換バッファの末尾にカーソルがあるため
カーソルの右移動も無視されるため問題となりません。

また英字入力時も必ず 1文字だけの IME バッファが活用されるので、
カーソル移動が無視されるため問題になりません。

唯一問題となるのは、日本語入力時にカーソル位置を左に動かして
文字の挿入状態で同じキーの文字を複数連続で打ちたい場合です。

ちなみに一般的な携帯ではカーソルが文字の左側に付くので、→ でカーソルを
送ると確定になります。

改行の単独入力は出来ないようです。

●タッチ入力

タッチパネルの反応は鈍め。
TouchFLO があるため指での操作に合わせて調整されているのか、
または付属の保護シートが堅いせいかもしれません。

● Bluetooth キーボード

USB Host は無いですが、Bluetooth によるキーボード接続は可能です。
RBK-2000BT2 で試してみました。

IME が On の場合、ローマ字入力を取りこぼしてまともに日本語入力出来ません。
たとえば素早く [k][a] と入力しても ‘k’ が落ちて「あ」が入ります。
ゆっくり1文字単位で [k]、[a] を入力するとやっと「か」が入ります。
IME の文字バッファが 1文字分しかない状態に似ています。

さらに RBK-2000BT2 の数字キー [1]~[9],[0] でもトグル入力になってしまい
直接数値入力が出来ませんでした。

IME を off にすると、上記のような取りこぼしもなくキータイプに合わせて
快適に英数字入力できるようになります。
ちなみに配列は英語キーボードなので、RBK-2000BT2 ではキー刻印通りに入力出来ます。

やはり IME レベルでテンキーのトグル入力処理が行われているようです。
そしてこの IME (Advanced Wnn) はテンキー入力専用に作られているらしく、
直接のキーボード入力には向いていません。

強制的に MS-IME に切り替える方法があれば解決するかもしれません。
MS-IME らしきファイルやレジストリは存在していました。

続き
EMONSTER lite S12HT の文字入力を MS-IME に切り替える

EeePC 901 に Windows Vista その5

Program Files も Symbolic link で置き換えました。
やり方は前回の winsxs と同じです。
C:\Program Files にそのままアプリケーションを install しても
C: ドライブを圧迫することがありません。

セキュリティ系ソフトはさすがに Symbolic Link を拒否するらしく、
実在の path を指定する必要があります。

VisualStudio を install してみます。
追加で Windows\Microsoft.NET を Symbolic Link にします。
他のアプリが起動していなければ movefile を使わなくても可能です。
コマンドプロンプトをメニューの「管理者として実行」で起動します。

 cd C:\Windows
 robocopy Microsoft.NET D:\Windows\Microsoft.NET /E /COPYALL /SEC
 ren Microsoft.NET Microsoft.NET.moved
 mklink /d Microsoft.NET D:\Windows\Microsoft.NET

下記の 3フォルダが D: ドライブを指し示すようになりました。

 C:\Program Files → D:\Program Files
 C:\Windows\winsxs → D:\Windows\winsxs
 C:\Windows\Microsoft.NET → D:\Windows\Microsoft.NET

C: ドライブをほとんど消費することなく VisualStudio をインストールできます。
VisualC++ 2008 Express Edition 英語版を導入した結果。

インストール前
 C: free 1.76GB
 D: free 5.03GB

インストール後
 C: free 1.72GB
 D: free 4.57GB

XP の時より空き容量が増えました。
でもあまりやりすぎると最初から D: に OS インストールしたのと変わらないので
ほどほどに。

関連エントリ
EeePC 901 に WindowsVista
EeePC 901 に WindowsVista (2)
EeePC 901 に WindowsVista (3)
EeePC 901 に WindowsVista (4)