【漢直】T-Code/TUT-Codeスレ Lesson4【連習】
■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。
2007/01/16(火) 00:06:27圧政下にもかかわらず、百円均一で売られている干物に、布袋様は感激した。
笑顔のまま気絶している秘書が肉感的な姿態をさらしている。
T-Coder, TUT-Coderの皆様、引き続き連習しましょう。
超絶技巧入力など、他の漢直の話題も歓迎します。
「連習」の意味については過去スレを参照してください。
■過去スレ
Lesson1 http://pc.2ch.net/test/read.cgi/unix/1014523030/
Lesson2 http://pc.2ch.net/test/read.cgi/unix/1061936143/
Lesson3 http://pc10.2ch.net/test/read.cgi/unix/1082032043/
■関連リンク
T-Code Laboratory
http://openlab.jp/tcode/
TUT-Code Web Site
http://plone.crew.sfc.keio.ac.jp/groups/tut-code
増田式・超絶技巧入力
http://homepage3.nifty.com/keyboard/
漢直Win
http://www.sato.kuis.kyoto-u.ac.jp/~yuse/tcode/kw/
※ 過去ログ保管庫あり
「窓使いの憂鬱」を使って T-Code 入力してみる
http://homepage3.nifty.com/songs/tcode/mayu/
0417名無しさん@お腹いっぱい。
2008/10/27(月) 21:39:40>>416 これは素晴らしい! にWindows上での漢字直接入力に新時代がやってきたぁぁー
とり急ぎ報告です。
Microsoft(R) IME スタンダード 2003で動作確認しました。
キーボード配列が101キーだと、";"キーの入力ができないようです。
JavaScriptが解らないので、どこをどう直せば良いのか……これから勉強してみます。
0418名無しさん@お腹いっぱい。
2008/10/27(月) 23:24:43WindowsXP+IME2003での現象。
Text Services Framework (TSF)を使用できるMS Wordなどでは入力できない場合があるようです。
いつものように、Microsoft IMEのPropertyで「詳細なテキストサービスを使用しない」と設定すると
入力できるようになりました。
WinAnthyはTSFを使っているためimeSend()が利用出来ないのかもしれません。
0419407
2008/10/28(火) 00:36:08101キーボードの件>
「あー、やられた」という感じです。現在、対応の準備を利用している中途半端
なコードがC言語部分に記述されているだけです。JavaScriptのレイヤーでも
対応可能かも知れないけど、本体で対応した方がよい内容ですね。しばらくお待ち下さい。
TSF>
これの事は忘れてました(汗
もうしばらく前にオフにして(たぶんそれも何かの漢直ツール導入時)
存在自体を忘れてました。更新する時にマニュアルに注意書きを加えたいです。
0420名無しさん@お腹いっぱい。
2008/10/28(火) 23:33:03WindowsXP+IME2002で動作しました。
ですが、TUT-Codeで記号がうまく入力できません。
TUT-Codeの記号は2打目がスペースバーなので、それが原因かと思います。
0421名無しさん@お腹いっぱい。
2008/10/29(水) 00:28:31これは凄い
確かに時代が変わる予感
0422名無しさん@お腹いっぱい。
2008/10/29(水) 02:36:40結果、入力はできるのですが、MS-IMEのように未変換・未確定文字列として送ることができません。
ATOKはImmSetCompositionStringWとかでUnicode処理する必要があるというやつのせいでしょうか?
ttp://www2.big.or.jp/~osamu/Delphi/tips.cgi?index=0239.txt
もう一つ、Emacs風のキーアサインのテストをしてみました。
// Emacs-like key bindings test
assignVk('C+', 'p', 'VK_UP'),
assignVk('C+', 'n', 'VK_DOWN'),
assignVk('C+', 'f', 'VK_RIGHT'),
assignVk('C+', 'b', 'VK_LEFT'),
assignVk('C+', 'd', 'VK_DELETE'),
assignVk('C+', 'v', 'VK_NEXT'),
assignVk('C+', 'a', 'VK_HOME'),
assignVk('C+', 'e', 'VK_END'),
上手く動いています。
assign()、assignVk()は容易に書き換えられるようですし、もし今後Window Titleなどで制御を
分岐できるようになれば、Xkeymacsなみの機能が実現できそうです。
0423407
2008/10/29(水) 05:54:41ttp://www1.axfc.net/uploader/He/so/152755.zip
DLパス sirius
>>417と>>420で報告してもらった問題への対応です。
>>417
101キーボードに対応させました。
ver 1.01をインストールして、config.jsの中の
includeMap('C-S-A-IME+IMESTR/', sirius.require('map/tut.js')),
↑こんな風に書いてある行を、
includeMap('C-S-A-IME+IMESTR/', sirius.require('map/tut-us.js')),
↑このように変更して下さい。
上記はTUT-codeの例だけど、t-codeや超絶技巧入力の場合も、同じように、
'-us'と付ければ、101キーボード用のマップを読み込みます。
>>420
報告ありがとうございます。今回、対応しました。スペースキーで記号を
入れられるようになっていると思います。試してみて下さい。
0424407
2008/10/29(水) 05:56:07詳細な報告、どうもです。ATOKは評価版もあるみたいなので試してみます。
それと、Windowタイトルをモディファイアにする構想を、今考えてます。
これが実現できれば面白いです。
あと、assignVk()ですが、初期サンプルのconfig.jsの記述がちょっと
不完全でした。
誤>
assignVk('C+', 'm', 'VK_RETURN'),
正>
assignVk('C+A-S-', 'm', 'VK_RETURN'),
Altキー、シフトキーの状態をチェックした方が確実になります。
そうしないと、Ctrl+m も、Ctrl+Alt+m も、同じ動作になってしまいます。
お試し下さい。
0425407
2008/10/29(水) 07:42:52ver 1.01では、漢直がひとつも指定されていない状態(デフォルトの状態)
で、kHelperを起動するとエラーが発生します。
config.jsで漢直を指定してからkHelperを起動して下さい。
0426名無しさん@お腹いっぱい。
2008/10/30(木) 02:24:51あの、assignVkでのmodifierの記述方法がよく分らないので質問です。
Ctrl-v で Page Up を送りたい場合は assignVk('C+A-S-', 'v', 'VK_NEXT') の記述で正しいようですが、
Alt-v で Page Down する場合は assignVk('C-A+S-', 'v', 'VK_PRIOR') となるのでしょうか?
これは動かないみたいです。
0427407
2008/10/30(木) 17:16:08modifierの件ですが、記述はあってます。プログラムがバグってました。
ALTが押されていると、WM_KEYDOWNでは無く、WM_SYSKEYDOWNを発生させて
ました。
なんか、自分で使っていない機能の部分はダメダメですね。バージョン
番号を0.1ぐらいに戻したくなってきましたけど、それも混乱の元に
なりますので、修正版は普通に1.02としてアップします。
0428名無しさん@お腹いっぱい。
2008/10/30(木) 22:15:27天狼用G-Codeストロークマップを作ってみました。
ttp://www1.axfc.net/uploader/He/so/153305
DLパス sirius-g
ついでに不具合報告。
自分の環境では一部の文字が入力できませんでした。
「ぽ」「楽」「好」「白」など。
自作の上記G-Codeだけではなく、天狼付属のT-Codeでも入力できませんでした。
時間の都合上、あまり多くの文字は調べていないのですが、まだありそうな感じです。
WindowsXP_Home_SP3、MS-IME2003です。
0429407
2008/10/31(金) 00:12:50おー、ありがとうございます!
次回アップ時に本体にmapディレクトリに入れさせてもらっていいですか?
入力不可能との
'.f' : '白',
'pr' : 'ぽ',
'7w' : '楽',
'mr' : '好',
これですが、私の環境だと大丈夫でした。
他の人、どうでしょう?
0430名無しさん@お腹いっぱい。
2008/10/31(金) 00:13:47WindowsXP Professional SP3 + MS-IME2003で入力テストをしてみましたが、
「ぽ」「楽」「好」「白」はG-CodeでもT-codeでも正しく入力できました。
何が問題なんだろう…?
'jfkd' : '氷', みたいに4ストロークの記述をしてみると、
一文字多く消去されてしまうので、TT-Codeのストロークマップはまだできないみたいです。
0431407
2008/10/31(金) 00:15:28たぶん、「白ぽ楽好」が慢性的に入力できないというのは考えにくいので、
T-Code で 「.f」 「pr」 「7w」 「mr」のストロークが入力できない。
という感じでしょうか?
0432407
2008/10/31(金) 00:54:27作者の人のページに、天狼にコンバートしやすいストローク表があったので、
作ってみました。現象を確認できるか試してみたのですが、確認できませんでした。
「氷」をはじめとして4ストロークの文字が入力できます。
ただ、やっていて気が付いたのですが、文字入力途中で3ストローク目を
間違ったので、BSで戻って3ストローク目を打ち直し、そして4ストローク
目を入力したりすると、正確な文字が入力できませんでした。3ストローク
目から始まる文字を入力してしまいます。
こんな感じです↓
「氷」と入力
j j
f jf
k jfk
d 氷
「赴」と入力したかってけど、3ストローク目を間違って1文字削除した結果
j j
f jf
k jfk
VK_BACK jf
j jfj
m jf多
私が使っている超絶だと、3ストロークの文字は1ストローク目と
2ストローク目が常に同じなので気が付きませんでした……
一文字多く戻ってしまう状態は再現できなかったのですが、似たような
状況の可能性はないでしょうか。
0433名無しさん@お腹いっぱい。
2008/10/31(金) 01:27:18ありがとうございます。
打ち間違いの問題はやはりそうなりますね。
もし可能であればで良いのですが、
'jf' : '◆',
'jfkd' : '氷',
と記述しても'◆'のような2バイト文字を一文字として削除してくれるとうれしいです。
さらに可能であれば、
'jfjfkd' : '氷だよ〜ん',
みたいな設定が正しく入力できると最高なのですが。これは結構難しいかも。
'jfjfkd' : '氷だよ〜ん',
'jfjfjfkd' : '氷です',
みたいなケースを考えると、以前に入力された文字列の長さを覚えている必要があるということでしょうね。
0434428
2008/11/01(土) 00:29:45自分が作成したAutoHotkeyのスクリプトが影響していた模様です。
自作スクリプトの中に下記一行があるのですが、
sc07D & 1::Suspend
コイツを削除なりコメントアウトなりしてやれば、
先述の一部文字入力不可の問題は回避できました。
お騒がせ致しました。
補足;
上記一行の意味は、
「¥」を押しながら「1」を押すとサスペンドOnOff。
サスペンドOnでホットキーを無効化できる。つまりスクリプト一時停止な感じ。
サスペンドOnにすればAutoHotkeyによるキーカスタマイズ等は一時的にキャンセルできるものと考え、
天狼のテストをしていた。
サスペンドOnにした際、
・上記一行があると、一部文字入力不可が発生する。
・上記一行がなければ、一部文字入力不可は発生しない。
また、「¥」を「^」等に変えても回避できるっぽい。
0435428
2008/11/01(土) 00:36:00ぜひG-Codeも天狼に標準添付して下さい。最初からそのつもりで作成しました。
G-Code作者のm(as)m氏の配布条件にも、
「移植・改変・配布・転載など、自由に行ってください。」
との一文があり、問題は無いと思います。
0436428
2008/11/01(土) 00:43:170437名無しさん@お腹いっぱい。
2008/11/01(土) 08:15:12TUT-Codeの記号が入力できるようになりました。ありがとうございます。
Linuxにもこんな便利なソフトがあればなぁ。。
0438名無しさん@お腹いっぱい。
2008/11/01(土) 09:32:45IMEを利用することでのメリットとデメリットは
・デメリット
確定するためにEnterを押す必要がある
・メリット
覚えてない文字を混ぜ書き変換で入力するとき
(TUTでは)aljと入力してからひらがな→変換
とするところを、普通にひらがなで入力して
スペースで変換できる
ってとこでしょうか?
0439名無しさん@お腹いっぱい。
2008/11/01(土) 12:20:42欲を言えばこれにも部首合成が実現できたら漢直winからの移行に伴い cp_932書き換え と SJISの呪縛から解放されるんだけどね。
>>438
> 覚えてない文字を混ぜ書き変換で入力するとき
> (TUTでは)aljと入力してからひらがな?変換
> とするところを、普通にひらがなで入力して
> スペースで変換できる
>
>ってとこでしょうか?
後置形変換を使わないの? 俺は文字数を数えるのは面倒とは思わないから使ってるけど。
0440名無しさん@お腹いっぱい。
2008/11/01(土) 13:46:32> もし可能であればで良いのですが、
> 'jf' : '◆',
> 'jfkd' : '氷',
> と記述しても'◆'のような2バイト文字を一文字として削除してくれるとうれしいです。
これは、
'jf' : '◆',
'jfk' : '◆',
'jfkd' : '氷',
ていう風に間にも入れることで解決できない?ま、面倒といえば面倒だけど。
当面はこの方法で回避すればいいべ
0441407
2008/11/01(土) 15:36:26Ver 1.02で対応予定です。assignVkでAltのストロークが正しく
使えるようになります。それと、申し訳ないけど、assignVkの
仕様を少し変更します。
旧 assignVk("入力モディファイア", "入力キー", "出力キー");
新 assignVk("入力モディファイア", "入力キー", "出力モディファイア", "出力キー");
こうしないと、例えば、Alt+C を押した時に、Ctrl+Cの動作をさせたい
という事が出来ない事に気付きました。
>>430 G-Codeの件
G-Codeマップ、採用させてもらいます。ありがとうございます!
>>430 オートホットキーの件
他のメジャーツールとの併用は実現していきたいけど、検証等、すぐには
ちょっと難しいですね。とりあえず、マニュアルへの注意書きを記述
するようにしたいです
>>433
なるほど。
2ストローク入力と、前方一致する4ストローク入力があるのですね。
前方一致するnストロークと、n+1ストロークについては考慮していた
のですが、nストロークと、n+2ストロークとの前方一致は考慮して
ませんでした。処理できるか試してみます。
当面は、>>440氏のナイスフォローの通りでお願いします。
0442407
2008/11/01(土) 15:37:13>>438
確かにいちいちEnterを押すのが手間な所ですね。私のように勉強不真面目な
漢直使いには便利だけど、完璧に全ストロークを覚えている人には却って
不便ですよね。切り替えの方向性を模索していきます。
>>439
部首合成は個人的には使ってないので、ちょっと勉強してみます。
辞書を持てば、可能だと思います。
1.02作成中です。
■ver 1.02内容
* assignVk()でAltが正しく利用できるようになる
* assignVk()で出力Modifierが使えるようになる(仕様変更)
* G-Codeのマップ追加
* その他、細かい点でのbugfix等
連休中にアップしたいです。
0443407
2008/11/01(土) 19:38:42今、ふと思ったのだけど、
'.f' : '白',
'pr' : 'ぽ',
'7w' : '楽',
'mr' : '好',
これらは、いずれもノーパソ用テンキーの割り当てキーですね。
NumLockとは、関係ないでしょか?
0444名無しさん@お腹いっぱい。
2008/11/01(土) 20:22:51>後置形変換を使わないの? 俺は文字数を数えるのは面倒とは思わないから使ってるけど。
>>438はTUTって言ってる。
TUTは後置変換はない。
0445439
2008/11/01(土) 21:22:33> >>439
> >後置形変換を使わないの? 俺は文字数を数えるのは面倒とは思わないから使ってるけど。
> >>438はTUTって言ってる。
> TUTは後置変換はない。
いやだからテーブルをカスタマイズして使えるようにすればいいだけの話。
……って俺釣られてるのか?
0446名無しさん@お腹いっぱい。
2008/11/01(土) 21:26:13おおお、本当だ。これでできますね。
以前にRobinを使って作った拡張が三千ぐらいあるので、これから試してみよっと。
MapとsiriusKanchoku()はJscriptのレイアで実現されているようなので、
自分でも好きなように変更できるのかな。凄いぞ、天狼!
>>441
assignVkの出力を複数書けるようになるともっと嬉しいです。
assignVk("入力モディファイア", "入力キー") {
"出力モディファイア", "出力キー");
"出力モディファイア", "出力キー");
If (WindowTitle == "hoge") {
"出力モディファイア", "出力キー");
}
}
なんて風に、複数の出力を条件付きで書けたら最高。
0447446
2008/11/01(土) 21:47:38'ut' : '金',
'utm' : '金',
'utmt' : '鍵',
みたいに設定をmapに加えていきます。
そして入力に問題が起きるケースをさらに追加するっと。
'j/' : '以',
'j/l' : '以',
'j/la' : '似て',
'j/lb' : '以前',
こんなこともできるよ。
'vf' : '青',
'vf;' : '晴',
'vf;e' : '晴れ',
'vfk' : '晴',
'vfkl' : '晴天',
'vfklk' : '青天',
'vfklky' : '青天井',
'/k' : 'ご',
'/k,' : 'ご',
'/k,f' : 'ございます',
'/kk' : 'ご',
'/kks' : 'ございました',
'/kks/' : 'ごた',
'/kks/k' : 'ごたご',
0448428
2008/11/02(日) 10:16:20長文&連投スミマセン。
-----------------------------------------------------------------
先述の四文字に共通するものは何かないかと文字コードを調べてみた。
Unicode JIS Shift-JIS 区点
ぽ 307d 245d 82db 00461
楽 697d 335a 8a79 01958
好 597d 3925 8d44 02505
白 767d 4772 9492 03982
ここで注目すべきは、Unicodeの下2桁がいずれも「7d」であるということ。
ところで、問題を引き起こしていたAutoHotkeyの一行は、下記だった。
sc07D & 1::Suspend
上記コンビネーションキーの指定により、AutoHotkeyは、
スキャンコード「07D」に相当する入力を常時監視しているものと考えられる。
(Suspendコマンドはトグル動作をするので、サスペンドのOnOffに関係なく監視していなければならない)
(スキャンコード「07D」は「¥」キー)
上記AutoHotkeyの常時監視下において、
天狼がIMEに文字を送出する際、
その文字のUnicodeの下2桁が「7D」である場合、
文字送出をAutoHotkeyが横取りしてしまい、IMEには届かず、
「入力できない」となる。
ということなのではないか?
0449428
2008/11/02(日) 10:17:09sc00D & 1::Suspend
と書いた場合、今度は、
Unicodeの下2桁が「0D」の文字が入力できなくなるはず。
(スキャンコード「00D」は「^」キー)
Unicodeの下2桁が「0D」の文字とは、例えば、
Unicode
不 4e0d
倍 500d
名 540d
損 640d
服 670d
植 697d
実際に試したことろ、予想通りこれらの文字は入力できなくなった。
(「sc07D」を指定していた場合には入力できていた。)
また、先程入力できなかった「ぽ」「楽」「好」「白」は入力できるようになった。
>>434の補足の最後、
>また、「¥」を「^」等に変えても回避できるっぽい。
というのはデタラメで、入力できなくなる文字が別のものに変わるだけであり、
全く回避できていない。
0450428
2008/11/02(日) 10:18:081.行頭に「~」を付ける。
2.スキャンコードを使わない。キーの名前か仮想キーコードで指定する。
1.行頭に「~」を付ける。
「¥」+「1」のコンビネーションの場合は下記の様になる。
~sc07D & 1::Suspend
補足;
文頭の「~」の有無による違いは何かというと、
“AutoHotkeyを流行らせるページ”によると、
「~」が無い → 一つ目のキー自体のもともとの機能は無効化される。
「~」が有る → 一つ目のキーにチルダ(~)をつければ、そのキーは無効化されず、普通に入力される。
監視は依然として行なうけれども、天狼のIMEへの文字送出の横取りはしなくなる、ということでしょう。
2.スキャンコードを使わない。キーの名前か仮想キーコードで指定する。
「¥」+「1」のコンビネーションの場合は下記の様になる。
\ & 1::Suspend
vkDC & 1::Suspend
-----------------------------------------------------------------
スキャンコード使ってたオイラが不勉強だっただけですな...orz
0451名無しさん@お腹いっぱい。
2008/11/03(月) 02:46:020452407
2008/11/03(月) 15:23:43ちょっと別件があって、今日は時間切れです。アップは明日になって
しまいそうですが、よろしくです。
>>442で書いた件に加えて、以下の機能が使えるようになります。
バックスペース
奥が深かったです。バックスペースだけで3種類も使ってしまいました。
ストロークに歯抜けがある場合のサポート
> 'jf' : '◆',
> 'jfkd' : '氷',
> と記述しても'◆'のような2バイト文字を一文字として削除してくれるとうれしいです。
↑これが可能になりました。
その他諸々は、また明日書きます。
0453407
2008/11/03(月) 15:25:13カタカナモードは特に用意してませんでした。
私の場合はIMEの機能で後から変換しています。
カタカナモード、あると良いでしょうか?
0454名無しさん@お腹いっぱい。
2008/11/03(月) 15:42:460455名無しさん@お腹いっぱい。
2008/11/03(月) 16:18:28うわ。ATOKとSKKIMEで使っていたので気づきませんでしたー(どちらも未変換状態で文字が入らない)。
なるほど、MS-IMEでカタカナ後変換して使うのか。
>>454
IMEのカタカナモードではだめで、後変換する必要があるみたいです。
0456455
2008/11/03(月) 16:49:00ややこしくてしかも不可視のモードはできるかぎり回避されるべきで、
後変換で対応できるならそれでいいわけです。
0457407
2008/11/03(月) 22:15:52キーアサインツール「天狼」 version 1.02
ttp://www1.axfc.net/uploader/He/so/154685.zip
DLパス sirius
0458名無しさん@お腹いっぱい。
2008/11/04(火) 23:46:320459名無しさん@お腹いっぱい。
2008/11/05(水) 00:06:43今assignVkを中心に試しています。次の設定は正しく動いてます。
assignVk('C-A+S-', 'v', '', 'VK_PRIOR'), // PageUp
assignVk('C+A-S-', 's', 'C+A-S-', 'f'), // Ctrl+F Find
assignVk('C+A-S-', 'y', 'C+A-S-', 'v'), // Ctrl+V Paste
assignVk('C+A-S-', 'w', 'C+A-S-', 'x'), // Ctrl+X Cut
assignVk('C-A+S-', 'w', 'C+A-S-', 'c'), // Ctrl+C Copy
下の設定は書き方が正しいのかどうか良く分らないのですが、動かないみたいです。
assignVk('C+A-S-', '/', 'C+A-S-', 'z'), // Ctrl+Z Undo とはならないみたい
assignVk('C+A-S-', 'VK_SPACE', 'C-A-S+', 'VK_RIGHT'), // Shift+→ とはならないみたい
あともう一つ、assignVkでのキーアサイン変更はMS-IME2003自体には有効とならないようですね。
MS-IME2003側の設定を変更して対応しています。
天狼が使えて、毎日楽しいです。
0460407
2008/11/05(水) 05:01:29>assignVkの出力を複数書けるようになるともっと嬉しいです。
現バージョンでもできますよ。
assign('C+A-S-', 'l', function() {
sirius.send('', sirius.vk('VK_DOWN'));
sirius.send('', sirius.vk('VK_DOWN'));
sirius.send('', sirius.vk('VK_DOWN'));
sirius.send('', sirius.vk('VK_DOWN'));
}),
こんな感じで、assignVk()ではなく、assign()関数を使ってみて下さい。
上記の例だと、Ctrl+lを押すと、4行分カーソルが下に移動します。
ただし、Window制御や状態取得の関数は無いので、そこは今後の課題ですね。
是非、やりたいです。
>>448
詳細な報告、どうもです。
この手のツールはなかなか他ツールとの併用が難しい所ですが、おかげさま
でスッキリしました。マニュアルからリンク貼らせてもらってます。
ありがとうございます!
>>451
現状だと、IME内部に文字列を送れるのはMS-IMEだけみたいですね。
情報も頂いてるからトライしたいと思ってますが、これはひょっとしたら
結構難しい事なんじゃないかとも思ってきました。じっくり腰をすえて
取り組みたいと思いますので、しばらく待って下さい。
で、カタカナモードですが、MS-IME以外で後変換できない状況を考えると
付けたいと思います。利用する、しないはconfig.jsの記述内容で変更
するわけだから、カタカナモードが不用な人の邪魔にもならないと思います。
0461407
2008/11/05(水) 05:11:33報告ありがとうございます。
思いっきり、説明不足がありました。。
第3パラメーターでの出力モディファイアは、'+'だけが有効です。だから、
assignVk('C+A-S-', 's', 'C+A-S-', 'f'), // Ctrl+F Find
↑この記述は、
assignVk('C+A-S-', 's', 'C+', 'f'), // Ctrl+F Find
↑こんな風に書いて下さい。上記の例だと'C+'が先に来ているので動いていますが、
assignVk('C+A-S-', 's', 'C-A+S-', 'f'), // Ctrl+F Find
↑こんな風に書いた場合、'A+'を認識できなくなってしまいます。
早くちゃんとしたマニュアル作らないと、アカンですよね。。
0462407
2008/11/05(水) 05:13:18assignVk('C+A-S-', '/', 'C+A-S-', 'z'), // Ctrl+Z Undo とはならないみたい
これは、'/'の代わりに、'jp-/'と書いて下さい。英数字以外の
キーは、'VK_?????'の仮想キーで指定するか、シフトを押さない時の
出力内容に'jp-'を付けます。101キーボードの場合には、'us-'と
付けて下さい。それで、、
assignVk('C+A-S-', 'VK_SPACE', 'C-A-S+', 'VK_RIGHT'), // Shift+→ とはならないみたい
これも出力モディファイアの記述の問題だと思ったらバグでした。
修正版アップしましたので、お試し下さい。
www1.axfc.net/uploader/He/so/155239.zip
キーアサインツール「天狼」 version 1.02a
DLパス sirius
今回は、DLLの入れ替えだけです。
0463407
2008/11/05(水) 05:14:29>あともう一つ、assignVkでのキーアサイン変更はMS-IME2003自体には有効とならないようですね。
>MS-IME2003側の設定を変更して対応しています。
これがよく分かりませんでした。
どんな感じでしょうか?
0464名無しさん@お腹いっぱい。
2008/11/06(木) 03:46:02またversion 1.02a sirius_core.dllへのアップデートで
assignVk('C+A-S-', 'VK_SPACE', 'S+', 'VK_RIGHT'), // Shift+→
これも動きました。ありがとうございます!
>>460 おおおおお、現行でも既にできたのですね。
JavaScript勉強しなくちゃいけませんね。すみません。
// C-k kill-line
assign('C+A-S-', 'k', function() {
sirius.send('S+', sirius.vk('VK_END'));
sirius.send('C+', sirius.vk('x'));
}),
// M-d kill-word
assign('C-A+S-', 'd', function() {
sirius.send('C+S+', sirius.vk('VK_RIGHT'));
sirius.send('', sirius.vk('VK_DELETE'));
}),
こんな感じで設定を試しています。
あとはC-x C-cでCtrl-Sを送る、というような2ストロークコンビネーションが実現できれば
他ツールとの組み合せなしに天狼だけで入力テストができるようになるので、
ちょっと考えてみます。
0465名無しさん@お腹いっぱい。
2008/11/06(木) 03:51:10assignVk('C+A-S-', 'b', '', 'VK_LEFT'), // ←
assignVk('C+A-S-', 'g', '', 'VK_ESCAPE'), // ESC
と設定されているとします。
MS-IME2003キー設定はデフォルトのMicrosoft IME、MS-Word 2003上で入力すると以下の結果となります。
IME入力し変換する前 : Ctrl-Bで入力が確定されBoldの書体設定となる。Ctrl-Gでは何も変化なし。
IME入力し変換した後 : Ctrl-Bで入力が確定されBoldの書体設定となる。Ctrl-Gでは"検索と置換"が起動してしまう。
それぞれ期待していた、←左カーソルキー、ESCの入力結果とはならないようです。
他にもう一つ、Ctrl+Alt+GのGoogle検索動作ですが、MS-Word上の入力ではAltキーの入力が
MS-Wordに喰われてしまう現象があるようです。
Ctrl、Alt、G の順番でキーを押すとGoogle検索が起動しますが、
Alt、Ctrl、G の順番でキーが押されると、Altキー入力がWordに喰われてしまい動作しません。
0466407
2008/11/06(木) 06:06:15うまく行ってなによりです。
と、言いたかったのですが……
ver 1.02aに致命的な欠陥がありました。
稀に(と言っても、本日3回)、バックスペースが入っぱなしになって
しまいます。天狼を終了してもその状態から抜けられません。
SendInput()という関数がMSDNに記述されている仕様通りに動作しなかった
ので、その問題を回避する策を講じたのがver 1.02aなのですが、やり方が
まずかったみたいです。シフトキー押下が正しく処理できない問題は、
別の方法で対応したいと思いますので、当面、使用を中断して下さい。
なんか、厄介な所に引っかかってしまったみたいです……。
>MS-IMEの件
あ、なるほど。
IMEに文字列がある事を判断するIMESTRというモディファイアがあるのですが、
それがデフォルトでオンだからだと思います。窓使いの憂鬱と同じ仕様です。
デフォルトモディファイアを無視する'/'という修飾子がありますので、
assignVk('C+A-S-IMESTR/', 'b', '', 'VK_LEFT'),
と、してみて下さい。
>あとはC-x C-cでCtrl-Sを送る、というような2ストロークコンビネーションが実現できれば
漢直と同じく2ストロークは定義可能です。
デフォルトのconfig.jsにおいて、kHelper用に 2ストロークメニューが
定義されていますので、見てみて下さい。詳しい解説はまた後ほどしますね。
0467407
2008/11/06(木) 06:08:46問題なのか、実は1.02にも存在しているバグなのか確認するために、
私自身、当分1.02を使います。他に色々機能追加したいのだけど、これを
先にやらないとまずいので、ちょっと待っていて下さい。
>Wordの件
確認しました。Wordの場合、Alt単体でIMEの未確定文字列を確定させるという
機能が割り当てられているみたいですね。天狼のデフォルトの設定だと、
モディファイアキーそのものの押下によって発生したイベントを拾わない
ので、そのままアプリケーションに流れてしまうようです。
これは、ちょっと仕様から考え直してみます。
0468名無しさん@お腹いっぱい。
2008/11/06(木) 21:17:40にて開発を行いませんか?→「天狼」作者様
本家tcodeの開発も今後はこちらで行われるようです。
0469名無しさん@お腹いっぱい。
2008/11/06(木) 23:15:30カンテックやKISや日本語倉頡ができて面白そうなんだけどな。
0470469
2008/11/06(木) 23:39:02データも提供できないし。
0471407
2008/11/07(金) 00:27:30本日2回、OS起動後、一度も天狼を起動しない状態で、問題が発生しました。
キーボードをひっくり返してバンバン叩いたら直りました。
天狼開発中はキーボードがおかしくなる事がごくごく普通にあるので、
そんな物理的な要因とはまったく思ってませんでした。
うぅ、スマンです。。
>>468
ちゃんとWikiとリボジトリを用意したいなと思っていた所なので、
それはとても、ありがたいです。
Google Codeを使った事がないのですが、お仲間に入れて頂くには、
どうしたらよいでしょうか。>>468さんは、中の人ですか?
>>469
モードですか。今の所、モードらしいモードはなく、config.jsの
書き換えで対応するわけですが、例えば設定用のXMLファイルを読
み込み、GUIで切り替え可能な物等、ちょっと面白そうですね。
config.jsは非常に自由度が高いんじゃないかと思ってますが、
敷居の高さが否めないと思いますので、興味ある所です。
0472名無しさん@お腹いっぱい。
2008/11/07(金) 00:36:17漢直で、Shift+任意のキー を定義するにはどうしたらいいですか?
たとえば、
'Ao' : '合',
というような定義で、Shift+a o のストロークを表したいと思ったのですが、できないようなので……
0473468
2008/11/07(金) 00:54:33残念ながら中の人ではないです…。すみません。
ソースを見られれば何かと不具合報告・改善提案がやりやすいかと思ったまでです。
Google のアカウントで
http://groups.google.com/group/tcode
にアクセスしてユーザグループに参加した上で
プロジェクトのオーナーに連絡すればdeveloperになれるようです。
0474名無しさん@お腹いっぱい。
2008/11/07(金) 22:03:00> いっそ本格的に「モード」を作ってもらえると、
> カンテックやKISや日本語倉頡ができて面白そうなんだけどな。
漢字とかなの切り替えはどうやるのかが明らかになってないし、
そもそも029キーボードの利用を前提としているのに、どうやって実現させるのさ > カンテック KIS
0475407
2008/11/09(日) 11:30:27>>472 シフトの件
あんまり想定してませんでした。
今の仕様だと、やってできない事はないけど、相当スクリプトを書かなくて
はならないので面倒臭いです。楽に記述できるようにしたいと思います。
ただ、どうせやるなら他のモディファイアにも対応させたいので、
'(S+)ao' : '合' // 'shift+a' の次に 'o'を押すと'合'を出力
'(S+)a(C+)o' : '会' // 'shift+a'の次に'ctrl+o'を押すと'会'を出力
こんな感じを考えてます。ところでシフトを使う配列って、何て言う配列ですか?
>>473 Google Codeの件
教えて頂いて、ありがとうございます。サイトやリポジトリについては、実は私も
一応準備中です。と言うわけで、準備できたらいずれ自分の所でやってみます。
= 1.03の予定(あくまで予定) =
* VK_RSHIFT、VK_RCONTROL、VK_RMENUがうまく扱えてないので修正
* アプリごとにキー配列を変更可能にするための措置(カレントウィンドウをModifierに)
* 押すたびに漢直の配列を変更できたりするモードスイッチを、任意キーに指定する機能
* ウィンドウ制御(カレントウィンドウの移動、サイズ変更、最大化、縮小化等)
* キーマップ追加(vi、emacs、wordstarライクなキー配列のスケルトン)
* カタカナモード
機能的にはこの辺で一度締めて、以後はデバッグとマニュアル、MS-IME以外の環境
への対応の模索等、やりたいと思っています。
「こんな機能があれば素晴らしい!」というのがあれば、今のうちに教えて
いただけると、ありがたいです。
0476名無しさん@お腹いっぱい。
2008/11/09(日) 12:30:17何やら良く解っていない所がありますが、とにかく
デ、キタ━ヾ( )ノ゛ヾ( ゚д)ノ゛ヾ(゚д゚)ノ゛ヾ(д゚ )ノ゛ヾ( )ノ゛━━!!
IMESTR/ 追加でIME変換中に意図した動作となりました。
また、↓こんな風に config.js に書き加えてEmacs風のkey bindingsをテスト中です。
ttp://homepage3.nifty.com/songs/tcode/sirius/sirius_emacs_like_key_bindings.txt
かなりいい加減に書いてあるので、とりあえず取り扱い注意ということで。
これで他ツールとの組み合せなしに天狼だけでの入力テストを開始しました。
0477名無しさん@お腹いっぱい。
2008/11/09(日) 17:52:36> こんな感じを考えてます。ところでシフトを使う配列って、何て言う配列ですか?
俺は>>472じゃないけど代わりに言うと、「百相鍵盤『き』」がその一つに該当する。
http://www.cs.k.tsukuba-tech.ac.jp/download/ki.html
シフト打鍵を組み合わせることで、第2水準までの漢字すべてを2打で出力できるようになっている。
俺も一度TUT-Codeから移行しようとしたけど、シフト/アンシフトで記憶の混乱が起きて挫折した経緯がある。
0478名無しさん@お腹いっぱい。
2008/11/09(日) 22:33:12おつかれさまです。
機能がbin layerに依存するのか、それともJavaScript layerに依存するのかが勉強不足で分っていないまま
お願いするのも何なのですが、とりあえず機能リクエストとして、
一つめは、keydown、keypress、keyupの3つのEventにそれぞれ設定を書けると楽しいです。
次に >>447で書いたケースになりますが
'/kk' : 'ご',
'/kks' : 'ございました',
'/kks/' : 'ごた',
'/kks/k' : 'ごたご',
今はこの設定記述だけだとT-code入力で『ごの』、『ごに』などが入力できません。
'/kkd' : 'ごの',
'/kkg' : 'ごに',
という具合に、入力できない組み合せをどんどん追加していけば良いのですが、
このような記述無しでも入力できるようになると有難いです。
何故このようなことに拘ってしまうかと言いますと、
自分のやりたい拡張設定としては今のままだときっと六千行ぐらい書かなければならないと思うので、
できるだけ手間と天狼が必要とするUsage memoryを削減したいためです。
ちょっと想定外だとは思いますが、'/kks' : 'ございました', の設定で /kk までの入力で
kHelperの表示が以下のようになります。
ttp://homepage3.nifty.com/songs/tcode/sirius/untitled.png
0479名無しさん@お腹いっぱい。
2008/11/10(月) 21:41:09どうもありがとうございます!
>>477
その通り、百相鍵盤『き』です。
正確には、玄人向け (kHelper向け?) にかなり改変していますが、基本は一緒です。
0480名無しさん@お腹いっぱい。
2008/11/10(月) 22:28:53期待大
0481407
2008/11/11(火) 05:07:33すげ…
これを時期バージョンに入れたかったのです。mark_modeもしっかり動いてます。
ろくなマニュアルもまだ無いのに、素晴らしい。。
これをですね、
(function () {
// ここに本体(コピペで大丈夫)
return map_global;
})();
と書くと、config.sysとは別ファイルに保存して利用できます。で、config.jsでは、
includeMap('IMESTR/', sirius.require('emacs.js')),
こう書く事で呼び出せます。呼び出し部分で'IMESTR/'が効くので、本体内で
'IMESTR/'と書かれている所を全削除しても大丈夫なはずです。これだと
IME作業中にストロークを持っていかれるのを好む人とそうでない人で
両方使えますね。
sirius.require()はC言語のinclude文に相当するわけですが、検索は、
1. インクルード元のファイルからの相対パス
2. config.jsの存在するディレクトリからの相対パス
3. 'インストールディレクトリ/scripts' からの相対パス
の順にファイルを検索します。なので、config.jsと同じディレクトリに保存
しておけば、天狼本体のバージョンアップ時もメンテが楽になるし、複数人で
同一PCを利用する環境でも運用性が高まります。
0482407
2008/11/11(火) 05:23:14「き」ってそういう配列なんですね。名前しか知りませんでした。
次期バージョンで対応したいと思います。
>>478
>一つめは、keydown、keypress、keyupの3つのEventにそれぞれ設定を書けると楽しいです。
やってみたいと思います。実は今でもフックという機能で出来ます。
加えて、同時押しに対応させれば、nicoraやSandS もできるようになるので
すが、この辺は全部含めて、次々々バージョンにやりたいと思います。
>kHelperの表示が以下のようになります。
先にこっちを。
なるほど、確かにこうなってしまいますね。。なんとかするとしたら1文字目
のみ表示し、その場合は色を変える等、別の文字が続いている事を示すように
する他ないでしょうか。ただ、いっそこのままの方が表示は崩れるけど、使い
やすいような気もします(手抜きですが)。どうでしょう?
0483407
2008/11/11(火) 05:29:25>次に >>447で書いたケースになりますが
状況確認しました。>>447の段階では案内してもらったマップ単体でテスト
したのですが、これをt-codeの配列と絡めた時に問題が発生するという話しなんですね。
これはなんとかしたいと思うのですが、やるとしたら
1. 後続ストロークに定義されていない入力を確認した場合、未確定部分をストローク
開始とみなし、最新の入力をそれに加える。
2. 未確定部分と最新入力を加えたストロークが存在すればその文字を出力する
3. 存在しなければ最新入力を1ストローク目として解釈する
という仕様になると思うのです。つまり、「'/kk' : 'ご'」は、どうしても
邪魔になってしまいます。仮に
'/k' : 'ご',
'kd' : 'の',
'/kks' : 'ございました',
'/kks/' : 'ごた',
'/kks/k' : 'ごたご',
これだけだった場合、'/kk'と入力された時、「ごk」と表示され、「k」が余っている
状態です。ここで「d」を入力すると、'/kkd'という並びが存在しないので、余っている
「k」を1ストローク目とみなし、「kd」を得られるので「の」を出力する事が出来るよ
うになると思います。
だけど、「'/kk' : ご」があると、余り分がなくなってしまうので、「d」から始まる
ストロークと認識しなくてはならない。という感じです。
'/k'で「ご」が確定しているのに'/kk'でさらに「ご」を定義しているのは何か意味が
あると思うのですが、どういう意図でしょうか。
0484名無しさん@お腹いっぱい。
2008/11/13(木) 00:40:52なるほど、lambdaみたいなもんなんですね。
C-u universal-argument や keyboard macro、abbrev、completionなんかも
できたらいいので勉強してみます。
Window Title や Class で条件分岐できるようになったら
Emacs の Global Bindings をできるだけ作って、試してみます。
結果はまた報告します。
>>482
kHelperの件ですが、表示はこのままで全く良いですー
これは "入力中文字ガイド"の表示の話ではなくて、
"入力済文字ガイド" がちょっと見にくいかな? ってな程度の話でした (^^;ゞ
しかしまあkHelperは最高に便利! です。
0485名無しさん@お腹いっぱい。
2008/11/13(木) 01:26:03「'/kk' : 'ご'」があると余り分がなくなってしまう件、
現状のままでも自分のやりたいことはできますので、このまま変更されなくてもOKです。
モディファイアが拡張された後でまた考えてみて、必要があったらリクエストしようと思います。
「'/kk' : ご」は何かと言いますと、ちょっと解り難いと思うので、以下超絶技巧入力の例で
'tc' : '第',
'tcx' : '超', // ←これやら
'tcxz' : '超絶',
'da' : '言',
'daz' : '謎', // ←これみたい
'dazn' : '言迷',
な設定をT-codeで作っていき、これが使えるのか? ある程度の数設定を作ると、
問題無く文が書けるのだろうか? と試してみているのです。
それで前回は六千行ぐらい設定を作ったら、
何をやっているのかが解らなくなってしまったというオチでした orz
天狼のmapがJavaScriptだけで実現されているならば、自分で考えて拡張が可能だと思いますので
これもやってみようと思います。
Trieのような順序付き木構造と、Cannaの設定のように
'/kk' : 'ご' : 'k', // 三つめの'k'は余りとして次のストロークの組み合せに渡す
というのをやってみたいっっ、です。
0486407
2008/11/16(日) 17:00:20>なるほど、lambdaみたいなもんなんですね。
ですね。JavaScript(仕様としてはECMAScript、実装としてはJScript)は、わりとlisp
みたいな面があると思います。クロージャも使えます。
この辺は私が仕様考えたり、実装したりしたわけじゃなく、JavaScriptそのままです。
>>485
>現状のままでも自分のやりたいことはできますので、このまま変更されなくてもOKです。
>モディファイアが拡張された後でまた考えてみて、必要があったらリクエストしようと思います。
了解です。
>天狼のmapがJavaScriptだけで実現されているならば、自分で考えて拡張が可能だと思いますので
mapの制御はほぼ99%、JavaScriptで実装されています。残りの1%は、ループ内で頻繁に利用される
関数がJavaScriptでは遅いので、便宜上作成したユーティリティ関数を利用している部分です。
(sirius.vk()、sirius.require()、sirius.vkString()等)。
と言うわけで、色々カスタマイズは可能だと思いますので、是非やってみて
下さい。
それと、ver 1.03はまだ開発中です。。
今ん所、終わったのは以下のような所です。
* VK_RSHIFT、VK_RCONTROL、VK_RMENUがうまく扱えてないので修正
* カタカナモード (ついでに半角モードも)
* 「き」等に対応させるために漢直マップにモディファイアを記述できるようにする
あと、Window制御が出来るようになったら、またアップします。
0487名無しさん@お腹いっぱい。
2008/11/16(日) 19:16:460488名無しさん@お腹いっぱい。
2008/11/16(日) 19:48:000489変型『き』使い
2008/11/21(金) 16:07:49kHelperにスペースキーを表示することはできますか?
JIS第二水準漢字までの漢字と、その他主要な文字を収録するには、最低限、シフトキーに加えて41個のキーが必要なもので。
0490407
2008/11/22(土) 22:25:48kHelperにスペースキーを表示することはできますか?
現状では出来ないです。スペースキーどころか、
-@:\^][\ ←この辺のキーボードの右側に集まっているキーが表示できないのが現状です。
なんとかしたいと思いますが、ver 1.05以降で対応したいです。
それと、ver 1.03がなかなかアップできなくて申し訳ないです。
この連休で作業しようと思っていたのですが、仕事が残ってしまいました。。。
もうチョット、待って下さいね。
0491名無しさん@お腹いっぱい。
2008/11/25(火) 18:46:460492名無しさん@お腹いっぱい。
2008/12/17(水) 11:32:480493名無しさん@お腹いっぱい。
2008/12/21(日) 22:14:46……てなことを企んでいるんだけど、
天狼はAHKの出力を食べてくれません。漢直winはちゃんと食べるんだけどね。
なんでか分かる方いますか?
0494407
2008/12/26(金) 04:32:38仕事ハマってます。今年は正月休み無しらしいです。
なかなかバージョンアップできないのですが、なんとかしたいと思ってます。
AHKの件はよく分からないのですが、天狼はキーボードフックのレイヤーで
入力を処理します。ですので、AHKの入力エミュレーション処理は、キー
ボードフックでは捕らえられないレイヤーで行われているのかも知れないです
0495名無しさん@お腹いっぱい。
2009/01/03(土) 00:04:38ぜ書きで使っているが。ここに来る迄が大変だった。これから先の漢
字を考えると、暗い。
何か、良い方法は無いのか。例えば、ストローク表があるが。...
何か、応用が出来るのだろうか?
0496名無しさん@お腹いっぱい。
2009/01/14(水) 19:32:14しぶといね。
0497407
2009/01/29(木) 22:14:44来月は天狼の開発に入れると思いますので、よろしくです。
0498名無しさん@お腹いっぱい。
2009/01/29(木) 23:27:42グローバルフック不要な分楽かも知れないけど、ホットキー食い潰すのってどうなのかね?
0499名無しさん@お腹いっぱい。
2009/01/30(金) 00:07:08>>497
おぉ仕事お疲れ様
天狼期待してるよ
0500名無しさん@お腹いっぱい。
2009/02/25(水) 07:36:51kHelper用のDvorak配置
'us' : [
49, 50, 51, 52, 53, 54, 55, 56, 57, 48,
222, 188, 190, 80, 89, 70, 71, 67, 82, 76,
65, 79, 69, 85, 73, 68, 72, 84, 78, 83,
186, 81, 74, 75, 88, 66, 77, 87, 86, 90
]
'jp','us'の他に'dvorak'とか増やせるようになってるとうれしいです。
T-Code派なんですが、部首変換をmapを大きくして実装するか、
昔のX68k版みたいなロジックで実装するか迷っています。
まあいろいろ試してみますよ。
>>495
EELLLが学習効率がいいです。T-Code用しか教材がないかもしれないけど。
0501名無しさん@お腹いっぱい。
2009/03/01(日) 09:39:48QWERTYのローマ字で200字/分程度は打てるため、速度には困っていませんが、
新しい技術を覚えていくというのは楽しいですね。
とりあえずは年度中にひらがなをマスターすることを目標に頑張っていきたいです。
0502名無しさん@お腹いっぱい。
2009/03/08(日) 04:29:52>>500
ありがとうございます。
> kHelper用のDvorak配置
> 'us' : [
> 49, 50, 51, 52, 53, 54, 55, 56, 57, 48,
> 222, 188, 190, 80, 89, 70, 71, 67, 82, 76,
> 65, 79, 69, 85, 73, 68, 72, 84, 78, 83,
> 186, 81, 74, 75, 88, 66, 77, 87, 86, 90
> ]
scripts/multi/kHelper/window.htmlですよね。
> 'jp','us'の他に'dvorak'とか増やせるようになってるとうれしいです。
JavaScriptな部分だけでは直せないようですね。
それから、'jp'と'us'は正しくは、'106'と'101'ですね。
とりあえず俺の使ってるwindows.htmlとt-dvorak.jsです。
http://www1.axfc.net/uploader/He/so/202897.zip&key=sirius
0503名無しさん@お腹いっぱい。
2009/03/17(火) 15:29:18何より、メジャーとはいえない漢直の中で、更にメジャーとはいえない
超絶技巧に対応しているなんて・・・!
自分も超絶になじんではや5年あまりですが、windowsバージョンアップのたびに、
いつ現在愛用しているWXGが亡くなるのか、また会社でも漢直したいけどWXG
入れられない!というジレンマへの解決策が見出せました。
本当に感謝します。
これで思うまま漢直できます。本当に漢直に慣れると、ATOKの変換効率がいくら
良かろうが、ローマ字変換そのものがうっとおしく感じるからですね。
ありがとうございます。
0504名無しさん@お腹いっぱい。
2009/03/26(木) 09:17:07これを機会に超絶技巧入力に再挑戦してみたいと思いました。
0505500
2009/04/02(木) 22:53:08漢直Winに転向してしまいました。
前スレの828〜840あたりでmayu Dvorakと漢直Winの両立で困ってる人いたよね。
自分も同じ問題で困っていたのですが、以下のようにやって対応しました。
diff -ur kw127f-20060325/src/table_window.c kw127-maeda/src/table_window.c
--- kw127f-20060325/src/table_window.c 2006-03-25 19:22:00.000000000 +0900
+++ kw127-maeda/src/table_window.c 2009-04-02 14:08:12.921875000 +0900
@@ -96,7 +96,11 @@
hotKeyMode = NORMAL;
// HotKey の割付
for (int i = 0; i < TC_NKEYS; i++) {
- RegisterHotKey(hwnd, i, 0, tc->vkey[i]);
+ if (tc->vkey[i] & 0x100) {
+ RegisterHotKey(hwnd, i, MOD_SHIFT, tc->vkey[i] & ~0x100);
+ } else {
+ RegisterHotKey(hwnd, i, 0, tc->vkey[i]);
+ }
}
// HotKey の割付 (シフト打鍵)
if (tc->OPT_shiftKana != 0) {
こうやっといて、dvorak.keyの「37」を「137」にすればOK。
Visual Studioでコンパイルしようとしたらiostream.hがなくて手間どっちゃった。
0506407
2009/05/01(金) 09:59:23謝辞とか頂いていたのに放置ですみません。
ようやく天狼1.03が出来ました。2、3日テストしてからアップします。
内容はこんな感じです。
* VK_RSHIFT、VK_RCONTROL、VK_RMENUがうまく扱えてないので修正
* アプリごとにキー配列を変更可能にするための措置(カレントウィンドウをModifierに)
(ウィンドウクラス、ウィンドウタイトルを判別してキー配列を変更できます)
* 押すたびに漢直の配列を変更できたりするモードスイッチを、任意キーに指定する機能
(テストぐらいにしか利用できませんが、複数の漢直を切り替えながら利用できます)
* 全角カタカナモード、半角カタカナモード
* 百相鍵盤『き』に対応
* ストロークのロック機能
(百相鍵盤『き』における甲打省略が全漢直で利用可能)
* kHelperの横方向拡張&スペースキー表示
(現在横方向に10個のキーを表示してますが、設定でさらに右を表示可能になります)
出来なかった事
* ウィンドウ制御(カレントウィンドウの移動、サイズ変更、最大化、縮小化等)
* キーマップ追加(vi、emacs、wordstarライクなキー配列のスケルトン)
予定していたけど出来なかった事が残っているのですが、この辺で一回公開したいと
思います。
よろしくです。
0507407
2009/05/01(金) 10:02:33すいません、天狼はかなり取りこぼす(生キーが画面に残る)ことが多くて、
漢直Winに転向してしまいました。
これは、気になりますね。。
確かに負荷が高い時に、そんな現象が発生する事を確認してます。
うちの環境でも起動直後とか、長時間利用していないアプリに文字を投入する時にたまに
発生してます。
頻度はどんなもんでしょうか?
後、何か問題発生の傾向があれば、教えていただけるとありがたいです。
0508407
2009/05/01(金) 14:32:37* 利用OS
* CPUと動作クロック
* vmware等、仮想環境を利用しているか
* リモートデスクトップを利用しているか
* スワップ頻度(結構スワップする or そうでもない)
* 常用している重たいソフト(ゲーム、3DCGレンダラ等)があるか?
* どういう配列で、どのように入力すると、画面にどう表示されるか?
* 問題が発生しやすい、あるいは発生しにくいアプリケーションの名前
等です。現在、もうすでに利用していないとの事ですので、分かる範囲で
教えて下さい。
他にも同じような症状が発生する人が居たら、是非教えて下さい。
0509名無しさん@お腹いっぱい。
2009/05/04(月) 08:45:34モードが付いたってことは、ひょっとして、模擬的にカンテックやKISが実装できるんじゃないか?
0510名無しさん@お腹いっぱい。
2009/05/04(月) 19:36:180511407
2009/05/04(月) 23:00:53んー、たぶん駄目っぽいです。カンテックスな人にとっては、やっぱり
入力途中は、半角カナがそのまま表示されるような状態じゃないとまずい
のですよね? 現状ではカナキーをモディファイアに設定したとしても、
変換途中に表示されるのはアルファベットになってしまいます。
シフトには対応したので、英文字の大文字、小文字は表示されるよう
になりますが。。
>だからどうやって普通のキーボードにカンテックを実装するのよ。
カンテックスも全然触った事ないのでよく分からないのですが、
半角カナ2文字(状況に応じて英数もあり)を利用する2ストローク
入力だと思ってます(ここまでは合ってますか?)。
となると上記の変換途中の問題さえ解決できれば普通のqwertyキーボードで
いけそうにも思えてしまうのですが、それじゃうまく行かないっぽいでしょうか?
あ、天狼1.03は明日にはアップします。
0512407
2009/05/04(月) 23:35:48ttp://www.juki.co.jp/entry/029_jis1.html
こいつが必要と言う事なんですね。
0513407
2009/05/06(水) 10:10:02ttp://www1.axfc.net/uploader/He/so/224080.zip&key=sirius
今回、『き』を導入するに当たり、結構内部的な変更が多いです。
デグレード等発見したら、是非教えて下さい。
kHelperは結構変更点多いです。Dvorak対応等でハックして下さっている方が
居ますがマージできていません。申し訳ない。。
よろしくです。
0514名無しさん@お腹いっぱい。
2009/05/06(水) 12:19:33家に帰ったら早速見よう
0515510
2009/05/06(水) 23:50:15>>511
> 半角カナ2文字(状況に応じて英数もあり)を利用する2ストローク
> 入力だと思ってます(ここまでは合ってますか?)。
それは間違っていません。
あんな言い方していながら実をいうと、私もANKしか入力できないキーツーフロッピーしか触わったことがありません。
ですか、その経験で言うと、かなや英数のモードの切り換えは、ソフトウエアロックではなくてトグルスイッチで変えているはずです。
(http://www.juki.co.jp/entry/usbkeyboard.html の下の画像でいうとおそらく左上がそれ。)
そして必要に応じて、「英数キー」「かなキー」を*押しながら*目的のキーを押すことで、一時的にモード外のキー出力を可能にしています。
> となると上記の変換途中の問題さえ解決できれば普通のqwertyキーボードで
> いけそうにも思えてしまうのですが、それじゃうまく行かないっぽいでしょうか?
よって、カンテックやKISなどの2タッチ連想入力を実現させるためには以下の2点を実現することが必要です。
1 トグルスイッチを取り付ける(これはなくてもいいけど)
2 新たなモデファイアキーを設定できるようにする
あと、ひらがな、カタカナの入力方法(KIS、カンテック)ついて誰も語っていませんが、知っている方はいるのでしょうか。
ラインプットならば、省略氏がメーリングリスト(?)で触れていたのがネット検索で引っかかったのでどうやっているのかは分かるのですが。
……と ここまで書いて言うのも何ですが、もし>>509が現役バリバリのキーパンチャーだとしたら、
私は今まで釈迦に説法すらならない適当なことを言ってきたわけで、すごいことを書いちゃったなーなんてことを思ったりする。
0516515
2009/05/06(水) 23:52:40×モード外のキー出力
○モード外の文字出力
■ このスレッドは過去ログ倉庫に格納されています