1. 表紙 top page

汎用キーバインディング変更ソフト「のどか」
2. 概要 abstract

「のどか」は、「窓使いの憂鬱」の派生バージョンです。 サポート開発主体は、「窓使いの憂鬱」とは異なります。お間違えの無いよう、よろしくお願いいたします。

  • Windows 2000, Windows XP, Windows Vista で動く汎用キーバインディング変更ソフトです。
  • 「窓使いの憂鬱」Version 3.30から「のどか」Version 4.02までの変更/修正点については、改版履歴を ご覧ください。
  • 2 ストロークキーを設定できます。
  • 個々のウィンドウに別々のキーバインディングを割り当てることができます。
  • Control などのモディファイヤキーを自由に作成することができます。
  • ウィンドウの移動、最大化、最小化するキーを作成できます。
  • エディットコントロールを Emacs 風にすることができます。
  • U*IX 的な素敵なカスタマイズ機能を提供しています。
  • 暫定扱いかつ全ての機能はサポートしていませんが、タッチパッドと併用するときに便利な ThumbSense(サムセンス)対応コードも取り込みました。
  • 試用版 は、正式版からの制限として、起動後30分で動作停止します。正式版(税込み 1800円)は、http://appletkan.com/ にて販売しています。
    なお、これは署名付きドライバへの道を探るためです。ソースコードは、Common Public License で http://sourceforge.jp/projects/nodoka4/ にて公開予定です。

しかし、次のような危険性があります。

  • Windows XP 64bit Edition, Windows Vista 64bit Editionでの動作は可能です。しかし、まだ署名付きのデバイスドライバではありません。
  • Vista 32/64bitやXP 64bitでは、管理者権限で動作しているプログラムや64bitのプログラムに対して操作ができず、Globalなキーマップになるなどの不具合があります。 なお4.02から Vista 32bitにおける IE7 の保護モードに対応し、また管理者権限で動作させると、管理者権限/通常権限で動作している双方のプログラムの操作が出来るよう改善しました。
  • 標準でない キーボードドライバを利用していると Windows 2000/XP/Vista がブルースクリーンになって終了してしまうことがあります。そのような場合は、標準でないドライバをアンインストールするか、「のどか」の利用をあきらめるしかありません。
    標準でないキーボードドライバとは、ロジテックあるいはロジクールのマウスに付属のキーボードドライバや AltIME や、猫まねきのキーボードドライバなどです。
    インストールされている他のソフトウェアとの互換性の有無を確認されるには、FAQの項をご覧頂き、レジストリ HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96B-E325-11CE-BFC1-08002BE10318} の
    UpperFilters の値をご確認ください。kbdclass のみの記載であれば、互換性に問題があるソフトェアがインストールされていないと言えます。
  • 他人が使用する可能性のある PC へのインストールは、おやめください。(どのような問題があるかについては、セキュリティ の 項を ご覧ください。)
  • バグの項や、著作権表示の項も、必ず、ご覧ください。不都合が発生した場合の責任の所在は、試用版ならびに正式版に関わらず、利用者にあります。
     
  • このヘルプファイルでは、バックスラッシュ記号が使われているところがありますが、半角の¥記号ですので、読み替えてください。
 
3. インストール install
  1. 「のどか」以外のキーボードカスタマイズソフトを利用している場合はアンインストールします。
    • たとえば、AltIME猫まねき  などです。誤動作の原因となります。またAutoHotkeyXkeymacs の場合には動作すると考えますが、不具合が発生した場合、どちらの問題か判りにくくなりやすいので、アンインストールを推奨します。
    • 特に AltIME  を使用していた場合は、FAQ の最初の項目をよく読んでください。
    • PGPi を利用しているとうまく動きません。GnuPGを、お使いください。
    • nProtect GameGuard が動作するプログラムで、「のどか」が動作中だと、キーボード入力できないなどの問題が発生します。
    • VMware Workstationも、nodokad.sysと同じように組み込まれるフィルタドライバが存在するため、不都合が発生が高くなります。FAQの最初の項目を、ごらん頂き、レジストリをご確認ください。 
  2. 以前のバージョンの「のどか」を利用している場合は、アンインストールの項を、ごらん頂き、「のどか」を終了させ てください。試用版から正式版へ差し替える場合も、同様です。
    • なお、Windows Vista 64bit Edition と Windows XP 64bit Editionの場合には、必ず「のどか」を終了し、必ずアンインストールした後で、PCを再起動してください。
      もし、アンインストールとPC再起動を実施しないと、ファイルの上書きに失敗したり、以前のデバイスドライバの削除に失敗するなどで、うまく起動できなく なります。その場合には、下記、復旧用ドライバについてを、ご覧ください。
    • また、「窓使いの憂鬱」Version 3.30.1以前、あるいは「繭(まゆ)」Version 4.00.0 をお使いの場合にも、「窓使いの憂鬱」あるいは「繭(まゆ)」を終了し、アンインストールした後で、PCを再起動してください。
      ショートカットキー名称、プログラム名称が異なるため、古いものが残ります。
    • Vista 64bit Editionの場合には、デバイスドライバに署名が付いていないため、Windows ブートメニュー表示時に、F8キーを押して、「ドライバ署名の強制を無効にする」を選択して起動させてください。 これは、通常使用時でも同じです。もしも、これを忘れると、マウス/キーボード操作が出来ないまま、ログイン画面となり、打つ手が無く、電源を切るぐらいしか できなくなります。
      ReadyDriver Plusというソフトを導入して、自動的にドライバ署名強制無効モードで起動させるなども、ご検討ください。
  3. 入手された実行ファイルを Administrator(管理者)権限で実行してください。すると「のどか」のインストール作業が開始されます。
    2. で、アンインストールを実行しなかった場合 で、Vistaの場合、ファイルの上書きに対する問い合わせがあるので、上書きを許可してください。
    なお、オプションについては、以下のとおりです。
     
    • インストール先
      実行ファイルなどがインストールされるフォルダです。デフォルトのままでよいでしょう。必要ならば参照ボタンを押して、変更可能です。
       
    • All Users のスタートメニューに登録
      すべてのユーザのスタートメニューにショートカットが登録されます。なおスタートアップに登録されませんので、自動起動しません。
       
    • 個人のスタートアップに登録
      現在インストール作業を実行しているユーザのスタートアップに登録され、自動起動するように設定されます。
       
    • キーボードの種類
      日本語キーボードの場合には、日本語109(106)キーボードを、また英語キーボードの場合には、英語104(101)キーボードを選択してください。
       
  4. インストールが終わったらPCを再起動してください。
  5. インストール時に、スタートアップに登録を設定していないならば、nodoka.exe を実行することで動作開始します。 その場合、お好みにより、スタートアップにショートカットを作ると良いでしょう。試用版の場合には起動後30分で自動終了します。
  6. もし、「窓使いの憂鬱」の設定ファイルをお使いの場合、正しく読み込まれていません。ログをご確認いただき、必要であれば、お使いの .mayu ファイルのファイル名自身を、dot.nodoka へ変更し、設定ファイルの中で、include しているファイル名も ご変更ください。
  7. また「窓使いの憂鬱」に対応したプラグインは、名称変更された「のどか」では動作しない可能性があります。

 

復旧用ドライバについて

Windows 2000/XP/Vista の場合「のどか」ドライバは nodoka.exe の実行の有無に関わらずロードされます。このため、たとえ「のどか」を自動起動にしていなくても、ドライバの不具合によって「のどか」のアンインストールも含めた操作が不能になる場合があります。その場合でも下記の手順によって Windows の再インストールを回避することができる場合があります。

  1. 電源ボタンの長押し等によって一旦、強制的に電源を落したあと回復コンソールを起動します。尚、回復コンソールでの起動ができることを「のどか」のインストール前に確認しておくことをお勧めします。(参考: Windows XP 回復コンソールについて)
    なお、Vistaの場合には、Vistaインストールディスクで、PCをブートさせる必要があります。(参考: 回復コンソールの後継機能)
  2. %windir%\system32\drivers 内の nodokadrsc.sysnodokad.sys の名前で上書きコピーします。(即ち nodokad.sysnodokadrsc.sysで置き換える。64bit OSの場合には、nodokadx64rsc.sys  を nodokad.sys の名前で上書きコピーしてください。)
  3. 再起動します。
  4. コントロールパネルから「のどか」をアンインストールします。
4. アンインストール uninstall

「のどか」を実行中の場合には、タスクトレイ(通知領域)上のアイコンを右クリックして、終了を選んで、終了させてください。次にコントロールパネルから「のどか」をアンインストールしてください。アンインストール後、必ずPCを再起動してください。アンインストール後、nodoka.dll がインストール先フォルダに残る場合があ ります。不要ならばPC再起動後、手作業で削除してください。

