2

Platypus を使用してスクリプトからアプリケーションを構築するときに、ユーザー入力を取得することは可能ですか?

簡単な perl スクリプトがあります。ターミナルから実行すると、ユーザー入力が求められます。しかし、Platypus でアプリケーション ファイルをビルドすると、スクリプトの出力しか表示されません。

4

1 に答える 1

1

ドキュメントはこれについて明確であり、双方向通信はありません。http://www.sveinbjorn.org/files/manpages/PlatypusDocumentation.html#812を参照してください。

これにより、いくつかの回避策が残されます。

  • スクリプトを使用して入力を挿入することを期待します。
  • スクリプトを更新して引数を取るようにします。これはカモノハシでサポートされている機能です。
  • さらに動的な情報を追加する必要がある場合は、TK ダイアログを使用してユーザー入力を照会することを検討してください。
  • Mac では、osascript を使用して最小限のコードでダイアログを呼び出すことができます。

OSA スクリプトの例

#!/usr/bin/env perl

use strict;

sub osascript($) { system 'osascript', map { ('-e', $_) } split(/\n/, $_[0]); }

sub dialog {
  my ($text, $default) = @_;
  osascript(qq{
        tell app "System Events"
            text returned of (display dialog "$text" default answer "$default" buttons {"OK"} default button 1 with title "$(basename $0)")
        end tell
  });
}

my $result = dialog("Life, the universe and everything?", "42");

ここに画像の説明を入力

于 2015-11-09T05:55:20.910 に答える