FvwmCommand - クラウド上のオンライン

これは、Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、MAC OS オンライン エミュレーターなどの複数の無料オンライン ワークステーションの XNUMX つを使用して、OnWorks 無料ホスティング プロバイダーで実行できるコマンド FvwmCommand です。

プログラム:

NAME


FvwmCommand - fvwm コマンドの外部インターフェイス

SYNOPSIS


FvwmCommand [-cmrvw] [-S 名] [-i レベル] [-f 名] [-F レベル] [コマンド...]

DESCRIPTION


FvwmCommand を使用すると、fvwm トランザクションを監視し、シェル コマンドから fvwm コマンドを発行できます。
ラインまたはスクリプト。 FvwmCommand は、各引数を fvwm コマンドとして受け取ります。 引用符は次の目的で使用できます
スペースを含むコマンドを送信します。
FvwmCommand 'FvwmPager 0 1'

呼び出し


FvwmCommandS は、.fvwm2rc ファイル、メニュー、または
Fvwmコンソール。 それ以降、シェルまたはスクリプトから FvwmCommand を呼び出して実行できるようになります。
fvwm コマンド。

.fvwm2rc ファイル内から:
モジュールFvwmCommandS

or

AddToFunc StartFunction "I" モジュール FvwmCommandS

次に、スクリプト ファイルまたはシェルから次のようにします。

FvwmCommand「ポップアップユーティリティ」

OPTIONS


-c FvwmCommand に、標準入力ではなく標準入力から複数のコマンドを読み取るように指示します。
コマンドライン引数で指定された XNUMX つのコマンド。 これにより無効になります -m or -i.

(エコー "Exec xload"; エコー "ビープ音") | FvwmCommand -c

-F
FvwmCommand 出力の fvwm ウィンドウ フラグのレベルを指定します。

0 ウィンドウフラグは印刷されません。

2 情報レベル (-i オプション) が 2 または 3 の場合、フル ウィンドウ フラグが出力されます。

-f
サーバーと通信するための代替 FIFO セットを指定します。 デフォルトの FIFO セット
/var/tmp/FvwmCommand-${DISPLAY}C です。FvwmCommand..C はコマンドの送信に使用されます
FvwmCommand..M はメッセージを受信します。 そのパスが使用できない場合
代わりに ${FVWM_USERDIR}/FvwmCommand-${DISPLAY} が使用されます。 FvwmCommandS には次のものが必要です
同じように呼び出されましたFvwmCommand の前の最初の引数として
呼び出し。 あるいは、オプション -S を使用することもできます。 オプション -S を参照してください。 このオプション -f は、
バックグラウンド ジョブを実行しながら別のジョブを実行するために専用の接続が必要な場合に便利です。
接続は対話的に使用するために維持されます。

-i
FvwmCommand が出力する情報のレベルを指定します。

0 エラーメッセージのみ。
FvwmCommand -i0 FvwmBanner
出力なしでバナーが表示されます。 一方で、
FvwmCommand -i 0 foobar
戻ります、
[fvwm][実行モジュール]: < > そのようなモジュールはありません
ModulePath '/usr/lib/X11/fvwm' の 'foobar'

以下のような場合、Fvwm はエラー メッセージを返さないことに注意してください。
「windowid」自体は有効なコマンドです。

FvwmCommand -i 0 'windowid foo bar'

1 エラー、応答、およびウィンドウ構成情報。 これがデフォルトです。
FvwmCommand send_windowlist
以下のような情報が表示されます。

0x02000014 ウィンドウ FvwmConsole
0x02000014 アイコン FvwmConsole
0x02000014 クラス XTerm
0x02000014 リソース FvwmConsole
0x01c00014 ウィンドウコンソール
0x01c00014 アイコンコンソール
0x01c00014 クラス XTerm
0x01c00014 リソースコンソール
0x01000003 ウィンドウ Fvwm ページャー
0x01000003 アイコン
0x01000003 クラス FvwmModule
0x01000003 リソース FvwmPager
0x00c0002c ウィンドウ emacs: FvwmCommand.man
0x00c0002c アイコン FvwmCommand.man
0x00c0002c アイコン ファイル xemacs.xpm
0x00c0002c クラス Emacs
0x00c0002c リソース emacs
ウィンドウリストの終了
最初の列には、「windowid」で使用できるウィンドウ ID 番号が表示されます。
指示。 XNUMX 列目は情報の種類を示します。 最後の列に示されているのは、
情報の内容。 情報が返されない場合は、-w を追加します。 または -r
オプション。 これは、負荷の高いシステムで必要になる場合があります。

2 上記の静的なウィンドウ情報。
FvwmCommand -i2 'FvwmPager 0 1'
以下はその出力です。