5. メニュー menu

「のどか」を実行すると、タスクトレイに「のどか」のアイコンが表示されます。

 

この「のどか」のアイコンを右クリックするとメニューが出てきます。

 
再読み込み(R)

設定ファイルを再読み込みします。&LoadSetting と同じです。

選択(C) ►

サブメニューから設定ファイルの切り替えを行います。「のどか」がデフォルトで用意しているサンプル設定は 8 つあります。以下の条件の組み合わせとなります。

  1. キーボードは日本語 109 キーボードか、英語104 キーボードか。
  2. キートップの表示の通りに使うのか、109 (または 104) キーボードを使っているが、104 (または 109) キーボードと同じ配置で使うのか。
  3. Emacs (UNIX で標準的なエディタの一つ) に似せたバインディングを使うかどうか。

このうち、a はインストール時に決定されるので、サブメニューに表示されるものは b, c の組み合わせ 4 種類になります。

デフォルト設定以外に独自の設定が必要な場合は、ホームディレクトリdot.nodoka ファイルを作りそのファイルに設定を記述します。そしてサブメニューで (ホームディレクトリから) を選びます。詳しくはチュートリアルカスタマイズを参照してください。

設定(S)...

選択(C) ►の選択肢となる設定ファイルを作成します。

右側の矢印ボタンでメニューに表示される順序を変更することができます。

「追加(A)」又は「編集(E)」ボタンを押すか、行をダブルクリックすると編集ダイアログボックスが表示されます。

「名前(N)」には、メニューに表示される名前を記述します。「ファイル名(F)」を空欄にするとホームディレクトリから dot.nodoka を読み込みます。「シンボル(S)」には、条件分岐で使用されるシンボルを記述します。シンボルの頭に -D をつけ、複数のシンボルは ; で区切ります。

一時停止(T)

「のどか」の機能を一時的に停止します。キーボードからの入力は、「のどか」が存在しない時と同じ動作をします。このとき、タスクトレイのアイコンは になります。

調査(I)...

調査ウィンドウとログウィンドウを表示します。

それぞれの場所でキーを押すことにより、キーのスキャンコードや仮想キーコードを調べることができます。

また、ターゲット を調べたいウィンドウまでドラッグするとウィンドウクラスとウィンドウタイトルがログに出力されます。ここで調査したウィンドウクラス名とウィンドウタイトルは、設定ファイルで window に記述することができます。(ここで調査する代わりに、FUNCTION &WindowIdentify を利用しても調べることができます)

ログ(L)...

ログウィンドウを表示します。

調査(I)...の結果やエラーなどがここに表示されます。(「□詳細(D)」をチェックすると、「のどか」の内部の変換処理が詳細に表示されますが非常に難解です)

バージョン(V)...

バージョン情報などを表示します。バグレポートをする時にこの内容をコピーすると便利です。

ヘルプ(H)...

このマニュアルを表示します。

6. チュートリアル tutorial

この章では、「のどか」を初めて使うユーザーが、実際に設定を繰り返しながら、簡単なカスタマイズであれば問題なくできるレベルに到達することを目指します。まずはこの文章に沿って、実際にサンプルの設定を試してみてください。詳細が知りたい場合には、各章のリンク先で詳細を読むことができますので、疑問点があればリンク先を ご覧ください。

i. 自分用の設定ファイルを作る

まず、タスクトレイメニューの選択(C) ►(ホームディレクトリから)で使われる自分用の設定ファイル、dot.nodoka ファイルを作ります。(インストール 先のディレクトリに存在する dot.nodoka をホームディレクトリへ、コピーすると良いでしょう。 なおエクスプローラにおいて、拡張子を表示していない設定にされている場合には、誤った拡張子が付いていないか、確認ください。)

まず、環境変数 HOMEDRIVE と HOMEPATH で、ホームディレクトリの位置を 確認します。

HOMEDRIVE と HOMEPATHの確認方法

アクセサリ-コマンドプロンプトを実行して、set[Enter] を入力すると HOMEDRIVE と HOMEPATH を含め、すべての環境変数の設定値が表示が可能です。

HOMEDRIVEには、通常 c: が設定されており、HOMEPATH に残りのパスが設定されています。具体的には、XPでは、c:\Documents and Settings\ユーザ名。Vistaでは、c:\Users\ユーザ名 あるいはエクスプローラからたどるなら > c: > ユーザー > ユーザ名 となっているでしょう。

このディレクトリに、dot.nodoka というファイルを作ります。

参照: ホームディレクトリ

ii. 作った設定ファイルに最低限の設定を書く

まず、コピーしたdot.nodokaファイルには、デフォルトで、109か104キーボードの設定がされているので、include されているかどうか確認してください。

109 日本語キーボードの場合

dot.nodoka ファイルの先頭に以下のように記述します。

include "109.nodoka" # 109 キーボード設定

好みに応じて、以下の各行を書くか書かないかを決めてください。(タスクトレイメニュー選択(C) ►のデフォルト設定に対応しています)

include "104on109.nodoka" # 109 キーボードを 104 キーボード風に
include "default.nodoka" # Emacs ライクなさまざまな設定

104 英語キーボードの場合

dot.nodoka ファイルの先頭に以下のように記述します。

include "104.nodoka" # 104 キーボード設定

好みに応じて、以下の各行を書くか書かないかを決めてください。 (タスクトレイメニュー選択(C) ►のデフォルト設定に対応しています)

include "109on104.nodoka" # 104 キーボードを 109 キーボード風に
include "default.nodoka" # Emacs ライクなさまざまな設定

ここまで書き込んだら、タスクトレイメニューで選択(C) ►から(ホームディレクトリから)を選んでください。ログウィンドウにエラーメッセージが出ないようであれば、ここまではうまくいっています。これでカスタマイズの準備ができました。この先に自分好みの設定を書き加えていくことになります。そして書き加えたら再読み込み(R)します。

ログウィンドウに「error: failed to load.」と出ていた場合、その 設定ファイルの読み込みに失敗しています。設定ファイルのパスと、行数、エラーメッセージが表示されているので、それを参考に修正してください。

参照: contrib/nodoka-settings.txt

iii. 普通のキーを入れ替えてみる

以下、説明の便宜上 109 キーボードを使っているものとして話をすすめます

まず、Esc キーと 半角/全角 キーを入れ替えてみます。これは、dot.nodoka ファイルの末尾に以下のように追加します。

keymap Global
key Esc = 半角/全角
key 半角/全角 = Esc

再読み込み(R)をして確認してみてください。

1 行目の keymap Global は、次の keymap 指定までの記述は全ての ウィンドウで有効な設定とする、という指示です。

2, 3 行目のように key キー名 = キー名 と書くことで、あるキーを押したときの挙動を変更できます。上の例であれば、Esc が押されたときは 半角/全角 が押されたように、半角/全角 が押されたときは Esc が押されたような動作になります。

キー名は、タスクトレイメニュー調査(I)...の「スキャンコードの調査」で調べたいキーを押すことでわかります。Esc キーと、半角/全角 キーを順に押したときのログ ウィンドウには、例えば以下のように表示されているはずです。

0x01 D-Esc
0x01 U-Esc
0x29 D-半角/全角
0x29 U-半角/全角

キー名の前の D- というのはキーが押された、U-半角/全角U- というのはキーが離された、という状態をそれぞれ表します。

参照: キー割り当ての変更

iv. 特定のウィンドウのみでキー割り当てを変更してみる  (お使いのWindowsの状態によっては正常に動作しないといった制限事項あり)

つぎに、Internet Explorer でのみ PageUp/PageDown キーで、Home/End の動きをさせてみます。dot.nodoka の末尾に以下のように追加します。
( お使いの Windowsによっては、プログラムのウィンドウのCLASS/TITLE名が正しく取得できない状態があります。詳細はバグの項をごらんください。)

window InternetExplorer /iexplore\.exe/ : Global
key PageUp = Home
key PageDown = End

1 行目の、window キーマップ名 /ウィンドウクラス名/ : 親キーマップ名 は、以降の指定は特定の ウィンドウについてのみ有効とする、という指示です。キーマップ名はわかりやすい適当な名前をつけます。親キーマップ名は Emacs っぽくするなら EmacsMoveEmacsEdit に、そうでなければ Global にすればよいでしょう。

ウィンドウクラス名を調査するには、タスクトレイメニュー調査(I)...の「ウィンドウの調査」で、調べたいウィンドウやコントロールに ターゲット をドラッグします。

Internet Explorer へドラッグすると (途中にさわった全てのウィンドウやコントロールの情報が出るので、他にもいろいろ出るはずですが)、次のような表示が出るはずです。

