GUIシェルはオブジェクト指向的。
ファイルを開くと関連付けられたアプリケーションが起動する。
シェルからのアプリケーション起動は、
空のファイル(拡張子いろいろ)を作る→開く
…がオブジェクト指向的。
でも、
アプリを起動(何をしたいかを指示するのと同義)→検索キーワード入力(アプリに合わせたデータ入力)
…というやり方のほうがおそらく一般的。
これをオブジェクト指向的にするなら?
アプリケーションを起動しないとオブジェクトが作れない。
でも大抵のオブジェクトはテキストで表現できるデータでできている。
つまり、各種データ形式のスーパークラスがあるということ。
まずスーパークラスに属するオブジェクトを作って、あとで型変換するということができそう。
以上をヒントにすると…
- データ用意
どのアプリで行ってもいい。 - データを任意のアプリへ移す。
…という手順を思いつく。
これを「任意のアプリ」起動中にできれば効果がありそう。
ただ起動時間はそんなに長いわけではないし、入力に邪魔が入ると台無しなので
- データの用意のためのUIは自動的に起動、アクティブになる
- 入力があった場合だけアクティブウィンドウとして画面上に残る
- 入力後、閉じるだけでアプリにデータ送信
(あるいは自動的に閉じて入力を取りこぼさずにアプリに引き継ぐ)
…というようなことができないと。
そのほか、アプリを起動せずにデータ入力、そのデータに…
- 任意のアプリの名前を書いておけば自動的にデータ移行
とか、 - データの型を書いておけば関連付けられたアプリに自動的にデータ移行
とか。
そんな感じなのが良いんじゃないのかな。