2017-10-31 21 views
1

を仕事をしながら、私はAppleScriptの構文エラーUI要素(概要・サービス)の周りに

tell application "SummaryService" 
    activate 
    delay 0.1 
    get value of text area 1 of scroll area 1 of window "Summary" 
end tell 

そして何でも私は(getまたはset)私はこれを取得、このコードを使用して要約サービスアプリケーションから/設定された値を取得しようとしていますエラー Error image

(!)一般的に、テキストを引数としてサマリーアプリケーションを起動する方法を探したいと思います(この可能性をobj-cアプリに追加したい)。私はしばらくの間googledして、私が得るものはthis oneです。それにもかかわらず、私はちょうどデフォルトアプリケーションを起動したいのですが、テキスト変換の結果のみをユーザに与え、不必要な作業をいくらか行います。 ご協力いただければ幸いです!

答えて

-1

最後に、私は私が以前に好きな方法で私の質問を解決しませんが、私は多くのオープンソースはgithubの上のlibsがsummerizeしていることがわかったので、私がしたいので、私は一瞬one

を使用します私のObjective-Cのプロジェクトでスウィフトで書かれたコードを使用することは、私は、所望の機能を実装し、

を呼び出したい場所をコントローラに

#import <Reductio/Reductio-Swift.h> 

を追加することです

結果を得るには

PS:私が選択したテキストでプログラムでSummaryServiceを開く方法はまだ興味があります。

PS 2:突然、私はNSPerformServiceのような機能を見つけました。だから、私はこのようにして必要な機能をすべて実装します:

NSString *stringToSetInPb = @"sample text"; 
NSPasteboard *pb = [NSPasteboard pasteboardWithUniqueName]; 
[pb declareTypes:[NSArray arrayWithObject:NSStringPboardType] owner:nil]; 
[pb setString:stringToSetInPb forType:NSStringPboardType]; 
NSPerformService(@"Summarize", pb); 

質問は公式に解決することができます!

0

システムイベントは、ウィンドウ、スクロール領域、およびテキスト領域を取得できますが、SummaryServiceではできません。

tell application "SummaryService" to activate 
delay 0.1 
tell application "System Events" 
    tell application process "SummaryService" 
     get value of text area 1 of scroll area 1 of window "Summary" 
    end tell 
end tell 
+0

ありがとうございます。テキストを取得するのは正しい方法ですが、設定できません。何が問題なの?私は書き込みしようとしました\t \t ウィンドウ1のスクロール領域1のテキスト領域の設定値を "テストテキスト" 成功しませんでした。 – dimazava

+0

私はテキスト領域に入力することはできません、明らかにそれは読み取り専用です。 – Willeke

+0

テキストでSummarizeを呼び出すアルゴリズムは、テキストを選択して右クリックしてこのサービスを呼び出すことです。したがって、呼び出し中にテキストを呼び出したり引数を渡したりする可能性はありますか?私の与えられたリンクにはstdin/outの例がありますが、これはCLIのためのものだと理解していますが、おそらくGUI用のものがありますか? – dimazava

関連する問題