CLASS: C:\Program Files\Internet Explorer\iexplore.exe:IEFrame
TITLE: C:\Program Files\Internet Explorer\iexplore.exe:「のどか 」 - README - Windows Internet Explorer
Toplevel Window Position/Size: (-4, -4) / (1032x748)
Desktop Window Position/Size: (0, 0) / (1024x740)

この CLASS の部分から特徴的な文字列を抽出し、正規表現と呼ばれる記法で /文字列/ のように書けば OK です。正規表現がよくわからない場合には、\\\.\. と書くことに注意すればとりあえずあまり問題はないでしょう。

参照: ウィンドウクラス/タイトル名正規表現

v. キーがモディファイヤキーと共に押された場合に置き換えてみる (お使いのWindowsの状態によっては正常に動作しないといった制限事項あり)

つぎに、Internet Explorer での動作をさらに変更して、Ctrl + PageUp/PageDown で、Home/End を押したように動かしてみます。前章で追加した内容を変更して以下のように書き換えます。(C- がキー名の前に追加されました 。C-は、コントロールキーを指しています。)
( お使いの Windowsによっては、プログラムのウィンドウのCLASS/TITLE名が正しく取得できない状態があります。詳細はバグの項をごらんください。)

window InternetExplorer /iexplore\.exe/ : Global
key C-PageUp = Home
key C-PageDown = End

2, 3 行目のキーの指定については、やはりスキャンコードの調査で調べます。Ctrl + PageDown を入力すると、次のように表示されます。

   0x1d D-LeftControl
E0-0x51 D-C-PageDown
E0-0x51 U-C-PageDown
   0x1d U-LeftControl

1, 4 行目は Ctrl キーの押し/離しです。2, 3 行目から、C-PageDown が書くべきキー名ということになります。ここの C- というのは、Ctrl が押されている、というキーの状態を表す記号です。Ctrl キー以外にも、WindowsAltShift の状態、また CapsLockNumLock などのキーがロック状態にあるかどうかもやはり同様です。これらの特別なキーを、「のどか」では、モディファイヤと呼んでいます。 キー割り当て変更は、このようにモディファイヤを含めて指定することができます。

逆にいうと、前章までのキー割り当て変更では モディファイヤを何も指定していませんから、 CtrlAltなどが押されていると キーイベントの置き換えを行いません。

参照: モディファイヤの指定

vi. モディファイヤキーの状態と無関係に置き換えてみる (お使いのWindowsの状態によっては正常に動作しないといった制限事項あり)

前章の設定では、Ctrl + Alt + PageUp/PageDown と入力した場合、変換されずにそのまま入力されてしまいます。既に説明した通り、これは正しい動作です。(不正確な言い方ですが、モディファイヤが押されていると別のキー名になるので、前章の指定では置き換えが起きない、と理解してください)
( お使いの Windowsによっては、プログラムのウィンドウのCLASS/TITLE名が正しく取得できない状態があります。詳細はバグの項をごらんください。)

Alt が押されているかどうかにかかわらず Ctrl + PageUp/PageDownHome/End のように動作させるには、前章の設定を変更して以下のように修正します。
(説明の都合上、IEを例にしていますが、実際には、ALTキーを押しながらは、うまく動きません。IE5,6 あたりでは動作したものと考えます。)

window InternetExplorer /iexplore\.exe/ : Global
key *A-C-PageUp = *A-Home
key *A-C-PageDown = *A-End

これは、Alt が押されているかどうかと無関係(Aの前のアスタリスク記号が、モディファイヤーの無視を示していいます。)に Ctrl + PageUp/PageDownHome/End と置き換え、その際に Alt の状態は保存したままにする設定です。つまり、Alt が押されていなければ前章と同様の置き換えを行い、Alt が押されていれば Ctrl + Alt + PageUpAlt + Home のように置き換えます。

これを押し進めると、あらゆるモディファイヤの状態に拘わらずに置き換えをして、かつあらゆるモディファイヤの状態を保存して置き換える、という設定が可能です。具体的には、PageUp/PageDownHome/End と全く同様に使いたいという場合に、以下のような設定ができます。

window InternetExplorer /iexplore\.exe/ : Global
key *PageUp = *Home
key *PageDown = *End

(説明の都合上、IEを例にしていますが、実際には、単独で、ALTキーを押しながらは、うまく動きません。IE7では、CTRL+ALT+PageUp/Donwは、うまく動作します。)

このようにすれば、あらゆるモディファイヤの状態に関係なく、Internet Explorer での PageUp/PageDownHome/End のように働きます。

参照: モディファイヤキーの無視入力されたキーと同じモディファイヤの指定

vii. モディファイヤになっているキーを置き換える

キー割り当ての変更の際に、モディファイヤキーを置き換えたり、モディファイヤキーに置き換える場合には、特別な設定が必要になります。

たとえば、無変換 キーを左 Alt キーとして使用するには、

keymap Global
mod alt += 無変換
key *無変換 = *LeftAlt

のようになります。3 行目は今まで通りの指定ですが、2 行目のように、mod モディファイヤ名 += キー名 という指定により、新たにモディファイヤとして無変換 キーを登録する必要があります。

逆に、モディファイヤとなっているキーをモディファイヤではないキーに割り当てたい場合は、mod モディファイヤ名 -= キー名 により、モディファイヤ設定を削除する必要があります。

たとえば、右 Windows キーで IME のオンオフをするには、

mod windows -= RightWindows
key RightWindows = $ToggleIME

のようにする必要があります。ちなみに、$ToggleIME というのは、109.nodoka または 104.nodoka で定義されているキーシーケンスで、109 キーボードならば A-半角/全角 と書くのと同じ意味になります。

参照: モディファイヤキー割り当ての変更

たとえば、109キーボードの場合、左コントロールキーと英数キーを入れ替える場合には、次のようになります。

mod control += 英数
key *英数 = LControl
mod control -= LeftControl
key *LeftControl = *英数

104キーボードの場合、英数ではなく、CapsLockキーなので、左コントロールキーとCapsLockキーを入れ替える場合には、次のようになります。

mod control += CapsLock
key *CapsLock = LControl
mod control -= LeftControl
key *LeftControl = *CapsLock

viii. より高度な設定

ここまで読めばもうチュートリアルは卒業です。ここまでの内容が完璧なら、上級者を名乗れるほどのレベルまで来ています。一回で理解するのは難しいかもしれませんが、習うより慣れろで、調査 ウィンドウであれこれ試してみてください。自分好みの設定をあれこれ書き加えていくうちに、上にある各リンクの内容に目を通す必要が出てくるはずですが、そうしているうちにマニュアルの見方にも慣れてくるはずです。

さらなる機能としては、2 ストロークキーの設定OneShot モディファイヤ、Window操作をはじめとした豊富な関数群代用定義などがあります。これらは必要な場合のみ目を通せば十分です。

また、実例として、default.nodoka に目を通した り、インストールされるサンプルの設定ファイルを、ご覧になった方が良いでしょう。

7. よくある質問に対する回答 frequently asked questions
Q1. 「のどか」を使っていると勝手にキーリピートしてしまいます。
Q2. 「のどか」を終了後に Windows が異常終了します。
Q3. 「のどか」を使っているといろいろ変になります。

以前 AltIME を使用していた場合、これらの症状は AltIME が正しくアンインストールされていない時に出ます。

AltIME 2.27 の README によれば以下のようにするそうですので、そのようにしてください。

  1. AltIME の設定で常駐させているなら一旦常駐のオプションをはずしてください。

    スタートアップで起動しているときはスタートアップから削除してください。

    サウンドを使用している場合は設定を外し、設定を完全に削除してください。

  2. タスクトレイ上のアイコンを左クリックして AltIME のオプションダイアログを表示させ、アンインストールボタンを押してください。

  3. いったん再起動後、ALTIME*.* のファイルを削除してください。

【注意】Windows 2000ではアンインストールボタンを使用せずに \winnt\system32\drivers\altime.sys を削除すると Windows が起動できなくなることがあります。

 AltIMEが原因によるものでない場合で、挙動がおかしくなったり、キーボード、マウスが操作不能になったりすることがあるかも知れません。その場合には、最新版を待つ必要があるかもしれません。
 
 なお、Windows起動処理中に、キーボード入力すると、キーボード、マウスが一切使用不要になる。IE7上で、IME切り替えができなくなるなどの事例も報告されています。
 また、PGPi  や nProtect GameGuard との同時動作は出来ません。
 
 regedit.exeを実行して、レジストリを開き、下記エントリを御確認ください。もし、kbdclass nodokad 以外の名前がある場合には、誤動作する可能性が高くなります。該当するソフトウェアをアンインストールするか、kbdclass nodokad 以外のフィルタドライバをUpperFiltersから取り除くなどの作業が必要となります。

 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96B-E325-11CE-BFC1-08002BE10318}
 UpperFilters

 AltIMEの場合には、このUpperFilters の値が、kbdclass altime になっており、そこに、nodokad が追加され、不具合の原因となります。また猫まねきの場合には、nmkcore が追加されており、同じく不具合の原因となります。
 VMware Workstationの場合には、vmkbd が追加されています。ある程度、共存して動作しますが、ときどきキーボードやマウスが固まると言った不具合が発生するので、vmkbd エントリを削除して、PCを再起動すると安定することが試行錯誤した結果 分かりました。なお、その場合には VMware Workstation側で、キーボードの操作に一部問題が発生するかもしれません。  

 
