叽歪和Yupoo的Ubiquity命令
杂项 | 2008-10-10 星期五 23:20 修改@2008-10-14 2:52 | 评论↓
我之前说,目前较想要的两个命令是Yupoo和Jiwai.de的。因为Yupoo是我主要存放图片的地方,但目前还没发现有人编写它的命令,而叽歪是我发即时消息的地方,叽歪命令倒是有houyr编写了一个,但Subscribe后刚能用了,重启浏览器后就又不能用,好像不能保存。完全依靠别人弄好不是办法,想用还得自己动手。
先是观察了一下houyr的叽歪命令代码,发现代码里面有不少中文,猜测可能是中文字符出问题了,于是把里面所有的中文都改写成相应的英文,再把整段代码不是Subscribe,而是复制粘贴到我的command-editor,再试了试,果然能用了,重启浏览器也没问题。
Yupoo的搜索我是参照flickr的,就是直接搬过来用,只是修改了里面相应的内容变为yupoo的,比如搜索句式、favicon地址、REST请求、API key等。只是,不知道哪里的问题,贴到command-editor后搜索倒是能搜索了,但是类似flickr上的ajax预览图片功能却出不来。希望高手帮忙指点一下。
两段代码分别贴到下面:
先是叽歪的:
// How many words can jiwai send 다운로드?
const JIWAI_STATUS_MAXLEN = 500;CmdUtils.CreateCommand({
name: “jiwai”,
takes: {status: noun_arb_text},
homepage: “http://jiwai.de/”,
author: {name: “Damien Hou”, homepage: “http://jiwai.de/houyr/”},
icon: “http://asset3.jiwai.de/img/favicon.ico”,
license: “MPL”,
preview: function(previewBlock, statusText) {
var previewTemplate = “Send a Jiwai:
” +
“${status}” +
“remaining: ${chars}“;
var truncateTemplate = “
the last${truncate} ” +
“will be truncated.”;
var previewData = {
status: statusText.text,
chars: JIWAI_STATUS_MAXLEN – statusText.text.length
};
var previewHTML = CmdUtils.renderTemplate(previewTemplate, previewData);
if(previewData.chars < 0) { var truncateData = { truncate: 0 - previewData.chars }; previewHTML += CmdUtils.renderTemplate(truncateTemplate, truncateData); } previewBlock.innerHTML = previewHTML; }, execute: function(statusText) { if(statusText.text.length < 1) { displayMessage("Forget what to say?"); return; } var updateUrl = "http://api.jiwai.de/statuses/update.json"; var updateParams = { source: "ubiquity", status: statusText.text }; jQuery.ajax({ type: "POST", url: updateUrl, data: updateParams, dataType: "json", error: function() { displayMessage("Fail"); }, success: function() { displayMessage("Success!yeah~"); } }); } })
这个是yupoo的:
makeSearchCommand({
name: “Yupoo”,
url: “http://www.yupoo.com/search/?q={QUERY}&w=all”,
icon: “http://www.yupoo.com/favicon.ico”,
description: “Searches 【a href=”http://www.yupoo.com”】Yupoo for pictures matching your words.”,
preview : function(previewBlock, inputObject){
var inputText = inputObject.text;if(inputText.length < 1) { previewBlock.innerHTML = "Searches for photos on Yupoo."; return; } previewBlock.innerHTML = "Searching for photos on Yupoo..."; var apiUrl = "http://www.yupoo.com/api/rest/"; var apiParams = { api_key: "f75028ca67a9e25dcd29a03d105b9498", format: "json", nojsoncallback: 1, method: "yupoo.photos.search", media: "photos", text: inputText, per_page: 8, sort: "relevance" }; jQuery.ajax({ type: "GET", url: apiUrl, data: apiParams, datatype: "string", error: function() { previewBlock.innerHTML = "Error searching Yupoo 다운로드.“;
},
success: function(responseData) {
responseData = Utils.decodeJson(responseData);if(responseData.stat != “ok”) {
previewBlock.innerHTML = “Error searching Yupoo 다운로드.“;
return;
}var previewData = {
numcols: 4,
nummatches: responseData.photos.total,
photos: responseData.photos.photo
};previewBlock.innerHTML = CmdUtils.renderTemplate({file:”yupoo.html”}, previewData);
}
});
}
});
2008-10-11- 星期六 3:23 @reply
看来是玩上瘾了。。。
2008-10-11- 星期六 9:35 @reply
@冰古: 蛮好玩的 😀
2008-10-11- 星期六 11:41 @reply
不会,路过。
2008-10-11- 星期六 15:45 @reply
Yupoo 那个只是搜索么?那没什么意义吧。
感觉 Ubiquity 的文字类的应用还比较有趣,但是图片类的就算了。。。
2008-10-11- 星期六 16:16 @reply
做不好,而且搜索中文图片乱码,我自己也没使用。要是能像flickr那样预览就不错。但我确实不会做,照猫画虎也不成。
2008-11-3- 星期一 19:25 @reply
用起来感觉不错.
不过还有个问题.当用户名是中文的时候,似乎登录不上jiwai.