blechmusikの日記

キー・カスタマイズ・ソフトウェア "DvorakJ" の覚え書きをはじめとして様々なことを書いています。

DvorakJ

入力プロンプトを適宜表示するようにした

本日公開した版では、テキスト入力欄が空であれば入力プロンプトを表示するようにした。これにより、設定画面のテキスト入力欄の見栄えは以下の画像のように変わった。

最新情報を取得する処理について短い解説を書いた

DvorakJ:レファレンスマニュアル:詳説:最新情報を取得する処理 この説明から分かるように、version.iniを編集すればDvorakJの更新処理をある程度操作できる。

Google 日本語入力用の判定を自動的に行うようにした

昨日公開した機能*1を利用して、表題のとおりの処理を実装した。これにより、Google日本語入力を使用しているかどうかをユーザーは設定しなくてすむようになった。 *1:使用しているIMEの情報を ime.ahk で表示できるようにした - blechmusik2の日記

中国語のIMEを使用しているか否かを自動的に判定するようにした

上記の ime.ahk の機能を使用してタイトルのとおり処理するようにした。

指摘を受けた不具合二点を修正した

memoさんからの指摘二点、すなわちキーボード配列の設定を表示する画面が文字化けすることと、Enterキーを押したときに入力情報を破毀するという不具合を修正した。

最新版の DvorakJ はAvast! によってマルウェアと判定されてしまうようだ(追記あり)

表題のとおりの報告を受けた*1。このように判定されるようになってしまった原因は不明である。なお、私が使用しているウイルス対策ソフトウェア「カスペルスキー インターネット セキュリティ 2012」では、最新版の DvorakJ をマルウェアとは判定していない…

Emacs の orgtbl-mode を用いて DvorakJ の設定ファイルを記述できるようにした

本日公開した版に表題の通りの機能を実装した。Orgtbl mode - The Org Manualにあるとおり、orgtbl-mode とは Emacs の org-mode の表作成機能を単独で使用できるようにしたものである。orgtbl-mode を用いた表の作成の様子は Emacs Power: Can your editor …

dvorakj-minor-mode を dvorakj-mode に改名した

設定方法は従来と同様である。 software:Emacs:dvorakj-mode

Dvorak 配列 (黒塗り下駄配列との融合版) を Emacs 用に改変した

Emacs を使用しやすくするために、両手の同じ指のキーを同時に打鍵すると以下のキーストロークを出力するように設定した。 指 人差し指同士 中指同士 薬指同士 小指同士 上段 F3 M-x ESC F4 中段 C-/ C-g C-u C-. 下段 このように設定することでさまざまな利…

中国語入力用の設定項目を設けた

以下の画像で示す項目「中国語入力」を有効にすれば、できるだけ直接入力用配列を使用するようにした。DvorakJ 内部では IME の判定処理を中国語入力向けに少々変更する。

日本語入力でかな入力ができなくなっていた不具合を修正した

中国語入力に対応する処理を分離させることで、ここ最近のプログラムにあらわれていた不具合を修正した。

DvorakJ の自動更新処理を作り直した

本日公開した版からは、更新情報を取得したら最新のプログラムを自動的に導入するか否かの二択をユーザーに問うようにした。従来は DvorakJ_Updater.exe を直接起動した場合のみ最新のプログラムを自動的に導入していたが、今回からは、メニューから更新情報…

Microsoft IME の全角かな入力モードでの出力がおかしくなる

表題の通りの不具合が表れた*1。これは昨日言及した変換モードの問題と関係するもので*2、Microsoft IME の全角かな入力も変換モードの値が 9 となるために生じる不具合のようだ。これについてはいずれ対応したい。 なお、ATOK ではこのような症状が現れない…

使用中の版と最新版の更新情報の差分を表示する機能を実装した

本日公開した版には、新しい版が公開されているときに更新情報の差分を表示する機能を実装した。メニューの「DvorakJ の更新情報を取得する」を選択すると、現在使用中の版と新しい版とを比較し、必要な分だけ更新情報を掲載する。こう文章で説明するよりも…

Google 日本語入力を使用するよう設定していると、中国語 (Pinyin)の全角モードの出力がおかしくなる

Windows の仕様上、Google 日本語入力のひらがなモードと中国語 (Pinyin)の全角モードを区別できないことがわかった。 Windows が通知する変換モードの値がどちらも 9 という数値を返しているのだ。使用中の IME の名称をDvorakJ が判別できないことと併せ…

DvorakJ のキーボード配列設定ファイル用マイナーモード dvorakj-minor-mode を作成した

この Emacs のマイナーモードを使用すれば DvorakJ のキーボード配列の設定ファイルが見やすくなる。どのように色づけられるのかは以下の画像を参照のこと。コメントが色づけられるのは当然のこと*1、キーとキーを区切る文字として使っている縦棒、{改行}の…

Ctrl + 数字キー で F1 や F10 を出力する