Q4. Explorer で、表示(V) を ALT + v で選べません。(2ch の某スレより)
Q5. PowerPoint で、C-x, C-c, C-v などでコピー・ペーストできません。

あなたはおそらく default.nodoka を使っています。これを利用するとかなり色々な操作を Emacs 風にされてしまいますので、あなたの Windows 習得度が高かったり、Emacs 習得度が低かったりすると戸惑うことでしょう。contrib/nodoka-settings.txt を参考に、自分好みにカスタマイズしてください。

ちなみに、Windows なんだし C-z, C-x, C-c, C-v だけは使いたいという人のために、ZXCV というシンボルが定義されています。-DZXCV するなり define ZXCV すれば、それだけは Windows っぽく動きます。

Q6. IMEオンのときの「のどか」のキー入れ替えの挙動が妙です。1つめのキー入力以外うまく入れ替えられません。

IMEオンの状態では IL-(IMEオン) ですが、1文字入力した時点でさらに IC- (IME変換中)となります。一方で標準のデフォルトモディファイヤは *IL-~IC- です。思い通りにキー入れ替えされていないわけではなく、デフォルトモディファイヤの設定に従って入れ替えを行っていない 可能性が考えられます。

Q7. デフォルトモディファイヤが上記のような設定になっているのはなぜですか。不便です。

IME変換中のキーバインディングについては「プロパティ」-「全般」-「設定」でカスタマイズすることを想定しています。むやみにIME変換中のキーバインディングが変更されると、このIMEのカスタマイズがやりにくいのではないかと思います。

もし不便すぎて我慢できない、という場合には、 key *IC- = のようにデフォルトモディファイヤを変更してもいいかもしれません。逆に不便なこともあるかと思いますので、お薦め いたしません。

Q8.ノートパソコンのFnキーに何か機能を割り当てることはできますか?

ほとんどのキーボードでは不可能です。

Fn キーを単体で押しても Windows にキーイベントは来ないはずです (スキャンコードの調査で調べられます)。当然ながら、このようなキーに機能を割り当てることはできません。

Q9. Caps/英数Ctrl にしています。Ctrl + Shift + x に機能を割り振っており、正常に動いているのですが、Caps/英数 + Shift + x を打っても、何も起きません。なぜですか。

「のどか」の問題ではなく、あなたの使っているキーボードの問題だと思われます。

キーボードによっては、特定の3キーの同時押しを認識できないものがあります。スキャンコードの調査で、どんなキーイベントが発生しているかをチェックしてみてください。モディファイヤ2個を押した状態で、3個目のキーを押したときにキーイベントが発生していないようであれば、そのキーボードでは使えないキーの組み合わせということです。

Q10. スキャンコードの調査で、例えば Shift + を押したときなど、たまに出るはずのない E0-0x2a というキーイベントが出るようですが、これは何ですか?

不明です。このスキャンコードに関する情報をお待ちしております。

Q11. 右 Windows キーを押すと IME のオンオフができるようにしたい。

mod windows -= RightWindows # ... (1)
key RightWindows = $ToggleIME

Windows キーはモディファイヤキーなので特別扱いされます。したがって普通のキーのように動作するようにするには、(1) のようにしてモディファイヤキーとして動作しないようにします。これは AltShiftControl でも同様です。

Q12. ウィンドウのクラス名の調べ方を教えてください。

タスクトレイの「のどか」のアイコンでマウスの右ボタンを押して調査(I)...を選びます。

Q13. アクティブな時にしか見えない窓などの場合、上記の方法では調査できないですが?

&WindowIdentify を使ってください。default.nodoka では Ctrl +Shift + D に割り振ってあります。

Q14. クラス名やタイトル名が正しくありません。また操作できないプログラムがあります。
現在のバージョンの制限事項です。下記の場合、キーマップは Global となります。
・Windows 2000/XP/Vistaなどの32bit版OSでは、管理者権限で動作しているプログラムのウィンドウは正しく 操作できず、ウィンドウの正しいClass/Title名が取得できません。

「のどか」を管理者権限で動作させる。あるいは Vista の場合には、ユーザアカウント制御を無効にしてください。
ただし Windows 2000/XPにおいて、管理者権限でログインしている場合は成功します。

 なお、Internet Explorer 7の保護モードに対応したため、Vista 32bit版OSでは、通常使用時に、保護モードの解除や、ユーザアカウント制御を無効にする必要は無くなりました。

・Vista 64bit版OSや、XP 64bit版OSにおける、64bitのプログラムの場合、キーマップはGlobalとなり、正しく操作できません。
Q15. インストール時には 109 キーボードだったのですが、今度 104 キーボードを購入しました。しかし、タスクトレイメニューの選択(C) ►には 109 しか出てきません。どうすればいいですか。

インストール時の選択により、以下の表の上 4 つまたは下 4 つが選ばれます。「設定」ダイアログボックスで適切に設定してください。(%NODOKA_DIR% は nodoka をインストールしたディレクトリです)

名前 日本語 109 キーボード (Emacs 風)
設定ファイル名 %NODOKA_DIR%\dot.nodoka
シンボル -DUSE109;-DUSEdefault
名前 日本語 109 キーボード (104 風, Emacs 風)
設定ファイル名 %NODOKA_DIR%\dot.nodoka
シンボル -DUSE109;-DUSEdefault;-DUSE104on109
名前 日本語 109 キーボード
設定ファイル名 %NODOKA_DIR%\dot.nodoka
シンボル -DUSE109
名前 日本語 109 キーボード (104 風)
設定ファイル名 %NODOKA_DIR%\dot.nodoka
シンボル -DUSE109;-DUSE104on109
名前 英語 104 キーボード (Emacs 風)
設定ファイル名 %NODOKA_DIR%\dot.nodoka
シンボル -DUSE104;-DUSEdefault
名前 英語 104 キーボード (109 風, Emacs 風)
設定ファイル名 %NODOKA_DIR%\dot.nodoka
シンボル -DUSE104;-DUSEdefault;-DUSE109on104
名前 英語 104 キーボード
設定ファイル名 %NODOKA_DIR%\dot.nodoka
シンボル -DUSE104
名前 英語 104 キーボード (109 風)
設定ファイル名 %NODOKA_DIR%\dot.nodoka
シンボル -DUSE104;-DUSE109on104
Q16. 「のどか」ではマウスイベントを置き換えられないのですか。

「のどか」および「窓使いの憂鬱」の前身にあたる cmkey ではマウスイベントを置き換えることができましたが、「のどか」および「窓使いの憂鬱」は cmkey とは異なるレイヤーで実現しているの で、置き換えることはできません。

Q17. PS/2な日本語キーボードのノートPCに、USBの英語キーボードを付けて使いたいです。
自動で切り替える仕組みは備えていません。答えになっておらず、また試してはいませんが、一案としては、&LoadSetting を、例えば F1キーなどに割り当て、設定ファイルを互いに相互のを指すようにして切り替えるか、F1は英語、F2は日本語のようにすると良いかもしれません。 設定ファイルは、上記Q.15に記載したように、通常は、-DUSE109  のみにして、日本語109キーボードで お使いになり、英語キーボードを使うときには、-DUSE104on109 を用いて104風に切り替えることになるでしょう。もし うまくいったら、ぜひ ご紹介ください。
8. カスタマイズ customize

カスタマイズ

9. セキュリティ security

他人が使用する可能性のある PC へ「のどか」をインストールしてはいけません。

「のどか」はドライバを使用してキーボードに入力されたキーを認識しますが、そのドライバへは全てのユーザーがアクセスできます。ですから、他人のキーボード入力を読み取る プログラムを作り、動作させることが可能です。

例えば、ログイン画面での他人のパスワードを得ることも、そのようなプログラムを作成することで可能になります。 

