10

単にtextutilconvertを呼び出すAutomatorを使用してサービスを作成しようとしています。最終的には、docxファイルを右クリックして、テキスト、rtf、htmlなどに変換できるようにしたいと思います。右クリックした後、目的の形式を尋ねる非常に単純なポップアップが必要です。

[リストから選択]アクションが表示されます。オプションはありません。どこかで、「リストから選択」の入力を「指定されたテキストを取得」にするというアイデアを思いつきました。次に、値のリストをGetSpecifiedTextに入れてみました。ただし、実行すると1行しか表示されません。1行に1つのアイテムを試しました。カンマで区切られ、スペースで区切られ、中括弧で囲まれ、カンマで区切られています。何も機能しません。

すべてのオプションを表示するために、そのチューザーダイアログを取得するにはどうすればよいですか?また、選択を1つのアイテムに制限する方法はありますか?

ありがとう!

オートマターのスクリーンショット 結果

4

5 に答える 5

12

これは、リストから1だけを選択するための解決策です。

(「指定されたテキストを取得」および「リストから選択」)アクションを削除します。

「 AppleScriptスクリプトの実行」アクションを追加します。1-アクションのテキストを切り取ります。2-このテキストをコピーしてアクションに貼り付けます。

on run
    choose from list {"TXT", "RTF", "RTFD", "HTML"} with prompt "Please make your selection" without multiple selections allowed and empty selection allowed
    return the result as string
end run
于 2012-07-12T00:37:25.040 に答える
6

秘訣はAppleScript変数を使用することです!

他の提案された答えは機能しますが、最も簡単で最も簡単な方法は、AppleScript変数を使用してリストの選択肢を定義することです。

テキスト変数はプレーンテキストの1つの項目のみを格納できますが、AppleScript変数は配列として構造化できます。これは、まさにリストを定義するために必要なものです。

ここに画像の説明を入力してください

  1. 変数ライブラリの[ユーティリティ]で、 AppleScript変数を[リストから選択]アクションの上のワークフローにドラッグし ます。

  2. 変数オプションを編集し、そのスクリプトをテキスト文字列の配列として定義します。これには、必要な選択肢のリストが含まれます。

于 2017-12-23T22:26:48.243 に答える
2
  1. 「指定されたテキストの取得」アクションを削除します。

  2. 「リストから選択」アクションの上に「AppleScriptの実行」アクションを追加します。

  3. AppleScriptの実行」アクションで、テキストを切り取り、このテキストをコピーして貼り付けます。

    on run {}   
       set theList to {"TXT", "RTF", "RTFD", "HTML"}
       return theList 
    end
    
于 2013-11-30T12:39:28.913 に答える
0

テキストをアイテムのリストに分割する必要があります。これは、[リストから選択]が入力として期待するものです。[段落のフィルター]アクションを使用して、テキストを分割できます。たとえば、空ではない段落を返します

実行しているOSについては言及していませんが、Lionはテキストアクションでリッチテキストを使用する機能を追加しました。残念ながら、実際にリッチテキストを取得した場合、ほとんどのアクションは意図したとおりに機能しません。Lionでは、シェルスクリプトの実行アクションのようなものを使用して(非表示の)入力アイテムの強制の一部を利用できます(そこに余分なものを入れる必要はありません。アイテムを渡すデフォルトを使用するだけです)。GetSpecifiedTextアクションからリッチテキストを変換します。

[リストから選択]アクションには[すべて]または[なし]ボタンがありますが、指定したアイテムのセットを選択する方法はありません。Automatorアクションを作成するのはかなり簡単なので、独自のtextutilラッパーをロールすることも別のオプションです。

于 2012-07-11T21:06:33.593 に答える
0

この問題を解決する2つのAutomatorアクションもあります。

1つはテキストの分割です。これを使用すると、特定の区切り文字を選択してテキストを分割できます。

もう1つは、テキストの個々の単語を入力として渡すだけのGet WordsofTextです。

これらのアクションがない場合は、ここから取得できます。

https://itunes.apple.com/us/app/text-automator-actions-pack/id448838274?mt=12

于 2013-03-07T00:40:36.547 に答える