automatorでテキストエディットの内容取得について
装飾したテキストエディットのファイルがあります。
これを、アクションの「テキストエディット書類内容の取得」で操作取得すると、装飾が解除されプレーンテキストで取得されてしまいます。
装飾を解除せずに取得するにはどうすればいいのでしょうか?
MacBook Pro, OS X El Capitan (10.11.6)
装飾したテキストエディットのファイルがあります。
これを、アクションの「テキストエディット書類内容の取得」で操作取得すると、装飾が解除されプレーンテキストで取得されてしまいます。
装飾を解除せずに取得するにはどうすればいいのでしょうか?
MacBook Pro, OS X El Capitan (10.11.6)
Automatorの各Actionモジュールは、(多分)AppleScriptで作られています。下記のコマンドを実行することで、AppleScriptで使用できるTextEdit用のコマンドを知ることができます。
sdef /Applications/TextEdit.app >TextEdit.xml
これを見る限り、スタイル情報を保持したまま全テキストを得ることは不可能だと思われます。
("styled text"というものがありますが、TextEditでは使えません。)
ただ、同じスタイル情報を持つテキストブロックを配列として返す、"attribute run"が定義されています。これを使えば出来そうですが、面倒臭そうです。
というわけで、ShellScriptを使います。
Automatorの各Actionモジュールは、(多分)AppleScriptで作られています。下記のコマンドを実行することで、AppleScriptで使用できるTextEdit用のコマンドを知ることができます。
sdef /Applications/TextEdit.app >TextEdit.xml
これを見る限り、スタイル情報を保持したまま全テキストを得ることは不可能だと思われます。
("styled text"というものがありますが、TextEditでは使えません。)
ただ、同じスタイル情報を持つテキストブロックを配列として返す、"attribute run"が定義されています。これを使えば出来そうですが、面倒臭そうです。
というわけで、ShellScriptを使います。
失礼致します。
『テキストエディット書類内容の取得』のアクションの説明をみると(下図)、『結果:』の項目がテキストになっていて、これは書籍を除いた、プレーンテキストのことなので、もともとリッチテキストを取得する為のアクションではないと思います。
ところが、リッチテキストを取り出すアクションは『テキスト』ライブラリには登録されていない様です。
一方で、AppleScriptのテキストエディットの辞書を確認すると、textやparagraphのクラスには、colorやfont、sizeなどのプロパティがありますので、『AppleScriptを実行』アクションを使うことができそうです。
『装飾したテキストエディットのファイル』から、『装飾を解除せずに取得』したものは、その後、どのような処理に使うのでしょうか? その後の処理について説明して頂けると、Automator.appのアクションの組み合わせを決めることができると思います。
AppleScript でcommand + C で代用できないでしょうか。私は詳しくないので申し訳ありませんが。
automatorでテキストエディットの内容取得について