10. バグ bugs
  • [仕様] コマンドプロンプトではロックキーとIMEの状態を区別することができません。また、コマンドプロンプトのプロパティに対しては無力です。
  • [仕様] PGPi を利用しているとうまく動きません。GnuPGを、お使いください。
  • [仕様] kbdclass nodokad以外のフィルタドライバがインストールされていると、キーボードやマウスが固まるといった不具合が発生しやすいです。FAQの項をごらん頂き、レジストリを御確認ください。
  • [バグ]  英語版Windowsでは、default.nodokaを読み込むとエラーをログに出力し、使えません。
  • [バグ]  64bit版Windowsでは、アンインストールとPC再起動をせずに、上書きインストールをすると、中途半端なインストール状態となり、そのままPC再起動させると、キーボード/マウスが使えません。その場合には復旧用ドライバを入れる必要があります。
  • [バグ]  Direct X 全画面プログラム終了時に、Windowsが不正終了することがあります。
  • [制限事項]  Windows 2000/XP/Vistaなどの32bit版OSで、管理者権限で動作しているプログラムのウィンドウは正しく取得できません。(2000/XPにおいて管理者権限でログインしている場合 や、Vistaにおいて、ユーザーアカウント制御を無効にするか、「のどか」を管理者権限で動作させている場合を除く。) さらにXP 64bit版やVista 64bit版OSでは、64bitのプログラムのウィンドウが正しく操作できません。キーマップは Global のものとなります。
  • [バグ] カナロックON/OFFを使用して、キーマップを切り替える機能において、IMEの和英混在入力時にキーマップ切り替えがずれ ます。
  • USB キーボードデバイス接続後に英語 101 キーボード配列にな ることがあるので、リンク先を参照して修復してください。なお、これはWindows側の不具合です。

上記以外で、Windows XP 32bit上で、管理者権限ユーザでログインして、お使いの場合で、「窓使いの憂鬱」Version 3.30 では出来たけれども、「のどか」では出来なくなっていることがありましたら、随時、掲示板等で、ご連絡ください。4.00.0や4.01で、仕様変更した部位もありますが、それは改版履歴をごらん頂き、それ以外であれば、「のどか」リリース時の、Vista対応や64bit対応において、未確認の作りこんでしまったデグレードバグの可能性があります。その場合には、誠意を持って可能な限り対応いたします。

11. 参考事例 related work

以下のソフトと同時には使わないようにしてください。サポートできません。それぞれサポートしているOSやキーボードの種類が異なったり、「のどか」と同時に使えるものや、使えないものもありますので、ご自身の ご理解に応じて ご利用ください。

AutoHotkey
スクリプトを書くことでキーボードなどにさまざまな動作を割り当てることができます。
猫まねき
「窓使いの憂鬱」の方がカスタマイズの自由度は高いのですが、猫まねきには GUI がついていて初心者にもやさしいかもしれません。 「窓使いの憂鬱」にない機能も存在します。フリーウェア。
RemapKey (Windows Server 2003 Resource Kit Tools: Remapkey.exe)
キーボードのキーを別のキーへ入れ替えることができるソフトです。RemapKey ではログイン画面でのキーを変更することができます。
MetaX
コンセプト的に「窓使いの憂鬱」「cmkey」と非常によく似ていますが、より Emacs 的な設定ファイルを書き、ミニバッファを利用した補完などが可能です。
Xkeymacs
Windows 上の全てのアプリケーションにおいて Emacs like な操作性を実現するためのキーボードユーティリィティです。Emacs like な操作性にしたいが、 設定ファイルを書くのは面倒という人にお勧めです。
AltIME /AppleK / AppleKbWin / CraftKeytrans / Ctrl2Cap / dvorak kr, swap2k / Easy Punch / IME Start / Key Bat / Keylay
/ Keymacs / Keymacs+(dead link) / KeySwap / Max Min Keybord / Microsoft Keyboard Layout Creator / ねこぽい / 秀CAPS / 姫踊子草
キーボードによる操作を改善しようとさまざまなソフトが開発されています。
12. リファレンス references

気になる文章へのリンク。 下記は、いずれもオリジナルの「窓使いの憂鬱」に言及されたものです。「のどか」に関するもので、ここに載せたい場合には、ご連絡ください。

繭使いの憂鬱
「窓使いの憂鬱」のチュートリアルにおける 分かりにくい個所などを 分かり易く解説してあります。
Giraffe+ software index
FUNCTION &PlugIn に利用できるプラグインが配布されています。そもそもプラグインの機能は Giraffe+ さんにより実装されました。
ただし、名称変更された「のどか」のプラグインとしての動作確認は、こちらでは出来ていません。
いろいろな仮名入力方法 (dead link)
いろいろな仮名入力方法の「窓使いの憂鬱」用設定ファイルがあります。
Commutative Field in GeoCities
tron配列設定ファイルなどがあります。
雑記帖
mayu-mode.el が配布されています。 「のどか」では nodoka-mode.elに改名しています。
「窓使いの憂鬱」を使って T-Code 入力してみる
T-Code 用設定ファイルなどが配布されています。
mayu-plugins -- 窓使いの憂鬱用プラグイン
window-select, migemo-isearch, ie-migemo-search といったプラグインが配布されています。ただし、 名称変更された「のどか」のプラグインとしての動作確認は、こちらでは出来ていません。
Vector: 新着ソフトレビュー
新着ソフトレビュー
13. 著作権表示 copyright
「繭(まゆ)」Version 4.00.0、「のどか」Version 4.01以降

Copyright (C) 2008, applet <applet@bp.iij4u.or.jp> All rights reserved.
ライセンスは、CPL(Common Public License)です。詳細は Common_Public_License_1_0.txt を、ご覧ください。Common_Public_License_1_0_JP.txt  は、日本語参考訳です。

 
窓使いの憂鬱 Version 3.30以前

Copyright (C) 1999-2005, TAGA Nayuta <nayuta@users.sourceforge.net>
All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
  2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
  3. The name of the author may not be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Boost.Regex

Copyright (c) 1998-2003 Dr John Maddock

Boost Software License - Version 1.0 - August 17th, 2003

Permission is hereby granted, free of charge, to any person or organization obtaining a copy of the software and accompanying documentation covered by this license (the "Software") to use, reproduce, display, distribute, execute, and transmit the Software, and to prepare derivative works of the Software, and to permit third-parties to whom the Software is furnished to do so, all subject to the following:

The copyright notices in the Software and this entire statement, including the above license grant, this restriction and the following disclaimer, must be included in all copies of the Software, in whole or in part, and all derivative works of the Software, unless such copies or derivative works are solely in the form of machine-executable object code generated by a source language processor.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

14. サポート support
「のどか」ホームページ

http://appletkan.com/   Version 4.00.0以降では、http://sourceforge.net/projects/mayu/ でのサポートではありませんので、決して そちらに お問い合わせすることが無いよう よろしくお願いいたします。 また正式版購入者には、最新版のリリースなどの御案内を差し上げることになります。また、ソースコードは、Common Public License で http://sourceforge.jp/projects/nodoka4/ にて公開予定です。バックドアが無いことを早く御確認されたい場合には、ご連絡ください。別途対応させて頂きます。

「窓使いの憂鬱」2ch スレ

2ch のスレでは、ユーザ間の情報交換がなされています。派生版である「のどか」にも関係ある情報があるかも知れないので、作者も時々見ています。

15. 謝辞 acknowledgements

初めに、偉大かつ手放すことができない「窓使いの憂鬱」をリリースされ、長年に渡り、開発サポートを続けられた TAGA Nayuta さん。大変ありがとうございます。
 
ご本人には直接、派生版を出す話を大変失礼ながら、メールでさせていただきました。特に反対されるわけでなく、好意的にBlogでも御案内頂き、重ねて どうもありがとうございます。

 4.00.0 の致命的なバグである すべてのウィンドウのCLASS/TITLE名が、正しく認識できない問題を発見してくださった、2chでのスレッドの方々、大変ありがとうございます。 また「繭(まゆ)」という名称だと、区別が付かない。それに伴い「窓使いの憂鬱」作者への問い合わせなどの御迷惑をかける危険性や、後継/派生の別、シェアウェアの是非、ソースコード公開の是非、署名付きドライバの御要求、ドキュメントの不備など、御議論、御指摘、痛み入ります。また、設定ファイルのデフォルト名を変更した結果、そのままでは、設定ファイルが読み込まれず、うまく動かなかったので、大変申し訳ありませんでした。
 
 上記に対して、配慮が足りない箇所がたくさんあったと反省しております。以下は決して御満足頂ける回答ではないと思いますが
 
 ・お約束はできませんが、署名付きドライバに関しては、いずれ取得したいと考えています。現在、個人では取得することができず、やむなく署名無しで公開しました。しかしシェアウェアとしたことで、その実現可能性を高めた形で進めさせてください。
 ・ソースコードは、Common Public License で http://sourceforge.jp/projects/nodoka4/ にて公開予定です。バックドアが無いことを早く御確認されたい場合には、ご連絡ください。別途対応させて頂きます。


 ・Vista向けの 3.30.1ソースを作成され、2chでのスレッドで公開してくださった無名の方、大変ありがとうございます。