0x03c00003 フレーム x 962、y 743、幅 187、高さ 114
0x03c00003 デスクトップ 0
0x03c00003 StartIconic いいえ
0x03c00003 OnTop はい
0x03c00003 スティッキーはい
0x03c00003 WindowListスキップ はい
0x03c00003 SuppressIcon なし
0x03c00003 NoiconTitle なし
0x03c00003 寛容なし
0x03c00003 StickyIcon なし
0x03c00003 CirculateSkipIcon なし
0x03c00003 CirculateSkip いいえ
0x03c00003 ClickToFocus いいえ
0x03c00003 SloppyFocus なし
0x03c00003 SkipMapping いいえ
0x03c00003 ハンドルなし
0x03c00003 タイトル番号
0x03c00003 マップされません
0x03c00003 アイコン化なし
0x03c00003 一時的ななし
0x03c00003 発生なし
0x03c00003 可視なし
0x03c00003 Icon私たちのいいえ
0x03c00003 Pixmap私たちのものではありません
0x03c00003 ShapedIcon なし
0x03c00003 最大化なし
0x03c00003 WmTakeFocus いいえ
0x03c00003 WmDeleteWindow はい
0x03c00003 IconMoved いいえ
0x03c00003 IconUnmapped いいえ
0x03c00003 MapPending いいえ
0x03c00003 ヒントオーバーライドはい
0x03c00003 MWMボタンなし
0x03c00003 MWMB注文番号なし
0x03c00003 タイトルの高さ 0
0x03c00003 ボーダー幅 4
0x03c00003 基本サイズ 幅 8、高さ 7
0x03c00003 サイズ増分幅 9、高さ 9
0x03c00003 最小サイズ 幅 8、高さ 7
0x03c00003 最大サイズ 幅 32767、高さ 32767
0x03c00003 重力南東
0x03c00003 ピクセル テキスト 0xffffff、戻る 0x7f7f7f
0x03c00003 ウィンドウ Fvwm ページャー
0x03c00003 アイコン Fvwm ページャー
0x03c00003 クラス FvwmModule
0x03c00003 リソース FvwmPager

3 入手可能なすべての情報。
FvwmCommand -i3 'Killmodule Fvwm*'
これにより、どのウィンドウが閉じられているかが報告されます。
0x03400003 破壊する
0x02400002 破壊する

-m fvwm ウィンドウ情報トランザクションを監視します。 FvwmCommand が継続的に出力される
終了せずに受信する情報。 このオプションはバックグラウンドで使用できます
ウィンドウを動的に制御するために、ジョブは -i3 オプションと組み合わせられることがよくあります。
Fvwmコマンド -mi3 | grep 'アイコン化'
ウィンドウがアイコン化または非アイコン化されたときに報告されます。

注: FvwmCommand は出力をブロック バッファーしませんが、grep や
sed はブロックバッファを使用します。 次の例の出力は、次のいずれかになるまで表示されません。
FvwmCommand が終了するか、grep からの stdout バッファがいっぱいになります。
Fvwmコマンド -mi3 | grep 'マップ' |
sed 's/\(0x[0-9a-f]*\).*/windowid \1 move 0 0/'
代わりに、pty や perl などのバッファ制御を備えたツールを使用してください。 以下はアイコン化されます
開いたときに新しいウィンドウが表示されます。
Fvwm-mi3 | perl -ne '
$ | = 1;
print "windowid $1 iconify\n" if /^(0x\S+) add/;
´ > ~/.FvwmCommandC

-r 終了する前に応答を待ちます。 情報がない場合、またはエラーが発生した場合、FvwmCommand は終了します。
一定期間内に返却されます。 (オプション -w を参照してください。) オプション -r は、これをオーバーライドします。
この時間制限を守って、少なくとも XNUMX つのメッセージが返されるまで待ちます。 最初のメッセージの後、
制限時間内に別のメッセージを待ちます。 このオプションは、次の場合に役立ちます。
システムの負荷が高すぎて、システムが応答しているときに予測を行うことができず、かつ
コマンドにより、何らかのメッセージが送り返されます。

-S
FIFO を設定して別のサーバー FvwmCommandS を呼び出します。
-f オプションがこのオプションとともに使用されていない場合、FvwmCommand の呼び出しではデフォルトの
新しいサーバーを呼び出すためにデフォルトのサーバーと通信するための FIFO。
-f オプションをこのオプションとともに使用すると、呼び出し元の FvwmCommand はデフォルトの FIFO を使用します。
デフォルトのサーバーと通信して新しいサーバーを起動します。 次に、FIFOセットを切り替えます
新しいサーバーとの通信を開始します。
このオプション -S は、バックグラウンドでの実行に専用の接続が必要な場合に便利です。
別の接続が対話型使用のために維持されている間、ジョブを実行します。

