窓使いの憂鬱 9 (のどか,yamy)
■ このスレッドは過去ログ倉庫に格納されています
Windows 2000/XP で動く汎用キーバインディング変更ソフト「窓使いの憂鬱」と、
その派生版を語るスレ
■本家
「窓使いの憂鬱」
http://mayu.sourceforge.net/
※開発終了。Windows Vistaでは動作しないが、有志によるハック版で動作報告あり。
■派生
汎用キーバインディング変更ソフト「のどか」
http://www.appletkan.com/nodoka.htm
窓使いの憂鬱 Linux & Mac (Darwin) 対応版とか配布してるところ
http://members.at.infoseek.co.jp/hattoushin_uma/
yamy(Yet Another Madotsukai no Yuutsu)
http://sourceforge.jp/projects/yamy/
過去スレなど>>2以降 2chは読んでるから、ってことでしょう。平和でイイんじゃないの。
今まではリリースを書き込んでくれてた奇特な人がいたけど
今回は、空いた期間が長かったし。もっとも不具合あって
1週間で再リリースだったけど。 >>117
ケチくさいこと言うなよ。俺とお前の仲じゃねーか。
今度から気がついたら教えてくれよな!
いっとくがおれはいつも気がついた時には書き込んできたからな、繭の頃から。 近々Windows Vista 7 64bit OSに乗り換えようと思ってるんですが
どれがオススメの窓使いの憂鬱なんでしょうか?
今まではVistaがインスコできない騒ぎの時に公式のを2chの人がハックしてくれたのをVista 32bitで使ってました 有料だけど機能的に一番豊富なのどか
ゲームなど一部効かないことがあるけど無料のyamy
どっちにするかは各自の使い方と好み のどかもハッキング防止システムを使ってるゲームだと弾かれることはよくあるね。 nshell使ったってゲーム内でのどかが使える訳じゃないんだから
「そのための」で受けるのはお門違い。
俺はのどか(繭)依存度が高いから、弾かれるならゲームを諦める。 nshellはキーボード入力を受け付けなくす一部のクソアンチハッキングのために
のどかを終了させるためのものだぞ
なんで>>125みたいな話になるの? 回避はできるけど解決はしてないってことでしょ
「そのための」の日本語の意味の議論をここで始めるのは簡便な ゲームやんないからずっとyammyだったけど、google日本語入力に対応してくれたからいまはのどか一択だわ。 ありがとうございます
ありがとうございます
yammyって倒したらメダルでそうですね
>>122
yamyはユーザモードのフックベースなんですね
これってAutoHotKeyと同じようなレベルなんでしょうか
前にこのあたりの比較図があった気がしましたが失念してしまいました。
いまのところnProtectを使うようなゲームには出会っていないのでyamyでも大丈夫かもしれません
前スレに図ありました
yammyのフックのレベルであれば、AHK利用者ならAHKでもいいのかもしれません
344 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2009/06/13(土) 23:27:40 ID:Jr40wJOW0
┐
キーボード │
↓ │ハードウェア
USB or PS/2 │
│ ┘
↓ ┐
ドライバ │
↓ ← フィルタドライバ │カーネルモード
NTカーネル │
│ ┘
↓ ← LLフック ┐ ┐
Windows API │Winサブシステム │
│ ┘ │ユーザーモード
↓ ← メッセージフック ┐ │
アプリケーション │ユーザープロセス |
┘ ┘
あんまり正確じゃないけどこんな感じ?
mayuやnodokaがフィルタドライバ、
yamyやAHKがLLフック、cmkeyがメッセージフック。
>>343
キーの入れ換えとか、もう少しできる事は多くなるはず。
他のプロセスに邪魔されないならドライバ型に限りなく近い。
>>110って、結局どうやってます?
自分も似たようなことをやりたいんだけど、うまくいきません。
複数のアプリ(TeraTermとEmacs)では一部のキーマップのみ有効にして
それ以外を無効にしたいのですが、効率的な書き方がわかりません。
ズバリの書き方を伝授してもらえると助かります。
window指定で「〜と…以外」という書き方ができればいいのですが、
正規表現でそれを書くのはほぼ無理ぽ…。 その二つ用のキーマップ作って、継承させりゃいいだけでしょ keymap KeymapDefault = &Default
window tekitou /tekitou\.exe/ : KeymapDefault
key Esc = &WindowClose
# tekitou\.exe 全般はデフォルト動作(繭無効)で、Escキーのみ繭(有効)で、がオーソドックスな方法かと。 GlobalにEmacsEdit適用すると誤爆が多いからアプリ毎に指定したほうが安心。
んでxyzzyにはGlobal指定する。 質問が曖昧ですみません。
こんな状況↓なんですが、改善できますかね?
[やりたいこと]
(1)「変換」に「半角/全角」を割り当てるなど、若干カスタマイズしたい。
(2)カーソル移動はemacs風にしたい。
(3)TeraTermやEmacsなど一部のアプリは上記(2)をはずしたい。
[現在の設定]
Globalを継承しないTeraTermとEmacsのキーマップを二つ定義し、
(1)はGlobalとその二つのキーマップに重複して定義している。
[改善したいこと]
(a)定義を重複して記述しているので、設定を変更したいときに複数個所をもれなく修正が必要。
(b)Globalを継承しないキーマップを個別に定義しているので、そのようなアプリが増えたときに手間がかかる。
global に共通定義。それを継承した二つのキーマップで、片方は一般用、もう一方は除外2アプリ用 >>131にもあるとおり、yamyってたしかLLフックだよね?
なんでcapslockとctrlの置き換えができるんだろう
yamyは実際にはフィルタドライバのフックなんじゃないかな お前は何を言っているんだ
フィルタドライバを使わなくてもCtrl入れ替えができるのが
LLフックを使ってる最大の理由だろうに しれっと嘘を言うなw
LLフックじゃ CapsLock 取れないのはどのツールでも同じ。
レジストリのScanCodeMapを書き換えて、強制的にモジュール再ロードさせてるんでそ。
http://sourceforge.jp/ticket/browse.php?tid=17575&group_id=4424
それはNLSキーが特別扱いされてる問題であって別の話だ またまた適当なw
日本語OS+日本語キーボードだとCapsLockキーは無いんだよ。
(キー刻印の下段(の左)にあるのがキー名で、上段(の左)にあるのはShift押下時に有効となるキーだ。)
LLフック使えば分かるが、英数キーのコード(VK_ALPHANUMERIC)はDownしか送られてこなくて Upが来ない。
従って置き換えは無理。
だからLLフックより上流(低レベル)でキーボード(ドライバ)からの信号のScanCodeを置き換える
ScanCodeMapで別のキーコード置き換えてから、LLフックで捕らえてキーアサイン変えている。
(フィルタドライバはそれより更に上流) なるほど、yamyはレジストリの書きかえとLLフックを併用した結果、
強力なカスタマイズ能力を備えるに至ったのか
わかったぞ >>143
LLフックだけじゃなかったのか
必要なところだけレジストリでリマップしてるとか頑張るな 普通のフックじゃなくてLLフックにしてる意味ってなに? のどかの中の人って、要望を寄せると可能なら応えてくれるのね。
何か要望だそうかね。押しっぱなしをどうにかして欲しいけど。 でも最近ブログとかで日本語乱れててなんだかお疲れな気がするよ のどか初心者なのですが、先輩方に教えていただきたいのでお願いします。
エクセルで値貼り付けを、ファンクション10キーでおこないたい。
そこで、下記のように入れたのですけど・・・・・・・・
key F10 = LeftAlt E S V Enter
10回中1回か2回、Alt E Sのところで終わってしまいます。
特に大きいファイルをいくつか立ち上げているときです。
キーの連続して押される時間、もう0.1〜0.2秒空けるよう変更するにはどのようにすればいいのでしょう。
>>152
途中でEnter押してしまいました。すいません。
0.1秒なら100msecなので
key F10 = LAlt &Wait(100) E &Wait(100) S &Wait(100) V &Wait(100) Enter
あるいは
key F10 = LAlt &WaitKey(100) E S V Enter &WaitKey(0) >>154さんへ
>>152です。両方とも成功いたした。
ありがとうございます。
いままでマニュアルの違う部分ばかり見ていました。
&Wait
&Waitkey
FUNCTION リファレンスでしらべたらしっかり載っていました。
50msecくらいで使用していきたいと考えています。
本当に助かりました。 mayuの構文、慣れが無いと難しいよね
サンプルを置くアップローダーとかwikiとかってあった方がいいのかなぁ? マウス・パッドからキーイベントを生成するのは出来るけど、
逆にキーからマウス・パッドのイベントを生成したいってのは
技術的に無理なのかな。今でも VK_* なら生成できるけど、
あくまで仮想キーだから使い途が限定されてて。 繭もyamyも気がついたらCtrlが押しっぱなし状態になっていることってありませんか?
そうならないようにする方法はそれとして、そうなってしまったときに解除する方法ってあるんでしょうか?
Ctrlをもう一回押したり長く押し続けたりしても直らず、今のところWindowsを再起動するしか方法がないんですが・・・
わかる方がいたらお願いします。 VMWare, VirtualPC入れてるなら、それのフィルタドライバが怪しい >>156
ttp://jbbs.livedoor.jp/bbs/read.cgi/computer/41517/1290324088/
>>157
使いたいイベントって、具体的にはどんなもの? ゲームパッドの設定書こうと思うがいつも途中で挫折する。俺も歳を取ったのか。 ってことで結局今まで通りJoyToKeyつかうことになるんだけどさ。
でものどかの方が自由度が高いからね。 >>161
そこってのどかの作者の人以外も書き込みできるの? >>165
当然書けるよ。公式掲示板の一部。
ttp://jbbs.livedoor.jp/bbs/subject.cgi/computer/41517/ DirectXのゲームでキーをマウスボタンの替わりに使いたいのですが、
どう記述すれば良いでしょう。 >>158
再起動しなくてもスタンバイしてから復帰でどうにかなるけど、発生回数が増えると手に負えないね
自分はそれがきっかけでnodokaに乗り換えた
あと、VMwareをインストールしたあとにnodokaを入れると弾かれた
nodoka => VMwareの順だと問題なくインストールできる キー押しっぱなしが発生する問題が起こる人、
PS/2-USB変換経由でPS/2キーボード使ってない?
俺はそれで発生してて困ってたんだけど、PS/2-USB変換アダプタを新しく
バッファロのにしたら治った。
以前使ってたのは随分昔に買ったものだったけど、
変えたら、全く押しっぱなしが発生しなくなったよ。 >>159
Ctrl押しっぱなしが、右と左のシフト両方試してみたら解除できる場合がありました!ありがとうございます!
でもできない場合もありました・・・
>>160
それらってたしか仮想の資源共有サーバを作るソフトですよね。
たぶん入ってないと思います。ありがとうございます。
>>170
スタンバイしてから復帰で直るんですか!ありがとうございました。今度なったらやってみます。
>>171
直挿しのUSBキーボードを使ってますが、なるほど、ちょっと変わったキーボードを使ってるので
そちらが原因なのかもしれません。タッチパッドつきのUSBキーボードです。 「選択(C)」のメニューをキーボードで選ぶ方法ってある?
せっかくだから、マウスでちんたら選ぶんじゃなくて
特定キーに割振って切り替えもしたい。 Wn+Tabでタスクバーにフォーカス移動してから、Tabでフィールド移動
(クイック起動などの追加コンポーネントの数によってTabの回数は異なる)
で、トレイでEnterで左ダブルクリック、S-F10かAppsKeyで右クリックと同じになる
適当に休むキーシーケンス送れば自動化もできる >>173
&LoadSetting
ロードした側でも、設定しておく必要がある。 >>176
サンクス。そういうのが欲しかった。
&LoadSettingは設定再読み込みにすで使ってたけど、
引数で設定名を選べるとは知らなかったよ。 Winキーを&Prefixキー動作にした際の質問です。
ノートPCのFnキーの同時押しがしにくいので、yamyより&Prefix(〜)を使って
WinキーをFnキーロック相当の動作に変えました。
(Winキーを押した後に、Fn機能付きのキーを押すとその機能になる)
そこで、Winキーを2度目に押したら、本来のWinキーとして機能させたいと思ったのですが、
キーロックを実現するためにWinキーのモディファイヤを削除しているので、
Winキー単体(C-Esc)やW-Eなどのショートカットが働きませんでした。
単体だけなら2回目でC-Escを定義すればいいのですが、
それだとWinキーと連携するショートカットが使えません。
そのため、今は、もう一段階&Prefix()を付けて、Win Win Win なら C-Esc、
Win Win E なら W-E と押すように3回目を個別定義していますが、
これを Win Win で C-Esc相当、Win Win+Eでエクスプローラ起動のように、
2回の動作に変えられないでしょうか?(個別定義をなくしたい)
どうかお知恵をお貸し下さい。
以下、現在の該当部分の定義です。
include "109.mayu"
keymap WinShortCut : Global = &Ignore
key *S-*C-*A-*LWindows = C-Esc # Win Win Win => Win
key *S-*C-*A-*E = *S-*C-*A-W-E # Win Win E => Win + E
#↑これらの定義をできれば省略したい
keymap FnLock : Global = &Ignore
key *C-*A-BackSpace = *C-*A-*Delete # Fn+BS => Del
# ↑こういう定義が続くので省略
key *S-*C-*A-*LWindows = &Prefix(WinShortCut) # keymap WinShortCutに飛ぶ
keymap Global
mod windows -= LWindows #Windowsキー機能を削除
key *S-*C-*A-*LWindows = &Prefix(FnLock) # keymap FnLockに飛ぶ 窓使いの頃からなんだけどshift+何かみたいな最初からあるモディファイアが使えなくなるのは何が悪いんだろう 使えなくなるなんてことないよ
昔からなるなら、その頃から使ってるソフトと干渉してるとかじゃない? modで+=じゃなくて=して自分でshift消してるとエスパー いつの間にか癖になってた
key L2-M1-*H = _6
↑
こいつが原因でした
マニュアル読み直そう できました!
Win Win の段階で、D-LWinを送り、
さらにWinShortCutでWinキー単独をU-*LWinすると意図通りになりました。
Winショートカットは個別定義する必要がありますが。
keymap WinShortCut : Global = &Ignore
key *S-*C-*A-*LWin = U-*LWin # Win Win => Win
key *S-*C-*A-*E = *S-*C-*A-W-E # Win Win+E => Win+E
key *S-*C-*A-*R = *S-*C-*A-W-R # Win Win+R => Win+R
keymap FnLock : Global = &Ignore
key E = VolumeMute # Fn E => VolumeMute Winショートカットテスト用
key *LWin = D-*LWin &Prefix(WinShortCut) # 2回目でWinを押しておく
keymap Global
mod windows -= LWin #Winキー機能を削除
key *S-*C-*A-*LWin = &Prefix(FnLock) # keymap FnLockに飛ぶ
Dvorak配列に変更する際にCtrl, Alt, Winの修飾キーを使う入力は
元のQwerty配列のままにしておきたいのですが
key *G = *I # G -> I
とDvorak配列化のための定義した際に
修飾キーの一部を*による置き換え(入力)に適用されない状態にすることは可能でしょうか?
key A-*G = A-*G # A-G-> A-G
と改めて定義しても可能ですが
可読性と保守性が低下するので簡単にできないか調べています これでいいんじゃないの?
key *S-G = *S-I # G -> I >>187
ありがとうございます。思ってたように動作しました。 今まで、自宅でも職場でも猫まねき使ってたんだけど、
職場のPCが新しくなったら、PS/2がついてない機種になって猫まねきが使えなくなった…。
設定項目がかなり多いから、他のソフトへの移行がかなりしんどい。
散々既出の話題なのかもしれないけど、USBでも猫まねきを使えるようにする方法って無いのかな。
あー、キーカスタマイズソフトのスレに書き込むつもりが、誤爆だ。
すみません。 yamyでテンキーのコードを入力したいんだけど、
どういう名前だっけ のどかのパッド設定で、特定のキーを押してる間は連射、ってできますか? yamy を使っています。
vmware のウィンドウでは yamy のキーマップが使えないのですが、使えるようにはできないのでしょうか。 yamy 0.03つかってる
急に思い立って、
key C-A-U = &ShellExecute("open", $ClipBoard,,, ShowNormal)
という設定したら、設定ファイルを読み込んだだけでyamyが落ちるようになった
$ClipBoardが問題のようなんだが、他の人は$ClipBoardちゃんと動いてる? >>197
のどかは、落ちないけど yamyは落ちる。
$ClipBoardではなく、$Clipboard なら、どちらも問題なく機能します。 おおほんとだ、$Clipboardにしたらうごいた! ありがとう! のどかのマウスフック機能ってyamyと同等以上?
もしそうならのどか買おうかな >>200
概ね同じだけど、試用版で試してみると良いと思うよ。 2011-02-15 「のどか」4.17をリリース
- 修正
.NET Framework 4が未インストールの場合、インストール時、高速起動化と
設定ダイアログを開いた際のGuiEditボタンを非活性とした。
その結果、.NET Framework 4がインストールされていない環境で、インストール時に
エラーが発生しないようにした。
- 変更
GuiEdit高速起動のための dotnet_starter.exeの復活
GuiEdit起動時にスプラッシュウィンドウが表示されるようにした。
- 追加
マクロ機能を排除した機能制限版 nodoka64_limit.exe, nodoka_limit.exe
モディファイヤーキー押しっ放し検出、解除機能 def option CheckModifier
すいません。VistaSP2にてyamy 0.03を使用して
ネットゲーム(FF11)でチャットウィンドウを出すコマンドが
Ctrl+L or Alt+Lの為近くにあるWindows+Lを誤って押してしまうと
Windowsがロックされて、強制ログアウト状態になってしまうので
Windows+LでWindowsがロックされるのを阻止したいのですが
Widnwosキー自体をCtrlかAltに置き換えてしまうとWindowsキーが使えなくなってしまうので
どうにかWindows+LをCtrl+LかAlt+Lに置き換えたい場合
スキャンコードの調査でWindows+Lが&VK( U-L )なのは分かったんですが
key &VK( U-L ) = C-Lにして読み込ませると
error: `&': invalid key name.になってしまいます。
根本的にやり方が間違っているのでしょうか スキャンコードと仮想キーコードの違いをまずは理解するところから Key W-*l = C-l
かな。
FFXIではミ田殺しちゃうのが良いんじゃない? FFXIはwindow利かないんだっけ? Emacsの標準設定でCtrl+GでMarkSetをキャンセルしようとしてるんだけどできない
手動でLeft Rightしてみたけどこの方法だと選択拡張縮小となるだけで解除されない
みんなはどうやって選択解除の設定をしてるの? emacsedit.mayu
keymap2 EmacsMark
key C-G = $EmacsMark/cancel &Undefined # キャンセル リモートデスクトップのためyamyやのどかを使う場合、NLSキーに対してはScancodeMapで
別のキーに置き換える方法が一般的らしいですが、NLSキーをモディファイアに割り当てるような
場合もその方法でできるのでしょうか?
現在、mayuで無変換をモディファイアにしてるのですが、リモートデスクトップではどうしようかと模索しています。 のどか最新版を使っています。
ブラウザGoogle Chromeを使っているのですが、
日本語入力モードになっているとスペースキーでページダウン
できないようです。(Shift同時押しのページアップも。)
入力フォームにフォーカスがないときだけ、日本語入力
モードでスペースキーを押したときにページダウン
(PageDown、または直接入力のスペース)を入力
するには、dot.madokaにどのような記述をすれば
よろしいでしょうか、識者の方ご教示いただけませんか? ■ このスレッドは過去ログ倉庫に格納されています