・「のどか」をダウンロードして、動かしてみた方々、大変ありがとうございます。また、シェアウェアに御賛同頂き、正式版を御購入いただいた方々、大変どうもありがとうございます。
 

以下は、Version 3.30まで公開された「窓使いの憂鬱」作者であるTAGA Nayuta 氏からの謝辞となります。


 Windows9x/XP 用のドライバを作成してくださった小林義明さん、ありがとうございます。

最も身近なユーザーであり、数多くの助言をしてくれた塙与志夫さんに感謝します。何より彼の粘り強い要求は怠惰な作者に新規リリースへの活力を与えてくれました。

河部修和さん、KANAI Makoto さん、HAJANO Naòqui さんには設定ファイルを提供していただきました。お礼を申し上げます。

Hosaka Yuji さんには、マルチモニタ対応パッチをいただきました。ありがとうございます。

「窓使いの憂鬱」はたくさんの人の貢献の上に成り立っています。ここに名前を挙げていない方にも心から感謝します。

16. 改版履歴 history
2008/08/10  4.02
nodoka.exe, nodoka.dll
 
Vista 32bit版OSにおいて
 
IE7 保護モードに対応し、ウィンドウのClass/Title名が正しく取得できるように修正し、キーマップがGlobal固定になる問題に対応しました。
 また管理者権限で「のどか」を動作させた場合、管理者権限動作プログラムと、通常権限動作プログラムの両方の操作が可能となりました。
これらの修正により、整合性レベルに関する不具合は、バグから制限事項に状態を変更しました。
 
2008/08/02  4.01
プログラム名称 ならびに ライセンス
 4.00.0 において、「窓使いの憂鬱」という名称を、「繭」「MAYU」に変更し、本ヘルプ上は「繭(まゆ)」と記載しました 。しかし、この「繭」という名称は以前の「窓使いの憂鬱」プログラムの愛称、呼称でもありました。その結果、サポート開発主体が異なるのに、以前の「窓使いの憂鬱」作者に対し、「繭(まゆ)」の問い合わせが、行われてしまう危険性があり、配慮が全く足りず、大変申し訳ありませんした。
 そこで、プログラム名称を「のどか」「NODOKA」に変更し、本ヘルプ上も、そのように変更いたしました。なおバージョン番号は、4.00.1ではなく、4.01としました。
 
 また、設定ファイル名の拡張子は、.nodoka に変更し、ファイル名称で、mayu というキーワードが入っているものは、すべて nodoka に変更しました。例えば nodoka.exe, nodoka.dll, nodokad.sys などです。設定ファイル拡張子名称を変更したために、.mayu が付いたファイルはデフォルトでは、読まれなくなっています、大変申し訳ありません。
 なお、4.00.0以降では、http://sourceforge.net/projects/mayu/ でのサポートではありませんので、決して、そちらに お問い合わせすることが無いよう よろしくお願いいたします。
 また、4.00.0では、ソースコード非公開をうたっていましたが、4.01以降、
ソースコードは、Common Public License http://sourceforge.jp/projects/nodoka4/ にて公開予定です。バックドアが無いことを早く御確認されたい場合には、ご連絡ください。別途対応させて頂きます。
 
mayu.dll 改め nodoka.dll
 4.00.0 において、Direct X 全画面プログラム終了時に、Windowsが不正終了することを軽減するために、mayu.dll の DllMain から User32 コードを、一部移動させた修正を実施していたのですが、mayu.dll から mayu.exe に対し、正しいデータを渡すことに失敗していることが判明したため、コードを元に戻し 、DirectX全画面の件は、バグの項に記載しました。
 このデグレードのために、ウィンドウの調査を実施するなどの際、すべてのウィンドウ の CLASS/TITLE名が正しく取得できず、常時Globalのキーマップしか使えないという問題が発生していましたが、3.30.1と同等程度まで解決しました。
  このウィンドウの調査の動作確認時において、次にあげる制限事項が明らかになりました。Windows 2000/XP/Vistaなどの32bit版OSでも、管理者権限で動作しているプログラムのウィンドウは正しく取得できません。ただし、Windows 2000/XP において、管理者権限でログインしている場合は成功します。またXP 64bit版やVista 64bit版OSでは、加えて64bitのプログラムのウィンドウが正しく取得できません。また、Vista 32/64bit版ともに、Internet Explorer のウィンドウは、「のどか」のヘルプとして表示すると、取得できるケースもありますが、スタートメニューから起動した場合、取得できません。IE以外にも取得できないプログラムのウィンドウは存在すると考えます。これらのウィンドウが取得できない場合、キーマップは Global のものとなります。なおバグとしたのは、仕様では無いために、いずれ修正する意思を示すものです。
 また、動作確認時に、4.00.0でのカナロックの問題の修正も完全ではないことが判明したため、バグの項に記載しました。
 
ヘルプ
 本ヘルプファイルのトップには、「窓使いの憂鬱」の作者であるTAGA Nayuta 氏の著作権表示を記載していましたが、誤った問い合わせが行き、迷惑をかけることを避けるために、削除しました。それ以外の他意はありません。
 4.00.0 において、設定ファイルのデフォルト名を .mayu から dot.mayu に変更した結果、以前から .mayuファイルを設定ファイルとして用いていた場合、「のどか」をインストールしても、設定ファイルが読み込まれないという不具合がありました。そこで、 本ヘルプのインストールの項に、1行追加して、.mayu から dot.nodoka にファイル名を変更して頂くよう、注意を促すこととしました。
 また、謝辞の項を見直しました。シェアウェア/ソースコード公開にも触れました。

