スポンサード リンク

T.Ishii's Software Library

HTML5 レトロ風ゲーム館

無料ブログはココログ

« スクリーンキーボードが動作 | トップページ | メニューと設定を増やした »

キーボードマクロの実装

今はTiExtenderの開発フェーズで、今回追加する仮想キーボード機能の一つである所のスクリーンキーボードの実装は大体終わった。なので、もう一つの機能である所のキーボードマクロ機能について、どんな感じにするか考えてみたのだが、やはり、グローバルフックは使う。

キーボードマクロ機能というのは、予め記憶させておいたキー入力を一括して行ってくれる機能になるのだが、スクリーンキーボードが動作している現状では、記憶させたキー入力の実行については、API的な懸念事項は無い。

現時点で懸念されるのは、どうやって、キー入力シーケンスを記憶させるか、という話になるのだが、TiExtenderのアプリケーションウインドウに入力されるキー入力は、普通に、イベントとして受け取れる。

なので、実行するキー入力シーケンスをTiExtenderの登録ダイアログで登録するのであれば、話は簡単で、実際、そういう登録も可能にするつもりなのだが、これだと、少し使い勝手が悪い訳だ。

何故なら、Xcodeにはテキストエディタが付いているので、Emacsの様な特別なエディタは必須でもないのだが、たまに、ソースコードのデータ部だとかコメント部なんかで、複数行に対して似たようなキー入力シーケンスを行う事があり、こういう時には、キーボードマクロが使えたらなあ、なんて事も思う訳だ。

例えば、テキストの整形の為に、3回DELして次の行に進む、みたいな操作を行数分行う必要が出てきたりするのだが、こういう一連のキー入力操作は、今を去ること30年くらい前に、既に、作者が使っていたテキストエディタでは、マクロ機能で実現できていた。

具体的には、これからのキー入力を記憶しろ、というコマンドを実行し、シーケンスが終わったら、終了した旨を教えてやれば、それ以降は、記憶されたキー入力シーケンスを簡単なキー入力で実行できる様になっていた訳だ。

と、いう事で、キーボードマクロ機能というのは、マクロ機能の無いテキストエディタでの編集用にも便利に使える訳なのだが、前述の様なキー入力シーケンスは、テキスト内容によって、その都度、内容が異なる事になるのが普通だ。

つまり、何回デリートするか、なんて話は、テキストエディタ上でテキストの内容を見ながら判断する事になる訳なので、キー入力シーケンスを別ウインドウ上で登録しろ、なんて言われても、そう簡単には出来ない訳だ。

と、いう事なので、キー入力シーケンスの登録は、使用中のテキストエディタ等での実際の作業中に行える様にもしようと考えている訳だ。

Windowsの場合、グローバルHookを使えば、OS上で入力される全てのキー入力を監視できるばかりではなく、それを横取りする事も出来る。

なので、Windows用のMirror-DTCクライアントでは、このグローバルHookを使う事で、漢字キーなんかの、普通は、システム的に使われるキー入力も、横取りする事で、転送用に使える様にしてあるのだが、Macの場合、横取りは出来ないものの、OS上で入力される全てのキー入力を監視する事は可能だ。

つまり、キーロガーなんかも簡単に作れる訳なのだが、その機能を使える様にする為には、「システム環境設定」の「セキュリティとプライバシー」で、キーロガーアプリを、コンピュータの制御を許可するアプリに追加する必要がある。

当然の事ながら、上記の操作は管理者権限のユーザーが行う必要があるので、キーロガーアプリをダウンロードして実行してしまっても、それだけではキー入力を監視される事は無いのだが、前述の様に、他アプリでのキー入力を監視する必要があるのは、スパイアプリだけでは無いので、ユーザーが許可すれば、Macでも、キーロガーに必要になる機能を動作させる事は出来る訳だ。

と、いう事で、作者的には、自分で開発しているアプリなので、TiExtenderにキーボードマクロ機能を追加すれば、躊躇なく、コンピュータの制御を許可するのだが、TiExtenderのユーザーの中には、そんな事を許可したくはない人もいるかもしれない。

なので、キーボードマクロ機能の登録方法としては、TiExtenderの登録ダイアログで行う方法も用意する予定なのだが、キーボードマクロ機能をテキスト編集用に使いたい場合には、テキストエディタ上で登録が行えた方が便利ではある筈だ。

= この記事に関連する公開中ソフト =

TiExtender

TiExtender

(2016/10/25追加)

« スクリーンキーボードが動作 | トップページ | メニューと設定を増やした »

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/534482/63821552

この記事へのトラックバック一覧です: キーボードマクロの実装:

« スクリーンキーボードが動作 | トップページ | メニューと設定を増やした »

2017年10月
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31        

広告

プライバシーポリシー

  • 当サイトでは、第三者配信による広告(Google Adsense)サービスを利用しています。

    Google を含む第三者配信事業者は、Cookie を使用して、ユーザーのウェブサイトでの閲覧履歴に基づく広告を配信します。 Google 広告 Cookie を使用することにより、Google や Google のパートナーは当サイトや他のサイトへのアクセス情報に基づく広告をユーザーに表示できます。

    Cookieを無効にする設定およびAdsenseに関する詳細については、以下のリンクを参照下さい。

    広告 - ポリシーと規約 - Google