X Neural Switcher-The Cookbook(パート1)。 先駆者とアナログ

ご挨拶。



xneurの記事シリーズのこのパートでは、レイアウトの切り替え、キーボードイベントのインターセプト、キーストロークの記録またはロギング、および同様のxneur機能を実行するスクリプトに間接的または明示的に関連するGNU / Linuxプログラムについてお話したいと思います。



それは、私が知っている、試したプログラムについてのものであり、そこからxlibで作業し、Linuxでキーボードをインターセプトするいくつかのアイデアを取り入れました。



これらのプログラムはそれ自体ではxneurに直接関連していませんが、xneurのようなことをしたい場合は、一般的な開発ではそれらとそのコードに慣れる必要があります(ソースxneurを失った場合のみ)。





先駆者



xev

x11-utilsパッケージのユーティリティです。 Xサーバーのメッセージキューを表示するように設計されています。

起動時に、ウィンドウが表示され、このウィンドウ宛のすべてのXサーバーメッセージが表示されます。 さらに、他のウィンドウのXサーバーからのメッセージをIDで表示できます。 キーボードを傍受するのではなく、単にメッセージキューのコピーを表示します。



xdotool、xvkbd

キーボードクリック、テキスト、またはマウスクリックをアプリケーションに送信するためのプログラム。 どちらのプログラムも、ある程度、X11プロトコルのXTEST拡張を使用します。

xdootoolはwww.semicomplete.com/projects/xdotoolにあります。 このプログラムでは、通常、キーボード入力、マウス(クリックおよび移動)のシミュレーション、ウィンドウの移動、サイズ変更、非表示または表示など、多くのことが可能です。 このスクリプトプログラムをお勧めします。



アナログ



スベン

xneurの夜明けに亡くなったこのプログラム( http://sven.linux.kiev.ua/ )では、マルチメディアキーボードに追加のキーを設定できます。 これらは、「WWW」、「電子メール」、音量ボタン、CD-ROMコントロールなどのキーです。さらに、Svenを使用して通常のキーボードを使用している場合でも、キーボードショートカットを使用してマルチメディアキーをエミュレートできます。 :Ctrl + w-Webブラウザなどを起動します。 テキストの変換機能を有効にするには、自動変換モジュールを有効にする必要があります。 このモジュールでは、プログラムはxneurの初期開発(初期および不良ヒューリスティックアルゴリズム)を使用していることに注意してください。

このプログラムについて言えることは1つだけです。もう開発されていないのは残念です。xneurには競合他社がいることを望んでいました。 競争は一般的に開発を促進します。



テキスト変換bashスクリプト

ここから入手できますhabrahabr.ru/blogs/shells/120502。それがどのように動作し、その中に何があるか-参照によって書かれています。 このスクリプトの欠点は、最初に、特定のレイアウトに完全に依存することです。非qwertyレイアウトの場合、スクリプトをやり直す必要があります。 第二に、スクリプトは選択されたテキストのみを変換し、それだけです。



キーロガー



lkl

私の意見では、Linux用の最も古いキーロガーです。 sourceforge.net/projects/lklにネストします。

作業時には、標準の割り込みを使用し、ルート権限が必要です。 むかしむかし、Ubuntuリポジトリからは開発も削除もされていません。



ログキー

ある意味では、lklの後継です。 ソースはcode.google.com/p/logkeysにあります。 Ubuntuのパッケージの説明では、彼について次のように書いています。 インストールすると、すべての通常キーとファンクションキーのキーストロークを記録し、修飾キーCtrlとAltGrの状態も考慮します。

試しましたが、実際に書いていますが、ログはすべてラテン語で、テキストを他のレイアウトにまったく変換しません。 まあ、それはまた、このプログラムがイベントをキャッチするために/ dev / inputのどのデバイスから明示的に示す必要があるかを気にします。 一般に、キーロガーとして使用するには、実行中のマシンが変更されないことを確認する必要があります。 そして、USBキーボードを別のポートに投げて、さようなら。



xnee

X11のユーザーアクションを記録および再生するためのプログラム。

試したところ、Xlibとの重大な非互換性があり、プログラムはすぐにクラッシュしました。 しかし、このプログラムパッケージには、コンソールインターフェイス、グラフィカルインターフェイス、さらにはGnome2パネル用のアプレットなど、多くのものが含まれています。 しかし、残念ながら私にはうまくいきませんでした。



要約する



Linuxでキーボードを操作するためのプログラムとユーティリティはたくさんあります。 そして、各ユーティリティはその役割を完璧に果たします。 ただし、「キーのインターセプト-キーストロークの処理-必要に応じてキーストロークを戻す、または送信しない」などの単純なアクションのためにさまざまなユーティリティの機能を組み合わせようとすると、カルーセルが開始します。 ここに1つのアプリケーションだけでなく多くのアプリケーションを監視する必要性を追加すると、問題はさらに大きくなります。 さて、ここにグラフィックツールキット動物園を追加します-一般にゴミがあります。 言うまでもなく、動物園ライブラリのバージョンを備えた膨大な数のLinuxディストリビューションがまだありますか?



xneurで数年作業した後、Linux用の一般的なウイルスが存在しないことに驚かないようになりました。ここでは悪魔自身が足を骨折します。 それが、xneurが時々奇妙に動作する理由です。 そしてほとんどの場合、これは私の曲がった手には問題ありません。



前のシリーズ



X Neural Switcher-The Cookbook(パート0)。





シリーズの次の部分



X Neural Switcher-The Cookbook(パート2)。 アルゴリズム




All Articles