目次 はじめに 入力するキーと出力するキーを考える 独自のショートカットキー用の設定ファイルを作成する 独自のショートカットキーの機能を有効にする おわりに 発展問題 はじめに DvorakJ を使うことで、Ctrl と数字キーで F1 や F9 を出力できないかとい…

中国語(繁体字)の New Phonetic で全角モードを使用しているとき、中国語の IME を使用していると検知するように修正した

中国語(繁体字) の New Phonetic 関連の処理にまだ不具合がある - blechmusik2の日記において言及した不具合を修正した。

配布ファイル所収の README と更新履歴のページを Pandoc を使って生成するようにした

本日公開した版では、Pandoc を用いて生成した README の html版と 更新履歴の HTML 版を収録している。メニューの「ヘルプ」の README と更新履歴を選択すればそれらのページを閲覧できる。脚注や目次が自動的に生成されるので、大分見やすくなったのではな…

メニューの項目すべてにアイコンを表示する

次に公開する版ではメニューの項目すべてに何かしらのアイコンを表示することにした。アイコンの種類も少々増やすつもりである。

DvorakJ のマニュアルをオフラインでも閲覧出来るようにしたい

現在ウェブ上で公開しているマニュアルを Markdown 形式で書き直し html を生成しようと考えている。そうすればインターネットに接続していない環境でも DvorakJ をより活用できるだろう。

中国語(繁体字) の New Phonetic 関連の処理にまだ不具合がある

IME の変換モードによって直接入力用配列と日本語入力用配列を切り替える際、中国語の IME を使用しているのに、日本語入力用配列を使用してしまう。このように動作してしまうのは、日本語の IME が普段使わない処理を DvorakJ が見逃していたためだ。修正す…

中国語(繁体字) の New Phonetic を使用しているとき、中国語の IME を使用していると検知するよう修正した

中国語(繁体字) の New Phonetic を使用していると、Index of /_pub/eamat/MyScript にある ime.ahk の IME_GetConvMode() が 1 を返すことがわかった。 昨日の 中国語の IME と想定される場合は直接入力用配列を使用するようにした - blechmusik2の日記 …

中国語の IME と想定される場合は直接入力用配列を使用するようにした

中国語の IME と DvorakJ の挙動を確認していたところ、中国語の IME を使用しているとIndex of /_pub/eamat/MyScript にある IME.ahk の IME_GetConvMode() が 1000 以上の値を返す可能性があることが分かった。日本語の IME ではおおよそ 100 未満の値が返…

設定画面の右上の×ボタンを無効にできるようにした

以下の画像にあるとおり、設定画面の右上の×ボタンを無効にできるようにした*1。この機能を有効にしているときに DvorakJ を終了するには、メニューの「ファイル」から「終了」を選択すること。 *1:羽藤さんの2011/12/13 12:25のコメントを受けて、このよう…

本日付の DvorakJ を導入すると一部の設定が初期化されます

これは GUI 関連の不適切な処理を整理した副作用です。ご了承下さい。

README.txt の配置を変更した

doc フォルダから DvorakJ.exe と同一のフォルダへと移動させた。

DvorakJ 用のホットキーとして任意のキーを指定できるようにした

これまでは私が指定したホットキーによって、DvorakJ を停止したり再起動できたが、本日公開した版からは、そのホットキーとしてユーザーが任意のキーを割り当てられるようにした*1。まず「その他」の項目を表示している以下の画像を見てほしい。 「DvorakJ …

Windows 8 においても DvorakJ は動作するようだ

Windows Metro Style Apps Developer Downloadsから入手した'Windows 8 Developer Preview'を Oracle VM VirtualBox 上で動作させ、DvorakJ が使えるかどうかを調べてみた。どうやら問題は無いようだ。以下に示すのは、Windows 8 上で DvorakJ を起動してい…

同時に打鍵する処理と順に打鍵する処理を組み合わせたときに、ただしく動作しない