もし相対パス名、つまり fvwm が実行されている場所からの相対パス名です。
FvwmCommand が呼び出される場所からではありません。

-v FvwmCommand のバージョン番号を返して終了します。

-w
待っていますメッセージの場合はマイクロ秒。 情報がない場合、または
オプション -m が使用されない限り、一定の期間内にエラーが返されます。 の
デフォルトは 500 ミリ秒です。 このオプションは、このデフォルト値をオーバーライドします。

ラッパー


FvwmCommand.sh には、構文を fvwm と同様に保つための bourne シェル関数定義があります。
設定ファイル。 このファイルは次のようにソースされます。
。 FvwmCommand.sh
デスクトップサイズ 5x5
FvwmCommand.pm は、fvwm 設定ファイルと同様の構文を維持するために Perl 用です。
fvwm コマンドの引数を区切るためにカンマを使用できます。
FvwmCommand を使用します。
if( $ARGV[0] eq 'ホーム' ) {
デスク 0,0; GotoPage '1 1';
}elsif( $ARGV[0] eq 'ジャンプ' ) {
デスク「0 2」; ページ 0、1 に移動します。
}
FvwmCommand の引数は fvwm のように大文字と小文字が区別されませんが、FvwmCommand で定義された関数は
FvwmCommand.sh と FvwmCommand.pl では大文字と小文字が区別されます。

エラー


次のエラー メッセージが表示された場合は、FvwmCommandS が機能していない可能性があります。
実行している。
メッセージ FIFO を開くときに FvwmCommand エラーが発生しました
- そのようなファイル、又はディレクトリはありません -
Fvwm モジュールはエラー メッセージを fvwm に返しませんが、stderr に出力します。 これらのエラー
メッセージは FvwmCommand メッセージとして表示されません。

FvwmCommand は、Fvwm2 にコマンドを送信したり、FvwmXNUMX から情報を受信したりするためのインターフェイスです。
Fvwm モジュールではないプロセス。


test1.pl - FvwmTalk を呼び出すために 1 つの引数「t」を取ります
「td」で FvwmTalk を強制終了します
'' ウィンドウを移動します
test2.sh - FvwmButtons を呼び出すために 1 つの引数 'b' を取ります
FvwmButtons を強制終了するには「kb」
「r」はボタンの行数を変更します
'c' ボタン列の数を変更します
ex-auto.pl - 小さなウィンドウを自動的に上げます。 表示されたままになります。
ex-cascade.pl - ウィンドウをカスケードし、元に戻します。
ex-grpmv.pl - 一緒に移動するウィンドウのグループを選択します。

上記の例は実用的なものではなく、どのように実行できるかを示すことを目的としています。
終わり。

フォーカスリンク.pl
これは、ユーザーがプログラム可能なウィンドウ フォーカス スクリプトです。
デフォルトの動作は次のとおりです。
1. ウィンドウが開いたら、ウィンドウにフォーカスを合わせてポインタを移動します
それに。 ウィンドウが閉じられると、親ウィンドウはフォーカスを取り戻します。
窓が開いたときに親子関係が決まります。 最後です
同じ X クラスのフォーカスされたウィンドウ。
2. #1 は、AcroRead がウィンドウを開くときに発生しません。
3. #1 は、SkipMapping が設定されており、ウィンドウが
このクラスの唯一のウィンドウ。
4. Netscape の検索ダイアログ ウィンドウの場合、#1 に加えて、ウィンドウのサイズを変更します。
300x150 ピクセルに変更し、画面の東端に移動します。
ダウンロード/アップロード ウィンドウはフォーカスされず、リンクもフォーカスされません
リスト。
5. アプレットビューアを北西の隅に移動します。
6. Xterm は閉じられた後、その親にフォーカスを戻しません。
7. ウィンドウのアイコンが解除されたら、ウィンドウにフォーカスを合わせてポインタを移動します。

focus-Netscape.pl
「URL を開く」や「検索」などのポップアップ ウィンドウに常にフォーカスします。
空けた。 これにより、ユーザーは何もしなくてもすぐに入力できるようになります。
動くマウス。 このスクリプトは、「ダウンロード」ウィンドウも
右端を押して見えるようにします。 これがから呼び出された場合
.fvwm2rc、次のように使用します。

AddToFunc "StartFunction" "I" モジュール FvwmCommandS
+ "I" 実行 $HOME/scripts/focus-Netscape.pl

プッシュアウェイ.pl
ウィンドウが重ならないように押し離します。 使用:

Push-away.pl アップ「Fvwm Pager」

onworks.net サービスを使用してオンラインで FvwmCommand を使用する



最新のLinuxおよびWindowsオンラインプログラム