その他
 Function で mayu のキーワードが入っていた &MayuDialog は&NodokaDialog に変更しました。 設定ファイルで、&MayuDialog を使用している箇所があれば修正が必要です。
 またプラグインにおいて、プラグインDLL内の関数名の一覧において、mayuFUNCNAME[/W/A//] は、すべて nodokaFUNCNAME[/W/A//] に変更しました。
 
2008/07/20  4.00.0 (Globalのキーマップしか使えないことが確認されたため、2008/07/25に公開中止)
 2007/1に開発終了がアナウンスされ、Vista対応の道が閉ざされていましたが、BSDライセンスであ り、ソースが公開されていたことや、2chのスレッドで、Vista IE7と64bit対応パッチが公開されたことなどから、ユーザの立場でしたが、少しずつ手を入れて、このたび、派生品として、リリースすることにしました。既存の http://sourceforge.net/projects/mayu/ でのサポートではありませんので、お間違えのないよう、よろしくお願いいたします。なお、不具合が皆無とは言えないので、ご了承ください。

 

プログラム名称
  • 「窓使いの憂鬱」「MADO TSUKAI NO YUUTSU」表記を、すべて「繭」「MAYU」に変更しました。なお、本ヘルプ上では「繭(まゆ)」で統一し、また履歴や謝辞の過去のバージョンを指す部位はそのままです。
mayu.exe, mayu.dll
  • シェアウェア化しました。試用版では起動後30分で、自動的に終了します。正式版(税込み1800円)は、http://appletkan.com/ で購入可能です。
  • セキュリティの観点からソースコードを公開しないために、build の項をマニュアルから削除しました。
  • .mayuファイルではなく、dot.mayuファイルをデフォルトのファイルとして扱うことにし、マニュアルでは、環境変数HOMEからHOMEPATHを扱うよう修正しました。
  • Direct X 全画面プログラム終了時に、Windowsが不正終了することを軽減するため、mayu.dllの DllMainから User32コードを一部、移動させました。
  • カナロックON/OFFを使用して、キーマップを切り替える機能において、IMEの和英混在入力時にキーマップ切り替えがずれる問題に対応。
デバイスドライバ
  • セキュリティ上の観点から、他のアプリケーションから操作できないようデバイスネームを変更しました。
  • mayu-3.30.1 patchのデバイスドライバ64bit OS対応では、起動できるもののブルースクリーンになることがあったため、修正しました。
  • タッチパッドサポートのため、USE_TOUCHPAD を定義して buildしました。
  • 署名付きドライバとなるよう取得にトライしましたが、現在、個人向けにはGlobalsignでも入手できず、断念しました。
インストーラ
  • タッチパッドサポートのため、インストールフォルダに ts4mayuフォルダを作成しました。
    そこには、cts4mayu.dll, sts4mayu.dll, thumbsense.mayu がコピーされます。
  • 復旧用の64bit OS対応デバイスドライバがコピーされるようにしました。 
3.30.1   mayu-3.30.1 patch  2chのスレで案内があったもの
  • Vista IE7 異常終了対応。
  • デバイスドライバの64bit OS対応。XP 64bit, Vista 64bit Editionでの動作可能レベル。
  • インストール時の64bit OS対応。 
3.30公開以降、http://sourceforge.net/projects/mayu/ で公開されていた下記の修正、機能追加を盛り込みました。なお、全てでは ありません。

 

以下は、「のどか」の派生元となったオリジナルである「窓使いの憂鬱」の改版履歴となります。

2005/04/18 3.30
モディファイヤ
FUNCTION
  • FUNCTION &LoadSetting などで、設定ファイルをロードした時に、ログにロードしたことが表示されるようにした。
  • FUNCTION &Prefix の説明を正しく修正。
  • FUNCTION &SetImeStatus を追加。(Thanks to 小林)
  • FUNCTION &SetImeString を追加。(Thanks to 小林)
  • FUNCTION &ShellExecute が失敗した時のエラーメッセージが表示されないことがあるバグを修正。
  • FUNCTION &VK で入力できるマウスボタンに XBUTTON1 と XBUTTON2 を追加。他、さまざまな仮想キーを追加。
  • FUNCTION &WindowMonitor を追加。(Thanks to Hosaka Yuji)
  • FUNCTION &WindowMonitorTo を追加。(Thanks to Hosaka Yuji)
  • FUNCTION引数置換機能を追加。(Thanks to 小林)
  • 既存 FUNCTION のマルチモニタ対応。(Thanks to Hosaka Yuji)
マニュアル
ビルド
  • Windows9x/Me/NT4.0 非対応になりました。
  • Borland C++ 5.5.1 でビルド不可能になりました。
  • Visual C++ Toolkit 2003 でビルドするための様々な注意事項を記載。(Thanks to 小林)
ドライバ
  • 2000/XP 用ドライバの SMP/HT 対応。(Thanks to 小林)
  • 2000/XP 用ドライバの PS/2 専用版と USB 対応版のバイナリ統合。(Thanks to 小林)
  • 復旧用ドライバを追加。(Thanks to 小林)
その他
  • WindowsXP の「ユーザーの切り替え」機能に対応。
  • ごくたまに、タスクトレイのアイコンが表示されない問題を修正したつもり。また、表示されていないときに、もう一度起動すればアイコンがタスクレイに表示されるようにした。(「既に窓使いの憂鬱は動作中です」というダイアログボックスが出ると同時にアイコンが表示されます)
  • ログを消去した時刻をログ表示するようにした。
  • 109.mayu に MultiMedia Keyboard 用の特殊キーなどを追加。
  • スナップショット版で「↑↓←→」という文字がキー名として使用できなくなっていたバグの修正。
2003/07/16 3.29
2001/10/08 3.28
  • チュートリアルタスクトレイメニューの章を追加。(Thanks to hanawa)
  • related work に Key Bat を追加。
  • メニューをアクセスしている時のウィンドウクラス名は最後に :MENU がつく。
  • => の代わりに = が使えるようにした。
  • subst の右側に M0- などのモディファイヤが指定できないバグを修正。
  • キーマップが影響する定義の説明を追加。
  • W2k で USB ドライバを簡単にインストールできるようにした。
  • その他修正。(Thanks to 小林)
2001/09/02 3.27
  • 3.26 で FUNCTION &Sync が動作しなくなっていたバグを修正。C-k もちゃんと動作します。
  • FUNCTION &KeymapPrevPrefix を追加。
  • FAQ に「右 Windows キーを押すと IME のオンオフができるようにしたい。」を追加。
2001/08/26 3.26
  • One Shot モディファイヤの例が間違っていたので修正。(Thanks to 小林)
  • Windows 側では離されていることになっているキーについて、「窓使いの憂鬱」がキーを離すスキャンコードを Windows 側へ送ることがないようにした。(Thanks to 小林)
  • related work に Word Emacs を追加。
  • mayu-mode.elM-; (indent-for-comment) が使用できるようになった (Thanks to 永野圭一郎)
  • 戯れに FUNCTION &DirectSSTP を追加してみた。
2001/08/13 3.25
  • *.mayu のアイコンが間違っていたのを直した。
  • -= で複数キーを設定しても一つしか有効にならないバグの修正。
  • WindowsNT4.0 以外 (9x, Me, 2000) で、「窓使いの憂鬱」を終了させたあとに何かのキーを押さないと終了しないバグの退治。(Thanks to 小林)
  • 設定ファイルで隣り合う複数の文字列を一つの文字列として取り扱うようにした。

    key X = &HelpMessage("サンプル C-x-", \
     "C-x C-s\t上書き保存\r\n" \
     "C-x C-f\t開く\t\r\n" \
     "C-x k\t\t新規作成\r\n" \
     "C-x C-c\t終了")

  • FUNCTION &DescribeBindings を微妙に改良。
  • アンインストールができなくなっていたのを修正。(Thanks to 小林)
2001/08/05 3.24
  • default.mayu で、英数Control として使用している場合に C-Q が正しく働かない問題を修正。version 3.19 で修正したものと原因は同じ。(Thanks to hanawa)
  • Windows9x のドライバを更新。青画面でも操作できるようになりました。(Thanks to 小林)
  • One Shot モディファイヤであると宣言したキーが押されている間にキーが押された時のみ、モディファイヤとして扱われるようにした。今までは、離された時にもモディファイヤ扱いになっていた。
  • 一時停止にしたときにタスクトレイのアイコンを変化させるようにした。
  • R- を新設。(Thanks to hanawa)。mayu-mode.el で色がつくようにした。
  • Borland C++ 5.5.1ビルドできるようにした。
  • One Shot モディファイヤを離したときに有効なモディファイヤは押したときと同じになるようにした。
  • &EmacsEditKillLineFunc, &EmacsEditKillLinePred の説明を追加。
  • USB 対応ドライバは今回は収録していません。
  • BETA ではないです。
2001/07/06 3.23 (BETA)
  • 104on109.mayu で「`」が入力できなかったバグを直した。(Thanks to Oiwa)
  • One Shot (キーリピート有) を追加。
  • FUNCTION &Toggle で、強制的にオンオフできるようにした。
  • 109.mayu に VAIO タワー用の特殊キーを追加。
  • WindowsNT4.0 でインストールできなくなっていた問題を修正。(Makefile の書き方のミス)
  • Windows9x のドライバを更新。
  • 新規インストールした時に「ホームディレクトリから」が選択されていてキー入力ができなくなってしまう問題を修正。
  • support に 2ch を追加。
2001/03/24 3.22 (BETA)
  • 代用定義を追加した。おかげで 104on109.mayu などがスマートに定義できるようになった。
  • mayu-mode.el で代用定義にも色がつくようにした。
  • 間違ってデバッグビルドしたものを収録していたのをリリースビルドを収録するようにした。
  • 間違って壊れた Windows9x のドライバを収録してしまったので正しいドライバを入れた。
2001/03/23 version 3.21 (BETA)
  • Windows95 で CPU 時間を 100% 占めてしまう問題がなおった。(Thanks to 小林義明)
  • NEC PC-98x1 で動作しない問題がなおった。(Thanks to 小林義明)
  • FUNCTION &LoadSetting で、どの設定をロードするか指定できるようになった。
  • contrib/98x1.mayu を追加。(Thanks to HAJANO Naòqui)
  • ホームディレクトリ に、mayu.exe のカレントディレクトリを追加。
2001/03/10 version 3.20 (BETA)
  • Windows95 でも動作するようになった。
  • acknowledgements 更新。
  • cab32.dll ではなく iexpress を使用してパッケージを作成するようにした。
  • ソースをパッケージから分離した。
2001/03/05 version 3.19 (BETA)
  • このバージョンは内部構造を大幅に変えたので不安定である可能性が高いです。どうしてもこのバージョンが必要な人のみ使用してください。
  • Control + U 操作の改良。
  • default.mayu を使っている場合は、Global キーマップで 英数Control にしているが、Global キーマップを親キーマップとして持たない keymap2 の中では (当然ながら) 英数Control として使用できないので、ちゃんと Global キーマップを親キーマップとして持つように設定ファイルを修正。
  • default.mayu で、-DMAP-ESCAPE-TO-META とすると Alt + X などを ESCAPE] [X で代用するようにした。
  • WindowsNT/2000 版のプログラム内部では全て UNICODE で処理するようにした。
  • WindowsNT/2000 版では、設定ファイルの文字コードに、shift_jis だけでなく UTF-16LE/BE や UTF-8 を使用できるようになった。「メモ帳」で、「Unicode」や「Unicode big endien」や「UTF-8」を選んでセーブすれば、日本語だけでなくハングルなどの UNICODE で扱える文字が全て設定ファイルに書けるようになる。現在は文字コードは自動判別され、自動判別に失敗した場合の救済措置はない。自動判別に失敗するようなら自動判別できそうな文字をコメントにでも書いておくこと。
  • 正規表現ライブラリを Regex++ に変更した。
  • いろいろ変えた結果多分 bcc32 ではコンパイルできなくなった。少し修正するだけだと思うが。
  • contrib/ax.mayu を追加。(Thanks to KAWABE Nobukazu)
  • related work に MetaX を追加。
  • デフォルトモディファイヤの変更のサンプルが間違っていたので直した。(key IC-* = ではなく key *IC- = が正しい) (Thanks to Hirotaka Kasaki)
  • デフォルトキーの中で定義中のキーマップ名を参照できなかったバグを修正した。つまり、keymap Hoge = &Prefix(Hoge) などができるようになった。(Thanks to HANAWA Yoshio)
  • Windows9x 用のドライバを作成されたので、このバージョンから WindowsNT/2000 用のパッケージと Windows9x 用のパッケージが存在します。(Thanks to 小林義明)
  • 現在、Windows9x では、&HelpMessage&HelpVariable&WindowSetAlpha は使用できません。
  • default.mayu を使用している場合、シンボル ZXCV を定義しておくと、Control + Z, Control + X, Control + C, Control + V が Windows と同じ動きをするようになります。(Thanks to HANAWA Yoshio)
2000/12/17 version 3.18
  • ヘルプが開けないバグの修正。
  • mayu-mode.el が展開されていなかったのを直した。ついでに少しだけ修正。
  • IC- が時々無視されるバグが直ったはず。
  • FUNCTION &HelpMessage を追加。default.mayu を使っている場合はメモ帳で Control + X を押してみよう (ただし IE5.0 以上を使っている場合のみ)。
  • event を追加。
  • これらの追加により、プレフィックスキーが押された時にメッセージを表示することが可能になった。
  • FUNCTION &KeymapWindow を追加。
  • FUNCTION &Variable を追加。
  • FUNCTION &Repeat を追加。
  • FUNCTION &HelpVariable を追加。
  • これらの追加により Emacs の Control + U が可能になった。私にメールを送るために 1000000000000000000000000000000000000000000000000000000000000@tsg.ne.jp と入力するのもらくらくです。
  • チュートリアル・FAQ の充実は次回に延期。
2000/12/03 version 3.17
  • メーリングリストを Source Forge へ移動。
  • FUNCTION &WindowMoveTo を追加。
  • FUNCTION &WindowResizeTo を追加。
  • FUNCTION &MayuDialog を追加。
  • FUNCTION &DescribeBindings を追加。表示形式がいまいち分かりにくいのでどうしようか思案中。
  • related work に Pastel Touch を追加。
  • related work に KeyMap を追加。
  • related work に dvorak kr, swap2k を追加。
  • related work に Q's Nicolatter を追加。
  • FAQ を追加。
  • mailto: をドキュメントから削除。
  • DOC++ で表示できるようにソースのコメントを書き換えた。
  • Emacs で設定ファイルを編集する人のために mayu-mode.el を追加。ただし、色がつくだけです。
  • FUNCTION &WindowIdentify で、ウィンドウの位置と大きさも表示するようにした。
  • contrib/keitai.mayu を追加。テンキーで携帯電話式ひらがな入力をしようという画期的設定ファイル (注:Joke)。(Thanks to HANAWA Yoshio)
  • 設定ファイルが見つからなかったときはエラーを出すようになった。
  • 設定ファイルを更新。
  • 調査ダイアログを動かすとログウィンドウも動くようにした。
  • 設定ダイアログ
    • タスクトレイのメニューから沢山開けるバグを修正。
    • 「編集」を押して編集ダイアログが出ている最中にもう一度「編集」を押せるバグの修正。
    • 「編集」で、ファイル名を空にできないバグの修正。
    • サイズ変更できるようにした。
2000/05/28 version 3.16
  • インストーラがテンポラリフォルダに作った contrib を削除しないバグを直した。
  • アンインストーラが「窓使いの憂鬱」関連のレジストリを全て消すように変更。
  • バージョンダイアログの「最新バージョンのダウンロード」ボタンが利かなくなっていたバグを直した。
2000/05/23 version 3.15
2000/05/19 version 3.14
  • 正規表現ライブラリを再び BUG FIX。
  • 設定ファイルを更新。
2000/05/13 version 3.13
  • 正規表現ライブラリの BUG FIX。
2000/05/08 version 3.12
  • 正規表現ライブラリの BUG FIX。「マインスイーパ」にマッチさせることができるようになった。
2000/05/06 version 3.11
2000/05/05 version 3.10
2000/04/24 version 3.09
2000/04/15 version 3.08
2000/04/01 version 3.07
  • FUNCTION &Wait を追加。
  • FUNCTION &MouseWheel を追加。
  • FUNCTION &VK を拡張してマウスボタンを入力できるようにした。
  • マニュアルの内容を か修正。
  • 設定ファイルを更新。
  • 英語リソースをつけてみた。が、使い方不明。
  • 連絡先の修正。
  • わたしはエイプリルフールは嫌いです。
2000/03/21 version 3.06
  • いくつかの typo を修正。
  • FUNCTION &WindowHMaximize, &WindowVMaximize で、H と V を両方同じウィンドウへ適用した場合の動作を修正。
  • FUNCTION &ClipboardCopy を追加。
  • 設定ファイルを更新。
  • IL- を導入し、I-IC- に名前を変更。ただし、互換性の為 I- も引き続き使用可能です。
  • コンソールのフォーカスの追跡に時々失敗していたのが直ったかもしれない。(かもしれないばっかだ…)
2000/03/10 version 3.05
  • セットアップを修正。
  • コンソールのフォーカスの追跡に時々失敗していたのが直ったかもしれない。
  • (非公開)
2000/03/08 version 3.04
  • 設定ファイルを修正。(デフォルトで英数キーを Control に)
  • マニュアルのバグを直した。
  • マニュアルを Mozilla でもちゃんと表示できるようにした。(IE で見るときはフォントサイズ「小」にするとかっこいいが、よみにくいのでしなくていいです)
2000/03/04 version 3.03
  • FUNCTION &WindowHMaximize を追加。
  • FUNCTION &WindowIdentify を追加。
  • 設定ファイルを大幅に更新した。
  • contrib/mayu-settings.txt の追加。(Thanks to HANAWA Yoshio)
  • Windows2000 用のドライバをパワーマネジメント対応にした。
  • コンソールのフォーカスの追跡に時々失敗していたのが直ったかもしれない。
  • PlayStation2 の発売日。
1999/11/01 version 3.02
  • setup 時にキーボードの種類を聞くようにした。
  • KeyboardLayout/ほげほげ の廃止 (日本語の場合はキーボードによらず、IME によって決定されるため)。
  • 設定ファイルを再読み込みした後に、コントロールキーなどが押されっぱなしになることがあるバグを直した。
  • One Shot モディファイヤの説明が間違っていたので修正。
  • デフォルトのモディファイヤを変更できるようにした。
  • include では、まず、レジストリで指定してある設定ファイルと同じフォルダを検索するようにした。
  • インストーラを少々変更
  • FUNCTION &VK で、U-D- が逆になっていたバグを修正。
1999/10/30 version 3.01
1999/10/29 version 3.00
1999/09/08 cmkey version 2.21
1999/09/05 cmkey version 2.20
1999/05/31 cmkey version 2.19
1999/05/31 cmkey version 2.18
1999/05/30 cmkey version 2.17
1999/05/29 cmkey version 2.16
1999/05/26 cmkey version 2.15
1999/05/26 cmkey version 2.14
1999/02/10 cmkey version 2.13
1998/12/02 cmkey version 2.12
1998/10/07 cmkey version 2.11
1998/07/23 cmkey version 2.10
1998/07/20 cmkey version 2.09
1998/07/17 cmkey version 2.08
1998/07/12 cmkey version 2.07
1998/07/11 cmkey version 2.06
1998/07/11 cmkey version 2.05
1998/07/05 cmkey version 2.04
1998/06/07 cmkey version 2.03
1998/05/24 cmkey version 2.02
1998/05/19 cmkey version 2.01
1998/05/19 cmkey version 2.00
1996/07/?? WinModMap version 1.03
1996/06/30 WinModMap version 1.02
1996/06/22 WinModMap version 1.01
1996/06/21 WinModMap version 1.00