iWorkspaceのアイテム複製スクリプトをMyFindにも対応させる

MyEditor、iWorkspaceのクリップボード履歴を管理し、まとめて各エディタアプリに流し込めるClipboardUtil(HTML)@feelingplaceさん作)はMyFindにも対応しています。
https://itunes.apple.com/jp/app/myeditor/id575214004?mt=8&uo=4&at=11lqq9
https://itunes.apple.com/jp/app/iworkspace/id623795074?mt=8&uo=4&at=11lqq9
https://itunes.apple.com/jp/app/myfind/id764965889?mt=8&uo=4&at=11lqq9

このように共通のスクリプトを使ってスクリプトの個数を減らせると整理しやすく、無料版MyScriptsの登録個数制限対策にも役立つのではないでしょうか。

https://itunes.apple.com/jp/app/myscripts-le/id556253271?mt=8&uo=4&at=11lqq9
https://itunes.apple.com/jp/app/myscripts/id492086539?mt=8&uo=4&at=11lqq9

そんなわけでiWorkspace公式サポートにあるDuplicate itemもiWorkspace、MyFindの両対応にさせてみました。

準備

MyScriptsに以下のアイテムを登録します*1
「Duplicate item iW/MF」をインポート

var options = JSON.parse(OPTION);
var item = options.item;
var callbackurl = options.callbackurl;
callbackurl + "add" + makePrmStr(item);

function makePrmStr(obj){
  var str='';
  var partition = '?';
  for (var i in obj){
    str += partition + i + '=' + encodeURIComponent(obj[i]);
    partition = '&';
  }
  return str;
}

使い方

iWorkspace/MyFindの複製したいアイテムを編集状態にして雷ボタンを押し、MyScriptsに移動後「Duplicate item iW/MF」を選択すると複製されたアイテムの登録画面になります。
f:id:aitatena:20131209000334j:plain

*1:追加用URLスキームにidパラメータが含まれていても無視されるそうなので、このようなソースコードで登録できます。