コメント欄で報告を受けたように、以下のように、同時に打鍵してから順に打鍵するよう設定したとき(同時に打鍵するキーは文字キーか否かを問わない)、そのとおりに入力してもただしく動作しない。これは 2011-01-31 版以後で生じている不具合である。 (-he…

同時に打鍵したと判定する処理の作り直しは当分先になるかもしれない

3キー以上を同時に打鍵したと判定する処理まで新規に作成したのだが、特定の処理に時間がかかっているようで、意図的に20ミリ秒程度処理を停止しなければならなくなってしまった。このような処理は、既存の DvorakJ の処理とは大きく異なっており、使い勝手…

同時に打鍵したと判定する処理を簡略化できそうだ

これによって、もしかすると、判定処理を今までよりも高速化できるかもしれない。

Windows 付属のスクリーンキーボード使用時は、Ctrl を押しても QWERTY 配列に切り替わらない

具体的な質問の内容は、細部を少々変更するが、つぎのようなものである。 DvorakJ で、直接入力用配列として Dvorak配列を、日本語入力用配列として ACT を使用している Ctrl を押しているときは QWERTY 配列を使用するよう、DvorakJ を設定している 通常の…

キーボード配列の出力処理を全面的に書き換える

ウィンドウやアプリケーション毎に、キーボード配列を切り替えられるようにするつもりだ。

『日経PC21』2011年9月号にて DvorakJ が紹介された

今月号の『日経PC21』「特集1 USBメモリーを超万能ツールに!」の「どこでも同じキーボード&マウス操作を!」(p. 44)で、DvorakJが紹介されている。ありがとうございます。DvorakJ の使い方として紹介されているのは、「単一キー」のキーの置換機能であるが…

ここ最近の改変を適用したものを、本日付の版として公開した

今回実装した機能の中では、run-as-admin*1 が特に有用だろう。 なお、この日記では触れてこなかったが、今回公開した版では、多かれ少なかれ改変した補助ツールを収録している。一例を挙げると、キーボード配列の解析ツールは、挙動が不確かな部分も未だに…

管理者権限でプログラムを実行できるようにする

つぎに公開する版では、{run-as-admin "プログラム名"} と書くことで、管理者権限で当該プログラムを実行できるようにする。これによって、任意のプログラムを実行するには、{run "プログラム名"} か {run-as-admin "プログラム名"} と表記することになる。

{run "プログラム名"} と書くとき、Run 表記でも RUN 表記でも同様に動作させる

上記の置換処理とは対照的に、こちらはいわゆる case insensitive で処理するようにする。

今後は、キーボード配列の設定ファイル中、置換対象の文字列について大文字小文字を区別する

つぎに公開する版では、キーボード配列の設定ファイル中、-option-input と -option-output で設定する置換対象の文字列について、大文字と小文字を区別する。これまでは、 [a] を -1E に置換するよう設定しているとき、[a] のみならず [A] も -1E に置換す…

DvorakJ が無効になっているかどうかをツールチップに表示させる

次に公開する DvorakJ の版では、表題の通り、DvorakJ の有効/無効をツールチップ上に表示させることにした。以下の例のように、ツールチップの一行目に有効か否かの情報を表示し、二行目と三行目には、直接入力用配列と日本語入力用配列の設定ファイル名を…

パソコンを新調した

Windows 7 (64 bit)のパソコンを購入した。Windows Vista (32 bit)のパソコンを長らく使っていたところ、パソコン起動後数分後になぜか再起動し続けるようになってしまったのである。 結局、諸々の初期設定に丸一日を費やしてしまった。

enthumble (アンサンブル) の機能と DvorakJ を併用する

はじめに enthumble (アンサンブル) というソフトウェアの機能を、最終的には AutoHotkey のスクリプトで代用し、それと DvorakJ を併用する。 enthumble (アンサンブル) と DvorakJ の併用の失敗 enthumble (アンサンブル)という、無変換キーと他のキーを組…

AutoHotkey の機能を簡単にまとめてみたい

DvorakJ では設定できない処理を、AutoHotkey を利用してどのように実現するか。たとえば、[無変換] + [space] や [無変換] + [変換] で何かのキーを出力することがあるだろう。DvorakJ においては、この二つのキーバインドにキーを割り当てられない。それを…

キーを発行する毎に一定時間遅延できるようにした

Console*1 というアプリケーションで DvorakJ がただしく動作しないとの連絡を受けたので*2、DvorakJ の挙動を調べてみた。どうやら、キーの発行毎に一定時間待機する、AutoHotkey の SetKeyDelay - AutoHotkeyJp の設定が原因のようだ。これまではこの設定…

ファイルやURLを開いたりコマンドを実行する機能を拡張した

ファイルやURLを開いたりコマンドを実行できるようにした - blechmusik2の日記の続きである。 本日公開した版に以下の機能3点を盛り込んだ。 DvorakJ.exe のあるフォルダより上のフォルダを、相対パス("..\")で参照できるようにした DvorakJ.exe があるフ…

ファイルやURLを開いたりコマンドを実行できるようにした

本日公開した版に、ファイルやURLを開いたりプログラムを実行する機能を実装した。 この機能を利用するには、キーボード配列用やショートカットキー用の設定ファイルにおいて、"{run" のあとに開きたいファイルの在処を記し、 "}" を末尾に書くこと。 以下、…

DvorakJ のチュートリアルを作成しはじめよう

使い方全般をまず示し、それからキーボード配列を独自に作成する手法を説明するつもりだ。使い方全般は、単一キーの簡単な設定から説明しはじめようか。後者のキーボード配列の作成方法については、さまざまなキーボード配列の設定を例として取り上げてみた…

チュートリアルをそろそろ作成しようか

文字キー以外のキーの置き換えから、複数のキーによる IME の切り替え、SandSまでをまず説明する。つづけてキーボード配列を変更する手順を解説し、その後、これ以外の設定に触れる。このようなチュートリアルになりそうだ。また、随所に練習問題を設けてみ…

ヘルプページの多くをレファレンスマニュアルに移動した

DvorakJ:レファレンスマニュアル 予想以上に時間を費やしてしまった。

これまでの更新履歴を wiki に掲載した

DvorakJ:全般:更新履歴:過去 検索窓から横断検索できるのが良い。